От бумаги к цепочке: как теория аукционов информирует о реализации смарт-контрактов PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

От бумаги к сети: как теория аукционов информирует о реализации смарт-контрактов

Аукционы широко распространены в криптовалюте. Из Производитель залоговые аукционы, Флешботы блочные аукционы с закрытыми ставками и аукционы NFT на OpenSea, аукционы подходят для широкого круга ситуаций, когда требуется определение цены, ликвидность или распределение ограниченных ресурсов как в сети, так и за ее пределами. 

Однако в сравнении с обширным (и растущим) массивом академических исследований аукционов становится ясно, что мы только коснулись того, что эти механизмы могут предложить в сети — например, оптимизация для конфиденциальности, эффективности, покупателя. излишки и другие ключевые задачи проектирования. Учитывая «кембрийский взрыв» дизайна автоматизированных маркет-мейкеров (AMM) после Curve и Sushiswap в 2020 году — и одновременный взрыв блокчейнов третьего поколения — вполне вероятно (возможно, неизбежно), что онлайн-аукционы созрели для аналогичного эволюционного подъема. . 

В то время как форматы аукционов когда-то были свободно приняты (и ограничены) техническими ограничениями блокчейнов, теперь мы начинаем видеть более новые проекты, адаптированные специально для блокчейнов. Следуя традициям дизайн рынка, этот пост является частью серии, целью которой является преодоление разрыва между теорией аукционов и практикой: как теоретические принципы могут влиять на решения о реализации? И как ончейн реализации, в свою очередь, могут дать информацию о новых направлениях теоретических исследований? Хотя теория может направить нас к определенному дизайну аукциона, кажущаяся безобидной деталь реализации сама по себе может быть интересна для анализа с теоретической точки зрения. 

Начнем со сравнения четырех канонических типов аукционов по трем осям: раскрытие информации, стратегия назначения ставоки соображения по реализации в цепочке. Затем мы сосредоточимся конкретно на форматах закрытых заявок, углубимся в тонкости реализации, которые сделали их относительно неизученными в сети, и представим наши реализация Solidity с открытым исходным кодом аукциона Викри, который, как мы надеемся, другие смогут использовать в качестве эталона и основы для дальнейших экспериментов. 

Но сначала краткое введение в форматы аукционов.

Ранее мы подробно рассказывали о дизайне аукционов — как в традиционных форматах, так и в применении и адаптации к блокчейнам — в недавнем выпуске. Подкаст с партнером по исследованию криптовалют a16z (и профессором Гарвардской школы бизнеса) Скоттом Коминерсом и глава отдела исследований криптовалюты a16z (и профессор Колумбийского университета) Тим Рафгарден. Опираясь на свой опыт консультирования по криптопротоколам, они предоставляют обзор типов аукционов и дизайна стимулов как в теории, так и на практике, включая нюансы рыночные цены и газовые войны (которые мы рассмотрели во второй части этой продолжающейся серии статей о дизайне аукционов для web3).

Но для краткого описания нижеприведенной реализации: теория аукционов исторически была сосредоточена вокруг четырех канонических типы аукционов, впервые таксономизированный Уильям Викри в 1961 году и описан здесь в контексте аукциона на один товар.

Снимок аукционных дизайнов, доступных вне сети. Источник: Википедия.

  • Английский (восходящая цена): на английском аукционе или аукционе по возрастающей цене аукционист открывает торги по резервной (минимальной) цене, и участники торгов делают постепенно более высокие ставки до тех пор, пока не останется только один участник торгов, готовый заплатить текущую цену, и в этот момент побеждает последний участник торгов. Это формат аукциона, который чаще всего изображается в популярной культуре и средствах массовой информации, часто в контексте продажи антиквариата, произведений искусства или предметов искусства. необработанные драгоценные камни
  • Голландский (нисходящая цена): на голландском аукционе или аукционе с нисходящей ценой начальная цена снижается в соответствии с установленным графиком. На голландском аукционе побеждает тот, кто сделает ставку первым, и аукцион мгновенно заканчивается. Исторически сложилось так, что голландские аукционы с несколькими единицами часто использовались для продажи большого количества товаров с ограниченным сроком годности. как срезанные цветы, рыба или табак. Совсем недавно Министерство финансов США ввело использование голландских аукционов по ценным бумагам (1974) и IPO Google в 2004 г. (позорно) продала свои акции на голландском аукционе.
  • Первая цена закрытой заявки: Каждый участник торгов представляет аукционисту запечатанную заявку (например, в запечатанном конверте). После того, как все ставки поданы, аукционист в частном порядке читает их и объявляет победителя (предложившего самую высокую цену). Затем победитель платит сумму, которую он предложил. Аукционы первой цены с закрытой ставкой часто используются в недвижимость когда недвижимость вызывает интерес у нескольких покупателей. 
  • Вторая цена с закрытой ставкой ( Аукцион Викри»): одноименный аукцион Викри аналогичен аукциону первой цены с закрытыми ставками, за исключением того, что победитель в этом типе аукциона оплачивает стоимость второй-максимальная ставка. Несмотря на интересные теоретические свойства, аукцион Викри редко можно увидеть в сети (частично из-за сложности реализации закрытых ставок).

