Розшифрування ERC7527: нова модель децентралізованої ціноутворення

Огляд

Як оцінити ранні ідеї або застосунки та взяти участь в інвестуванні? Це великий виклик у децентралізованому світі. ERC7527 відповідає на консенсус щодо “кредиту, створеного грошей”, пропонуючи парадигму децентралізованої ціноутворення на основі преміуму.

У цій статті ми детально розглянемо принципи та деталі протоколу ERC7527, подальші переваги моделі послідовних котирувань та деякі розширені застосування, що виникають на основі програмованості та комбінаторності ERC7527.

ERC7527

У попередній статті ми розглянули поточні загальні моделі ціноутворення, включаючи особливу модель неперервного котирування ERC7527 та математичне вираження цієї моделі. Однак введення ERC7527 у попередній статті було досить простим, у цьому розділі ми детально розглянемо принципи та деталі протоколу ERC7527.

ERC7527 пропонує новий парадигму оцінки додатків шляхом випуску токенів ERC7527. Фактично, ціна токенів ERC7527 кількісно відображає ринкову капіталізацію додатків (ринкова капіталізація додатків = ціна ERC7527 * кількість). Цим методом оцінки вартості додатків перетворюється на оцінку вартості токенів ERC7527. Ціна токенів ERC7527 складається з таких двох частин:

  • ERC7527 надає інтерфейси для запитів на зовнішню покупку (wrap) та продаж (unwrap), що дозволяє розробникам власноруч реалізувати ці операції.
  • Цінування. FOAMM (Функціональний автоматизований ринковий мейкер) на основі ERC7527 використовує обгортку для додавання внутрішньої ліквідності для купівлі та видалення внутрішньої ліквідності для продажу. Ця схема не потребує залежності від зовнішніх постачальників ліквідності.

Щодо питань покупки та фіксації ціни токенів ERC7527, ERC7527 повністю забезпечує програмованість. Зокрема, користувач може викликати наступні функції для отримання ціни:

解读ERC7527:一种全新的去中心化定价模型

Розробнику ERC7527 потрібно створити модель пропозиції під час розробки, щоб визначити остаточну пропозицію. Після отримання поточної пропозиції за допомогою виклику getWrapOracle, користувач може вибрати внести ліквідність у пул ERC7527 для перетворення пропозиції в ціну. Зокрема, користувач може викликати функцію wrap в FOAMM для внесення ліквідності:

解读ERC7527:一种全新的去中心化定价模型

Щодо пропозиції продажу токенів ERC7527 та питання ціноутворення, ERC7527 використовує пул, побудований на FOAMM, для вирішення проблеми перетворення пропозиції продажу в ціну, користувачі можуть використовувати пул для знищення активів, вилучення внутрішньої ліквідності та виходу. Тут може виникнути проблема, а саме, хто надає ліквідність в пулі.

У попередньому тексті ми зазначили, що FOAMM через wrap додає внутрішню ліквідність, це є джерелом ліквідності в басейні. ERC7527 використовує FOAMM для введення ліквідності, яку користувачі сплачують за активи, в басейн для забезпечення ліквідності виведення. Для розробників необхідно лише надати ціну продажу, оскільки в басейні є ліквідність, ціна продажу є фіксованою ціною продажу. Конкретно розробникам потрібно реалізувати наступну функцію для забезпечення функціонування ціни продажу:

解读ERC7527:一种全新的去中心化定价模型

Розробники можуть будувати будь-яку функцію продажу на основі ліквідності пулу, слід звернути увагу на те, що кінцева ціна продажу повинна зберігати баланс розрахунку пулу. Користувачі можуть викликати getUnwrapOracle, щоб отримати поточну ціну продажу токена ERC7527, а також можуть викликати unwrap-функцію FOAMM для знищення токена ERC7527, щоб отримати кількість токенів продажу у пулі:

解读ERC7527:一种全新的去中心化定价模型

Загалом для користувача взаємодія з ERC7527 складається лише з двох частин:

  • Викликайте функцію getWrapOracle, щоб отримати поточну ціну покупки, якщо ціна покупки відповідає, то викликайте функцію wrap для впровадження ліквідності та отримання токенів ERC7527.
  • Викликати функцію getUnwrapOracle, щоб прочитати поточну ціну продажу. Якщо ціна продажу відповідає, викликати функцію unwrap, щоб знищити відповідну кількість токенів з пула викупу ERC7527.

