Это оплачиваемое тестовое задание / конкурс на разработку Solidity кода для обмена токенов через Uniswap v2 и его клонов (напр SushiSwap). Победитель получит оплату (25 тыс руб) плюс будет предложено дальнейшее сотрудничество на контрактной основе. Предыдущий опыт с Solidity необязателен, важно хорошее алгоритмическое мышление и желание изучать solidity и ethereum экосистему.
Задача:
Написать Solidity-контракт с методом который получает на вход массив ethereum-адресов вида [token1, router1, token2, router2, token3, router3, token4, и т.д.] и производит обмен токенов по порядку с использованием указанных роутеров. В данном примере сначала будет произведен обмен token1 на token2 с помощью router1, потом token2 на token3 с помощью router2 и т.д. Производится обмен всего баланса token1 в адресе, который вызывает контракт (msg.sender). В конечном итоге в адресе, вызывающем контракт, должен быть баланс token4.
Проект должен быть настроен с использованием Hardhat (
hardhat.org/getting-start... Дополнительные преимущества:
1. Скорость. Предпочтение будет отдано исполнителям справившимся с задачей быстрее остальных.
2. Unit-тесты. Наличие тестов приветствуется и дает преимущество в конкурсе, но не является обязательным.
3. Flash-swap. Для усложнения задачи можно использовать flash-swap, таким образом у адреса, вызывающего контракт, не обязательно наличие токенов для обмена.
Полезные ресурсы:
docs.uniswap.org/protocol... docs.uniswap.org/protocol... docs.sushi.com/ docs.soliditylang.org/en/... ethereum.org/en/developer... hardhat.org/getting-start...
Настоящий конкурс не является публичным конкурсом в соответствии с гражданским законодательством Российской Федерации. Участие в
данном мероприятии не гарантирует определение победителя, а также выплату вознаграждения. Площадка FL не является организатором конкурса. Нажимая кнопку «Принять
участие в конкурсе», вы подтверждаете, что согласны участвовать на описанных условиях.