Эти четыре типа аукционов имеют разные свойства и динамику, которые еще более усложняются при переводе на реализацию смарт-контрактов (о которых мы подробно расскажем позже).

Сравнение типов аукционов по раскрытию информации

Один из наиболее естественных способов охарактеризовать каждый тип аукциона — это видимость ставок (открытая ставка против закрытой заявки). Даже при прочих равных изменение видимости ставок может оказать сильное влияние на динамику и исход аукциона.

Английские и голландские аукционы открытый протест аукционы, то есть цены объявляются в устной форме по мере их повышения или снижения, а предложения (включая их суммы) общедоступны для всех потенциальных покупателей. Однако аукционы с закрытыми ставками могут использовать несколько различных аспектов конфиденциальности:

  • В конце концов публичный: все ставки оглашаются публично после окончания аукциона
  • Публичная цена: раскрывается только выигрышная цена, а не другие ставки
  • Полностью приватный: публично ничего не сообщается о ставках или выигрышной цене.

Эти предположения относительно видимости ставок означают, что аукционы также различаются с точки зрения раскрытие информации; разные форматы аукционов раскрывают разный объем информации об оценках участников торгов (часто верхняя или нижняя граница) на разных этапах процесса. На английском аукционе размещение заявки фактически устанавливает нижнюю границу оценки этого участника торгов. С другой стороны, на голландском аукционе текущая цена может интерпретироваться как верхняя граница оценок всех участников торгов. Аукционы с закрытыми ставками раскрывают информацию только после окончания аукциона, если вообще раскрывают. 

Стоит отметить, что голландские аукционы могут иметь качества как открытых, так и закрытых аукционов. Голландские аукционы с отдельными позициями имеют те же свойства конфиденциальности, что и аукционы с закрытыми торгами по открытой цене (с момента первый ставка выигрывает, все другие, более низкие ставки остаются закрытыми). Но, как мы увидим позже, эти свойства значительно меняются, когда голландские аукционы проводятся в сети. 

Общие и частные ценности

Изучение продаж частная и общее значение товары аукционы с открытыми и закрытыми торгами могут предоставить еще одну линзу для сравнения этих форматов. На аукционе по продаже общая ценность благо, предмет имеет некоторую внутреннюю стоимость, которая является общей для всех участников торгов, но участники торгов могут иметь разную или неполную информацию об этой стоимости. Нобелевский лауреат по поведенческой экономике Ричард Талер канонический пример общей ценности, банку с монетами выставили на аукцион; ни один из участников торгов не знает точной стоимости, содержащейся в банке, но у каждого своя оценка. На аукционе по продаже товара с частной стоимостью каждый участник торгов имеет индивидуальную стоимость предмета аукциона, независимую от своих коллег. Чтобы привести примеры из web3, NFT куплен исключительно для личного удовольствия (без намерения перепродажи или ожидания будущей полезности) является товаром с частной стоимостью, в то время как залог ликвидированного хранилища Maker является товаром с общей стоимостью.

Между тем, авторы другого бумаги изучение данных с аукционов древесины показало, что аукционы с закрытыми торгами «привлекают больше мелких участников торгов, смещают распределение в пользу этих участников торгов, а также могут приносить более высокий доход» по сравнению с их аналогами с открытыми торгами. Примечательно, что авторы обнаружили, что эти результаты могут быть объяснены моделью частной стоимости (где частная стоимость варьируется в зависимости от особенностей аукционов древесины, таких как «разница в затратах участников торгов и договорных условиях»), полностью исключая общие ценности из своей модели. Это говорит о том, что продавец может извлечь выгоду из выбора аукциона с закрытыми ставками для продаж, когда участники торгов имеют разные мотивы, контекст или использование выставленного на аукцион предмета.