У повернених значеннях функцій getWrapOracle та getUnwrapOracle, які наведено вище, є параметри price та fee. price вказує на поточну кількість токенів ERC7527, яку потрібно сплатити за обгортання або розгортання, а fee вказує на комісію. Незалежно від того, чи це операція обгортання, чи розгортання, користувач повинен сплатити певну кількість комісії, яка в кінцевому підсумку буде вилучена вказаним користувачем.

ERC7527 - це стандартний токен, схожий з ERC20 токеном, він також має свою власну адресу токену. ERC7527 містить наступні визначені поля:

解读ERC7527:一种全新的去中心化定价模型

Вищезазначена структура визначає найбільш важливі властивості ERC7527, де currency вказує, який токен надає користувач для миття токенів ERC7527, premium вказує початкову ціну токенів ERC7527, feeRecipient вказує адресу отримувача комісії під час процесу обгортання та розгортання, а mintFeePercent та burnFeePercent вказують відсоток комісії обгортання та розгортання.

Токен ERC7527 має характеристику коливання премії (premium), використовуючи термін price у визначенні функції вище, тобто premium в структурі Asset.

ERC7527 визначає три різні модулі:

  1. Адреса контракту додатків - це адреса контракту ERC7527 токенів. ERC7527 вимагає, щоб контракт додатків успадковував відповідні інтерфейси ERC721Metadata. Крім того, цей контракт повинен відкрити інтерфейси mint та burn для зручності виклику пулом. Крім того, інтерфейси mint та burn можуть бути викликані лише пулом, щоб уникнути небажаного мінтінгу токенів ERC7527, що призводить до незбалансованого розрахунку пулу.
  2. Агентство Агентство - це контракт, який був часто згадуваний у попередньому тексті та який використовується пулом та FOAMM, він є основним контрактом для взаємодії з користувачами. Функції getWrapOracle/wrap/getUnwrapOracle/unwrap, згадані вище, знаходяться в цьому контракті. Цей контракт зберігає токени, які були інжектовані користувачами під час купівлі (wrap), щоб вони могли бути використані користувачами під час виходу (unwrap). Цей контракт є контрактом для розрахунків з токенами ERC7527.
  3. Factory - це допоміжний договір, який спрощує розгортання App та Agency для полегшення розгортання токенів ERC7527 користувачами.

Взаємозв’язок між трьома компонентами можна побачити на наступній схемі:

解读ERC7527:一种全新的去中心化定价模型

App та агентство в ERC7527 мають взаємозв’язок з подвійним зв’язуванням. З кодової точки зору, функції mint та burn App можуть бути викликані тільки агентством, а ERC7527 також узгоджує ряд функцій для зручності користувачів у випадку, коли відома App для запиту адреси агентства (функція getAgency), або відомо агентство для запиту адреси App (функція getStrategy).

З точки зору ліквідності, кожен токен ERC7527 у додатку має відповідну ліквідність в басейні, що забезпечує баланс очищення басейну.

Ця схема використання токенів ERC7527 для децентралізованої ціноутворення додатків є революційним інноваційним рішенням, яке вводить новий парадигму впереджавлення валюти перед створенням додатків. Для найбільш ранніх додатків розробники можуть безпосередньо використовувати фабрику ERC7527 для розгортання токенів ERC7527.

Користувачі можуть викликати функцію обгортання, щоб виробляти токени ERC7527 для участі в ранньому інвестуванні в проект, або викликати функцію розгортання, щоб вийти з інвестицій. Для розробників ціна токена ERC7527 може надати ефективну ринкову капіталізацію для ранніх додатків. З розвитком додатків та збільшенням власників токенів ERC7527, зростає ринкова капіталізація додатків, і власники токенів ERC7527 та розробники додатків можуть отримати стимули для зростання ринкової капіталізації.

Модель послідовної цінової пропозиції

У попередньому розділі ми детально обговорили принцип роботи ERC7527, але не розглядали конструкцію моделі запиту на покупку. ERC7527 надає лише інтерфейс getWrapOracle, а конкретна реалізація моделі запиту на покупку повністю залежить від розробника. У цьому розділі ми пропонуємо більш універсальну модель запиту на покупку.

