[00:04] уроке я покажу вам, как создать простой бот-снайпер. Как вы видите, как тот, что вы видите здесь, он способен находить новые токены на Salana. Он слушает новый столб ликвидности Radium, и мы можем отслеживать [00:21] новые токены, а затем, когда мы их отслеживаем, мы можем «снайперить» эти токены, используя бот. В этом уроке я покажу вам хороший обзор того, как он работает и что происходит «под капотом». Итак, мы уже [00:36] происходит «под капотом». Итак, мы уже отправили несколько транзакций. Давайте перейдем к моему кошельку токенов, чтобы посмотреть, как бот-снайпер показал себя. кошельку токенов, чтобы посмотреть, как бот-снайпер показал себя. [00:52] И вот несколько транзакций, которые произошли ранее во время которая только что пришла минуту назад, и еще одна, которая тоже была отправлена. Итак, если я [01:07] открою это здесь, мы увидим, что я купил токен под названием Soul купил токен под названием Soul High, и код токена — Soul High. High, и код токена — Soul High. Я собираюсь перейти Вот [01:21] сюда, и вы видите токен, который я только что захватил. Если я скопирую адрес своего кошелька, перейду в Maker и отфильтрую, вы увидите, что я купил его здесь, и у нас уже есть некоторая нереализованная прибыль. [01:38] Я купил его на 1-й, 3-й, 4-й и 5-й 4-й и 5-й секундах. Хорошо, давайте остановимся секундах. Хорошо, давайте остановимся здесь. Мы смогли захватить этот токен на [01:50] 5-й секунде, и это цена токена на данный захваты здесь. Помимо этого, были [02:05] куплены еще два токена. Мы видим, что здесь мы купили Eed. Давайте видим, что здесь мы купили Eed. Давайте [02:19] посмотрим, это Eed, который только что был куплен. Я возьму адрес своего кошелька, куплен. Я возьму адрес своего кошелька, снова перейду в Maker, и мы видим, что мы купили его на 5-й и 4-й секундах и уже в прибыли. Что я [02:34] сделал с этим кошельком, с этим ботом? После покупки я перевел средства на своего После покупки я перевел средства на своего позициям и увидеть Soul High, [02:49] позицию по Eed и Anom MW. Это, вероятно, третий токен, и причина, почему... По моему опыту, эта стратегия дает больше контроля над продажами и помогает максимизировать прибыль. Если автоматизировать продажи, я [03:04] обнаруживаю, что получаю меньше прибыли. Здесь же я могу просто выбрать «SooTiger» и решить, продавать ли, основываясь на том, что вижу на графике. Вот, например, «Eed» или «Soul [03:21] так работает бот-снайпер. В этом уроке я просто покажу вам код. Если вы новичок в программировании, возможно, это покажется немного сложным, но я постараюсь сделать все максимально просто. Это общий обзор. Если [03:37] будет больше интереса, я сделаю более подробный курс, возможно, пошаговый для начинающих, который расскажет вам о создании всего с нуля. Но в этом видео я постараюсь охватить общую [03:53] охватить общую картину. Итак, прежде всего, давайте разберемся, что происходит. Это упрощенное объяснение того, как создать бот- снайпер. Первое, что вам нужно, это RPC-соединение. Что такое RPC- [04:08] соединение? Представьте это как вызов API или способ взаимодействия компьютеров друг с другом. В нашем случае мы пытаемся получить данные из блокчейна, поэтому нам нужно какое-то соединение для получения информации о [04:23] блокчейне. Обычно люди используют разных поставщиков, например, используют разных поставщиков, например, Helus (я укажу реферальную ссылку в описании). Helus предоставляет RPC-соединения для подключения к Salana. Blockchain [04:38] Shift — ещё один хороший вариант. Итак, у нас есть RPC- соединение. После установления RPC- соединения мы просто прослушиваем данные в блокчейне, и мы пытаемся прослушивать данные, касающиеся конкретно [04:54] данные, касающиеся конкретно нового опроса ликвидности. Большинство новых опросов ликвидности в Salana и новых токенах запускаются с и новых токенах запускаются с помощью программы Radium. Radium — это [05:07] автоматизированный маркет-мейкер, где создатели токенов формируют создатели токенов формируют пул ликвидности, состоящий из базового токена и котируемого токена (обычно это Salana), поэтому [05:23] это Salana), поэтому люди могут торговать ими. [05:36] Gummy, вы увидите, что у нас есть пул ликвидности, состоящий из... 775 000 саланы и 75 7 775 000 [05:58] токенов. Radium — это программа, используемая для создания нового пула ликвидности. я покажу вам это через секунду. Мы извлечем ключи пула. [06:14] секунду. Мы извлечем ключи пула. Ключи пула — это просто комбинация публичных адресов, используемых при создании пула ликвидности. Обычно их около 14, и эти ключи пула необходимы для [06:31] создания так называемой инструкции обмена, которую вы отправляете в блокчейн, чтобы получить токен. Итак, это то, что мы кратко рассмотрим в этом уроке, чтобы вы поняли. Хорошо, давайте перейдем сюда и [06:49] поговорим об этой транзакции. Прежде всего, это пример транзакции создания нового пула ликвидности. Если вы откроете кошелек создателя токена, вы [07:02] можете посмотреть транзакции, и вы увидите, что одна из транзакций выглядит так. Как узнать, что это транзакция создания нового пула ликвидности? Она взаимодействует с пулом ликвидности Radium [07:22] токена, подписавший его, перевел свои токены в Radium и Salon. Таким образом, он создает пару, состоящую из 357 миллионов своих токенов и [07:36] пяти токенов Salon. Как только он создаст эту пару, вы увидите, что множество «снайперов» начнут перехватывать новые токены. Вот что произошло [07:48] вкратце: в данном случае это создание пула ликвидности. Но давайте углубимся немного. Если вы прокрутите вниз, вы увидите инструкции, которые были задействованы. [08:00] Помните, мы говорили об извлечении инструкций, использованных для создания инструкций, использованных для создания пула ликвидности, и SoulScan хорош тем, что предоставляет удобный пользовательский интерфейс. Мы видим, что нам нужно было создать несколько учетных записей, нам [08:12] что нам нужно было создать несколько учетных записей, нам нужно было взаимодействовать с программой Radium, и это были различные учетные записи, участвующие в этом взаимодействии. Затем у нас есть инструкции, где происходят [08:26] переводы между различными учетными записями, и в конечном итоге мы получаем созданный пул ликвидности. Хорошо, [08:38] теперь давайте сделаем шаг дальше. Я вернусь через шаг, но я просто хочу показать вам упрощенное представление о том, что такое ликвидность. [08:50] Транзакция пула выглядит так, а ключи пула выглядят вот так — это просто разные адреса, соответствующие пулу. [09:02] Например, это ключ пула. Один из ключей пула — это ключ PIR, также известный как Bull ключ PIR, также известный как Bull ID, который представляет собой данные [09:18] пула, то есть он содержит информацию о свопах между двумя парами, а также информацию об объеме и так далее. Сейчас это не отображается, но это Pull ID. У вас также есть базовый [09:35] адрес токена, адрес котируемого токена, Market ID, который используется для создания рынка до создания пула, и так далее. Итак, это то, что представляют собой создания пула, и так далее. Итак, это то, что представляют собой ключи пула. А [09:58] вы видите здесь своп, и вы, вероятно, видели не осознавали этого. А вот как выглядит транзакция свопа или инструкции по свопу. Вы видите, [10:14] это инструкции, предоставленные для выполнения свопа. Итак, когда мы пытаемся сделать снайперскую сделку, мы хотим воспроизвести то, что видим здесь, на Soul Scam, мы хотим создать необходимый токен. Мы хотим перевести учетные записи [10:32] токен. Мы хотим перевести учетные записи и выполнить обмен Radium, предоставив все необходимые ключи пула для [10:45] при выполнении обмена мы просто копируем то, что видим просто копируем то, что видим здесь. Это успешная [11:01] Мы получаем соединение LPC, прослушиваем новые транзакции, извлекаем ключи, затем создаем инструкцию SWA для копирования того, что видим инструкцию SWA для копирования того, что видим здесь в [11:17] инструкциях, и затем получаем токен. Вот и все. Хорошо. Теперь перейдем к коду. Если вы полный новичок в программировании или только начинаете, новичок в программировании или только начинаете, я рекомендую вам [11:30] сначала установить Node.js на свой компьютер. Это хороший компьютер. Это хороший пакет, который помогает запускать JavaScript на вашем компьютере. Я не буду слишком углубляться в объяснение [11:46] можете использовать GPT. В интернете много базовых видеороликов по настройке Node.js. Вы также можете настроить VS Code. [11:58] Популярный редактор кода — это тот, который я я использую. Сейчас мы перейдем к полной кодовой базе, использую. Сейчас мы перейдем к полной кодовой базе, [12:12] вся эта кодовая база, содержащая всю логику для снайпера, всю логику для снайпера, доступна для покупки. Так что, если вы не хотите возиться с ее сборкой, вы [12:26] ее сборкой, вы можете связаться с нами через Discord. Сейчас действует принцип «кто первый, тот и получит». Но это вся кодовая база, которую вы получите, так что вам не нужно будет все это собирать [12:41] самостоятельно. Если вы новичок в программировании, просто зайдите сюда и запустите скрипт, и все. Это все, что вам нужно сделать, в отличие от необходимости делать все с нуля. Давайте рассмотрим код [12:57] и посмотрим, как он соответствует тому, что мы обсуждали. Первое, что мы хотим сделать, это начать отслеживать новые токены, которые мы передаем в соединение RPC. Это может быть Helia Shift или множество других [13:13] доступных вариантов. Все это просто просто прослушивает Программа Radium, потому что программа Radium в блокчейне выполняет [13:29] транзакции. Итак, мы слушаем программу Radium, и мы говорим, [13:42] что когда мы получаем оповещение о новой транзакции, новое оповещение от Radium, мы получаем данные о прошлой транзакции. Хорошо, [13:54] давайте вернемся назад. Помните, мы хотим получить данные о транзакции LP? И эта транзакция LP будет выглядеть так... [14:06] выглядеть так... э-э, она будет выглядеть вот так... э-э, вот так... э-э, она будет выглядеть вот так... э-э, вот так... это Soul Scan делает это наглядно, на самом деле это выглядит вот так. Вот как [14:21] это выглядит на самом деле. Итак, когда вы видите здесь в этом коде, что я получаю данные о прошлой транзакции, это дает мне полную необработанную [14:33] информацию об этой транзакции. Так что все, что вы видите здесь, то же самое, что и здесь, просто Soul Scan сделал это очень наглядно, вместо того, чтобы показывать вам полную информацию. Но если мы [14:46] собираемся получить доступ программно, нам нужно сделать это, чтобы получить полную информацию. Вот что мы получаем обратно от этой функции: значение "прошлая транзакция" — это вот это значение. Это время создания блока? Вы получаете метаданные, [15:03] вы получаете массу информации, и когда мы это получаем, как вы видите, здесь представлены все инструкции, используемые [15:16] для создания пула ликвидности. Но если вы посмотрите вниз, посмотрите сюда, это ключевой момент. Именно здесь посмотрите вниз, посмотрите сюда, это ключевой момент. Именно здесь [15:28] создания ликвидности, и вы видите, что они пронумерованы. Таким образом, все эти учетные записи, которые показывает S Scan, эквивалентны всем этим учетным записям здесь. Поэтому нам нужно извлечь массив учетных записей, [15:45] и обычно четвертый индекс массива учетных записей — это ID PO, то есть массива учетных записей — это ID PO, то есть [15:57] ликвидности. Это имеет смысл, и именно это мы здесь и делаем. Мы, по сути, просматриваем и проходим по по всей структуре данных и [16:12] всей структуре данных и получаем ключ извлечения, ID извлечения или P-адрес, индекс [16:28] получаем этот четвертый индекс IND, мы индекс IND, мы [16:40] фактических ключах пула, он содержит данные о проекте и ключах извлечения, [16:52] задействованных в этом проекте. Итак, что мы можем сделать, как только у нас есть адрес порта, мы можем извлечь ключи пула. Это то, что мы хотим получить обратно. Вот как [17:04] выглядят все ключи пула, я покажу вам это через секунду. Итак, вот как выглядят ключи пула: адрес для вывода средств, базовый адрес, адрес котировки, количество десятичных знаков и так далее, и так далее, [17:19] адрес котировки, количество десятичных знаков и так далее, и так далее, и так далее, идентификатор рынка и так далее. Как только у и так далее, идентификатор рынка и так далее. Как только у нас есть идентификатор вывода средств, поскольку данные идентификатора вывода средств включают информацию о ключах пула, мы можем [17:32] просто извлечь информацию об учетной записи из идентификатора вывода средств, а затем декодировать ее, чтобы получить необходимую структуру состояния. Но чтобы упростить [17:45] необходимую структуру состояния. Но чтобы упростить мы просто декодируем информацию, чтобы получить информацию о выводе средств, [17:57] информацию, чтобы получить информацию о выводе средств, которую вы только что видели в ключах вывода средств ликвидности ключей вывода средств, являющийся частью данных, называется идентификатором рынка. Когда [18:12] кто-то создает новый токен, ему необходимо создать идентификатор рынка. Этот ему необходимо создать идентификатор рынка. Этот идентификатор рынка используется через программу, известную как SETUM или OpenBook. Она помогает управлять [18:29] книгой ордеров. И этот идентификатор рынка является одним из ключей вывода средств, поэтому нам нужна информация об этом этом идентификаторе рынка и связанном с ним другом рынке. Итак, [18:45] мы получаем данные из идентификатора рынка, и как только у нас есть данные из идентификатора пула и идентификатора рынка, мы можем [18:57] идентификатора рынка, мы можем сформировать все ключи пула. Вот эти ключи пула. Большинство из них будут задействованы, [19:12] все. Большинство будут задействованы. ищем pys, заключается в том, что если вы хотите совершить обмен, как вы видите здесь, [19:26] или как вы видите, когда я сделал чит-код, вам нужны все необходимые ключи пула, когда вы отправляете инструкцию в Salon, как вы видите здесь, чтобы [19:39] обмен прошел успешно. Вот некоторые из ключей пула, которые мы получаем, вот они, и так некоторые из ключей пула, которые мы получаем, вот они, и так [19:57] токена. Итак, чтобы сделать чит-код токена, помните, нам нужно составить инструкции, которые имитируют то, что мы видим при выполнении обмена. Поэтому мы устанавливаем лимит вычислительных единиц. [20:12] Я сделаю паузу на секунду и порекомендую посмотреть Salon Cookbook, там много полезной информации. В много полезной информации. В [20:38] я сейчас сделаю паузу, потому что собираюсь ввести некоторые понятия, и, вероятно, вам нужно будет почитать дополнительную литературу, чтобы понять, что я собираюсь сказать. Когда вы видите «вычисления», [20:54] например, обмен здесь, мы устанавливаем лимит вычислительных единиц, мы устанавливаем цену за единицу. Эта цена обычно связана с вашей комиссией за газ. [21:06] Это комиссия, которую вы платите за выполнение обмена. Чем больше комиссия, тем, как правило, выше вероятность того, что ваша транзакция будет завершена быстрее. В этом случае нам нужно создать так называемый связанный токен- [21:22] аккаунт. Хорошо, вот почему я сказал прочитать это, Хорошо, вот почему я сказал прочитать это, но я дам вам краткий обзор. Каждый токен- аккаунт — это [21:34] токен-аккаунт, которым вы владеете по своему адресу. Он находится под своим адресу. Он находится под своим собственным открытым ключом. Хорошо, позвольте мне [21:52] токен, как этот парень, он купил 0,9992 парень, он купил 0,9992 [22:04] Solana, и они были переведены обратно ему. Хорошо, но видите, этот адрес — это не тот адрес, который фактически получил токены. Если вы нажмете «Просмотреть токен- аккаунт», это будет фактический адрес, который получил токены. Это Связанный [22:19] токен-счет привязан к адресу. Если я открою этот адрес счета, вы [22:32] увидите, что владельцем является адрес кошелька, с которого была совершена адрес кошелька, с которого была совершена сделка, и этот счет принадлежит сделка, и этот счет принадлежит владельцу. Задача этого счета — [22:45] владельцу. Задача этого счета — хранить данные об этом конкретном токене, принадлежащем этому владельцу. Понятно? Таким образом, каждый раз, когда вы покупаете новый токен, происходит следующее: вам [23:01] нужно создать новый адрес счета токена, который будет хранить данные об этом который будет хранить данные об этом конкретном токене. Поэтому, если он купит конкретном токене. Поэтому, если он купит еще пять токенов того же типа, [23:15] вы увидите здесь больше подписей и общий баланс этого токена. Вот что такое связанный токен или адрес счета токена, и почему это важно? Потому что именно [23:32] туда нужно переводить токены после после покупки. То же самое относится и к покупке в Salon: когда вы совершаете покупку с использованием [23:46] Radium, вы фактически отправляете токены отправляете токены с RapSolana. [24:00] отличается от обычной Salana, потому что RapSolana — это реальный токен, используемый для торговли, поэтому нам нужно создать учетную запись. Нам нужно перевести Salana на этот счет, а затем конвертировать ее в Rap Salana, и тогда мы сможем торговать [24:17] с этим счетом, на котором находится Rap Salana. Понятно? Значит, вам нужно торговать Rap Salana, вы не можете использовать обычную Salana для Salana для торговли. Хорошо, хорошо, [24:33] все становится понятно. Итак, прежде всего, нам нужно определить, какой токен будет поступать в вы будете обменивать один токен на другой. Например, если это Salana и [24:51] токен, то мы хотим дать Rap Salana и получить токен обратно. Итак, входным токеном будет [25:03] Rap Salana, а количество Rap Salana вы можете Salana, а количество Rap Salana вы можете определить. В данном случае это [25:16] Помните, я говорил вам, что нам нужен адрес связанного токена, потому что именно туда будут отправляться или получаться токены. отправляться или получаться токены. Эти адреса содержат данные о [25:29] Эти адреса содержат данные о токенах. Затем мы устанавливаем лимит, цену и лимит, создаем необходимые и лимит, создаем необходимые счета токенов и переводим их. Вводим Salona [25:45] счета токенов и переводим их. Вводим Salona в адрес аккаунта Rapol, затем, по сути, преобразуем её в Rapol [25:58] для торговли, выполняем инструкцию синхронизации, и, наконец, создаём аккаунт для [26:10] самого токена. Чтобы не запутать вас, давайте вернёмся назад, чтобы вы могли понять, что происходит. вернёмся назад, чтобы вы могли понять, что происходит. выполняем эти инструкции: устанавливаем комиссию за газ, [26:29] инструкции: устанавливаем комиссию за газ, создаём необходимый аккаунт для ассоциированных токенов, чтобы отправлять Rapol. Для отправки нам нужно создать аккаунт для ассоциированных токенов, а для получения токенов нам также нужен собственный [26:45] аккаунт, привязанный к моему адресу. Как видите, здесь мы создаём уполномоченный орган. Я являюсь уполномоченным лицом, я подписался на это и создаю этот аккаунт для ассоциированных токенов. Вот аккаунт для ассоциированных токенов, и [26:57] создаю этот аккаунт для ассоциированных токенов. Вот аккаунт для ассоциированных токенов, и по его созданию. Я перевёл 0,01 Soul на этот его созданию. Я перевёл 0,01 Soul на этот [27:13] аккаунт для ассоциированных токенов. Вот инструкция синхронизации, о которой я говорил. Во второй раз я также подписываюсь на создание аккаунта для ассоциированных токенов, и на этот раз именно этот аккаунт для ассоциированных токенов будет использоваться для отправки. Чтобы получить новый токен, [27:28] мы выполняем инструкцию обмена Radium. Давайте перейдем к этому чуть позже. Это инструкция обмена Radium. По сути, мы сообщаем Radium, кто является владельцем, который будет платить, на какой [27:43] счет будет отправлен токен, и на какой счет будет получен возврат из получен возврат из пула ликвидности, и сколько или какое [27:57] количество вы собираетесь отправить. В двух словах, это все, что делает эта инструкция: перевод и получение на баланс. И, наконец, мы, при желании, закрываем [28:13] счет в пуле ликвидности. Это обычно делается в соответствии с передовой практикой, потому что, помните, когда я создавал счет, потому что, помните, когда я создавал счет, [28:28] 0,002 Soul на создание Soul на создание счета для токенов, и он используется для так [28:40] называемой арендной платы. Поэтому, когда вы закрываете счет, вы арендной платы. Поэтому, когда вы закрываете счет, вы получаете свои деньги обратно, то есть вы выкупаете свою [28:58] успешно закрыли счет, закройте его. Вот и все, в двух [29:10] создание транзакции, включая транзакцию закрытия кейса, мы теперь можем транзакцию закрытия кейса, мы теперь можем отправить инструкции оператору через RPC. И вот мы на этом шаге, нам нужно отправить, чтобы [29:31] увидите все методы, которые я применил через SDK. Но очевидно, что в данном случае мы хотим отправить транзакцию, поэтому мы хотим отправить назначенную [29:44] транзакцию, и нам нужно передать вот это, что мы отправляем в транзакции. Она предоставляет различные параметры, поэтому вы можете прочитать об этом в документации. [29:58] здесь делаем. Мы, по сути, получаем хэш последнего блока, а затем создаем то, что называется [30:10] то, что называется сообщением транзакции, и затем отправляем транзакцию. сообщением транзакции, и затем отправляем транзакцию. Здесь есть разные настройки. Например, пропуск предварительных проверок. Обычно, когда вы отправляете транзакцию, [30:23] вы отправляете транзакцию, перед ее отправкой происходят проверки, и если проверки не пройдут, вы получите ошибку. Пропуск предварительных проверок позволяет пропустить предварительные проверки. Обычно это делается с помощью [30:36] предварительных проверок, потому что это экономит время, но есть свои плюсы и минусы. Максимум три попытки. Количество попыток отправки транзакции через RPC-протокол... но да, вы знаете, это просто более сложные [30:48] вещи. Здесь мы просто проверяем, успешно ли обработана транзакция и попала ли она в блокчейн. Если транзакция не удалась, ошибка означает, что мы не смогли подтвердить транзакцию. Если нет, то мы, по сути, говорим, что транзакция [31:05] успешна. Вот и все, в двух словах. Вот как создать базового снайперского бота. Теперь в этом репозитории у меня [31:17] есть более продвинутый бот, он называется снайперский он называется снайперский бот GTO. Снайперский бот GTO — это бот- снайпер, который включает в себя фреймворки. GTO — это [31:34] фреймворки. GTO — это программное обеспечение, это действительные данные, которые используются программное обеспечение, это действительные данные, которые используются многими снайперскими ботами, в частности, вам, например, если вы перейдете к Trojen, B, Bonk [31:50] или любому другому из этих ботов, и зайдете в настройки, вы можете заметить такую ​​вещь, как подсказка. И это [32:03] защищает вас, а также позволяет отправлять опережающих операций. Кроме того, это позволяет платить [32:17] проверенным пользователям, чтобы стимулировать их участие. Многие боты используют это, многие боты TG тоже, потому что это обычно [32:31] значительно ускоряет заход в цепочку и снижает вероятность сбоя транзакции. Если вы сталкивались с перегрузкой в ​​Salon и пытались использовать обычный кошелек, вы, вероятно, замечали, что происходит много [32:46] сбоев. Используя этот совет, который я включил в код с помощью GTO, вы сможете заходить в транзакции гораздо быстрее и [33:04] добавил, это различные проверки логов. Вы можете изменить минимальное количество токенов для перехвата, максимальный процент созданных токенов, максимальный процент топ-10 токенов. [33:21] Это различные конфигурации, которые вы можете настроить, чтобы не перехватывать каждый новый токен. Вы можете фильтровать их по различным параметрам, есть также разные конфигурации снайперской стрельбы, которые вы можете изменить, [33:37] например, сколько вы хотите купить за сделку, какова минимальная сумма, необходимая для сделки, и так далее. Хорошо, эта версия, которую я показал вам в этом уроке, очень-очень простая. Она [33:53] также не включает логику для переноса в TG-бота, который я показал вам первым, но он находится внутри GTO-бота. И даже если вы новичок в программировании, я также предоставляю закрытый канал поддержки [34:11] в Discord после покупки, так что вы также получите поддержку по настройке. Как только у вас будут ключи API, все очень просто: зайдите в терминал, просто: зайдите в терминал, запустите скрипт, и когда вы захотите его [34:25] остановить, просто нажмите Ctrl+C, и он остановит снайперскую стрельбу. Вот и все, в остановит снайперскую стрельбу. Вот и все, в двух словах, очень просто, но эффективно. И в Discord у меня есть канал под названием «Зал славы», и [34:40] в «Зале славы» Слава богу, я опубликовал некоторые результаты, которые получил, используя снайперского результаты, которые получил, используя снайперского бота. Некоторые из них были 400 x 500 x... купленного снайперского бота. Так что, если вы хотите получить всю кодовую базу, [34:58] бота. Так что, если вы хотите получить всю кодовую базу, вы можете связаться со мной через вы можете связаться со мной через Discord. Всё будет в описании, так что вы можете связаться со мной, сообщить о своём [35:10] интересе, я вышлю подробности, и вы сможете совершить покупку. Также в Discord есть участники, у которых вы можете задать вопросы, чтобы убедиться, что это вам подходит. Надеюсь, вам понравилось видео. [35:24] Если вам нужно что-то более подробное и техническое, более детальное объяснение этого кода, я посмотрю комментарии и отталкиваюсь от них. check the comments and take from there thank you