Аукционы на английском языке могут быть полезны в условиях, когда общие ценности доминировать, и определение цены является целью — как уже упоминалось, участники торгов узнают, как другие оценивают товар, когда поступают ставки, и могут соответствующим образом скорректировать свою стратегию. В одном исследовании обратных аукционов в онлайн-рынки труда, авторы обнаружили, что в то время как закрытые аукционы привлекали больше заявок, открытые аукционы привели к тому, что эти покупатели получили лучшую цену (или больший излишек покупателя). Анализ показывает, что различия «в значительной степени зависят от относительной важности компонента общей ценности (по сравнению с частной ценностью) выставленных на аукцион ИТ-услуг». Другими словами, открытый формат торгов позволяет участникам торгов динамически пересматривать свое понимание того, сколько стоит услуга, что часто неясно в начале аукциона.

На практике аукционы обычно демонстрируют сочетание как общих характеристик, так и характеристик частной ценности. Взаимодействие между характеристиками этих товаров и тем, как (и когда) информация раскрывается форматом аукциона, оказывает сложное влияние на стратегию торгов. Это приводит нас к вопросу: можем ли мы формализовать понятие «простой» стратегии торгов (мне не нужно слишком много думать о том, как вы могли бы делать ставки); и есть ли аукционы, где такие стратегии оптимальны?

Сравнение типов аукционов по стратегии назначения ставок

Из четырех канонических типов аукционов в нашем анализе до сих пор явно отсутствовал аукцион Викри. Внимательный читатель может удивиться правилу оплаты аукциона Викри: победитель платит второй самая высокая ставка вместо того, что они сами предлагают. Поначалу это может показаться нелогичным, но в конечном итоге английские аукционы рассчитываются аналогичным образом. Английский аукцион заканчивается наименьшей ставкой, которую не желает делать ни один другой участник торгов; у победителя нет причин делать дальнейшие ставки, даже если его собственная оценка намного выше. На самом деле, у английских аукционов и аукционов Викри есть хорошее теоретическое преимущество перед голландскими аукционами и аукционами с закрытой ставкой: доминантная-стратегия-стимул-совместимость (ДСИК). 

На высоком уровне это означает, что стратегия максимизации полезности каждого участника торгов состоит в том, чтобы просто предложить цену, которую, по их мнению, выставленный на аукцион предмет на самом деле стоит (на аукционе общей стоимости это просто ожидаемая стоимость предмета, зависящая от информации участника торгов). . Для более глубокого погружения эти конспекты лекций служат отличным учебником для начинающих.

На аукционе первой цены такой доминирующей стратегии торгов нет. Участники торгов должны оттенок (или уменьшить) их ставки так, чтобы они были ниже их оценки, чтобы получить положительную полезность. Точно, насколько ниже они могут сойти с рук, все еще перебивая других участников, является вопросом. байесовская игра. Голландский аукцион стратегически подобен. Чтобы получить положительную полезность, участник торгов должен дождаться, пока цена не упадет ниже его оценки, но как долго ждать после этого порога — это еще одна байесовская игра. Возможно, более удивительно, что ожидаемый доход для все четыре типа аукциона одинакова (при определенных предположениях; см. Теорема 1). 

Несмотря на теоретические преимущества аукционов Викри, на практике они встречаются довольно редко. В Аукцион милой, но одинокой ВикриЭкономисты Лоуренс Осубель и Пол Милгром дают несколько объяснений, почему это может иметь место. Авторы отмечают, что, несмотря на то, что английские аукционы являются стратегически эквивалентными, участникам торгов интуитивно легче рассуждать, чем аукционы Викри. Эта интуиция формализована в Очевидно, что защищенные от стратегии механизмы, что показывает, что английские аукционы не только DSIC, но и правдивые ставки «очевидно доминируют». 

Чтобы привести реальный пример, Google объявило В прошлом году AdSense — программа, в которой рекламодатели делают ставки на рекламное место в контенте — будет переходить от аукционов второй цены к аукционам первой цены, ссылаясь на простоту и согласованность с остальной экосистемой цифровой рекламы. В дополнение к этим соображениям удобства использования такие платформы, как AdSense, занимают позицию доверия при проведении аукционов второй цены: завышая вторую по величине ставку, нечестный аукционист может получить больше оплаты от победителя. 