Ціна пропозиції на покупку ERC7527 повинна розглядатися з мікро- та макроперспективи.

Загалом очікується, що ціни на токени ERC7527 будуть зростати разом зі збільшенням кількості утримуваних токенів ERC7527. Конкретніше, поточна ціна токенів ERC7527, яку отримано за допомогою getWrapOracle, не повинна бути нижче ціни встановленої (або так званої “останньої купівлі за ціною”).

Ціна ERC7527 токенів повинна зростати зі збільшенням кількості володіння ERC7527 токенами, що приведе до цікавого результату, а саме самі ERC7527 токени будуть мати механізм розширення кредиту. Зокрема, можна очікувати, що ринкова капіталізація ERC7527 токенів буде більшою за TPL (Total Premium Locked). Цей механізм розширення кредиту дозволить кожному власнику ERC7527 токенів збільшувати свій кредит.

У попередньому тексті ми не згадували про угоду з продажу unwrap, що безпосередньо призведе до зниження ціни пропозиції на угоду з купівлі. Ми можемо використовувати найпростішу основану на стеку систему для реалізації схеми зниження ціни пропозиції на угоду з купівлі через угоду з продажу.

解读ERC7527:一种全新的去中心化定价模型

Ми зберігаємо всі історичні ціни ERC7527 у стеку, і кожного разу, коли утворюється нова ціна, ми додаємо її до стеку, модель цін на покупку буде залежати від останньої ціни в стеці, щоб надати ціни на покупку.

А коли користувач продає, ми безпосередньо використовуємо останню ціну покупки new price в якості ціни продажу, виводимо ліквідність з Агентства користувачам, а також видаляємо ціну зі стеку. На цей момент модель котирування все ще залежить від останньої ціни price2 в стеці для надання котирувань ззовні.

Оскільки price2 менше за new price, після розгортання моделі цінових пропозицій з ціною, базовою на new price, ціни, що подаються згідно з price2, також будуть нижчими. Звичайно, цей продаж на основі стеку є лише найпростішою схемою продажу.

З мікроперспективи модель пропозицій повинна мати механізм регулювання цін, схожий на голландський аукціон. Головною особливістю голландського аукціону є введення часу в модель пропозицій, з плином тривалого часу без угод ціна автоматично повинна знижуватися.

Але голландський аукціон має один досить серйозний недолік, оскільки з часом ціни обов’язково знизяться, існує дилема ув’язненого, пов’язана з очікуванням, що в кінцевому підсумку призведе до постійного зниження цін. Хороша модель цінової пропозиції на мікрорівні повинна включати часовий фактор, і також повинна мати два етапи - памп та демпінг.

Загально кажучи, хороша модель ціноутворення повинна відповідати наступним вимогам:

  • Предложенная цена покупки не должна быть ниже уже сформированной цены. Это гарантирует, что с увеличением количества держателей токенов ERC7527 макроэкономически цена покупки и цена увеличиваются.
  • Конкретна функція ціноутворення повинна мати часовий фактор та включати як підйом, так і спад.

Крім того, ми хочемо, щоб модель ціноутворення відповідала законам зростання таких застосувань:

  • На ранньому етапі має високий потенціал зростання
  • В середньостроковому етапі він має стійкий потенціал росту

Ми докладніше розглянемо рішення в наступних розділах.

По-перше, задовольнення макроекономічних вимог насправді досить просте: нам потрібно включити ціну (Pn-1) як фактор у модель пропозицій. Для мікроекономічного попиту ми можемо розділити функцію на частини, щоб вирішити проблему. Нарешті, ми можемо отримати наступну функцію пропозиції:

解读ERC7527:一种全新的去中心化定价模型

Щодо конкретного значення параметрів цієї функції ціни, читачі можуть звернутися до вступної статті, де наведено пояснення. Ми безпосередньо наводимо зображення цієї функції ціни.

解读ERC7527:一种全新的去中心化定价模型

На даному графіку вісь x представляє одиницю часу, яка відображає часовий інтервал від останньої угоди, а вісь y представляє відношення поточної цінової пропозиції до ціни попередньої угоди. Варто зазначити, що коли ціна падає нижче ціни попередньої угоди, модель цінової пропозиції буде пропонувати лише ціну, що дорівнює ціні попередньої угоди, що відповідає макроекономічним вимогам моделі цінової пропозиції.

