web3-wizzard-lib 1.6.10__py3-none-any.whl → 1.6.12__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- web3_wizzard_lib/resources/abi/aave.json +282 -0
- web3_wizzard_lib/resources/abi/abbysworld.json +1113 -0
- web3_wizzard_lib/resources/abi/arena_games.json +15 -0
- web3_wizzard_lib/resources/abi/asmatch.json +1113 -0
- web3_wizzard_lib/resources/abi/basiliks.json +1467 -0
- web3_wizzard_lib/resources/abi/bilinear.json +1375 -0
- web3_wizzard_lib/resources/abi/bungee.json +525 -0
- web3_wizzard_lib/resources/abi/coredao.json +1068 -0
- web3_wizzard_lib/resources/abi/coredao_bridge.json +1012 -0
- web3_wizzard_lib/resources/abi/dmail.json +964 -0
- web3_wizzard_lib/resources/abi/empty_nft.json +1131 -0
- web3_wizzard_lib/resources/abi/era_ns.json +878 -0
- web3_wizzard_lib/resources/abi/eralend.json +1221 -0
- web3_wizzard_lib/resources/abi/erc20.json +801 -0
- web3_wizzard_lib/resources/abi/erc20_test.json +337 -0
- web3_wizzard_lib/resources/abi/eth_scroll_bridge.json +675 -0
- web3_wizzard_lib/resources/abi/frog_war_contract.json +1943 -0
- web3_wizzard_lib/resources/abi/gmx_reward_router.json +749 -0
- web3_wizzard_lib/resources/abi/horizondex.json +413 -0
- web3_wizzard_lib/resources/abi/horizondex_quoter.json +273 -0
- web3_wizzard_lib/resources/abi/imagine.json +457 -0
- web3_wizzard_lib/resources/abi/izumi.json +532 -0
- web3_wizzard_lib/resources/abi/kreatorland.json +500 -0
- web3_wizzard_lib/resources/abi/layerbank.json +1240 -0
- web3_wizzard_lib/resources/abi/layerbank_price.json +354 -0
- web3_wizzard_lib/resources/abi/layerbank_token.json +1124 -0
- web3_wizzard_lib/resources/abi/linea_day_2.json +933 -0
- web3_wizzard_lib/resources/abi/linea_day_3.json +1804 -0
- web3_wizzard_lib/resources/abi/linea_ens_names.json +1000 -0
- web3_wizzard_lib/resources/abi/lineaswap_router.json +973 -0
- web3_wizzard_lib/resources/abi/maverick_ipool.json +942 -0
- web3_wizzard_lib/resources/abi/maverick_multicall.json +1082 -0
- web3_wizzard_lib/resources/abi/mendi_token.json +1690 -0
- web3_wizzard_lib/resources/abi/merkly.json +787 -0
- web3_wizzard_lib/resources/abi/micro3.json +1054 -0
- web3_wizzard_lib/resources/abi/mute_router.json +856 -0
- web3_wizzard_lib/resources/abi/new_rage_abi.json +1944 -0
- web3_wizzard_lib/resources/abi/nidus.json +1017 -0
- web3_wizzard_lib/resources/abi/nile_pool.json +1313 -0
- web3_wizzard_lib/resources/abi/nomis.json +1601 -0
- web3_wizzard_lib/resources/abi/nomis_attest.json +710 -0
- web3_wizzard_lib/resources/abi/octomos.json +408 -0
- web3_wizzard_lib/resources/abi/omnisea.json +175 -0
- web3_wizzard_lib/resources/abi/orbiter_starknet.json +48 -0
- web3_wizzard_lib/resources/abi/pancake/factory.json +450 -0
- web3_wizzard_lib/resources/abi/pancake/pool.json +713 -0
- web3_wizzard_lib/resources/abi/pancake/quoter.json +285 -0
- web3_wizzard_lib/resources/abi/pancake/router.json +1271 -0
- web3_wizzard_lib/resources/abi/rage_claim.json +218 -0
- web3_wizzard_lib/resources/abi/reactor_fusion.json +1479 -0
- web3_wizzard_lib/resources/abi/readon.json +71 -0
- web3_wizzard_lib/resources/abi/rubyscore.json +698 -0
- web3_wizzard_lib/resources/abi/satoshi_universe.json +301 -0
- web3_wizzard_lib/resources/abi/scroll_bridge.json +666 -0
- web3_wizzard_lib/resources/abi/scroll_canvas_mint.json +602 -0
- web3_wizzard_lib/resources/abi/scroll_oracle.json +714 -0
- web3_wizzard_lib/resources/abi/snap.json +622 -0
- web3_wizzard_lib/resources/abi/socialscan.json +884 -0
- web3_wizzard_lib/resources/abi/stargate_farming.json +494 -0
- web3_wizzard_lib/resources/abi/stargate_router.json +1341 -0
- web3_wizzard_lib/resources/abi/stargate_swapETH_abi.json +106 -0
- web3_wizzard_lib/resources/abi/stargate_token_pool.json +1940 -0
- web3_wizzard_lib/resources/abi/stargate_v2.json +1936 -0
- web3_wizzard_lib/resources/abi/syncswap_classic_pool.json +151 -0
- web3_wizzard_lib/resources/abi/syncswap_classic_pool_factory.json +151 -0
- web3_wizzard_lib/resources/abi/syncswap_pool.json +924 -0
- web3_wizzard_lib/resources/abi/syncswap_router.json +1178 -0
- web3_wizzard_lib/resources/abi/syncswap_stable_pool.json +950 -0
- web3_wizzard_lib/resources/abi/tavaera.json +586 -0
- web3_wizzard_lib/resources/abi/tavaera_id.json +724 -0
- web3_wizzard_lib/resources/abi/townstory.json +391 -0
- web3_wizzard_lib/resources/abi/townstory_bonus.json +279 -0
- web3_wizzard_lib/resources/abi/uniswap_abi.json +193 -0
- web3_wizzard_lib/resources/abi/velocore.json +1008 -0
- web3_wizzard_lib/resources/abi/velocore_lens.json +1030 -0
- web3_wizzard_lib/resources/abi/velocore_pool.json +490 -0
- web3_wizzard_lib/resources/abi/velocore_vault.json +1272 -0
- web3_wizzard_lib/resources/abi/weth.json +279 -0
- web3_wizzard_lib/resources/abi/woofi.json +400 -0
- web3_wizzard_lib/resources/abi/yoddlo.json +67 -0
- web3_wizzard_lib/resources/abi/zebra.json +1075 -0
- web3_wizzard_lib/resources/abi/zerolend.json +282 -0
- web3_wizzard_lib/resources/abi/zerolend_liquidity.json +1038 -0
- web3_wizzard_lib/resources/abi/zkdx_data.json +436 -0
- web3_wizzard_lib/resources/abi/zks.json +671 -0
- web3_wizzard_lib/resources/banner.txt +7 -0
- web3_wizzard_lib/resources/goerli/contracts.json +48 -0
- web3_wizzard_lib/resources/goerli/networks.json +139 -0
- web3_wizzard_lib/resources/goerli/pairs.json +113 -0
- web3_wizzard_lib/resources/goerli/tokens.json +40 -0
- web3_wizzard_lib/resources/local/contracts.json +150 -0
- web3_wizzard_lib/resources/local/networks.json +119 -0
- web3_wizzard_lib/resources/local/pairs.json +451 -0
- web3_wizzard_lib/resources/local/tokens.json +88 -0
- web3_wizzard_lib/resources/main/contracts.json +231 -0
- web3_wizzard_lib/resources/main/networks.json +272 -0
- web3_wizzard_lib/resources/main/pairs.json +516 -0
- web3_wizzard_lib/resources/main/tokens.json +119 -0
- web3_wizzard_lib/resources/verify_data.json +1243 -0
- web3_wizzard_lib-1.6.12.dist-info/METADATA +10 -0
- web3_wizzard_lib-1.6.12.dist-info/RECORD +107 -0
- web3_wizzard_lib-1.6.12.dist-info/top_level.txt +1 -0
- web3_wizzard_lib/core/__init__.py +0 -1
- web3_wizzard_lib/core/contract/__init__.py +0 -0
- web3_wizzard_lib/core/contract/aavecontract.py +0 -36
- web3_wizzard_lib/core/contract/alienswap_contract.py +0 -21
- web3_wizzard_lib/core/contract/arena_games_contract.py +0 -16
- web3_wizzard_lib/core/contract/basiliskcontract.py +0 -58
- web3_wizzard_lib/core/contract/bilinear_contract.py +0 -22
- web3_wizzard_lib/core/contract/bungee.py +0 -33
- web3_wizzard_lib/core/contract/coredao_contract.py +0 -34
- web3_wizzard_lib/core/contract/coredao_from_contract.py +0 -40
- web3_wizzard_lib/core/contract/dmail_send_mail.py +0 -18
- web3_wizzard_lib/core/contract/empty_nft.py +0 -18
- web3_wizzard_lib/core/contract/era_name.py +0 -23
- web3_wizzard_lib/core/contract/eralendcontract.py +0 -34
- web3_wizzard_lib/core/contract/eth_scroll_bridge_contract.py +0 -25
- web3_wizzard_lib/core/contract/frog_war_contract.py +0 -48
- web3_wizzard_lib/core/contract/gmx_reward_router.py +0 -22
- web3_wizzard_lib/core/contract/horizondex_quoter.py +0 -14
- web3_wizzard_lib/core/contract/horizondex_router.py +0 -91
- web3_wizzard_lib/core/contract/imagine_contract.py +0 -18
- web3_wizzard_lib/core/contract/izumi.py +0 -63
- web3_wizzard_lib/core/contract/kreatorland_contract.py +0 -21
- web3_wizzard_lib/core/contract/l0_claim.py +0 -254
- web3_wizzard_lib/core/contract/l2_telegraph.py +0 -21
- web3_wizzard_lib/core/contract/layerbank_price.py +0 -18
- web3_wizzard_lib/core/contract/layerbank_token.py +0 -29
- web3_wizzard_lib/core/contract/layerbankcontract.py +0 -59
- web3_wizzard_lib/core/contract/linea_day_2_contract.py +0 -19
- web3_wizzard_lib/core/contract/linea_day_3_contract.py +0 -55
- web3_wizzard_lib/core/contract/linea_ens_names_contract.py +0 -55
- web3_wizzard_lib/core/contract/lineaswaprouter.py +0 -52
- web3_wizzard_lib/core/contract/maverick_multicall.py +0 -52
- web3_wizzard_lib/core/contract/mendi_finance_contract.py +0 -11
- web3_wizzard_lib/core/contract/mendi_token.py +0 -25
- web3_wizzard_lib/core/contract/merkly_minter.py +0 -47
- web3_wizzard_lib/core/contract/micro3_contract.py +0 -18
- web3_wizzard_lib/core/contract/mute_router.py +0 -93
- web3_wizzard_lib/core/contract/new_rage_contract.py +0 -31
- web3_wizzard_lib/core/contract/nidum_contract.py +0 -44
- web3_wizzard_lib/core/contract/nile_contract.py +0 -60
- web3_wizzard_lib/core/contract/nomis_attest_contract.py +0 -40
- web3_wizzard_lib/core/contract/nomis_contract.py +0 -40
- web3_wizzard_lib/core/contract/octomos.py +0 -31
- web3_wizzard_lib/core/contract/odos.py +0 -104
- web3_wizzard_lib/core/contract/omnisea.py +0 -29
- web3_wizzard_lib/core/contract/orbiter_starknet.py +0 -30
- web3_wizzard_lib/core/contract/pancake_pool.py +0 -19
- web3_wizzard_lib/core/contract/pancake_quoter.py +0 -20
- web3_wizzard_lib/core/contract/pancake_router.py +0 -72
- web3_wizzard_lib/core/contract/rage_claim.py +0 -24
- web3_wizzard_lib/core/contract/reactor_fusion_contract.py +0 -78
- web3_wizzard_lib/core/contract/readon_contract.py +0 -19
- web3_wizzard_lib/core/contract/rubyscore_contract.py +0 -31
- web3_wizzard_lib/core/contract/satoshi_universe_contract.py +0 -29
- web3_wizzard_lib/core/contract/scroll_bridge_contract.py +0 -24
- web3_wizzard_lib/core/contract/scroll_canvas_mint_contract.py +0 -26
- web3_wizzard_lib/core/contract/scroll_oracle.py +0 -11
- web3_wizzard_lib/core/contract/snap_contract.py +0 -16
- web3_wizzard_lib/core/contract/social_scan_contract.py +0 -20
- web3_wizzard_lib/core/contract/stargate_farming.py +0 -37
- web3_wizzard_lib/core/contract/stargate_router.py +0 -84
- web3_wizzard_lib/core/contract/stargate_router_eth.py +0 -41
- web3_wizzard_lib/core/contract/stargate_token_pool.py +0 -45
- web3_wizzard_lib/core/contract/stargate_v2_contract.py +0 -36
- web3_wizzard_lib/core/contract/syncswap_classic_pool.py +0 -15
- web3_wizzard_lib/core/contract/syncswap_classic_pool_factory.py +0 -15
- web3_wizzard_lib/core/contract/syncswap_pool.py +0 -25
- web3_wizzard_lib/core/contract/syncswap_router.py +0 -123
- web3_wizzard_lib/core/contract/tavaera_id.py +0 -18
- web3_wizzard_lib/core/contract/tavaera_mint.py +0 -17
- web3_wizzard_lib/core/contract/townstory_bonus_contract.py +0 -19
- web3_wizzard_lib/core/contract/townstory_contract.py +0 -21
- web3_wizzard_lib/core/contract/velocore_lens.py +0 -44
- web3_wizzard_lib/core/contract/velocore_pool.py +0 -198
- web3_wizzard_lib/core/contract/velocore_router.py +0 -80
- web3_wizzard_lib/core/contract/woofi_swap.py +0 -29
- web3_wizzard_lib/core/contract/xy_finance_contract.py +0 -87
- web3_wizzard_lib/core/contract/yoddlo_contract.py +0 -19
- web3_wizzard_lib/core/contract/yuliverse_contract.py +0 -36
- web3_wizzard_lib/core/contract/zebra_contract.py +0 -68
- web3_wizzard_lib/core/contract/zerolend_contract.py +0 -34
- web3_wizzard_lib/core/contract/zerolend_liq_contract.py +0 -20
- web3_wizzard_lib/core/contract/zkdx_contract.py +0 -40
- web3_wizzard_lib/core/contract/zkdx_data.py +0 -14
- web3_wizzard_lib/core/contract/zks.py +0 -24
- web3_wizzard_lib/core/modules/__init__.py +0 -0
- web3_wizzard_lib/core/modules/ads_import_proxy.py +0 -52
- web3_wizzard_lib/core/modules/airdrop_printer.py +0 -81
- web3_wizzard_lib/core/modules/bank/__init__.py +0 -0
- web3_wizzard_lib/core/modules/bank/aave.py +0 -25
- web3_wizzard_lib/core/modules/bank/bank.py +0 -15
- web3_wizzard_lib/core/modules/bank/basilisk.py +0 -25
- web3_wizzard_lib/core/modules/bank/eralend.py +0 -25
- web3_wizzard_lib/core/modules/bank/layerbank.py +0 -116
- web3_wizzard_lib/core/modules/bank/mendi_finance.py +0 -57
- web3_wizzard_lib/core/modules/bank/reactorfusion.py +0 -25
- web3_wizzard_lib/core/modules/bank/zerolend.py +0 -36
- web3_wizzard_lib/core/modules/bank_module.py +0 -99
- web3_wizzard_lib/core/modules/bridge/__init__.py +0 -0
- web3_wizzard_lib/core/modules/bridge/bridge.py +0 -8
- web3_wizzard_lib/core/modules/bridge/coredao_bridge_sub.py +0 -47
- web3_wizzard_lib/core/modules/bridge/orbiter_sub.py +0 -112
- web3_wizzard_lib/core/modules/bridge/scroll_bridge_sub.py +0 -42
- web3_wizzard_lib/core/modules/bridge/stargate_v2_sub.py +0 -74
- web3_wizzard_lib/core/modules/bridge_module.py +0 -47
- web3_wizzard_lib/core/modules/bungee.py +0 -109
- web3_wizzard_lib/core/modules/cex_sender.py +0 -60
- web3_wizzard_lib/core/modules/cex_subaccount_transfer.py +0 -34
- web3_wizzard_lib/core/modules/cex_withdraw.py +0 -91
- web3_wizzard_lib/core/modules/claimer.py +0 -45
- web3_wizzard_lib/core/modules/claims/__init__.py +0 -0
- web3_wizzard_lib/core/modules/claims/layerzero_claimer.py +0 -64
- web3_wizzard_lib/core/modules/claims/rabby_claimer.py +0 -81
- web3_wizzard_lib/core/modules/concrete_swap.py +0 -108
- web3_wizzard_lib/core/modules/coredao_bridge.py +0 -32
- web3_wizzard_lib/core/modules/coredao_bridge_auto.py +0 -39
- web3_wizzard_lib/core/modules/debank_checker.py +0 -78
- web3_wizzard_lib/core/modules/dmail.py +0 -54
- web3_wizzard_lib/core/modules/erc20_balance.py +0 -42
- web3_wizzard_lib/core/modules/gmx_reward.py +0 -25
- web3_wizzard_lib/core/modules/intract/__init__.py +0 -0
- web3_wizzard_lib/core/modules/intract/intract_api.py +0 -212
- web3_wizzard_lib/core/modules/intract/utils.py +0 -81
- web3_wizzard_lib/core/modules/intract_claim.py +0 -101
- web3_wizzard_lib/core/modules/layer_2_20.py +0 -65
- web3_wizzard_lib/core/modules/lending_module.py +0 -134
- web3_wizzard_lib/core/modules/linea_appeal.py +0 -98
- web3_wizzard_lib/core/modules/linea_poh_lxp.py +0 -65
- web3_wizzard_lib/core/modules/liquidity/__init__.py +0 -0
- web3_wizzard_lib/core/modules/liquidity/nile_pool.py +0 -64
- web3_wizzard_lib/core/modules/liquidity/pool.py +0 -16
- web3_wizzard_lib/core/modules/liquidity/syncswap_pool.py +0 -61
- web3_wizzard_lib/core/modules/liquidity/velocore_pool.py +0 -55
- web3_wizzard_lib/core/modules/liquidity/zerolend_liquidity.py +0 -26
- web3_wizzard_lib/core/modules/liquidity_pool.py +0 -60
- web3_wizzard_lib/core/modules/merkly_refuel.py +0 -87
- web3_wizzard_lib/core/modules/new_rage_withdraw.py +0 -41
- web3_wizzard_lib/core/modules/nft/__init__.py +0 -0
- web3_wizzard_lib/core/modules/nft/abbys_world.py +0 -22
- web3_wizzard_lib/core/modules/nft/acg_worlds.py +0 -25
- web3_wizzard_lib/core/modules/nft/alienswap_linea.py +0 -22
- web3_wizzard_lib/core/modules/nft/arena_games.py +0 -22
- web3_wizzard_lib/core/modules/nft/asmatch.py +0 -22
- web3_wizzard_lib/core/modules/nft/battlemon.py +0 -25
- web3_wizzard_lib/core/modules/nft/bilinear.py +0 -22
- web3_wizzard_lib/core/modules/nft/bitavatar.py +0 -25
- web3_wizzard_lib/core/modules/nft/culture_satoshi_universe.py +0 -24
- web3_wizzard_lib/core/modules/nft/efrogs.py +0 -26
- web3_wizzard_lib/core/modules/nft/empty_nft.py +0 -22
- web3_wizzard_lib/core/modules/nft/era_domain.py +0 -42
- web3_wizzard_lib/core/modules/nft/frog_war.py +0 -22
- web3_wizzard_lib/core/modules/nft/frog_war_bonus.py +0 -22
- web3_wizzard_lib/core/modules/nft/gamerboom.py +0 -25
- web3_wizzard_lib/core/modules/nft/gamerboom_bonus.py +0 -26
- web3_wizzard_lib/core/modules/nft/imagine.py +0 -32
- web3_wizzard_lib/core/modules/nft/kreatorland_module.py +0 -35
- web3_wizzard_lib/core/modules/nft/l2_telegraph_module.py +0 -22
- web3_wizzard_lib/core/modules/nft/layer3_meta.py +0 -25
- web3_wizzard_lib/core/modules/nft/linea_culture_2_2_linus.py +0 -24
- web3_wizzard_lib/core/modules/nft/linea_culture_2_3_yooldo.py +0 -24
- web3_wizzard_lib/core/modules/nft/linea_culture_2_4_frogwar.py +0 -24
- web3_wizzard_lib/core/modules/nft/linea_culture_2_5_acg.py +0 -25
- web3_wizzard_lib/core/modules/nft/linea_culture_2_6_ascend_the_end.py +0 -25
- web3_wizzard_lib/core/modules/nft/linea_culture_3_1_ascend_the_end.py +0 -25
- web3_wizzard_lib/core/modules/nft/linea_culture_3_2_sending_me.py +0 -25
- web3_wizzard_lib/core/modules/nft/linea_culture_3_3_townstory.py +0 -25
- web3_wizzard_lib/core/modules/nft/linea_culture_3_4_daniele.py +0 -25
- web3_wizzard_lib/core/modules/nft/linea_culture_3_5_demmortal.py +0 -25
- web3_wizzard_lib/core/modules/nft/linea_culture_3_6_foxy.py +0 -25
- web3_wizzard_lib/core/modules/nft/linea_culture_4_1_coop_records.py +0 -60
- web3_wizzard_lib/core/modules/nft/linea_culture_4_2_borja_moskv.py +0 -65
- web3_wizzard_lib/core/modules/nft/linea_culture_4_2_borja_moskv_approve.py +0 -27
- web3_wizzard_lib/core/modules/nft/linea_culture_4_3_fruit.py +0 -66
- web3_wizzard_lib/core/modules/nft/linea_culture_4_4_fruit_crux.py +0 -67
- web3_wizzard_lib/core/modules/nft/linea_culture_4_5_forbidden_fruit.py +0 -67
- web3_wizzard_lib/core/modules/nft/linea_culture_4_6_laurent.py +0 -67
- web3_wizzard_lib/core/modules/nft/linea_culture_day2.py +0 -20
- web3_wizzard_lib/core/modules/nft/linea_culture_day3.py +0 -20
- web3_wizzard_lib/core/modules/nft/linea_ens_names.py +0 -107
- web3_wizzard_lib/core/modules/nft/lucky_cat.py +0 -25
- web3_wizzard_lib/core/modules/nft/merkly_minter_module.py +0 -22
- web3_wizzard_lib/core/modules/nft/micro3.py +0 -23
- web3_wizzard_lib/core/modules/nft/mint_2048.py +0 -28
- web3_wizzard_lib/core/modules/nft/nft_submodule.py +0 -16
- web3_wizzard_lib/core/modules/nft/nidum.py +0 -87
- web3_wizzard_lib/core/modules/nft/nidum_bonus.py +0 -23
- web3_wizzard_lib/core/modules/nft/nomis.py +0 -64
- web3_wizzard_lib/core/modules/nft/nomis_attest.py +0 -66
- web3_wizzard_lib/core/modules/nft/nouns.py +0 -27
- web3_wizzard_lib/core/modules/nft/octomos.py +0 -32
- web3_wizzard_lib/core/modules/nft/omnisea.py +0 -33
- web3_wizzard_lib/core/modules/nft/omnizone.py +0 -25
- web3_wizzard_lib/core/modules/nft/orbiter_claim.py +0 -87
- web3_wizzard_lib/core/modules/nft/readon.py +0 -30
- web3_wizzard_lib/core/modules/nft/rubyscore.py +0 -45
- web3_wizzard_lib/core/modules/nft/sarubol.py +0 -22
- web3_wizzard_lib/core/modules/nft/satoshi_universe.py +0 -22
- web3_wizzard_lib/core/modules/nft/scroll_canvas_attest_year_badge.py +0 -35
- web3_wizzard_lib/core/modules/nft/scroll_canvas_mint.py +0 -51
- web3_wizzard_lib/core/modules/nft/sign.py +0 -32
- web3_wizzard_lib/core/modules/nft/snap.py +0 -25
- web3_wizzard_lib/core/modules/nft/snap_bonus.py +0 -31
- web3_wizzard_lib/core/modules/nft/social_scan.py +0 -22
- web3_wizzard_lib/core/modules/nft/tavaera.py +0 -30
- web3_wizzard_lib/core/modules/nft/townstory.py +0 -75
- web3_wizzard_lib/core/modules/nft/townstory_bonus.py +0 -45
- web3_wizzard_lib/core/modules/nft/trusta_reputation.py +0 -48
- web3_wizzard_lib/core/modules/nft/trustaa_poh.py +0 -49
- web3_wizzard_lib/core/modules/nft/uber_poh.py +0 -24
- web3_wizzard_lib/core/modules/nft/wizards_of_linea.py +0 -26
- web3_wizzard_lib/core/modules/nft/yoddlo.py +0 -22
- web3_wizzard_lib/core/modules/nft/yuliverse.py +0 -22
- web3_wizzard_lib/core/modules/nft/zace.py +0 -25
- web3_wizzard_lib/core/modules/nft/zks_domain.py +0 -41
- web3_wizzard_lib/core/modules/nft_minter.py +0 -107
- web3_wizzard_lib/core/modules/orbiter.py +0 -39
- web3_wizzard_lib/core/modules/orbiter_checker.py +0 -26
- web3_wizzard_lib/core/modules/rage.py +0 -54
- web3_wizzard_lib/core/modules/scroll_bridge.py +0 -45
- web3_wizzard_lib/core/modules/sell_all.py +0 -51
- web3_wizzard_lib/core/modules/sleep_module.py +0 -25
- web3_wizzard_lib/core/modules/smart_contract_deployment.py +0 -37
- web3_wizzard_lib/core/modules/stargate/__init__.py +0 -0
- web3_wizzard_lib/core/modules/stargate/auto_bridge.py +0 -91
- web3_wizzard_lib/core/modules/stargate/bridge.py +0 -38
- web3_wizzard_lib/core/modules/stargate/bridge_eth.py +0 -59
- web3_wizzard_lib/core/modules/stargate/bridge_tokens.py +0 -48
- web3_wizzard_lib/core/modules/stargate/classic_bridge.py +0 -34
- web3_wizzard_lib/core/modules/stargate/farming.py +0 -163
- web3_wizzard_lib/core/modules/stargate/l0_data.py +0 -10
- web3_wizzard_lib/core/modules/stargate/pool.py +0 -74
- web3_wizzard_lib/core/modules/stargate/stargate_balance_utils.py +0 -25
- web3_wizzard_lib/core/modules/stargate/stargate_gas_checker.py +0 -68
- web3_wizzard_lib/core/modules/swap/__init__.py +0 -1
- web3_wizzard_lib/core/modules/swap/horizondex.py +0 -38
- web3_wizzard_lib/core/modules/swap/izumi.py +0 -41
- web3_wizzard_lib/core/modules/swap/lineaswap.py +0 -34
- web3_wizzard_lib/core/modules/swap/maverick.py +0 -66
- web3_wizzard_lib/core/modules/swap/mute.py +0 -39
- web3_wizzard_lib/core/modules/swap/odos.py +0 -58
- web3_wizzard_lib/core/modules/swap/one_inch.py +0 -58
- web3_wizzard_lib/core/modules/swap/pancake.py +0 -41
- web3_wizzard_lib/core/modules/swap/swap_list.py +0 -11
- web3_wizzard_lib/core/modules/swap/syncswap.py +0 -62
- web3_wizzard_lib/core/modules/swap/velocore.py +0 -40
- web3_wizzard_lib/core/modules/swap/woofi.py +0 -38
- web3_wizzard_lib/core/modules/swap/xy_finance.py +0 -43
- web3_wizzard_lib/core/modules/swap/zebra.py +0 -32
- web3_wizzard_lib/core/modules/warm_up.py +0 -98
- web3_wizzard_lib/core/modules/wrapping.py +0 -74
- web3_wizzard_lib/core/modules/zkdx.py +0 -63
- web3_wizzard_lib/core/utils/__init__.py +0 -0
- web3_wizzard_lib/core/utils/ai_utils.py +0 -45
- web3_wizzard_lib/core/utils/benchmark_utils.py +0 -12
- web3_wizzard_lib/core/utils/module_memory.py +0 -28
- web3_wizzard_lib/core/utils/statistic_utils.py +0 -150
- web3_wizzard_lib/core/utils/sub_module.py +0 -8
- web3_wizzard_lib/data/__init__.py +0 -0
- web3_wizzard_lib/data/config_default.py +0 -52
- web3_wizzard_lib/data/module_config_default.py +0 -209
- web3_wizzard_lib/utils/__init__.py +0 -0
- web3_wizzard_lib/utils/debank_utils.py +0 -19
- web3_wizzard_lib-1.6.10.data/data/requirements.txt +0 -1
- web3_wizzard_lib-1.6.10.dist-info/METADATA +0 -15
- web3_wizzard_lib-1.6.10.dist-info/RECORD +0 -271
- web3_wizzard_lib-1.6.10.dist-info/top_level.txt +0 -3
- /tests/__init__.py → /web3_wizzard_lib/resources/linea_appeal.txt +0 -0
- {web3_wizzard_lib-1.6.10.dist-info → web3_wizzard_lib-1.6.12.dist-info}/WHEEL +0 -0
@@ -1,98 +0,0 @@
|
|
1
|
-
import random
|
2
|
-
import webbrowser
|
3
|
-
|
4
|
-
from loguru import logger
|
5
|
-
from sybil_engine.module.module import Module
|
6
|
-
from sybil_engine.utils.accumulator import add_accumulator, get_value
|
7
|
-
|
8
|
-
from web3_wizzard_lib.core.utils.ai_utils import get_ai_chat
|
9
|
-
|
10
|
-
from web3_wizzard_lib.core.utils.module_memory import get_by_key, accumulate_by_key, remove_key, add_value
|
11
|
-
from web3_wizzard_lib.core.utils.statistic_utils import get_statistic_writer, statistic_date_string
|
12
|
-
|
13
|
-
APPEAL_ACCOUNTS = "APPEAL_ACCOUNTS"
|
14
|
-
APPEAL_ACCOUNTS_AMOUNT = "APPEAL_ACCOUNTS_AMOUNT"
|
15
|
-
|
16
|
-
|
17
|
-
class LineaAppeal(Module):
|
18
|
-
module_name = 'LINEA_APPEAL'
|
19
|
-
module_config = "linea_appeal_config"
|
20
|
-
base_url = "https://docs.google.com/forms/d/e/1FAIpQLSfkbHzC1hZTy6u5R8S5i6wQ2xCyUZQjvucmlyChwg04fJIO5Q/viewform"
|
21
|
-
|
22
|
-
def execute(self, token, accounts, statistic_write, ai_type, account):
|
23
|
-
with open("resources/linea_appeal.txt") as f:
|
24
|
-
self.linea_appeal_reason = f.read()
|
25
|
-
|
26
|
-
with open("resources/ai_style_randomized.txt") as f:
|
27
|
-
self.lines = f.readlines()
|
28
|
-
|
29
|
-
with open("resources/ai_reason_randomized.txt") as f:
|
30
|
-
self.reason_lines = f.readlines()
|
31
|
-
|
32
|
-
add_accumulator("Acc Num", 1)
|
33
|
-
|
34
|
-
statistics = get_statistic_writer()
|
35
|
-
statistics.init_if_required(
|
36
|
-
f"linea_appeal_{statistic_date_string}",
|
37
|
-
["#", "MainAddress", "GPT Answer"]
|
38
|
-
)
|
39
|
-
|
40
|
-
chat_gpt = get_ai_chat(ai_type, token)
|
41
|
-
|
42
|
-
if get_by_key(APPEAL_ACCOUNTS_AMOUNT) is None:
|
43
|
-
add_value(
|
44
|
-
APPEAL_ACCOUNTS_AMOUNT,
|
45
|
-
random.randint(accounts['from'], accounts['to'])
|
46
|
-
)
|
47
|
-
|
48
|
-
accumulate_by_key(
|
49
|
-
APPEAL_ACCOUNTS, {
|
50
|
-
"address": account.address,
|
51
|
-
}
|
52
|
-
)
|
53
|
-
|
54
|
-
logger.info(f"Acc: {get_value("Acc Num")}")
|
55
|
-
logger.info(f"Acc Amount: {get_value("Acc Amount")}")
|
56
|
-
|
57
|
-
if (get_by_key(APPEAL_ACCOUNTS_AMOUNT) == len(get_by_key(APPEAL_ACCOUNTS))
|
58
|
-
or get_value("Acc Num") == get_value("Acc Amount")):
|
59
|
-
ai_style_randomized = random.choice(self.lines)
|
60
|
-
selected_lines = random.sample(self.reason_lines, k=random.choice([2, 3]))
|
61
|
-
|
62
|
-
reason = chat_gpt.ask(
|
63
|
-
self.linea_appeal_reason
|
64
|
-
.replace("{random_style}", ai_style_randomized)
|
65
|
-
.replace("{random_reasons}", str(selected_lines))
|
66
|
-
)
|
67
|
-
logger.info(reason)
|
68
|
-
|
69
|
-
statistics.write_row(
|
70
|
-
statistic_date_string,
|
71
|
-
[account.app_id, account.address, reason]
|
72
|
-
)
|
73
|
-
|
74
|
-
wallets = get_by_key(APPEAL_ACCOUNTS)
|
75
|
-
address_list = [wallet["address"] for wallet in wallets]
|
76
|
-
address_list.remove(account.address)
|
77
|
-
self.open_appeal_form(account, "\n".join(address_list), reason)
|
78
|
-
remove_key(APPEAL_ACCOUNTS)
|
79
|
-
remove_key(APPEAL_ACCOUNTS_AMOUNT)
|
80
|
-
|
81
|
-
def open_appeal_form(self, account, address_list, formatted_string):
|
82
|
-
payload = {
|
83
|
-
"entry.1292139045": account.address,
|
84
|
-
"entry.1099559693": address_list.replace("\n", "%0A"),
|
85
|
-
"entry.1296389817": formatted_string.replace("\n", "%0A")
|
86
|
-
}
|
87
|
-
query_string = "&".join(f"{key}={value}" for key, value in payload.items())
|
88
|
-
pre_filled_url = f"{self.base_url}?{query_string}"
|
89
|
-
print(f"Opening form: {pre_filled_url}")
|
90
|
-
webbrowser.open(pre_filled_url)
|
91
|
-
|
92
|
-
def parse_params(self, module_params):
|
93
|
-
return (
|
94
|
-
module_params['ai_token'],
|
95
|
-
module_params['accounts'],
|
96
|
-
module_params['write_mode'],
|
97
|
-
module_params['ai_type']
|
98
|
-
)
|
@@ -1,65 +0,0 @@
|
|
1
|
-
import requests
|
2
|
-
from loguru import logger
|
3
|
-
from sybil_engine.data.networks import get_chain_instance
|
4
|
-
from sybil_engine.domain.balance.balance import Erc20Balance
|
5
|
-
from sybil_engine.domain.balance.tokens import Erc20Token
|
6
|
-
from sybil_engine.module.module import Module
|
7
|
-
from sybil_engine.utils.accumulator import add_accumulator_balance, add_accumulator, get_value
|
8
|
-
from sybil_engine.utils.web3_utils import init_web3
|
9
|
-
|
10
|
-
from web3_wizzard_lib.core.utils.statistic_utils import statistic_date_string, get_statistic_writer
|
11
|
-
|
12
|
-
|
13
|
-
class LineaPOHLXP(Module):
|
14
|
-
module_name = 'LINEA_POH_LXP'
|
15
|
-
module_config = None
|
16
|
-
|
17
|
-
lxp_contract = "0xd83af4fbD77f3AB65C3B1Dc4B38D7e67AEcf599A"
|
18
|
-
|
19
|
-
def execute(self, account, chain="LINEA", statistic_write="GOOGLE"):
|
20
|
-
poh = self.linea_poh_passed(account)
|
21
|
-
|
22
|
-
chain_instance = get_chain_instance(chain)
|
23
|
-
web3 = init_web3(chain_instance, account.proxy)
|
24
|
-
erc20_token = Erc20Token(chain, self.lxp_contract, web3)
|
25
|
-
balance = erc20_token.balance(account)
|
26
|
-
|
27
|
-
logger.info(f"{account.address} balance is {balance}")
|
28
|
-
job_name = f"lxp_{statistic_date_string}"
|
29
|
-
statistics_writer = get_statistic_writer()
|
30
|
-
|
31
|
-
statistics_writer.init_if_required(
|
32
|
-
job_name,
|
33
|
-
['#', 'Address', 'rLXP', 'POH', 'LXP', 'Remark']
|
34
|
-
)
|
35
|
-
|
36
|
-
if poh:
|
37
|
-
rLXP = balance
|
38
|
-
add_accumulator_balance("Total rLXP", rLXP.wei)
|
39
|
-
else:
|
40
|
-
rLXP = Erc20Balance(0, 'LINEA', "LXP")
|
41
|
-
|
42
|
-
add_accumulator_balance("Total LXP", balance.wei)
|
43
|
-
add_accumulator("Acc Num", 1)
|
44
|
-
|
45
|
-
row = [account.app_id, account.address, float(rLXP.readable()), poh, float(balance.readable()), ""]
|
46
|
-
statistics_writer.write_row(job_name, row)
|
47
|
-
|
48
|
-
if get_value("Acc Num") == get_value("Acc Amount"):
|
49
|
-
row = [
|
50
|
-
"TOTAL",
|
51
|
-
"",
|
52
|
-
float(get_value("Total rLXP").readable() / 10 ** 12),
|
53
|
-
"",
|
54
|
-
float(get_value("Total LXP").readable() / 10 ** 12),
|
55
|
-
""
|
56
|
-
]
|
57
|
-
|
58
|
-
statistics_writer.write_row(job_name, row)
|
59
|
-
|
60
|
-
def linea_poh_passed(self, account):
|
61
|
-
result = requests.get(f"https://linea-xp-poh-api.linea.build/poh/{account.address}").json()
|
62
|
-
return result["poh"]
|
63
|
-
|
64
|
-
def log(self):
|
65
|
-
return "LINEA POH LXP"
|
File without changes
|
@@ -1,64 +0,0 @@
|
|
1
|
-
from loguru import logger
|
2
|
-
from sybil_engine.data.tokens import get_tokens_for_chain
|
3
|
-
from sybil_engine.domain.balance.balance_utils import interval_to_eth_balance
|
4
|
-
from sybil_engine.domain.balance.tokens import Erc20Token
|
5
|
-
from sybil_engine.utils.retry import retry
|
6
|
-
|
7
|
-
from web3_wizzard_lib.core.contract.nile_contract import NileContract
|
8
|
-
from web3_wizzard_lib.core.modules.liquidity.pool import Pool
|
9
|
-
|
10
|
-
|
11
|
-
class NilePool(Pool):
|
12
|
-
pool_contract = 'NILE_POOL'
|
13
|
-
|
14
|
-
def __init__(self, chain_instance, web3):
|
15
|
-
super().__init__(chain_instance, web3)
|
16
|
-
self.nile_contract = NileContract(self.velocore_pool_contract_address, self.web3)
|
17
|
-
|
18
|
-
@retry(max_attempts=2, retry_interval={'from': 10, 'to': 20})
|
19
|
-
def deposit(self, amount_interval, account, token, min_native_balance, chain):
|
20
|
-
amount = interval_to_eth_balance(amount_interval, account, chain, self.web3)
|
21
|
-
|
22
|
-
pool_amount = self.nile_contract.get_amount_out(
|
23
|
-
amount,
|
24
|
-
get_tokens_for_chain(chain)['WETH'],
|
25
|
-
get_tokens_for_chain(chain)[token]
|
26
|
-
)[0]
|
27
|
-
|
28
|
-
nile_token = Erc20Token(chain, token, self.web3)
|
29
|
-
|
30
|
-
if nile_token.allowance(account, self.nile_contract.contract_address) < nile_token.balance(account).wei:
|
31
|
-
nile_token.approve(account, self.nile_contract.contract_address)
|
32
|
-
|
33
|
-
logger.info(f"Deposit {amount} and {nile_token.balance(account)}")
|
34
|
-
self.nile_contract.add_liquidity_eth(account, nile_token.erc20_contract.contract_address, pool_amount, amount)
|
35
|
-
|
36
|
-
@retry(max_attempts=2, retry_interval={'from': 10, 'to': 20})
|
37
|
-
def withdraw(self, account, token, chain):
|
38
|
-
weth_zero_address = get_tokens_for_chain(chain)[f"WETH_{token}_LP"]
|
39
|
-
|
40
|
-
weth_zero = Erc20Token(chain, weth_zero_address, self.web3)
|
41
|
-
|
42
|
-
if weth_zero.balance(account).wei < 10000:
|
43
|
-
logger.info("NILE almost zero balance")
|
44
|
-
|
45
|
-
zero_token_address = get_tokens_for_chain(chain)[token]
|
46
|
-
|
47
|
-
amount = self.nile_contract.quote_remove_liquidity_eth(
|
48
|
-
get_tokens_for_chain(chain)['WETH'],
|
49
|
-
get_tokens_for_chain(chain)[token],
|
50
|
-
weth_zero.balance(account).wei
|
51
|
-
)
|
52
|
-
|
53
|
-
if weth_zero.allowance(account, self.nile_contract.contract_address) < weth_zero.balance(account).wei:
|
54
|
-
weth_zero.approve(account, self.nile_contract.contract_address)
|
55
|
-
|
56
|
-
logger.info(f"Withdraw {token} on NILE {weth_zero.balance(account)}")
|
57
|
-
|
58
|
-
self.nile_contract.remove_liquidity_eth(
|
59
|
-
account,
|
60
|
-
zero_token_address,
|
61
|
-
weth_zero.balance(account).wei,
|
62
|
-
amount[0],
|
63
|
-
amount[1]
|
64
|
-
)
|
@@ -1,16 +0,0 @@
|
|
1
|
-
from sybil_engine.data.contracts import get_contracts_for_chain
|
2
|
-
|
3
|
-
|
4
|
-
class Pool:
|
5
|
-
pool_contract = ''
|
6
|
-
|
7
|
-
def __init__(self, chain_instance, web3):
|
8
|
-
self.chain_contracts = get_contracts_for_chain(chain_instance['chain'])
|
9
|
-
self.velocore_pool_contract_address = self.chain_contracts[self.pool_contract]
|
10
|
-
self.web3 = web3
|
11
|
-
|
12
|
-
def deposit(self, amount_interval, account, token, min_native_balance, chain):
|
13
|
-
pass
|
14
|
-
|
15
|
-
def withdraw(self, account, token, chain):
|
16
|
-
pass
|
@@ -1,61 +0,0 @@
|
|
1
|
-
from loguru import logger
|
2
|
-
from sybil_engine.data.contracts import get_contracts_for_chain
|
3
|
-
from sybil_engine.data.tokens import get_tokens_for_chain
|
4
|
-
from sybil_engine.domain.balance.balance import NativeBalance
|
5
|
-
from sybil_engine.domain.balance.balance_utils import interval_to_eth_balance
|
6
|
-
from sybil_engine.domain.balance.tokens import Erc20Token
|
7
|
-
|
8
|
-
from web3_wizzard_lib.core.contract.syncswap_pool import SyncSwapPoolContract
|
9
|
-
from web3_wizzard_lib.core.contract.syncswap_classic_pool import SyncSwapClassicPool
|
10
|
-
from web3_wizzard_lib.core.contract.syncswap_router import SyncSwapRouter
|
11
|
-
from web3_wizzard_lib.core.modules.liquidity.pool import Pool
|
12
|
-
|
13
|
-
|
14
|
-
class SyncswapPool(Pool):
|
15
|
-
module_name = 'SYNCSWAP_LIQUIDITY'
|
16
|
-
pool_contract = 'SYNCSWAP'
|
17
|
-
|
18
|
-
def __init__(self, chain_instance, web3):
|
19
|
-
super().__init__(chain_instance, web3)
|
20
|
-
self.syncswap_router = SyncSwapRouter(self.velocore_pool_contract_address, self.web3)
|
21
|
-
|
22
|
-
def deposit(self, amount_interval, account, token, min_native_balance, chain):
|
23
|
-
amount = interval_to_eth_balance(amount_interval, account, chain, self.web3)
|
24
|
-
|
25
|
-
pool = self.get_pool(chain)
|
26
|
-
pool_amount = self.get_pool_amount(account, chain, pool)
|
27
|
-
|
28
|
-
if pool_amount.wei < 10000000000:
|
29
|
-
logger.info(f"Deposit {amount}")
|
30
|
-
self.syncswap_router.add_liquidity2(account, amount)
|
31
|
-
else:
|
32
|
-
logger.info("This account already has deposit, skip")
|
33
|
-
|
34
|
-
def withdraw(self, account, token, chain):
|
35
|
-
pool = self.get_pool(chain)
|
36
|
-
pool_amount = self.get_pool_amount(account, chain, pool)
|
37
|
-
|
38
|
-
if pool_amount.wei < 10000000000:
|
39
|
-
logger.info(f"Withdraw amount is to small")
|
40
|
-
return
|
41
|
-
|
42
|
-
erc20_token = Erc20Token(chain, pool, self.web3)
|
43
|
-
|
44
|
-
if erc20_token.allowance(account, self.syncswap_router.contract_address) < pool_amount.wei:
|
45
|
-
erc20_token.approve(account, self.syncswap_router.contract_address)
|
46
|
-
|
47
|
-
print(erc20_token.balance(account).wei)
|
48
|
-
|
49
|
-
logger.info(f"Withdraw {pool_amount}")
|
50
|
-
self.syncswap_router.burn_liquidity(account, pool, pool_amount)
|
51
|
-
|
52
|
-
def get_pool_amount(self, account, chain, pool):
|
53
|
-
return NativeBalance(
|
54
|
-
SyncSwapPoolContract(pool, self.web3).balanceOf(account),
|
55
|
-
chain,
|
56
|
-
'ETH'
|
57
|
-
)
|
58
|
-
|
59
|
-
def get_pool(self, chain):
|
60
|
-
syncswap_classic_pool = SyncSwapClassicPool(get_contracts_for_chain(chain)["SYNCSWAP_CLASSIC_POOL_FACTORY"], self.web3)
|
61
|
-
return syncswap_classic_pool.get_pool(get_tokens_for_chain(chain)['ETH'], get_tokens_for_chain(chain)['USDC'])
|
@@ -1,55 +0,0 @@
|
|
1
|
-
from loguru import logger
|
2
|
-
from sybil_engine.domain.balance.balance_utils import interval_to_eth_balance, interval_to_erc20_balance
|
3
|
-
from sybil_engine.domain.balance.tokens import Erc20Token
|
4
|
-
|
5
|
-
from web3_wizzard_lib.core.contract.velocore_lens import VelocoreLensContract
|
6
|
-
from web3_wizzard_lib.core.contract.velocore_pool import VelocorePoolContract
|
7
|
-
from web3_wizzard_lib.core.modules.liquidity.pool import Pool
|
8
|
-
|
9
|
-
|
10
|
-
class VelocorePool(Pool):
|
11
|
-
module_name = 'VELOCORE_LIQUIDITY'
|
12
|
-
pool_contract = 'VELOCORE_POOL'
|
13
|
-
pool_lens_contract = 'VELOCORE_LENS'
|
14
|
-
|
15
|
-
def __init__(self, chain_instance, web3):
|
16
|
-
super().__init__(chain_instance, web3)
|
17
|
-
self.chain_instance = chain_instance
|
18
|
-
self.velocore_pool = VelocorePoolContract(self.velocore_pool_contract_address, self.web3)
|
19
|
-
self.velocore_lens = VelocoreLensContract('0xaA18cDb16a4DD88a59f4c2f45b5c91d009549e06', self.web3)
|
20
|
-
|
21
|
-
def deposit(self, amount_interval, account, token, min_native_balance, chain):
|
22
|
-
if token == 'ETH':
|
23
|
-
amount = interval_to_eth_balance(amount_interval, account, chain, self.web3)
|
24
|
-
|
25
|
-
if amount_interval == 'all_balance':
|
26
|
-
amount = amount.minus(min_native_balance)
|
27
|
-
else:
|
28
|
-
amount = interval_to_erc20_balance(amount_interval, account, token, chain, self.web3)
|
29
|
-
|
30
|
-
erc20_token = Erc20Token(self.chain_instance['chain'], "wstETH", self.web3)
|
31
|
-
|
32
|
-
if erc20_token.allowance(account, self.velocore_pool.contract_address) < amount.wei:
|
33
|
-
erc20_token.approve(account, self.velocore_pool.contract_address)
|
34
|
-
|
35
|
-
pool_address = '0x2BD146e7d95cea62C89fcCA8E529e06EEc1b053C'
|
36
|
-
|
37
|
-
logger.info(f"Deposit {amount}")
|
38
|
-
|
39
|
-
self.velocore_pool.deposit(account, int(amount.wei * 0.99), token, pool_address)
|
40
|
-
|
41
|
-
def withdraw(self, account, token, chain):
|
42
|
-
pool_address = '0x2BD146e7d95cea62C89fcCA8E529e06EEc1b053C'
|
43
|
-
|
44
|
-
gauge = self.velocore_lens.query_gauge(pool_address, account)
|
45
|
-
|
46
|
-
usdc_eth_vlp = gauge[14]
|
47
|
-
eth = gauge[9]
|
48
|
-
|
49
|
-
logger.info(f"Withdraw {eth / 10 ** 18} ETH")
|
50
|
-
|
51
|
-
if eth / 10 ** 18 < 0.0005:
|
52
|
-
logger.info("Withdraw amount less than 0.0005, skip")
|
53
|
-
return
|
54
|
-
|
55
|
-
self.velocore_pool.withdraw(account, eth, usdc_eth_vlp, pool_address)
|
@@ -1,26 +0,0 @@
|
|
1
|
-
from sybil_engine.data.contracts import get_contracts_for_chain
|
2
|
-
from sybil_engine.domain.balance.balance_utils import interval_to_eth_balance
|
3
|
-
from sybil_engine.domain.balance.tokens import Erc20Token
|
4
|
-
from sybil_engine.utils.retry import retry
|
5
|
-
|
6
|
-
from web3_wizzard_lib.core.contract.zerolend_liq_contract import ZeroLendLiqContract
|
7
|
-
from web3_wizzard_lib.core.modules.liquidity.pool import Pool
|
8
|
-
|
9
|
-
|
10
|
-
class ZeroLendLiquidity(Pool):
|
11
|
-
module_name = 'ZEROLEND_LIQUIDITY'
|
12
|
-
pool_contract = 'ZEROLEND'
|
13
|
-
|
14
|
-
@retry(max_attempts=5, retry_interval={'from': 15 * 1, 'to': 30 * 1})
|
15
|
-
def deposit(self, amount_interval, account, deposit_token, min_native_balance, chain):
|
16
|
-
contract = ZeroLendLiqContract(get_contracts_for_chain(chain)['ZEROLEND'], self.web3)
|
17
|
-
|
18
|
-
zerolend_token = Erc20Token(chain, deposit_token, self.web3)
|
19
|
-
|
20
|
-
amount = interval_to_eth_balance(amount_interval, account, chain, self.web3)
|
21
|
-
|
22
|
-
if zerolend_token.allowance(account, contract.contract_address) < zerolend_token.balance(account).wei:
|
23
|
-
zerolend_token.approve(account, contract.contract_address)
|
24
|
-
|
25
|
-
contract.create_lock(account, amount)
|
26
|
-
|
@@ -1,60 +0,0 @@
|
|
1
|
-
from venv import logger
|
2
|
-
|
3
|
-
from sybil_engine.data.networks import get_chain_instance
|
4
|
-
from sybil_engine.module.module import Module
|
5
|
-
from sybil_engine.utils.app_account_utils import AppAccount
|
6
|
-
from sybil_engine.utils.validation_utils import validate_amount_interval
|
7
|
-
from sybil_engine.utils.web3_utils import init_web3
|
8
|
-
|
9
|
-
from web3_wizzard_lib.core.modules.liquidity.syncswap_pool import SyncswapPool
|
10
|
-
from web3_wizzard_lib.core.modules.liquidity.velocore_pool import VelocorePool
|
11
|
-
from web3_wizzard_lib.core.modules.liquidity.nile_pool import NilePool
|
12
|
-
from web3_wizzard_lib.core.modules.liquidity.zerolend_liquidity import ZeroLendLiquidity
|
13
|
-
|
14
|
-
|
15
|
-
class LiquidityPool(Module):
|
16
|
-
module_name = 'LIQUIDITY_POOL'
|
17
|
-
module_config = 'liquidity_pool'
|
18
|
-
|
19
|
-
def execute(self, action, amount_interval, token, dex, chain, account: AppAccount):
|
20
|
-
chain_instance = get_chain_instance(chain)
|
21
|
-
web3 = init_web3(chain_instance, account.proxy)
|
22
|
-
|
23
|
-
if dex == 'syncswap':
|
24
|
-
pool = SyncswapPool(chain_instance, web3)
|
25
|
-
elif dex == 'velocore':
|
26
|
-
pool = VelocorePool(chain_instance, web3)
|
27
|
-
elif dex == 'nile':
|
28
|
-
pool = NilePool(chain_instance, web3)
|
29
|
-
elif dex == 'zerolend':
|
30
|
-
pool = ZeroLendLiquidity(chain_instance, web3)
|
31
|
-
else:
|
32
|
-
raise Exception(f" {dex} Not supported")
|
33
|
-
|
34
|
-
if action == 'DEPOSIT':
|
35
|
-
logger.info(f"Deposit {token} to {dex}")
|
36
|
-
pool.deposit(amount_interval, account, token, self.min_native_balance, chain)
|
37
|
-
elif action == 'WITHDRAW':
|
38
|
-
pool.withdraw(account, token, chain)
|
39
|
-
else:
|
40
|
-
raise Exception(f"{action} action not supported")
|
41
|
-
|
42
|
-
def log(self):
|
43
|
-
return "LIQUIDITY_POOL"
|
44
|
-
|
45
|
-
def parse_params(self, module_params):
|
46
|
-
validate_amount_interval(module_params['amount'])
|
47
|
-
|
48
|
-
return [
|
49
|
-
module_params['action'],
|
50
|
-
module_params['amount'],
|
51
|
-
module_params['token'],
|
52
|
-
module_params['dex'],
|
53
|
-
module_params['chain']
|
54
|
-
]
|
55
|
-
|
56
|
-
|
57
|
-
class EmptyDepositException(Exception):
|
58
|
-
def __init__(self, message):
|
59
|
-
self.message = message
|
60
|
-
super().__init__(self.message)
|
@@ -1,87 +0,0 @@
|
|
1
|
-
import random
|
2
|
-
|
3
|
-
from loguru import logger
|
4
|
-
from sybil_engine.data.contracts import get_contracts_for_chain
|
5
|
-
from sybil_engine.data.networks import get_chain_instance
|
6
|
-
from sybil_engine.domain.balance.balance_utils import interval_to_eth_balance, verify_balance, from_wei_to_eth
|
7
|
-
from sybil_engine.module.module import Module
|
8
|
-
from sybil_engine.utils.utils import ConfigurationException, randomized_sleeping, print_exception_chain
|
9
|
-
from sybil_engine.utils.validation_utils import validate_chain, validate_refuel_interval
|
10
|
-
from sybil_engine.utils.web3_utils import init_web3
|
11
|
-
|
12
|
-
from web3_wizzard_lib.core.contract.merkly_minter import MerklyMinter
|
13
|
-
from web3_wizzard_lib.core.modules.stargate.l0_data import l0_chain_ids
|
14
|
-
|
15
|
-
|
16
|
-
class MerklyRefuel(Module):
|
17
|
-
module_name = 'MERKLY_REFUEL'
|
18
|
-
module_config = 'merkly_refuel_config'
|
19
|
-
|
20
|
-
def execute(self, start_chain, end_chain, chains, refuel_amount_interval, sleeping_interval, account):
|
21
|
-
from_chain_instance = get_chain_instance(start_chain)
|
22
|
-
web3 = init_web3(from_chain_instance, account.proxy)
|
23
|
-
|
24
|
-
if start_chain not in chains or end_chain not in chains:
|
25
|
-
raise ConfigurationException(f"'end_chain' and 'start_start' should be in 'chains'. Actual:"
|
26
|
-
f"start_chain: {start_chain} end_chain: {end_chain} chains: {chains}"
|
27
|
-
)
|
28
|
-
|
29
|
-
merkly_contract = get_contracts_for_chain(start_chain)['MERKLY']
|
30
|
-
merkly = MerklyMinter(merkly_contract, web3)
|
31
|
-
|
32
|
-
self.shuffle_chain_sequence(start_chain, end_chain, chains)
|
33
|
-
|
34
|
-
logger.info(f"Refuel chain sequence: {chains}")
|
35
|
-
|
36
|
-
for current_chain, next_chain in zip(chains, chains[1:]):
|
37
|
-
native_without_min = verify_balance(self.min_native_balance, from_chain_instance, account, web3)
|
38
|
-
|
39
|
-
amount = interval_to_eth_balance(refuel_amount_interval, account, start_chain, web3)
|
40
|
-
|
41
|
-
if amount.wei > native_without_min.wei:
|
42
|
-
amount = native_without_min
|
43
|
-
|
44
|
-
logger.info(f"Refuel {current_chain} > {next_chain} | {amount}")
|
45
|
-
|
46
|
-
hex_amount = merkly.decimal_to_hex_padded(amount.wei)
|
47
|
-
|
48
|
-
try:
|
49
|
-
fee = merkly.estimate_send_fee(account, l0_chain_ids[next_chain], hex_amount)
|
50
|
-
logger.info(f"L0 Fee: {from_wei_to_eth(fee)} ETH")
|
51
|
-
|
52
|
-
merkly.refuel(account, l0_chain_ids[next_chain], amount.wei, fee)
|
53
|
-
randomized_sleeping(sleeping_interval)
|
54
|
-
except Exception as e:
|
55
|
-
print_exception_chain(e)
|
56
|
-
|
57
|
-
def shuffle_chain_sequence(self, start_chain, end_chain, chain_sequence):
|
58
|
-
if start_chain != '':
|
59
|
-
chain_sequence.remove(start_chain)
|
60
|
-
|
61
|
-
if end_chain != '' and end_chain in chain_sequence:
|
62
|
-
chain_sequence.remove(end_chain)
|
63
|
-
|
64
|
-
random.shuffle(chain_sequence)
|
65
|
-
|
66
|
-
if start_chain != '':
|
67
|
-
chain_sequence.insert(0, start_chain)
|
68
|
-
|
69
|
-
if end_chain != '':
|
70
|
-
chain_sequence.append(end_chain)
|
71
|
-
|
72
|
-
return chain_sequence
|
73
|
-
|
74
|
-
def log(self):
|
75
|
-
return "MERKLY REFUEL"
|
76
|
-
|
77
|
-
def parse_params(self, module_params):
|
78
|
-
validate_chain(module_params['end_chain'])
|
79
|
-
validate_refuel_interval(module_params['refuel_amount_interval'])
|
80
|
-
|
81
|
-
return (
|
82
|
-
module_params['start_chain'],
|
83
|
-
module_params['end_chain'],
|
84
|
-
module_params['chains'],
|
85
|
-
module_params['refuel_amount_interval'],
|
86
|
-
module_params['sleeping_interval']
|
87
|
-
)
|
@@ -1,41 +0,0 @@
|
|
1
|
-
from loguru import logger
|
2
|
-
from sybil_engine.data.networks import get_chain_instance
|
3
|
-
from sybil_engine.module.module import Module
|
4
|
-
from sybil_engine.utils.utils import ConfigurationException
|
5
|
-
from sybil_engine.utils.web3_utils import init_web3
|
6
|
-
|
7
|
-
from web3_wizzard_lib.core.contract.new_rage_contract import NewRageContract
|
8
|
-
|
9
|
-
|
10
|
-
class NewRageModule(Module):
|
11
|
-
module_name = 'NEW_RAGE_WITHDRAW'
|
12
|
-
module_config = 'new_rage_config'
|
13
|
-
|
14
|
-
def execute(self, token, account, chain='ARBITRUM'):
|
15
|
-
chain_instance = get_chain_instance(chain)
|
16
|
-
web3 = init_web3(chain_instance, None)
|
17
|
-
|
18
|
-
if token == 'USDC':
|
19
|
-
contract_address = "0xf9305009FbA7E381b3337b5fA157936d73c2CF36"
|
20
|
-
elif token == 'GLP':
|
21
|
-
contract_address = "0x8478AB5064EbAC770DdCE77E7D31D969205F041E"
|
22
|
-
else:
|
23
|
-
raise ConfigurationException("No such token supported by Rage withdraw module")
|
24
|
-
rage = NewRageContract(contract_address, web3)
|
25
|
-
|
26
|
-
#balance = rage.balance_of(account)
|
27
|
-
shares = rage.max_redeem(account)
|
28
|
-
|
29
|
-
if shares > 0:
|
30
|
-
logger.info(f"Withdraw {shares} shares {token}")
|
31
|
-
rage.redeem(account, shares)
|
32
|
-
else:
|
33
|
-
logger.info(f"Account {account.address} has 0 balance in Rage")
|
34
|
-
|
35
|
-
#add_accumulator("Total rage withdraw", balance)
|
36
|
-
|
37
|
-
def log(self):
|
38
|
-
return "RAGE WITHDRAW"
|
39
|
-
|
40
|
-
def parse_params(self, module_params):
|
41
|
-
return module_params['token'],
|
File without changes
|
@@ -1,22 +0,0 @@
|
|
1
|
-
from sybil_engine.data.contracts import get_contracts_for_chain
|
2
|
-
from sybil_engine.data.networks import get_chain_instance
|
3
|
-
from sybil_engine.utils.web3_utils import init_web3
|
4
|
-
|
5
|
-
from web3_wizzard_lib.core.contract.alienswap_contract import AlienSwapContract
|
6
|
-
from web3_wizzard_lib.core.utils.sub_module import SubModule
|
7
|
-
|
8
|
-
|
9
|
-
class AbbysWorld(SubModule):
|
10
|
-
module_name = 'ABBYSWORLD'
|
11
|
-
|
12
|
-
def execute(self, account, chain='LINEA'):
|
13
|
-
chain_instance = get_chain_instance(chain)
|
14
|
-
web3 = init_web3(chain_instance, account.proxy)
|
15
|
-
|
16
|
-
contract_address = get_contracts_for_chain(chain)['ABBYSWORLD']
|
17
|
-
abbys_world_nft = AlienSwapContract(contract_address, web3)
|
18
|
-
|
19
|
-
abbys_world_nft.purchase(account, 1)
|
20
|
-
|
21
|
-
def log(self):
|
22
|
-
return "ABBYS WORLD NFT"
|
@@ -1,25 +0,0 @@
|
|
1
|
-
from sybil_engine.contract.send import Send
|
2
|
-
from sybil_engine.data.contracts import get_contracts_for_chain
|
3
|
-
from sybil_engine.data.networks import get_chain_instance
|
4
|
-
from sybil_engine.domain.balance.balance import NativeBalance
|
5
|
-
from sybil_engine.utils.web3_utils import init_web3
|
6
|
-
|
7
|
-
from web3_wizzard_lib.core.utils.sub_module import SubModule
|
8
|
-
|
9
|
-
|
10
|
-
class AcgWorld(SubModule):
|
11
|
-
module_name = 'ACG_WORLDS'
|
12
|
-
|
13
|
-
def execute(self, account, chain='LINEA'):
|
14
|
-
chain_instance = get_chain_instance(chain)
|
15
|
-
web3 = init_web3(chain_instance, account.proxy)
|
16
|
-
|
17
|
-
contract_address = get_contracts_for_chain(chain)['ACG_WORLDS']
|
18
|
-
|
19
|
-
send = Send(None, web3)
|
20
|
-
send.send_to_wallet(
|
21
|
-
account, contract_address, NativeBalance(100000000000000, chain, "ETH"), "0x1249c58b"
|
22
|
-
)
|
23
|
-
|
24
|
-
def log(self):
|
25
|
-
return "ACG WORLD NFT"
|
@@ -1,22 +0,0 @@
|
|
1
|
-
from sybil_engine.data.contracts import get_contracts_for_chain
|
2
|
-
from sybil_engine.data.networks import get_chain_instance
|
3
|
-
from sybil_engine.utils.web3_utils import init_web3
|
4
|
-
|
5
|
-
from web3_wizzard_lib.core.contract.alienswap_contract import AlienSwapContract
|
6
|
-
from web3_wizzard_lib.core.utils.sub_module import SubModule
|
7
|
-
|
8
|
-
|
9
|
-
class AlienSwap(SubModule):
|
10
|
-
module_name = 'ALIENSWAP_LINEA'
|
11
|
-
|
12
|
-
def execute(self, account, chain='LINEA'):
|
13
|
-
chain_instance = get_chain_instance(chain)
|
14
|
-
web3 = init_web3(chain_instance, account.proxy)
|
15
|
-
|
16
|
-
contract_address = get_contracts_for_chain(chain)['ALIENSWAP_LINEA']
|
17
|
-
as_match_nft = AlienSwapContract(contract_address, web3)
|
18
|
-
|
19
|
-
as_match_nft.purchase(account, 1)
|
20
|
-
|
21
|
-
def log(self):
|
22
|
-
return "ALIENSWAP LINEA NFT"
|