Хотя эти опасения замедлили внедрение, аукцион Викри может найти новые варианты использования при распространении на новые среды. Публичные блокчейны, в частности, обеспечивают надежную нейтральную платформу, которая может помочь обойти такие проблемы, как недобросовестный аукционист. Это, в сочетании с разнообразием потенциальных ончейн-приложений, позволяет предположить, что смарт-контракты могут стать уникальной и эффективной испытательной площадкой для аукционного механизма Викри.

Сравнение типов аукционов по соображениям реализации

Проведение аукционов в сети иногда может создавать новые проблемы по сравнению с аналогами вне сети. В следующих разделах мы рассмотрим текущую ситуацию с ончейн-аукционами и соображения по реализации для каждого типа аукциона. 

Английские аукционы в сети

Большинство онлайн-аукционов, существующих сегодня в дикой природе, попадают в категорию открытых торгов (например, на английском или голландском языках). К ним относятся аукционы OpenSea с возрастающей ценой, залоговые аукционы Maker и контракт Zora Auction House. 

Под капотом OpenSea ставки представляют собой сообщения вне сети, которые кодируют значение ставки, подписанное участником торгов. По мере того как потенциальные покупатели делают свои ставки, пользовательский интерфейс OpenSea отображает значения ставок продавцу и потенциальным участникам торгов. Однако на залоговых аукционах Maker и Zora участники торгов представляют транзакцию, чтобы указать свою ставку; затем транзакция с предложением депонирует залог участника торгов в договоре об аукционе. В силу того, что это необфусцированная транзакция в сети, торги по своей сути открыты — любой может увидеть, что предлагают их коллеги-участники, просматривая входящие транзакции в аукционный контракт (либо в публичном мемпуле, либо по мере их включения в цепочку). ). 

В целом динамика английского аукциона остается относительно неизменной при переводе в смарт-контракт. Одно заметное отличие заключается в том, что ончейн-заявки влекут за собой затраты на газ, которые учитываются в фактической стоимости заявки. Поскольку цены на газ колеблются в течение периода торгов на аукционе, участник торгов, который в противном случае получил бы самое высокое предложение, может быть временно вытеснен из-за высоких сборов за газ.

Сетевые голландские аукционы

Сетевые голландские аукционы добились значительных успехов благодаря облегчению NFT главная к восстановлению баланса TokenSets (и варианты нереста, такие как Аукционы постепенного выкупа и VGDA начисляемой ставки). Такая популярность неслучайна — простой голландский аукцион относительно легко реализовать в виде смарт-контракта, и для него требуется всего две транзакции в сети (одна для создания аукциона, одна для первой и единственной ставки). Самое главное, он не блокирует средства участников торгов, в отличие от других аукционов со ставками в сети.   

Динамика офчейн-аукционов в Нидерландах зависит от мгновенности торгов. Голландский аукцион с одним лотом заканчивается, как только объявляется ставка, и никакие другие ставки не могут быть сделаны. Однако при проведении в сети существует разрыв во времени между трансляцией заявки и ее включением в цепочку, что может иметь некоторые неожиданные последствия. Если первая ставка передается в общедоступный мемпул (в отличие от частного пула транзакций, такого как Флеш-боты), это может привести к газовая война, а другие потенциальные покупатели транслируют заявки с постепенно повышающимися ценами на газ. В результате цена с поправкой на газ может внезапно вырасти, поскольку вне сети, восходящий-ценовой аукцион по порядку сделок затмевает сам голландский аукцион. 

Зависящий от времени характер механизма нисходящей цены имеет и другие недостатки. Предполагая непрерывную функцию снижения цены, участник торгов должен быть в сети именно тогда, когда это необходимо, чтобы разместить ставку по определенной цене, или настроить бота (например, используя Сеть Джелато), чтобы сделать ставку на них. Перегрузка сети, которая случайно (или намеренно) совпадает с трансляцией первой заявки, может снизить окончательную установленную цену в ущерб выручке продавца. Что еще хуже, атака типа «отказ в обслуживании» (DoS) может стоить законному победителю аукциона. 