Ми прямо бачимо, що модель цін на обговорення, яка була описана вище, має як початкову фазу підйому, так і наступну фазу зниження, подібну до голландського аукціону. Це ефективно задовольняє мікроекономічні вимоги моделі цін на обговорення. Тут ми можемо побачити, що на початковій фазі підйому існує стрибкоподібний ріст, це робиться для уникнення ситуації, коли кількість утримуваних ERC7527 під час послідовного мінтингу зростає, але ціна не змінюється значно.

Ми створюємо середовище для моделювання вищезазначеної цінової моделі, результати моделювання наведені нижче:

解读ERC7527:一种全新的去中心化定价模型

У моделірованій діаграмі свічок перший стовпчик позначає поточний тренд цін на токен ERC7527, а другий стовпчик позначає поточну кількість утримуваних токенів ERC7527, ця кількість збільшується при операції wrap і зменшується при операції unwrap. З кодового точки зору другий стовпчик фактично є результатом виклику функції totalSupply додатка. Третій стовпчик позначає поточну кількість операцій wrap та unwrap, де зелена лінія позначає кількість операцій wrap, а червона лінія позначає кількість операцій unwrap.

На зображенні показано ранню роботу деяких пулів. Можливо, на початковому етапі через недостатню згоду користувачі входили та виходили, що призводило до тривалого коливання цін навколо початкової ціни, поки не виникли деякі сприятливі обставини, користувачі обрали купівлю, але потім ранні користувачі викинули ціни до початкового рівня, і, нарешті, зі збільшенням власників токенів ERC7527, ціни коливалися вгору в хвилюваннях.

Через вищезазначену просту моделювання, ми бачимо одну дуже важливу перевагу моделі послідовних цінових пропозицій, а саме, те що операції покупки користувача безпосередньо впливають на процес ціноутворення, це призводить до того, що практично неможливо, щоб два токени ERC7527 вийшли з однаковим свічковим графіком, що значно підвищує складність гри в системі.

Нижче показано конкретний зміни цін. Тут B відображає купівлю (wrap), а S - продаж (unwrap). Ми бачимо, що в цілому модель цін кожного разу під час покупки торгового курсу не менше, ніж під час попередньої угоди, тоді як при продажу використовувалася попередня купівельна ціна, тому цей графік має певну симетрію.

解读ERC7527:一种全新的去中心化定价模型

На практиці ми вирішуємо макро- та мікропотреби вищезазначеної моделі цін, а також враховуємо принцип росту «високого розмаху на ранніх етапах розвитку». Далі, нам потрібно вирішити проблему, а саме, як забезпечити стійкий ріст цін після застосування. Високий розмах цін на ранніх етапах відповідає ранньому високому росту застосування. Ціни на середньому і пізньому етапах повинні відповідати стійкому розвитку застосування, тому нам потрібно побудувати систему цін стійкого росту на середньому і пізньому етапах.

Отже, ми вирішили вирішити цю проблему шляхом сегментації, а саме використання високо зростаючої системи цін у ранніх цінових пропозиціях та стабільно зростаючої системи цін у пізніший період. Звичайно, крім раннього та пізнього сегменту, які були описані в цій статті, розробники можуть розділити це на більшу кількість сегментів відповідно до своєї ситуації, наприклад, використовуючи різні функції зростання в ранньому, середньому та пізньому періодах.

На самом деле, мы все еще используем функцию предложения, которая соответствует ранним данным, но изменили некоторые параметры, и измененная кривая функции предложения выглядит следующим образом:

解读ERC7527:一种全新的去中心化定价模型

Порівняно з функцією ранішніх пропозицій, ми бачимо, що початковий приріст функції пізніших пропозицій нижчий. Вісь x на діаграмі все ще використовується в якості одиниці часу між останніми угодами, але варто звернути увагу, що ця одиниця часу менша, ніж у функції раніших пропозицій.

Ми спробували симулювати зміни цін на угоди під час постачання токенів ERC7527 від 0 до 20000, отримали таку динаміку на графіку свічок:

解读ERC7527:一种全新的去中心化定价模型