Аукционы с закрытыми ставками в сети, продемонстрированные новой реализацией с открытым исходным кодом

Платформы, использующие офчейн-торги (например, OpenSea), могли бы легко реализовать аукционы с закрытыми ставками, но они должны были бы доверять аукционисту, чтобы (а) не раскрывать никакие ставки, (б) не подвергать цензуре любые ставки и (в) правильно определять цену. результат аукциона. В идеале смарт-контракт должен недоверчиво облегчить проведение аукциона, сохраняя при этом определенную степень конфиденциальности ставок. 

Чтобы продемонстрировать, мы открыли в Solidity реализацию аукциона с закрытыми ставками с избыточным обеспечением на github.com/a16z/аукцион-зоопарк, как единичный (ERC721) аукцион Викри со ставками, выраженными в ETH. Мы подошли к реализации с учетом трех требований к смарт-контракту закрытого аукциона: 

  1. Конфиденциальность: Значения ставок должны оставаться конфиденциальными, то есть наблюдатели не могут делать выводы о значениях, пока торги продолжаются. Мы допускаем некоторую утечку информации (например, обнаружение того, что заявка находится в каком-то большом интервале), но должна быть разумная степень двусмысленности. 
  2. Цензура сопротивление: Обычно это можно сделать, разместив ставки в сети.
  3. Обязательство по ставке: Потенциальный покупатель не должен отказаться от своей ставки. Победитель торгов должен быть привязан к уплате установленной цены, и аналогичным образом продавец должен быть привязан к продаже товара тому, кто предложит самую высокую цену (возможно, с учетом резервной цены).

Для начала нужно решить вопрос с размещением частная он-чейн делает ставки в соответствии с первыми двумя требованиями. Схема подтверждения-раскрытия подходит для «в конечном итоге публичных» ставок (когда значения ставок раскрываются после окончания аукциона). Вместо открытых торгов потенциальные покупатели могут предоставить хеш-обязательство своей ставки аукционному контракту в течение установленного периода торгов. Позже, после окончания периода торгов, каждый потенциальный покупатель раскрывает ставку, на которую он согласился. Когда ставки раскрываются, смарт-контракт может определить победителя. В нашей реализации хэш-обязательства вычисляются как keccak256(abi.encode(nonce, bidValue)) и перешел к commitBid функция. Для экономии газа мы храним только верхние 20 байт этого хэша. По истечении периода торгов пользователи звонят в revealBid и контракт проверки что предоставленный nonce и bidValue соответствовать сохраненному обязательству.

От бумаги к цепочке: как теория аукционов информирует о реализации смарт-контрактов PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

Не забывайте пить воду и упаковывать переменные для хранения.

Мы обнаруживаем немного больше сложности при переходе к третьему требованию. Чтобы гарантировать выплату победителям, смарт-контракт должен фиксировать ставки. Мы могли бы потребовать, чтобы участники торгов отправляли ETH в качестве обеспечения своих заявок вместе с каждым обязательством — обратите внимание, что commitBid функция является платной и учет сколько ETH пользователь заблокировал — но ETH, привязанный к этим транзакциям, общедоступен и его невозможно запутать; при «фиксации» ставок мы теряем конфиденциальность.

К счастью, есть простой способ поддержать нашу соломенную чучело: позволить (и поощрять) участникам торгов чрезмерно обеспечивать свои ставки, то есть заблокировать больше ETH, чем требует сама их стоимость ставки. Поскольку заявки потенциально обеспечены чрезмерным обеспечением, наблюдатель может узнать только верхнюю границу стоимости заявки. Обратите внимание, что наш commitBid функция позволяет пользователю блокировать любой количество ETH с их транзакцией; любое превышение получает возвращенный победителю в конце аукциона (и ставка будет игнорируются если это подзалогом).

К сожалению, у этого быстрого решения есть обратная сторона: чрезмерное обеспечение создает прямой компромисс между конфиденциальностью и эффективностью капитала. Альтернативная стоимость блокировки большого количества капитала может перевесить предельную конфиденциальность, и участники торгов с ограниченным капиталом находятся в невыгодном положении. 

Тем не менее, дизайн с избыточным обеспечением служит полезной отправной точкой, поскольку мы продолжаем изучать различные подходы. Развитие этой реализации может быть особенно полезно в условиях, когда пользователь может участвовать в большом количестве аукционов, и для каждого из них можно повторно использовать обеспечение. В этом случае было бы естественно, если бы обеспечение было намного больше, чем ставка на любом данном аукционе.