Вихідний графік руху цін на зазначеному вище графіку свічок був встановлений початковою ціною 0.1. Коли обсяг постачання досяг 20000, ціна зростала з початкових 0.1 до 300, що відповідає зростанню в 3000 разів.

Звичайно, деякі програми можуть бути не гладкими. Наступний свічковий графік показує цінові зміни, які процвітали в перші дні і раптово зіткнулися з кризою, яка змусила користувачів вийти з ринку:

解读ERC7527:一种全新的去中心化定价模型

Вище зазначені приклади свідчать, що наш запропонований модель ціноутворення є ефективним, вона відповідає закономірності зростання застосування, а саме вона має високий ріст на ранніх етапах і стабільний ріст на пізній стадії. Ці переваги пояснюються тим, що ми використовуємо сегментовану модель ціноутворення з різними параметрами функцій у ранніх і пізніх етапах.

З іншого боку, оскільки функція ціноутворення є неперервною, користувач може зачекати, доки функція ціноутворення надасть очікувану ціну, і конкретні умови ціноутворення будуть змінюватися залежно від поведінки користувача. Це призводить до того, що в рамках введеної моделі ціноутворення існує гра між користувачем і моделлю ціноутворення, а також гра між користувачами. Гра між користувачами є надзвичайно складною, що ускладнює виведення стратегії для отримання безрискового доходу шляхом зворотного виведення на основі моделі ціноутворення.

Розширені застосунки

У цьому розділі ми розглянемо наступні розширені застосування ERC7527:

  • ERC7527 як стимулюючий рівень для застосування штучного інтелекту
  • ERC7527, як оракул-машина, є особливо важливим для інших додатків, особливо для додатків з позичками.

Стимулюючий рівень застосування штучного інтелекту

Застосування штучного інтелекту потребує нового рівня мотивації, а ERC7527 може забезпечити систематизований рівень мотивації для застосування штучного інтелекту, тоді як токени ERC7527 є основним активом мотиваційного рівня.

Застосування штучного інтелекту на ранній стадії розвитку використовує токен ERC7527 для оцінки його застосування. На цей момент застосування штучного інтелекту має ринкову вартість, визнану учасниками ринку, і користувачі можуть безпосередньо інвестувати в застосування штучного інтелекту, володіючи токеном ERC7527 через операцію wrap.

З погляду ринкової капіталізації, разом з розвитком застосування штучного інтелекту та зростанням обсягів утримання ERC7527, розробники застосувань штучного інтелекту та власники токенів ERC7527 отримають великі стимули від зростання ринкової капіталізації.

AI застосування також може подальше використовувати заходи щодо дивідендів для стимулювання користувачів. AI застосування безпосередньо вимагає від користувачів використання токенів для оплати на другому рівні Ethereum.

Користувачі можуть викликати контракт для оплати витрат на застосування штучного інтелекту. Ці витрати, що заблоковані в контракті оплати, регулярно переводяться на контракт дивідендів, власники токену ERC7527 можуть безпосередньо отримувати прибуток від контракту дивідендів, а розробники застосування штучного інтелекту також можуть отримувати частину прибутку від контракту дивідендів.

На реалізаційному рівні токени ERC7527 успадковують ERC721, що означає, що токени ERC7527 можуть створювати контракти облікових записів ERC6551 за допомогою протоколу ERC6551. І ми можемо переміщати облікові записи ERC6551 токенів ERC7527 на другий рівень Ethereum за допомогою деяких технічних рішень. Конкретний шлях технічної реалізації наступний:

解读ERC7527:一种全新的去中心化定价模型

Коли користувач має токен ERC7527, він може викликати фабричний контракт ERC6551, розташований в основній мережі Ethereum, щоб розгорнути обліковий запис ERC6551 для токена ERC7527, а потім використовувати обліковий запис ERC6551 для виклику контракту моста ERC6551, розташованого в основній мережі. Контракт моста буде викликати фабричний контракт ERC6551, розташований на другому рівні Ethereum, щоб розгорнути обліковий запис ERC6551 на другому рівні для користувача через кросчейн міст.

Частина ERC6551 має найпростішу реалізацію, розробники можуть посилатися на код у ERC6551Mirror, цей репозиторій використовує Chainlink CCIP для реалізації міжланцюжкової взаємодії ERC6551.