**

Можем ли мы найти еще лучшие ончейн-решения? Хотя избыточное обеспечение может быть уместным для некоторых сценариев, компромисс между эффективностью капитала и конфиденциальностью предложений может поставить участников торгов перед трудным выбором: заблокировать больше капитала для большей конфиденциальности или пожертвовать частью конфиденциальности, чтобы высвободить капитал для использования в другом месте. Но по мере того, как онлайн-аукционы продолжают распространяться и опираться на предыдущую работу, мы ожидаем, что у дизайнеров аукционов будет гораздо больше форматов и реализаций на выбор в зависимости от того, на какие компромиссы они готовы пойти. 

В следующей части этой серии мы углубимся в пространство дизайна и рассмотрим вопрос: можем ли мы гарантировать надежную конфиденциальность без чрезмерного обеспечения? Этот репозиторий будет продолжать служить практическим справочником для идей, которые мы обсуждаем на протяжении всей серии, и послужит основой для дальнейшего изучения. Мы надеемся, что вы последуете этому примеру, разветвитесь и поэкспериментируете с новыми реализациями по мере их добавления.

Благодарности: спасибо Джо Бонно, Скотту Коминерсу, Соналу Чокси и Тиму Рафгардену за неоценимые отзывы об этом посте; и Ною Цитрону, Сэму Рэгсдейлу и Мэтту Глисону за проверку кода. Особая благодарность Стефани Зинн за редактирование.

**
Мнения, выраженные здесь, принадлежат отдельным цитируемым сотрудникам AH Capital Management, LLC («a16z») и не являются мнением a16z или ее аффилированных лиц. Определенная информация, содержащаяся здесь, была получена из сторонних источников, в том числе от портфельных компаний фондов, управляемых a16z. Хотя информация взята из источников, считающихся надежными, a16z не проводила независимую проверку такой информации и не делает никаких заявлений о текущей или неизменной точности информации или ее уместности в данной ситуации. Кроме того, этот контент может включать стороннюю рекламу; a16z не просматривал такие рекламные объявления и не поддерживает какой-либо рекламный контент, содержащийся в них.

Этот контент предоставляется только в информационных целях и не может рассматриваться как юридическая, деловая, инвестиционная или налоговая консультация. Вы должны проконсультироваться со своими советниками по этим вопросам. Ссылки на любые ценные бумаги или цифровые активы предназначены только для иллюстративных целей и не представляют собой инвестиционную рекомендацию или предложение предоставить консультационные услуги по инвестициям. Кроме того, этот контент не предназначен и не предназначен для использования какими-либо инвесторами или потенциальными инвесторами, и ни при каких обстоятельствах на него нельзя полагаться при принятии решения об инвестировании в какой-либо фонд, управляемый a16z. (Предложение инвестировать в фонд a16z будет сделано только в меморандуме о частном размещении, договоре о подписке и другой соответствующей документации любого такого фонда, и их следует читать полностью.) Любые инвестиции или портфельные компании, упомянутые, упомянутые или описанные не являются репрезентативными для всех инвестиций в транспортные средства, управляемые a16z, и нет никаких гарантий, что инвестиции будут прибыльными или что другие инвестиции, сделанные в будущем, будут иметь аналогичные характеристики или результаты. Список инвестиций, сделанных фондами, управляемыми Andreessen Horowitz (за исключением инвестиций, в отношении которых эмитент не предоставил разрешение на публичное раскрытие информации a16z, а также необъявленных инвестиций в публично торгуемые цифровые активы), доступен по адресу https://a16z.com/investments. /.

Диаграммы и графики, представленные в нем, предназначены исключительно для информационных целей, и на них не следует полагаться при принятии каких-либо инвестиционных решений. Прошлые показатели не свидетельствуют о будущих результатах. Содержание говорит только по состоянию на указанную дату. Любые прогнозы, оценки, прогнозы, цели, перспективы и/или мнения, выраженные в этих материалах, могут быть изменены без предварительного уведомления и могут отличаться или противоречить мнениям, выраженным другими. Пожалуйста, посетите https://a16z.com/disclosures для получения дополнительной важной информации.

Отметка времени:

Больше от Andreessen Horowitz