Після завершення крос-ланцюгової взаємодії ERC6551 користувачі зможуть використовувати цей рахунок ERC6551 для вилучення винагороди з внутрішнього договору про дивіденди.

Оракул-машина атомної стійкості

ERC7615 – це цікава ERC, яка передбачає атомарні, універсальні відносини між контрактами. Цей простий штовхач протокол може сконструювати атомарний Оракул-машина, що робить розвиток таких протокол, як кредитування, протокол значно Падіння.

Принцип роботи ERC7615 показано на наступній діаграмі:

解读ERC7527:一种全新的去中心化定价模型

Коли користувач (клієнт) викликає деякі функції відправника контракту (видавця), відправник контракту перевіряє наявність деяких підписаних контрактів для цих функцій, якщо такі контракти існують, то викликаються функції підписки контракту для надсилання деякого вмісту. Головною особливістю цього процесу є атомарність. Якщо виникають проблеми з обробкою даних підписаного контракту, тоді угода про виклик транзакції відправлення (тобто угода про виклик декількох функцій (…) угоди) також повідомляє про помилку.

У ERC7527 ми багато разів зазначали, що запропонована ціна продажу фактично є фіксованою ціною продажу, і будь-який користувач токенів ERC7527 може вивести ліквідність з внутрішнього резерву за фіксованою ціною продажу. Отже, чи можемо ми передавати фіксовану ціну продажу ERC7527 до протоколу кредитування для здійснення розрахунків у межах протоколу кредитування?

解读ERC7527:一种全新的去中心化定价模型

Відповідь - така. Більше того, через те, що модель послідовного цитування макроекономічно дотримується властивості, згідно з якою ціна продажу зростає зі зростанням обсягів ERC7527, протокол кредитування не потребує операцій обгортання всередині ERC7527, але потребує тільки транзакцій зняття, які можуть спричинити зниження ціни.

Ми можемо вбудувати пуш унврапу в середині функції, щоб безпосередньо надіслати поточну ціну розпакування продажу до кредитного протоколу. Коли кредитний протокол отримує ціну розпакування, він може ліквідувати позиції, що використовують токени ERC7527 як заставу, згідно з інформацією про ціни.

Якщо позиція позики потребує ліквідації, то угода про позику може виконати розгортання оператора для вилучення ліквідності з ERC7527Agency для закриття позиції позики.

Особливо захоплюючим є те, що ця операція є атомарною, тобто, якщо збірка кредитного договору не вдасться, тоді операція розгортання ERC7527 також не буде успішною, що означає, що кредитний договір повністю уникає ризику втрати позиції.

Насправді, будь-який протокол може отримати свою ціну продажу, що передається в ERC7527, це означає, що розробникам потрібно лише написати інтерфейс прийому в ERC7615, щоб отримати ціну активу та виконати інші операції.

У ERC7527, оскільки ERC7527 токени успадковують ERC721 в контракті, розробники можуть надавати додаткові функціональні можливості ERC7527 токенам. Коли користувачі використовують традиційні схеми застави, наприклад, безпосередньо передають ERC7527 в заставний контракт, вони втрачають інші права на ERC7527 токени, тому ERC7527 токени потребують нової схеми застави, яка не потребує передачі активів.

На основі механізму ERC7615 можна розробити таку схему ставок, яка не потребує передачі активів. Зокрема, можна встановити зв’язок між розкриттям в середині контракту ERC7527Agency та ставками на контракт застави. Користувач, що вносить заставу, може спілкуватися з контрактом застави ERC7527 токенів ERC7527, але цей процес не вимагає передачі токенів ERC7527 в контракт застави.

На даний момент токени ERC7527 можуть отримати дивіденди від контракту застави. Коли користувач розгортає вже заставлені токени ERC7527, контракт Агентства використовує ERC7615, щоб надіслати це повідомлення контракту застави, контракт застави скасовує стан заставленості вказаних токенів ERC7527 та проводить остаточне врегулювання.

У цьому процесі ERC7615 гарантує розрахункову проблему системи стягнення, забезпечуючи неможливість отримання доходу від застави знищених токенів ERC7527.

Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
  • Нагородити
  • Прокоментувати
  • Репост
  • Поділіться
Прокоментувати
0/400
Немає коментарів
  • Закріпити