create-dubhe 0.1.13 → 1.2.0-pre.51

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.
Files changed (1570) hide show
  1. package/bin/cli.js +4 -0
  2. package/dist/cli.js +255 -0
  3. package/dist/cli.js.map +1 -0
  4. package/package.json +16 -13
  5. package/templates/101/aptos-template/public/fail.svg +12 -0
  6. package/templates/101/aptos-template/public/successful.svg +11 -0
  7. package/templates/101/initia-template/_gitignore +45 -0
  8. package/templates/101/initia-template/public/fail.svg +12 -0
  9. package/templates/101/initia-template/public/successful.svg +11 -0
  10. package/templates/101/movement-template/_gitignore +43 -0
  11. package/templates/101/movement-template/public/fail.svg +12 -0
  12. package/templates/101/movement-template/public/successful.svg +11 -0
  13. package/templates/101/rooch-template/.gitignore_ +43 -0
  14. package/templates/101/rooch-template/_gitignore +43 -0
  15. package/templates/101/rooch-template/public/fail.svg +12 -0
  16. package/templates/101/rooch-template/public/successful.svg +11 -0
  17. package/templates/101/sui-template/.gitattributes +3 -0
  18. package/templates/101/sui-template/.gitignore_ +51 -0
  19. package/templates/101/sui-template/mprocs.yaml +14 -0
  20. package/templates/101/sui-template/package.json +46 -0
  21. package/templates/101/sui-template/packages/client/.gitattributes +3 -0
  22. package/templates/101/sui-template/packages/client/.gitignore_ +51 -0
  23. package/templates/101/sui-template/packages/client/README.md +15 -0
  24. package/templates/101/sui-template/packages/client/package.json +53 -0
  25. package/templates/101/sui-template/packages/client/src/app/dubhe/useContract.ts +67 -0
  26. package/templates/101/sui-template/packages/client/src/app/layout.tsx +37 -0
  27. package/templates/101/sui-template/packages/client/src/app/page.tsx +846 -0
  28. package/templates/101/sui-template/packages/contracts/.gitignore_ +52 -0
  29. package/templates/101/sui-template/packages/contracts/Dockerfile +5 -0
  30. package/templates/101/sui-template/packages/contracts/deployment.ts +5 -0
  31. package/templates/101/sui-template/packages/contracts/docker-compose.yml +29 -0
  32. package/templates/101/sui-template/packages/contracts/dubhe.config.json +49 -0
  33. package/templates/101/sui-template/packages/contracts/dubhe.config.ts +20 -0
  34. package/templates/101/sui-template/packages/contracts/metadata.json +896 -0
  35. package/templates/101/sui-template/packages/contracts/package.json +56 -0
  36. package/templates/101/sui-template/packages/contracts/src/counter/.history/sui_localnet/0xad3da7b0681b16830878dd908fb30418da7d86871c445866174aee28e45850d6.json +873 -0
  37. package/templates/101/sui-template/packages/contracts/src/counter/.history/sui_localnet/latest.json +20 -0
  38. package/templates/101/sui-template/packages/contracts/src/counter/Move.lock +97 -0
  39. package/templates/101/sui-template/packages/contracts/src/counter/Move.toml +12 -0
  40. package/templates/101/sui-template/packages/contracts/src/counter/sources/codegen/components/counter0.move +86 -0
  41. package/templates/101/sui-template/packages/contracts/src/counter/sources/codegen/components/counter1.move +89 -0
  42. package/templates/101/sui-template/packages/contracts/src/counter/sources/codegen/dapp_key.move +31 -0
  43. package/templates/101/sui-template/packages/contracts/src/counter/sources/codegen/errors.move +16 -0
  44. package/templates/101/sui-template/packages/contracts/src/counter/sources/codegen/genesis.move +35 -0
  45. package/templates/101/sui-template/packages/contracts/src/counter/sources/codegen/init_test.move +20 -0
  46. package/templates/101/sui-template/packages/contracts/src/counter/sources/codegen/resources/counter2.move +95 -0
  47. package/templates/101/sui-template/packages/contracts/src/counter/sources/scripts/deploy_hook.move +12 -0
  48. package/templates/101/sui-template/packages/contracts/src/counter/sources/scripts/migrate.move +8 -0
  49. package/templates/101/sui-template/packages/contracts/src/counter/sources/systems/counter.move +20 -0
  50. package/templates/101/sui-template/packages/contracts/src/counter/sources/tests/counter.move +28 -0
  51. package/templates/101/sui-template/packages/contracts/src/dubhe/Move.lock +56 -0
  52. package/templates/101/sui-template/packages/contracts/src/dubhe/Move.toml +13 -0
  53. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/codegen/dapp_key.move +31 -0
  54. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/codegen/enums/account_status.move +39 -0
  55. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/codegen/enums/asset_status.move +34 -0
  56. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/codegen/enums/asset_type.move +44 -0
  57. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/codegen/errors.move +200 -0
  58. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/codegen/genesis.move +53 -0
  59. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/codegen/init_test.move +20 -0
  60. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/codegen/resources/asset_account.move +260 -0
  61. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/codegen/resources/asset_metadata.move +810 -0
  62. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/codegen/resources/asset_pools.move +424 -0
  63. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/codegen/resources/bridge_config.move +275 -0
  64. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/codegen/resources/bridge_deposit.move +295 -0
  65. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/codegen/resources/bridge_withdraw.move +345 -0
  66. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/codegen/resources/dubhe_asset_id.move +85 -0
  67. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/codegen/resources/dubhe_config.move +357 -0
  68. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/codegen/resources/wrapper_assets.move +101 -0
  69. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/core/dapp_fee_state.move +82 -0
  70. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/core/dapp_metadata.move +123 -0
  71. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/core/dapp_service.move +347 -0
  72. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/core/dapp_store.move +299 -0
  73. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/core/events.move +58 -0
  74. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/core/table_id.move +37 -0
  75. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/core/table_metadata.move +68 -0
  76. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/scripts/deploy_hook.move +58 -0
  77. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/scripts/migrate.move +8 -0
  78. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/systems/assets/assets.move +452 -0
  79. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/systems/assets/functions.move +163 -0
  80. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/systems/bridge.move +62 -0
  81. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/systems/dex/dex.move +236 -0
  82. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/systems/dex/functions.move +276 -0
  83. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/systems/dubhe.move +51 -0
  84. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/systems/entity_id.move +13 -0
  85. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/systems/fee.move +16 -0
  86. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/systems/gov.move +53 -0
  87. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/systems/wrapper.move +68 -0
  88. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/tests/assets.move +462 -0
  89. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/tests/bridge.move +55 -0
  90. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/tests/dex.move +454 -0
  91. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/tests/math.move +12 -0
  92. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/tests/wrapper.move +50 -0
  93. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/utils/math.move +128 -0
  94. package/templates/101/sui-template/packages/contracts/src/dubhe/sources/utils/type_info.move +39 -0
  95. package/templates/101/sui-template/pnpm-workspace.yaml +2 -0
  96. package/templates/contract/sui-template/.gitignore_ +45 -0
  97. package/templates/contract/sui-template/dubhe.config.ts +8 -0
  98. package/templates/contract/sui-template/package.json +21 -0
  99. package/templates/contract/sui-template/src/dubhe/Move.lock +56 -0
  100. package/templates/contract/sui-template/src/dubhe/Move.toml +13 -0
  101. package/templates/contract/sui-template/src/dubhe/sources/codegen/dapp_key.move +31 -0
  102. package/templates/contract/sui-template/src/dubhe/sources/codegen/enums/account_status.move +39 -0
  103. package/templates/contract/sui-template/src/dubhe/sources/codegen/enums/asset_status.move +34 -0
  104. package/templates/contract/sui-template/src/dubhe/sources/codegen/enums/asset_type.move +44 -0
  105. package/templates/contract/sui-template/src/dubhe/sources/codegen/errors.move +200 -0
  106. package/templates/contract/sui-template/src/dubhe/sources/codegen/genesis.move +53 -0
  107. package/templates/contract/sui-template/src/dubhe/sources/codegen/init_test.move +20 -0
  108. package/templates/contract/sui-template/src/dubhe/sources/codegen/resources/asset_account.move +260 -0
  109. package/templates/contract/sui-template/src/dubhe/sources/codegen/resources/asset_metadata.move +810 -0
  110. package/templates/contract/sui-template/src/dubhe/sources/codegen/resources/asset_pools.move +424 -0
  111. package/templates/contract/sui-template/src/dubhe/sources/codegen/resources/bridge_config.move +275 -0
  112. package/templates/contract/sui-template/src/dubhe/sources/codegen/resources/bridge_deposit.move +295 -0
  113. package/templates/contract/sui-template/src/dubhe/sources/codegen/resources/bridge_withdraw.move +345 -0
  114. package/templates/contract/sui-template/src/dubhe/sources/codegen/resources/dubhe_asset_id.move +85 -0
  115. package/templates/contract/sui-template/src/dubhe/sources/codegen/resources/dubhe_config.move +357 -0
  116. package/templates/contract/sui-template/src/dubhe/sources/codegen/resources/wrapper_assets.move +101 -0
  117. package/templates/contract/sui-template/src/dubhe/sources/core/dapp_fee_state.move +82 -0
  118. package/templates/contract/sui-template/src/dubhe/sources/core/dapp_metadata.move +123 -0
  119. package/templates/contract/sui-template/src/dubhe/sources/core/dapp_service.move +347 -0
  120. package/templates/contract/sui-template/src/dubhe/sources/core/dapp_store.move +299 -0
  121. package/templates/contract/sui-template/src/dubhe/sources/core/events.move +58 -0
  122. package/templates/contract/sui-template/src/dubhe/sources/core/table_id.move +37 -0
  123. package/templates/contract/sui-template/src/dubhe/sources/core/table_metadata.move +68 -0
  124. package/templates/contract/sui-template/src/dubhe/sources/scripts/deploy_hook.move +58 -0
  125. package/templates/contract/sui-template/src/dubhe/sources/scripts/migrate.move +8 -0
  126. package/templates/contract/sui-template/src/dubhe/sources/systems/assets/assets.move +452 -0
  127. package/templates/contract/sui-template/src/dubhe/sources/systems/assets/functions.move +163 -0
  128. package/templates/contract/sui-template/src/dubhe/sources/systems/bridge.move +62 -0
  129. package/templates/contract/sui-template/src/dubhe/sources/systems/dex/dex.move +236 -0
  130. package/templates/contract/sui-template/src/dubhe/sources/systems/dex/functions.move +276 -0
  131. package/templates/contract/sui-template/src/dubhe/sources/systems/dubhe.move +51 -0
  132. package/templates/contract/sui-template/src/dubhe/sources/systems/entity_id.move +13 -0
  133. package/templates/contract/sui-template/src/dubhe/sources/systems/fee.move +16 -0
  134. package/templates/contract/sui-template/src/dubhe/sources/systems/gov.move +53 -0
  135. package/templates/contract/sui-template/src/dubhe/sources/systems/wrapper.move +68 -0
  136. package/templates/contract/sui-template/src/dubhe/sources/tests/assets.move +462 -0
  137. package/templates/contract/sui-template/src/dubhe/sources/tests/bridge.move +55 -0
  138. package/templates/contract/sui-template/src/dubhe/sources/tests/dex.move +454 -0
  139. package/templates/contract/sui-template/src/dubhe/sources/tests/math.move +12 -0
  140. package/templates/contract/sui-template/src/dubhe/sources/tests/wrapper.move +50 -0
  141. package/templates/contract/sui-template/src/dubhe/sources/utils/math.move +128 -0
  142. package/templates/contract/sui-template/src/dubhe/sources/utils/type_info.move +39 -0
  143. package/templates/nextjs/aptos-template/public/fail.svg +12 -0
  144. package/templates/nextjs/aptos-template/public/successful.svg +11 -0
  145. package/templates/nextjs/aptos-template/src/components/Animation.tsx +70 -0
  146. package/templates/nextjs/aptos-template/src/components/pop_up_box/index.tsx +161 -0
  147. package/templates/nextjs/sui-template/.gitignore_ +51 -0
  148. package/templates/nextjs/sui-template/UPGRADE_NOTES.md +88 -0
  149. package/templates/nextjs/sui-template/mprocs.yaml +14 -0
  150. package/templates/nextjs/sui-template/package.json +46 -0
  151. package/templates/nextjs/sui-template/packages/client/.gitignore_ +48 -0
  152. package/templates/nextjs/sui-template/packages/client/.prettierrc.json +8 -0
  153. package/templates/nextjs/sui-template/packages/client/package.json +53 -0
  154. package/templates/nextjs/sui-template/packages/client/src/app/dubhe/useContract.ts +67 -0
  155. package/templates/nextjs/sui-template/packages/client/src/app/layout.tsx +38 -0
  156. package/templates/nextjs/sui-template/packages/client/src/app/page.tsx +907 -0
  157. package/templates/nextjs/sui-template/packages/client/src/app/providers.tsx +29 -0
  158. package/templates/nextjs/sui-template/packages/contracts/.gitignore_ +51 -0
  159. package/templates/nextjs/sui-template/packages/contracts/.prettierignore +1 -0
  160. package/templates/nextjs/sui-template/packages/contracts/.prettierrc.json +8 -0
  161. package/templates/nextjs/sui-template/packages/contracts/Dockerfile +5 -0
  162. package/templates/nextjs/sui-template/packages/contracts/deployment.ts +5 -0
  163. package/templates/nextjs/sui-template/packages/contracts/docker-compose.yml +29 -0
  164. package/templates/nextjs/sui-template/packages/contracts/dubhe.config.json +45 -0
  165. package/templates/nextjs/sui-template/packages/contracts/dubhe.config.ts +20 -0
  166. package/templates/nextjs/sui-template/packages/contracts/metadata.json +896 -0
  167. package/templates/nextjs/sui-template/packages/contracts/package.json +56 -0
  168. package/templates/nextjs/sui-template/packages/contracts/src/counter/.history/sui_localnet/0x02a530d486eddbe0484e21149fcd6906fe24fc888041b0bda3557c5d43724b41.json +896 -0
  169. package/templates/nextjs/sui-template/packages/contracts/src/counter/.history/sui_localnet/0x7cfa3a40bb178065d636ae842c0009a950870f413abf8649dd130c2398c896ce.json +896 -0
  170. package/templates/nextjs/sui-template/packages/contracts/src/counter/.history/sui_localnet/latest.json +19 -0
  171. package/templates/nextjs/sui-template/packages/contracts/src/counter/Move.lock +98 -0
  172. package/templates/nextjs/sui-template/packages/contracts/src/counter/Move.toml +12 -0
  173. package/templates/nextjs/sui-template/packages/contracts/src/counter/sources/codegen/components/counter0.move +86 -0
  174. package/templates/nextjs/sui-template/packages/contracts/src/counter/sources/codegen/components/counter1.move +89 -0
  175. package/templates/nextjs/sui-template/packages/contracts/src/counter/sources/codegen/dapp_key.move +31 -0
  176. package/templates/nextjs/sui-template/packages/contracts/src/counter/sources/codegen/errors.move +16 -0
  177. package/templates/nextjs/sui-template/packages/contracts/src/counter/sources/codegen/genesis.move +35 -0
  178. package/templates/nextjs/sui-template/packages/contracts/src/counter/sources/codegen/init_test.move +20 -0
  179. package/templates/nextjs/sui-template/packages/contracts/src/counter/sources/codegen/resources/counter2.move +95 -0
  180. package/templates/nextjs/sui-template/packages/contracts/src/counter/sources/scripts/deploy_hook.move +12 -0
  181. package/templates/nextjs/sui-template/packages/contracts/src/counter/sources/scripts/migrate.move +8 -0
  182. package/templates/nextjs/sui-template/packages/contracts/src/counter/sources/systems/counter.move +20 -0
  183. package/templates/nextjs/sui-template/packages/contracts/src/counter/sources/tests/counter.move +28 -0
  184. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/Move.lock +56 -0
  185. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/Move.toml +13 -0
  186. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/codegen/dapp_key.move +31 -0
  187. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/codegen/enums/account_status.move +39 -0
  188. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/codegen/enums/asset_status.move +34 -0
  189. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/codegen/enums/asset_type.move +44 -0
  190. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/codegen/errors.move +200 -0
  191. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/codegen/genesis.move +53 -0
  192. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/codegen/init_test.move +20 -0
  193. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/codegen/resources/asset_account.move +260 -0
  194. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/codegen/resources/asset_metadata.move +810 -0
  195. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/codegen/resources/asset_pools.move +424 -0
  196. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/codegen/resources/bridge_config.move +275 -0
  197. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/codegen/resources/bridge_deposit.move +295 -0
  198. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/codegen/resources/bridge_withdraw.move +345 -0
  199. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/codegen/resources/dubhe_asset_id.move +85 -0
  200. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/codegen/resources/dubhe_config.move +357 -0
  201. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/codegen/resources/wrapper_assets.move +101 -0
  202. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/core/dapp_fee_state.move +82 -0
  203. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/core/dapp_metadata.move +123 -0
  204. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/core/dapp_service.move +347 -0
  205. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/core/dapp_store.move +299 -0
  206. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/core/events.move +58 -0
  207. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/core/table_id.move +37 -0
  208. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/core/table_metadata.move +68 -0
  209. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/scripts/deploy_hook.move +58 -0
  210. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/scripts/migrate.move +8 -0
  211. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/systems/assets/assets.move +452 -0
  212. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/systems/assets/functions.move +163 -0
  213. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/systems/bridge.move +62 -0
  214. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/systems/dex/dex.move +236 -0
  215. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/systems/dex/functions.move +276 -0
  216. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/systems/dubhe.move +51 -0
  217. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/systems/entity_id.move +13 -0
  218. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/systems/fee.move +16 -0
  219. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/systems/gov.move +53 -0
  220. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/systems/wrapper.move +68 -0
  221. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/tests/assets.move +462 -0
  222. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/tests/bridge.move +55 -0
  223. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/tests/dex.move +454 -0
  224. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/tests/math.move +12 -0
  225. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/tests/wrapper.move +50 -0
  226. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/utils/math.move +128 -0
  227. package/templates/nextjs/sui-template/packages/contracts/src/dubhe/sources/utils/type_info.move +39 -0
  228. package/templates/nextjs/sui-template/pnpm-workspace.yaml +2 -0
  229. package/dist/index.mjs +0 -102
  230. package/index.js +0 -3
  231. package/template/101/aptos-template/contracts/counter/.history/aptos_local/latest.json +0 -6
  232. package/template/101/aptos-template/contracts/counter/build/counter/BuildInfo.yaml +0 -60
  233. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/counter_schema.mv +0 -0
  234. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/counter_system.mv +0 -0
  235. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/account.mv +0 -0
  236. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/aggregator.mv +0 -0
  237. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/aggregator_factory.mv +0 -0
  238. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/aggregator_v2.mv +0 -0
  239. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/aptos_account.mv +0 -0
  240. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/aptos_coin.mv +0 -0
  241. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/aptos_governance.mv +0 -0
  242. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/block.mv +0 -0
  243. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/chain_id.mv +0 -0
  244. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/chain_status.mv +0 -0
  245. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/code.mv +0 -0
  246. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/coin.mv +0 -0
  247. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/config_buffer.mv +0 -0
  248. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/consensus_config.mv +0 -0
  249. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/create_signer.mv +0 -0
  250. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/delegation_pool.mv +0 -0
  251. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/dispatchable_fungible_asset.mv +0 -0
  252. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/dkg.mv +0 -0
  253. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/event.mv +0 -0
  254. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/execution_config.mv +0 -0
  255. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/function_info.mv +0 -0
  256. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/fungible_asset.mv +0 -0
  257. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/gas_schedule.mv +0 -0
  258. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/genesis.mv +0 -0
  259. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/governance_proposal.mv +0 -0
  260. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/guid.mv +0 -0
  261. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/jwk_consensus_config.mv +0 -0
  262. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/jwks.mv +0 -0
  263. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/keyless_account.mv +0 -0
  264. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/managed_coin.mv +0 -0
  265. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/multisig_account.mv +0 -0
  266. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/object.mv +0 -0
  267. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/object_code_deployment.mv +0 -0
  268. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/optional_aggregator.mv +0 -0
  269. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/primary_fungible_store.mv +0 -0
  270. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/randomness.mv +0 -0
  271. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/randomness_api_v0_config.mv +0 -0
  272. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/randomness_config.mv +0 -0
  273. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/randomness_config_seqnum.mv +0 -0
  274. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/reconfiguration.mv +0 -0
  275. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/reconfiguration_state.mv +0 -0
  276. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/reconfiguration_with_dkg.mv +0 -0
  277. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/resource_account.mv +0 -0
  278. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/stake.mv +0 -0
  279. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/staking_config.mv +0 -0
  280. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/staking_contract.mv +0 -0
  281. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/staking_proxy.mv +0 -0
  282. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/state_storage.mv +0 -0
  283. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/storage_gas.mv +0 -0
  284. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/system_addresses.mv +0 -0
  285. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/timestamp.mv +0 -0
  286. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/transaction_context.mv +0 -0
  287. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/transaction_fee.mv +0 -0
  288. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/transaction_validation.mv +0 -0
  289. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/util.mv +0 -0
  290. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/validator_consensus_info.mv +0 -0
  291. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/version.mv +0 -0
  292. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/vesting.mv +0 -0
  293. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/voting.mv +0 -0
  294. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/any.mv +0 -0
  295. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/aptos_hash.mv +0 -0
  296. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/big_vector.mv +0 -0
  297. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/bls12381.mv +0 -0
  298. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/bls12381_algebra.mv +0 -0
  299. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/bn254_algebra.mv +0 -0
  300. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/capability.mv +0 -0
  301. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/comparator.mv +0 -0
  302. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/copyable_any.mv +0 -0
  303. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/crypto_algebra.mv +0 -0
  304. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/debug.mv +0 -0
  305. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/ed25519.mv +0 -0
  306. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/fixed_point64.mv +0 -0
  307. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/from_bcs.mv +0 -0
  308. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/math128.mv +0 -0
  309. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/math64.mv +0 -0
  310. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/math_fixed.mv +0 -0
  311. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/math_fixed64.mv +0 -0
  312. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/multi_ed25519.mv +0 -0
  313. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/pool_u64.mv +0 -0
  314. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/pool_u64_unbound.mv +0 -0
  315. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/ristretto255.mv +0 -0
  316. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/ristretto255_bulletproofs.mv +0 -0
  317. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/ristretto255_elgamal.mv +0 -0
  318. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/ristretto255_pedersen.mv +0 -0
  319. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/secp256k1.mv +0 -0
  320. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/simple_map.mv +0 -0
  321. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/smart_table.mv +0 -0
  322. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/smart_vector.mv +0 -0
  323. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/string_utils.mv +0 -0
  324. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/table.mv +0 -0
  325. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/table_with_length.mv +0 -0
  326. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/type_info.mv +0 -0
  327. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/acl.mv +0 -0
  328. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/bcs.mv +0 -0
  329. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/bit_vector.mv +0 -0
  330. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/error.mv +0 -0
  331. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/features.mv +0 -0
  332. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/fixed_point32.mv +0 -0
  333. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/hash.mv +0 -0
  334. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/mem.mv +0 -0
  335. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/option.mv +0 -0
  336. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/signer.mv +0 -0
  337. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/string.mv +0 -0
  338. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/vector.mv +0 -0
  339. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/deploy_hook.mv +0 -0
  340. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/entity_key.mv +0 -0
  341. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/events.mv +0 -0
  342. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/init.mv +0 -0
  343. package/template/101/aptos-template/contracts/counter/build/counter/bytecode_modules/world.mv +0 -0
  344. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/counter_schema.mvsm +0 -0
  345. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/counter_system.mvsm +0 -0
  346. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/account.mvsm +0 -0
  347. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/aggregator.mvsm +0 -0
  348. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/aggregator_factory.mvsm +0 -0
  349. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/aggregator_v2.mvsm +0 -0
  350. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/aptos_account.mvsm +0 -0
  351. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/aptos_coin.mvsm +0 -0
  352. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/aptos_governance.mvsm +0 -0
  353. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/block.mvsm +0 -0
  354. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/chain_id.mvsm +0 -0
  355. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/chain_status.mvsm +0 -0
  356. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/code.mvsm +0 -0
  357. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/coin.mvsm +0 -0
  358. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/config_buffer.mvsm +0 -0
  359. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/consensus_config.mvsm +0 -0
  360. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/create_signer.mvsm +0 -0
  361. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/delegation_pool.mvsm +0 -0
  362. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/dispatchable_fungible_asset.mvsm +0 -0
  363. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/dkg.mvsm +0 -0
  364. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/event.mvsm +0 -0
  365. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/execution_config.mvsm +0 -0
  366. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/function_info.mvsm +0 -0
  367. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/fungible_asset.mvsm +0 -0
  368. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/gas_schedule.mvsm +0 -0
  369. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/genesis.mvsm +0 -0
  370. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/governance_proposal.mvsm +0 -0
  371. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/guid.mvsm +0 -0
  372. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/jwk_consensus_config.mvsm +0 -0
  373. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/jwks.mvsm +0 -0
  374. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/keyless_account.mvsm +0 -0
  375. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/managed_coin.mvsm +0 -0
  376. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/multisig_account.mvsm +0 -0
  377. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/object.mvsm +0 -0
  378. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/object_code_deployment.mvsm +0 -0
  379. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/optional_aggregator.mvsm +0 -0
  380. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/primary_fungible_store.mvsm +0 -0
  381. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/randomness.mvsm +0 -0
  382. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/randomness_api_v0_config.mvsm +0 -0
  383. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/randomness_config.mvsm +0 -0
  384. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/randomness_config_seqnum.mvsm +0 -0
  385. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/reconfiguration.mvsm +0 -0
  386. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/reconfiguration_state.mvsm +0 -0
  387. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/reconfiguration_with_dkg.mvsm +0 -0
  388. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/resource_account.mvsm +0 -0
  389. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/stake.mvsm +0 -0
  390. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/staking_config.mvsm +0 -0
  391. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/staking_contract.mvsm +0 -0
  392. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/staking_proxy.mvsm +0 -0
  393. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/state_storage.mvsm +0 -0
  394. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/storage_gas.mvsm +0 -0
  395. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/system_addresses.mvsm +0 -0
  396. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/timestamp.mvsm +0 -0
  397. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/transaction_context.mvsm +0 -0
  398. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/transaction_fee.mvsm +0 -0
  399. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/transaction_validation.mvsm +0 -0
  400. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/util.mvsm +0 -0
  401. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/validator_consensus_info.mvsm +0 -0
  402. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/version.mvsm +0 -0
  403. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/vesting.mvsm +0 -0
  404. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/voting.mvsm +0 -0
  405. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/any.mvsm +0 -0
  406. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/aptos_hash.mvsm +0 -0
  407. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/big_vector.mvsm +0 -0
  408. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/bls12381.mvsm +0 -0
  409. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/bls12381_algebra.mvsm +0 -0
  410. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/bn254_algebra.mvsm +0 -0
  411. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/capability.mvsm +0 -0
  412. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/comparator.mvsm +0 -0
  413. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/copyable_any.mvsm +0 -0
  414. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/crypto_algebra.mvsm +0 -0
  415. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/debug.mvsm +0 -0
  416. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/ed25519.mvsm +0 -0
  417. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/fixed_point64.mvsm +0 -0
  418. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/from_bcs.mvsm +0 -0
  419. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/math128.mvsm +0 -0
  420. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/math64.mvsm +0 -0
  421. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/math_fixed.mvsm +0 -0
  422. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/math_fixed64.mvsm +0 -0
  423. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/multi_ed25519.mvsm +0 -0
  424. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/pool_u64.mvsm +0 -0
  425. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/pool_u64_unbound.mvsm +0 -0
  426. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/ristretto255.mvsm +0 -0
  427. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/ristretto255_bulletproofs.mvsm +0 -0
  428. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/ristretto255_elgamal.mvsm +0 -0
  429. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/ristretto255_pedersen.mvsm +0 -0
  430. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/secp256k1.mvsm +0 -0
  431. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/simple_map.mvsm +0 -0
  432. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/smart_table.mvsm +0 -0
  433. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/smart_vector.mvsm +0 -0
  434. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/string_utils.mvsm +0 -0
  435. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/table.mvsm +0 -0
  436. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/table_with_length.mvsm +0 -0
  437. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/type_info.mvsm +0 -0
  438. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/acl.mvsm +0 -0
  439. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/bcs.mvsm +0 -0
  440. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/bit_vector.mvsm +0 -0
  441. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/error.mvsm +0 -0
  442. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/features.mvsm +0 -0
  443. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/fixed_point32.mvsm +0 -0
  444. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/hash.mvsm +0 -0
  445. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/mem.mvsm +0 -0
  446. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/option.mvsm +0 -0
  447. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/signer.mvsm +0 -0
  448. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/string.mvsm +0 -0
  449. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/vector.mvsm +0 -0
  450. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/deploy_hook.mvsm +0 -0
  451. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/entity_key.mvsm +0 -0
  452. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/events.mvsm +0 -0
  453. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/init.mvsm +0 -0
  454. package/template/101/aptos-template/contracts/counter/build/counter/source_maps/world.mvsm +0 -0
  455. package/template/101/aptos-template/contracts/counter/build/counter/sources/counter_schema.move +0 -59
  456. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/account.move +0 -1604
  457. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/aggregator.move +0 -48
  458. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/aggregator_factory.move +0 -83
  459. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/aggregator_v2.move +0 -473
  460. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/aptos_account.move +0 -480
  461. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/aptos_coin.move +0 -204
  462. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/aptos_governance.move +0 -1390
  463. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/block.move +0 -349
  464. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/chain_id.move +0 -41
  465. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/chain_status.move +0 -48
  466. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/code.move +0 -367
  467. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/coin.move +0 -2014
  468. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/config_buffer.move +0 -101
  469. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/consensus_config.move +0 -77
  470. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/create_signer.move +0 -21
  471. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/delegation_pool.move +0 -5568
  472. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/dispatchable_fungible_asset.move +0 -228
  473. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/dkg.move +0 -121
  474. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/event.move +0 -92
  475. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/execution_config.move +0 -66
  476. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/function_info.move +0 -100
  477. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/fungible_asset.move +0 -1673
  478. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/gas_schedule.move +0 -176
  479. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/genesis.move +0 -549
  480. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/governance_proposal.move +0 -23
  481. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/guid.move +0 -68
  482. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/jwk_consensus_config.move +0 -148
  483. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/jwks.move +0 -889
  484. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/keyless_account.move +0 -312
  485. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/managed_coin.move +0 -267
  486. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/multisig_account.move +0 -2594
  487. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/object.move +0 -1095
  488. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/object_code_deployment.move +0 -147
  489. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/optional_aggregator.move +0 -286
  490. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/primary_fungible_store.move +0 -405
  491. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/randomness.move +0 -574
  492. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/randomness_api_v0_config.move +0 -57
  493. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/randomness_config.move +0 -153
  494. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/randomness_config_seqnum.move +0 -49
  495. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/reconfiguration.move +0 -222
  496. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/reconfiguration_state.move +0 -132
  497. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/reconfiguration_with_dkg.move +0 -69
  498. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/resource_account.move +0 -267
  499. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/stake.move +0 -3185
  500. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/staking_config.move +0 -686
  501. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/staking_contract.move +0 -1627
  502. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/staking_proxy.move +0 -228
  503. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/state_storage.move +0 -90
  504. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/storage_gas.move +0 -622
  505. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/system_addresses.move +0 -82
  506. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/timestamp.move +0 -88
  507. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/transaction_context.move +0 -262
  508. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/transaction_fee.move +0 -170
  509. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/transaction_validation.move +0 -486
  510. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/util.move +0 -16
  511. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/validator_consensus_info.move +0 -42
  512. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/version.move +0 -115
  513. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/vesting.move +0 -2192
  514. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/voting.move +0 -1282
  515. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/any.move +0 -57
  516. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/aptos_hash.move +0 -253
  517. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/big_vector.move +0 -469
  518. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/bls12381.move +0 -985
  519. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/bls12381_algebra.move +0 -802
  520. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/bn254_algebra.move +0 -855
  521. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/capability.move +0 -193
  522. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/comparator.move +0 -173
  523. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/copyable_any.move +0 -45
  524. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/crypto_algebra.move +0 -351
  525. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/debug.move +0 -278
  526. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/ed25519.move +0 -262
  527. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/fixed_point64.move +0 -447
  528. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/from_bcs.move +0 -91
  529. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/math128.move +0 -381
  530. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/math64.move +0 -336
  531. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/math_fixed.move +0 -139
  532. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/math_fixed64.move +0 -142
  533. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/multi_ed25519.move +0 -482
  534. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/pool_u64.move +0 -571
  535. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/pool_u64_unbound.move +0 -270
  536. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/ristretto255.move +0 -1310
  537. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/ristretto255_bulletproofs.move +0 -253
  538. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/ristretto255_elgamal.move +0 -234
  539. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/ristretto255_pedersen.move +0 -158
  540. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/secp256k1.move +0 -114
  541. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/simple_map.move +0 -319
  542. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/smart_table.move +0 -769
  543. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/smart_vector.move +0 -766
  544. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/string_utils.move +0 -148
  545. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/table.move +0 -152
  546. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/table_with_length.move +0 -141
  547. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/type_info.move +0 -351
  548. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/acl.move +0 -46
  549. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/bcs.move +0 -46
  550. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/bit_vector.move +0 -239
  551. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/error.move +0 -88
  552. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/features.move +0 -784
  553. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/fixed_point32.move +0 -295
  554. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/hash.move +0 -8
  555. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/mem.move +0 -34
  556. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/option.move +0 -356
  557. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/signer.move +0 -21
  558. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/string.move +0 -93
  559. package/template/101/aptos-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/vector.move +0 -691
  560. package/template/101/aptos-template/pnpm-lock.yaml +0 -6737
  561. package/template/101/aptos-template/public/fail.svg +0 -12
  562. package/template/101/aptos-template/public/successful.svg +0 -11
  563. package/template/101/initia-template/contracts/counter/build/counter/BuildInfo.yaml +0 -46
  564. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/counter.mv +0 -0
  565. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/account.mv +0 -0
  566. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/address.mv +0 -0
  567. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/any.mv +0 -0
  568. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/aptos_hash.mv +0 -0
  569. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/base64.mv +0 -0
  570. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/bech32.mv +0 -0
  571. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/bigdecimal.mv +0 -0
  572. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/biguint.mv +0 -0
  573. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/block.mv +0 -0
  574. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/code.mv +0 -0
  575. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/coin.mv +0 -0
  576. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/collection.mv +0 -0
  577. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/comparator.mv +0 -0
  578. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/copyable_any.mv +0 -0
  579. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/cosmos.mv +0 -0
  580. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/debug.mv +0 -0
  581. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/dex.mv +0 -0
  582. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/dispatchable_fungible_asset.mv +0 -0
  583. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/ed25519.mv +0 -0
  584. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/event.mv +0 -0
  585. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/fixed_point64.mv +0 -0
  586. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/from_bcs.mv +0 -0
  587. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/function_info.mv +0 -0
  588. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/fungible_asset.mv +0 -0
  589. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/hex.mv +0 -0
  590. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/initia_nft.mv +0 -0
  591. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/json.mv +0 -0
  592. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/keccak.mv +0 -0
  593. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/managed_coin.mv +0 -0
  594. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/math128.mv +0 -0
  595. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/math64.mv +0 -0
  596. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/minitswap.mv +0 -0
  597. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/multisig.mv +0 -0
  598. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/multisig_v2.mv +0 -0
  599. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/nft.mv +0 -0
  600. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/object.mv +0 -0
  601. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/object_code_deployment.mv +0 -0
  602. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/oracle.mv +0 -0
  603. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/primary_fungible_store.mv +0 -0
  604. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/property_map.mv +0 -0
  605. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/query.mv +0 -0
  606. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/royalty.mv +0 -0
  607. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/secp256k1.mv +0 -0
  608. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/simple_map.mv +0 -0
  609. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/simple_nft.mv +0 -0
  610. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/soul_bound_token.mv +0 -0
  611. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/stableswap.mv +0 -0
  612. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/staking.mv +0 -0
  613. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/string_utils.mv +0 -0
  614. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/table.mv +0 -0
  615. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/table_key.mv +0 -0
  616. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/timestamp.mv +0 -0
  617. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/transaction_context.mv +0 -0
  618. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/InitiaStdlib/type_info.mv +0 -0
  619. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveNursery/acl.mv +0 -0
  620. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveNursery/capability.mv +0 -0
  621. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveNursery/compare.mv +0 -0
  622. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveNursery/guid.mv +0 -0
  623. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/ascii.mv +0 -0
  624. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/bcs.mv +0 -0
  625. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/bit_vector.mv +0 -0
  626. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/error.mv +0 -0
  627. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/fixed_point32.mv +0 -0
  628. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/hash.mv +0 -0
  629. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/option.mv +0 -0
  630. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/signer.mv +0 -0
  631. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/string.mv +0 -0
  632. package/template/101/initia-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/vector.mv +0 -0
  633. package/template/101/initia-template/contracts/counter/build/counter/source_maps/counter.mvsm +0 -0
  634. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/account.mvsm +0 -0
  635. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/address.mvsm +0 -0
  636. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/any.mvsm +0 -0
  637. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/aptos_hash.mvsm +0 -0
  638. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/base64.mvsm +0 -0
  639. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/bech32.mvsm +0 -0
  640. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/bigdecimal.mvsm +0 -0
  641. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/biguint.mvsm +0 -0
  642. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/block.mvsm +0 -0
  643. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/code.mvsm +0 -0
  644. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/coin.mvsm +0 -0
  645. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/collection.mvsm +0 -0
  646. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/comparator.mvsm +0 -0
  647. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/copyable_any.mvsm +0 -0
  648. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/cosmos.mvsm +0 -0
  649. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/debug.mvsm +0 -0
  650. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/dex.mvsm +0 -0
  651. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/dispatchable_fungible_asset.mvsm +0 -0
  652. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/ed25519.mvsm +0 -0
  653. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/event.mvsm +0 -0
  654. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/fixed_point64.mvsm +0 -0
  655. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/from_bcs.mvsm +0 -0
  656. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/function_info.mvsm +0 -0
  657. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/fungible_asset.mvsm +0 -0
  658. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/hex.mvsm +0 -0
  659. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/initia_nft.mvsm +0 -0
  660. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/json.mvsm +0 -0
  661. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/keccak.mvsm +0 -0
  662. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/managed_coin.mvsm +0 -0
  663. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/math128.mvsm +0 -0
  664. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/math64.mvsm +0 -0
  665. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/minitswap.mvsm +0 -0
  666. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/multisig.mvsm +0 -0
  667. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/multisig_v2.mvsm +0 -0
  668. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/nft.mvsm +0 -0
  669. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/object.mvsm +0 -0
  670. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/object_code_deployment.mvsm +0 -0
  671. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/oracle.mvsm +0 -0
  672. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/primary_fungible_store.mvsm +0 -0
  673. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/property_map.mvsm +0 -0
  674. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/query.mvsm +0 -0
  675. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/royalty.mvsm +0 -0
  676. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/secp256k1.mvsm +0 -0
  677. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/simple_map.mvsm +0 -0
  678. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/simple_nft.mvsm +0 -0
  679. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/soul_bound_token.mvsm +0 -0
  680. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/stableswap.mvsm +0 -0
  681. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/staking.mvsm +0 -0
  682. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/string_utils.mvsm +0 -0
  683. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/table.mvsm +0 -0
  684. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/table_key.mvsm +0 -0
  685. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/timestamp.mvsm +0 -0
  686. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/transaction_context.mvsm +0 -0
  687. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/InitiaStdlib/type_info.mvsm +0 -0
  688. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/MoveNursery/acl.mvsm +0 -0
  689. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/MoveNursery/capability.mvsm +0 -0
  690. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/MoveNursery/compare.mvsm +0 -0
  691. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/MoveNursery/guid.mvsm +0 -0
  692. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/ascii.mvsm +0 -0
  693. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/bcs.mvsm +0 -0
  694. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/bit_vector.mvsm +0 -0
  695. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/error.mvsm +0 -0
  696. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/fixed_point32.mvsm +0 -0
  697. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/hash.mvsm +0 -0
  698. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/option.mvsm +0 -0
  699. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/signer.mvsm +0 -0
  700. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/string.mvsm +0 -0
  701. package/template/101/initia-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/vector.mvsm +0 -0
  702. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/account.move +0 -386
  703. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/address.move +0 -97
  704. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/any.move +0 -63
  705. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/aptos_hash.move +0 -20
  706. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/base64.move +0 -14
  707. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/bech32.move +0 -37
  708. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/bigdecimal.move +0 -628
  709. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/biguint.move +0 -364
  710. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/block.move +0 -55
  711. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/code.move +0 -357
  712. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/coin.move +0 -430
  713. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/collection.move +0 -674
  714. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/comparator.move +0 -176
  715. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/copyable_any.move +0 -53
  716. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/cosmos.move +0 -572
  717. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/debug.move +0 -352
  718. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/dex.move +0 -2795
  719. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/dispatchable_fungible_asset.move +0 -206
  720. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/ed25519.move +0 -184
  721. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/event.move +0 -42
  722. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/fixed_point64.move +0 -691
  723. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/from_bcs.move +0 -114
  724. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/function_info.move +0 -106
  725. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/fungible_asset.move +0 -1391
  726. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/hex.move +0 -196
  727. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/initia_nft.move +0 -695
  728. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/json.move +0 -266
  729. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/keccak.move +0 -33
  730. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/managed_coin.move +0 -283
  731. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/math128.move +0 -343
  732. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/math64.move +0 -286
  733. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/minitswap.move +0 -3461
  734. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/multisig.move +0 -1011
  735. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/multisig_v2.move +0 -2465
  736. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/nft.move +0 -704
  737. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/object.move +0 -797
  738. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/object_code_deployment.move +0 -157
  739. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/oracle.move +0 -71
  740. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/primary_fungible_store.move +0 -529
  741. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/property_map.move +0 -907
  742. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/query.move +0 -112
  743. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/royalty.move +0 -153
  744. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/secp256k1.move +0 -265
  745. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/simple_map.move +0 -329
  746. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/simple_nft.move +0 -561
  747. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/soul_bound_token.move +0 -862
  748. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/stableswap.move +0 -1659
  749. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/staking.move +0 -2555
  750. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/string_utils.move +0 -234
  751. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/table.move +0 -362
  752. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/table_key.move +0 -47
  753. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/timestamp.move +0 -49
  754. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/transaction_context.move +0 -87
  755. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/InitiaStdlib/type_info.move +0 -80
  756. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/MoveNursery/acl.move +0 -52
  757. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/MoveNursery/capability.move +0 -231
  758. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/MoveNursery/compare.move +0 -76
  759. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/MoveNursery/guid.move +0 -116
  760. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/ascii.move +0 -153
  761. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/bcs.move +0 -17
  762. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/bit_vector.move +0 -179
  763. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/error.move +0 -116
  764. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/fixed_point32.move +0 -315
  765. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/hash.move +0 -31
  766. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/option.move +0 -390
  767. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/signer.move +0 -21
  768. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/string.move +0 -99
  769. package/template/101/initia-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/vector.move +0 -703
  770. package/template/101/initia-template/contracts/counter/sources/counter.move +0 -25
  771. package/template/101/initia-template/pnpm-lock.yaml +0 -7204
  772. package/template/101/initia-template/public/fail.svg +0 -12
  773. package/template/101/initia-template/public/successful.svg +0 -11
  774. package/template/101/movement-template/contracts/counter/build/counter/BuildInfo.yaml +0 -60
  775. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/counter_schema.mv +0 -0
  776. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/counter_system.mv +0 -0
  777. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/account.mv +0 -0
  778. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/aggregator.mv +0 -0
  779. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/aggregator_factory.mv +0 -0
  780. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/aggregator_v2.mv +0 -0
  781. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/aptos_account.mv +0 -0
  782. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/aptos_coin.mv +0 -0
  783. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/aptos_governance.mv +0 -0
  784. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/block.mv +0 -0
  785. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/chain_id.mv +0 -0
  786. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/chain_status.mv +0 -0
  787. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/code.mv +0 -0
  788. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/coin.mv +0 -0
  789. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/config_buffer.mv +0 -0
  790. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/consensus_config.mv +0 -0
  791. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/create_signer.mv +0 -0
  792. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/delegation_pool.mv +0 -0
  793. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/dispatchable_fungible_asset.mv +0 -0
  794. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/dkg.mv +0 -0
  795. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/event.mv +0 -0
  796. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/execution_config.mv +0 -0
  797. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/function_info.mv +0 -0
  798. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/fungible_asset.mv +0 -0
  799. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/gas_schedule.mv +0 -0
  800. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/genesis.mv +0 -0
  801. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/governance_proposal.mv +0 -0
  802. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/guid.mv +0 -0
  803. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/jwk_consensus_config.mv +0 -0
  804. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/jwks.mv +0 -0
  805. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/keyless_account.mv +0 -0
  806. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/managed_coin.mv +0 -0
  807. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/multisig_account.mv +0 -0
  808. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/object.mv +0 -0
  809. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/object_code_deployment.mv +0 -0
  810. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/optional_aggregator.mv +0 -0
  811. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/primary_fungible_store.mv +0 -0
  812. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/randomness.mv +0 -0
  813. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/randomness_api_v0_config.mv +0 -0
  814. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/randomness_config.mv +0 -0
  815. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/randomness_config_seqnum.mv +0 -0
  816. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/reconfiguration.mv +0 -0
  817. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/reconfiguration_state.mv +0 -0
  818. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/reconfiguration_with_dkg.mv +0 -0
  819. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/resource_account.mv +0 -0
  820. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/stake.mv +0 -0
  821. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/staking_config.mv +0 -0
  822. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/staking_contract.mv +0 -0
  823. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/staking_proxy.mv +0 -0
  824. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/state_storage.mv +0 -0
  825. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/storage_gas.mv +0 -0
  826. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/system_addresses.mv +0 -0
  827. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/timestamp.mv +0 -0
  828. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/transaction_context.mv +0 -0
  829. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/transaction_fee.mv +0 -0
  830. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/transaction_validation.mv +0 -0
  831. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/util.mv +0 -0
  832. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/validator_consensus_info.mv +0 -0
  833. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/version.mv +0 -0
  834. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/vesting.mv +0 -0
  835. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosFramework/voting.mv +0 -0
  836. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/any.mv +0 -0
  837. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/aptos_hash.mv +0 -0
  838. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/big_vector.mv +0 -0
  839. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/bls12381.mv +0 -0
  840. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/bls12381_algebra.mv +0 -0
  841. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/bn254_algebra.mv +0 -0
  842. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/capability.mv +0 -0
  843. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/comparator.mv +0 -0
  844. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/copyable_any.mv +0 -0
  845. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/crypto_algebra.mv +0 -0
  846. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/debug.mv +0 -0
  847. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/ed25519.mv +0 -0
  848. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/fixed_point64.mv +0 -0
  849. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/from_bcs.mv +0 -0
  850. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/math128.mv +0 -0
  851. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/math64.mv +0 -0
  852. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/math_fixed.mv +0 -0
  853. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/math_fixed64.mv +0 -0
  854. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/multi_ed25519.mv +0 -0
  855. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/pool_u64.mv +0 -0
  856. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/pool_u64_unbound.mv +0 -0
  857. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/ristretto255.mv +0 -0
  858. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/ristretto255_bulletproofs.mv +0 -0
  859. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/ristretto255_elgamal.mv +0 -0
  860. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/ristretto255_pedersen.mv +0 -0
  861. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/secp256k1.mv +0 -0
  862. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/simple_map.mv +0 -0
  863. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/smart_table.mv +0 -0
  864. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/smart_vector.mv +0 -0
  865. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/string_utils.mv +0 -0
  866. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/table.mv +0 -0
  867. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/table_with_length.mv +0 -0
  868. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/AptosStdlib/type_info.mv +0 -0
  869. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/acl.mv +0 -0
  870. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/bcs.mv +0 -0
  871. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/bit_vector.mv +0 -0
  872. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/error.mv +0 -0
  873. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/features.mv +0 -0
  874. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/fixed_point32.mv +0 -0
  875. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/hash.mv +0 -0
  876. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/mem.mv +0 -0
  877. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/option.mv +0 -0
  878. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/signer.mv +0 -0
  879. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/string.mv +0 -0
  880. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/dependencies/MoveStdlib/vector.mv +0 -0
  881. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/deploy_hook.mv +0 -0
  882. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/entity_key.mv +0 -0
  883. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/events.mv +0 -0
  884. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/init.mv +0 -0
  885. package/template/101/movement-template/contracts/counter/build/counter/bytecode_modules/world.mv +0 -0
  886. package/template/101/movement-template/contracts/counter/build/counter/source_maps/counter_schema.mvsm +0 -0
  887. package/template/101/movement-template/contracts/counter/build/counter/source_maps/counter_system.mvsm +0 -0
  888. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/account.mvsm +0 -0
  889. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/aggregator.mvsm +0 -0
  890. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/aggregator_factory.mvsm +0 -0
  891. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/aggregator_v2.mvsm +0 -0
  892. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/aptos_account.mvsm +0 -0
  893. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/aptos_coin.mvsm +0 -0
  894. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/aptos_governance.mvsm +0 -0
  895. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/block.mvsm +0 -0
  896. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/chain_id.mvsm +0 -0
  897. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/chain_status.mvsm +0 -0
  898. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/code.mvsm +0 -0
  899. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/coin.mvsm +0 -0
  900. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/config_buffer.mvsm +0 -0
  901. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/consensus_config.mvsm +0 -0
  902. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/create_signer.mvsm +0 -0
  903. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/delegation_pool.mvsm +0 -0
  904. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/dispatchable_fungible_asset.mvsm +0 -0
  905. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/dkg.mvsm +0 -0
  906. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/event.mvsm +0 -0
  907. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/execution_config.mvsm +0 -0
  908. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/function_info.mvsm +0 -0
  909. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/fungible_asset.mvsm +0 -0
  910. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/gas_schedule.mvsm +0 -0
  911. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/genesis.mvsm +0 -0
  912. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/governance_proposal.mvsm +0 -0
  913. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/guid.mvsm +0 -0
  914. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/jwk_consensus_config.mvsm +0 -0
  915. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/jwks.mvsm +0 -0
  916. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/keyless_account.mvsm +0 -0
  917. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/managed_coin.mvsm +0 -0
  918. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/multisig_account.mvsm +0 -0
  919. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/object.mvsm +0 -0
  920. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/object_code_deployment.mvsm +0 -0
  921. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/optional_aggregator.mvsm +0 -0
  922. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/primary_fungible_store.mvsm +0 -0
  923. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/randomness.mvsm +0 -0
  924. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/randomness_api_v0_config.mvsm +0 -0
  925. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/randomness_config.mvsm +0 -0
  926. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/randomness_config_seqnum.mvsm +0 -0
  927. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/reconfiguration.mvsm +0 -0
  928. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/reconfiguration_state.mvsm +0 -0
  929. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/reconfiguration_with_dkg.mvsm +0 -0
  930. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/resource_account.mvsm +0 -0
  931. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/stake.mvsm +0 -0
  932. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/staking_config.mvsm +0 -0
  933. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/staking_contract.mvsm +0 -0
  934. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/staking_proxy.mvsm +0 -0
  935. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/state_storage.mvsm +0 -0
  936. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/storage_gas.mvsm +0 -0
  937. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/system_addresses.mvsm +0 -0
  938. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/timestamp.mvsm +0 -0
  939. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/transaction_context.mvsm +0 -0
  940. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/transaction_fee.mvsm +0 -0
  941. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/transaction_validation.mvsm +0 -0
  942. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/util.mvsm +0 -0
  943. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/validator_consensus_info.mvsm +0 -0
  944. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/version.mvsm +0 -0
  945. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/vesting.mvsm +0 -0
  946. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosFramework/voting.mvsm +0 -0
  947. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/any.mvsm +0 -0
  948. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/aptos_hash.mvsm +0 -0
  949. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/big_vector.mvsm +0 -0
  950. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/bls12381.mvsm +0 -0
  951. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/bls12381_algebra.mvsm +0 -0
  952. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/bn254_algebra.mvsm +0 -0
  953. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/capability.mvsm +0 -0
  954. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/comparator.mvsm +0 -0
  955. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/copyable_any.mvsm +0 -0
  956. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/crypto_algebra.mvsm +0 -0
  957. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/debug.mvsm +0 -0
  958. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/ed25519.mvsm +0 -0
  959. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/fixed_point64.mvsm +0 -0
  960. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/from_bcs.mvsm +0 -0
  961. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/math128.mvsm +0 -0
  962. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/math64.mvsm +0 -0
  963. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/math_fixed.mvsm +0 -0
  964. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/math_fixed64.mvsm +0 -0
  965. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/multi_ed25519.mvsm +0 -0
  966. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/pool_u64.mvsm +0 -0
  967. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/pool_u64_unbound.mvsm +0 -0
  968. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/ristretto255.mvsm +0 -0
  969. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/ristretto255_bulletproofs.mvsm +0 -0
  970. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/ristretto255_elgamal.mvsm +0 -0
  971. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/ristretto255_pedersen.mvsm +0 -0
  972. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/secp256k1.mvsm +0 -0
  973. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/simple_map.mvsm +0 -0
  974. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/smart_table.mvsm +0 -0
  975. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/smart_vector.mvsm +0 -0
  976. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/string_utils.mvsm +0 -0
  977. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/table.mvsm +0 -0
  978. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/table_with_length.mvsm +0 -0
  979. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/AptosStdlib/type_info.mvsm +0 -0
  980. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/acl.mvsm +0 -0
  981. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/bcs.mvsm +0 -0
  982. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/bit_vector.mvsm +0 -0
  983. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/error.mvsm +0 -0
  984. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/features.mvsm +0 -0
  985. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/fixed_point32.mvsm +0 -0
  986. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/hash.mvsm +0 -0
  987. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/mem.mvsm +0 -0
  988. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/option.mvsm +0 -0
  989. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/signer.mvsm +0 -0
  990. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/string.mvsm +0 -0
  991. package/template/101/movement-template/contracts/counter/build/counter/source_maps/dependencies/MoveStdlib/vector.mvsm +0 -0
  992. package/template/101/movement-template/contracts/counter/build/counter/source_maps/deploy_hook.mvsm +0 -0
  993. package/template/101/movement-template/contracts/counter/build/counter/source_maps/entity_key.mvsm +0 -0
  994. package/template/101/movement-template/contracts/counter/build/counter/source_maps/events.mvsm +0 -0
  995. package/template/101/movement-template/contracts/counter/build/counter/source_maps/init.mvsm +0 -0
  996. package/template/101/movement-template/contracts/counter/build/counter/source_maps/world.mvsm +0 -0
  997. package/template/101/movement-template/contracts/counter/build/counter/sources/counter_schema.move +0 -59
  998. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/account.move +0 -1604
  999. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/aggregator.move +0 -48
  1000. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/aggregator_factory.move +0 -83
  1001. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/aggregator_v2.move +0 -473
  1002. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/aptos_account.move +0 -480
  1003. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/aptos_coin.move +0 -204
  1004. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/aptos_governance.move +0 -1390
  1005. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/block.move +0 -349
  1006. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/chain_id.move +0 -41
  1007. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/chain_status.move +0 -48
  1008. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/code.move +0 -367
  1009. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/coin.move +0 -2014
  1010. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/config_buffer.move +0 -101
  1011. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/consensus_config.move +0 -77
  1012. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/create_signer.move +0 -21
  1013. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/delegation_pool.move +0 -5568
  1014. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/dispatchable_fungible_asset.move +0 -228
  1015. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/dkg.move +0 -121
  1016. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/event.move +0 -92
  1017. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/execution_config.move +0 -66
  1018. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/function_info.move +0 -100
  1019. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/fungible_asset.move +0 -1673
  1020. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/gas_schedule.move +0 -176
  1021. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/genesis.move +0 -549
  1022. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/governance_proposal.move +0 -23
  1023. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/guid.move +0 -68
  1024. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/jwk_consensus_config.move +0 -148
  1025. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/jwks.move +0 -889
  1026. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/keyless_account.move +0 -312
  1027. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/managed_coin.move +0 -267
  1028. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/multisig_account.move +0 -2594
  1029. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/object.move +0 -1095
  1030. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/object_code_deployment.move +0 -147
  1031. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/optional_aggregator.move +0 -286
  1032. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/primary_fungible_store.move +0 -405
  1033. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/randomness.move +0 -574
  1034. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/randomness_api_v0_config.move +0 -57
  1035. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/randomness_config.move +0 -153
  1036. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/randomness_config_seqnum.move +0 -49
  1037. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/reconfiguration.move +0 -222
  1038. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/reconfiguration_state.move +0 -132
  1039. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/reconfiguration_with_dkg.move +0 -69
  1040. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/resource_account.move +0 -267
  1041. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/stake.move +0 -3185
  1042. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/staking_config.move +0 -686
  1043. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/staking_contract.move +0 -1627
  1044. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/staking_proxy.move +0 -228
  1045. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/state_storage.move +0 -90
  1046. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/storage_gas.move +0 -622
  1047. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/system_addresses.move +0 -82
  1048. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/timestamp.move +0 -88
  1049. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/transaction_context.move +0 -262
  1050. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/transaction_fee.move +0 -170
  1051. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/transaction_validation.move +0 -486
  1052. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/util.move +0 -16
  1053. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/validator_consensus_info.move +0 -42
  1054. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/version.move +0 -115
  1055. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/vesting.move +0 -2192
  1056. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosFramework/voting.move +0 -1282
  1057. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/any.move +0 -57
  1058. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/aptos_hash.move +0 -253
  1059. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/big_vector.move +0 -469
  1060. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/bls12381.move +0 -985
  1061. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/bls12381_algebra.move +0 -802
  1062. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/bn254_algebra.move +0 -855
  1063. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/capability.move +0 -193
  1064. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/comparator.move +0 -173
  1065. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/copyable_any.move +0 -45
  1066. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/crypto_algebra.move +0 -351
  1067. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/debug.move +0 -278
  1068. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/ed25519.move +0 -262
  1069. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/fixed_point64.move +0 -447
  1070. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/from_bcs.move +0 -91
  1071. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/math128.move +0 -381
  1072. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/math64.move +0 -336
  1073. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/math_fixed.move +0 -139
  1074. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/math_fixed64.move +0 -142
  1075. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/multi_ed25519.move +0 -482
  1076. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/pool_u64.move +0 -571
  1077. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/pool_u64_unbound.move +0 -270
  1078. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/ristretto255.move +0 -1310
  1079. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/ristretto255_bulletproofs.move +0 -253
  1080. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/ristretto255_elgamal.move +0 -234
  1081. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/ristretto255_pedersen.move +0 -158
  1082. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/secp256k1.move +0 -114
  1083. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/simple_map.move +0 -319
  1084. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/smart_table.move +0 -769
  1085. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/smart_vector.move +0 -766
  1086. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/string_utils.move +0 -148
  1087. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/table.move +0 -152
  1088. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/table_with_length.move +0 -141
  1089. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/AptosStdlib/type_info.move +0 -351
  1090. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/acl.move +0 -46
  1091. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/bcs.move +0 -46
  1092. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/bit_vector.move +0 -239
  1093. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/error.move +0 -88
  1094. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/features.move +0 -784
  1095. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/fixed_point32.move +0 -295
  1096. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/hash.move +0 -8
  1097. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/mem.move +0 -34
  1098. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/option.move +0 -356
  1099. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/signer.move +0 -21
  1100. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/string.move +0 -93
  1101. package/template/101/movement-template/contracts/counter/build/counter/sources/dependencies/MoveStdlib/vector.move +0 -691
  1102. package/template/101/movement-template/contracts/counter/sources/codegen/eps/events.move +0 -34
  1103. package/template/101/movement-template/contracts/counter/sources/codegen/eps/world.move +0 -65
  1104. package/template/101/movement-template/contracts/counter/sources/codegen/init.move +0 -17
  1105. package/template/101/movement-template/contracts/counter/sources/entity_key.move +0 -31
  1106. package/template/101/movement-template/contracts/counter/sources/script/deploy_hook.move +0 -19
  1107. package/template/101/movement-template/contracts/counter/sources/system/counter_system.move +0 -11
  1108. package/template/101/movement-template/pnpm-lock.yaml +0 -6737
  1109. package/template/101/movement-template/public/fail.svg +0 -12
  1110. package/template/101/movement-template/public/successful.svg +0 -11
  1111. package/template/101/rooch-template/public/fail.svg +0 -12
  1112. package/template/101/rooch-template/public/successful.svg +0 -11
  1113. package/template/101/sui-template/_gitignore +0 -48
  1114. package/template/101/sui-template/contracts/counter/.history/sui_localnet/latest.json +0 -11
  1115. package/template/101/sui-template/contracts/counter/Move.lock +0 -45
  1116. package/template/101/sui-template/contracts/counter/Move.toml +0 -12
  1117. package/template/101/sui-template/contracts/counter/sources/codegen/core/dapp_key.move +0 -16
  1118. package/template/101/sui-template/contracts/counter/sources/codegen/core/genesis.move +0 -19
  1119. package/template/101/sui-template/contracts/counter/sources/codegen/core/init_test.move +0 -18
  1120. package/template/101/sui-template/contracts/counter/sources/codegen/core/metadata.move +0 -102
  1121. package/template/101/sui-template/contracts/counter/sources/codegen/core/schema.move +0 -128
  1122. package/template/101/sui-template/contracts/counter/sources/codegen/core/system.move +0 -111
  1123. package/template/101/sui-template/contracts/counter/sources/codegen/data/increment_event.move +0 -22
  1124. package/template/101/sui-template/contracts/counter/sources/codegen/errors.move +0 -16
  1125. package/template/101/sui-template/contracts/counter/sources/codegen/events.move +0 -23
  1126. package/template/101/sui-template/contracts/counter/sources/scripts/deploy_hook.move +0 -14
  1127. package/template/101/sui-template/contracts/counter/sources/scripts/migrate.move +0 -8
  1128. package/template/101/sui-template/contracts/counter/sources/systems/counter.move +0 -17
  1129. package/template/101/sui-template/contracts/counter/sources/tests/counter.move +0 -25
  1130. package/template/101/sui-template/contracts/dubhe-framework/Move.toml +0 -13
  1131. package/template/101/sui-template/contracts/dubhe-framework/sources/events.move +0 -33
  1132. package/template/101/sui-template/contracts/dubhe-framework/sources/frames/utils/type_info.move +0 -36
  1133. package/template/101/sui-template/contracts/dubhe-framework/sources/storages/double_map.move +0 -111
  1134. package/template/101/sui-template/contracts/dubhe-framework/sources/storages/map.move +0 -102
  1135. package/template/101/sui-template/contracts/dubhe-framework/sources/storages/storage.move +0 -19
  1136. package/template/101/sui-template/contracts/dubhe-framework/sources/storages/tests.move +0 -146
  1137. package/template/101/sui-template/contracts/dubhe-framework/sources/storages/value.move +0 -91
  1138. package/template/101/sui-template/dubhe.config.ts +0 -15
  1139. package/template/101/sui-template/package.json +0 -62
  1140. package/template/101/sui-template/pnpm-lock.yaml +0 -8133
  1141. package/template/101/sui-template/src/app/layout.tsx +0 -34
  1142. package/template/101/sui-template/src/app/page.tsx +0 -106
  1143. package/template/101/sui-template/src/chain/config.ts +0 -5
  1144. package/template/cocos/aptos-template/.creator/asset-template/typescript/Custom Script Template Help Documentation.url +0 -2
  1145. package/template/cocos/aptos-template/README.md +0 -12
  1146. package/template/cocos/aptos-template/assets/Scripts/aptos.ts +0 -87
  1147. package/template/cocos/aptos-template/assets/Scripts/aptos.ts.meta +0 -9
  1148. package/template/cocos/aptos-template/assets/Scripts/chain/config.ts +0 -12
  1149. package/template/cocos/aptos-template/assets/Scripts/chain/config.ts.meta +0 -9
  1150. package/template/cocos/aptos-template/assets/Scripts/chain/key.ts.meta +0 -9
  1151. package/template/cocos/aptos-template/assets/Scripts/chain.meta +0 -9
  1152. package/template/cocos/aptos-template/assets/Scripts/dubhe.config.ts +0 -13
  1153. package/template/cocos/aptos-template/assets/Scripts/dubhe.config.ts.meta +0 -9
  1154. package/template/cocos/aptos-template/assets/Scripts.meta +0 -9
  1155. package/template/cocos/aptos-template/assets/lib/dubhe.js +0 -22281
  1156. package/template/cocos/aptos-template/assets/lib/obelisk.js +0 -25626
  1157. package/template/cocos/aptos-template/assets/lib/obelisk.js.meta +0 -15
  1158. package/template/cocos/aptos-template/assets/lib.meta +0 -12
  1159. package/template/cocos/aptos-template/assets/main.scene +0 -875
  1160. package/template/cocos/aptos-template/assets/main.scene.meta +0 -11
  1161. package/template/cocos/aptos-template/contracts/counter/sources/codegen/eps/events.move +0 -34
  1162. package/template/cocos/aptos-template/contracts/counter/sources/codegen/eps/world.move +0 -65
  1163. package/template/cocos/aptos-template/contracts/counter/sources/codegen/init.move +0 -17
  1164. package/template/cocos/aptos-template/contracts/counter/sources/entity_key.move +0 -31
  1165. package/template/cocos/aptos-template/contracts/counter/sources/script/deploy_hook.move +0 -19
  1166. package/template/cocos/aptos-template/contracts/counter/sources/system/counter_system.move +0 -11
  1167. package/template/cocos/aptos-template/package.json +0 -39
  1168. package/template/cocos/aptos-template/scripts/formatAccount.ts +0 -35
  1169. package/template/cocos/aptos-template/scripts/generateAccount.ts +0 -25
  1170. package/template/cocos/aptos-template/scripts/storeConfig.ts +0 -68
  1171. package/template/cocos/aptos-template/settings/v2/packages/builder.json +0 -3
  1172. package/template/cocos/aptos-template/settings/v2/packages/cocos-service.json +0 -23
  1173. package/template/cocos/aptos-template/settings/v2/packages/device.json +0 -3
  1174. package/template/cocos/aptos-template/settings/v2/packages/engine.json +0 -150
  1175. package/template/cocos/aptos-template/settings/v2/packages/information.json +0 -23
  1176. package/template/cocos/aptos-template/settings/v2/packages/program.json +0 -3
  1177. package/template/cocos/aptos-template/settings/v2/packages/project.json +0 -3
  1178. package/template/cocos/aptos-template/tsconfig.json +0 -12
  1179. package/template/cocos/sui-template/.creator/asset-template/typescript/Custom Script Template Help Documentation.url +0 -2
  1180. package/template/cocos/sui-template/README.md +0 -12
  1181. package/template/cocos/sui-template/assets/Scripts/chain/config.ts +0 -8
  1182. package/template/cocos/sui-template/assets/Scripts/chain/config.ts.meta +0 -9
  1183. package/template/cocos/sui-template/assets/Scripts/chain/key.ts.meta +0 -9
  1184. package/template/cocos/sui-template/assets/Scripts/chain.meta +0 -9
  1185. package/template/cocos/sui-template/assets/Scripts/dubhe.config.ts +0 -13
  1186. package/template/cocos/sui-template/assets/Scripts/dubhe.config.ts.meta +0 -9
  1187. package/template/cocos/sui-template/assets/Scripts/sui.ts +0 -104
  1188. package/template/cocos/sui-template/assets/Scripts/sui.ts.meta +0 -9
  1189. package/template/cocos/sui-template/assets/Scripts.meta +0 -12
  1190. package/template/cocos/sui-template/assets/lib/dubhe.js +0 -55735
  1191. package/template/cocos/sui-template/assets/lib/dubhe.js.meta +0 -15
  1192. package/template/cocos/sui-template/assets/lib.meta +0 -12
  1193. package/template/cocos/sui-template/assets/main.scene +0 -875
  1194. package/template/cocos/sui-template/assets/main.scene.meta +0 -11
  1195. package/template/cocos/sui-template/contracts/counter/Move.toml +0 -13
  1196. package/template/cocos/sui-template/contracts/counter/sources/codegen/dapp_key.move +0 -16
  1197. package/template/cocos/sui-template/contracts/counter/sources/codegen/schemas/counter.move +0 -50
  1198. package/template/cocos/sui-template/contracts/counter/sources/script/deploy_hook.move +0 -67
  1199. package/template/cocos/sui-template/contracts/counter/sources/system/counter.move +0 -11
  1200. package/template/cocos/sui-template/docker-compose.yaml +0 -24
  1201. package/template/cocos/sui-template/package.json +0 -27
  1202. package/template/cocos/sui-template/scripts/generateAccount.ts +0 -55
  1203. package/template/cocos/sui-template/scripts/storeConfig.ts +0 -70
  1204. package/template/cocos/sui-template/settings/v2/packages/builder.json +0 -3
  1205. package/template/cocos/sui-template/settings/v2/packages/cocos-service.json +0 -23
  1206. package/template/cocos/sui-template/settings/v2/packages/device.json +0 -3
  1207. package/template/cocos/sui-template/settings/v2/packages/engine.json +0 -150
  1208. package/template/cocos/sui-template/settings/v2/packages/information.json +0 -23
  1209. package/template/cocos/sui-template/settings/v2/packages/program.json +0 -3
  1210. package/template/cocos/sui-template/settings/v2/packages/project.json +0 -3
  1211. package/template/cocos/sui-template/tsconfig.json +0 -12
  1212. package/template/contract/sui-template/contracts/dubhe-framework/Move.toml +0 -13
  1213. package/template/contract/sui-template/contracts/dubhe-framework/sources/events.move +0 -33
  1214. package/template/contract/sui-template/contracts/dubhe-framework/sources/frames/utils/type_info.move +0 -36
  1215. package/template/contract/sui-template/contracts/dubhe-framework/sources/storages/double_map.move +0 -111
  1216. package/template/contract/sui-template/contracts/dubhe-framework/sources/storages/map.move +0 -102
  1217. package/template/contract/sui-template/contracts/dubhe-framework/sources/storages/storage.move +0 -19
  1218. package/template/contract/sui-template/contracts/dubhe-framework/sources/storages/tests.move +0 -146
  1219. package/template/contract/sui-template/contracts/dubhe-framework/sources/storages/value.move +0 -91
  1220. package/template/contract/sui-template/dubhe.config.ts +0 -7
  1221. package/template/contract/sui-template/package.json +0 -30
  1222. package/template/nextjs/aptos-template/.prettierrc +0 -8
  1223. package/template/nextjs/aptos-template/contracts/counter/Move.toml +0 -16
  1224. package/template/nextjs/aptos-template/contracts/counter/sources/codegen/eps/events.move +0 -34
  1225. package/template/nextjs/aptos-template/contracts/counter/sources/codegen/eps/world.move +0 -65
  1226. package/template/nextjs/aptos-template/contracts/counter/sources/codegen/init.move +0 -17
  1227. package/template/nextjs/aptos-template/contracts/counter/sources/codegen/schemas/counter.move +0 -59
  1228. package/template/nextjs/aptos-template/contracts/counter/sources/entity_key.move +0 -31
  1229. package/template/nextjs/aptos-template/contracts/counter/sources/script/deploy_hook.move +0 -19
  1230. package/template/nextjs/aptos-template/contracts/counter/sources/system/counter_system.move +0 -11
  1231. package/template/nextjs/aptos-template/public/fail.svg +0 -12
  1232. package/template/nextjs/aptos-template/public/successful.svg +0 -11
  1233. package/template/nextjs/aptos-template/src/components/Animation.tsx +0 -70
  1234. package/template/nextjs/aptos-template/src/components/pop_up_box/index.tsx +0 -161
  1235. package/template/nextjs/sui-template/.prettierrc +0 -8
  1236. package/template/nextjs/sui-template/_gitignore +0 -48
  1237. package/template/nextjs/sui-template/contracts/counter/.history/sui_localnet/latest.json +0 -11
  1238. package/template/nextjs/sui-template/contracts/counter/Move.lock +0 -52
  1239. package/template/nextjs/sui-template/contracts/counter/Move.toml +0 -12
  1240. package/template/nextjs/sui-template/contracts/counter/sources/codegen/core/dapp_key.move +0 -16
  1241. package/template/nextjs/sui-template/contracts/counter/sources/codegen/core/genesis.move +0 -19
  1242. package/template/nextjs/sui-template/contracts/counter/sources/codegen/core/init_test.move +0 -18
  1243. package/template/nextjs/sui-template/contracts/counter/sources/codegen/core/metadata.move +0 -102
  1244. package/template/nextjs/sui-template/contracts/counter/sources/codegen/core/schema.move +0 -128
  1245. package/template/nextjs/sui-template/contracts/counter/sources/codegen/core/system.move +0 -111
  1246. package/template/nextjs/sui-template/contracts/counter/sources/codegen/data/increment_event.move +0 -22
  1247. package/template/nextjs/sui-template/contracts/counter/sources/codegen/errors.move +0 -16
  1248. package/template/nextjs/sui-template/contracts/counter/sources/codegen/events.move +0 -23
  1249. package/template/nextjs/sui-template/contracts/counter/sources/scripts/deploy_hook.move +0 -14
  1250. package/template/nextjs/sui-template/contracts/counter/sources/scripts/migrate.move +0 -8
  1251. package/template/nextjs/sui-template/contracts/counter/sources/systems/counter.move +0 -17
  1252. package/template/nextjs/sui-template/contracts/counter/sources/tests/counter.move +0 -25
  1253. package/template/nextjs/sui-template/contracts/dubhe-framework/Move.toml +0 -13
  1254. package/template/nextjs/sui-template/contracts/dubhe-framework/sources/events.move +0 -33
  1255. package/template/nextjs/sui-template/contracts/dubhe-framework/sources/frames/utils/type_info.move +0 -36
  1256. package/template/nextjs/sui-template/contracts/dubhe-framework/sources/storages/double_map.move +0 -111
  1257. package/template/nextjs/sui-template/contracts/dubhe-framework/sources/storages/map.move +0 -102
  1258. package/template/nextjs/sui-template/contracts/dubhe-framework/sources/storages/storage.move +0 -19
  1259. package/template/nextjs/sui-template/contracts/dubhe-framework/sources/storages/tests.move +0 -146
  1260. package/template/nextjs/sui-template/contracts/dubhe-framework/sources/storages/value.move +0 -91
  1261. package/template/nextjs/sui-template/dubhe.config.ts +0 -15
  1262. package/template/nextjs/sui-template/package.json +0 -65
  1263. package/template/nextjs/sui-template/pnpm-lock.yaml +0 -9002
  1264. package/template/nextjs/sui-template/src/app/layout.tsx +0 -35
  1265. package/template/nextjs/sui-template/src/app/page.tsx +0 -151
  1266. package/template/nextjs/sui-template/src/app/providers.tsx +0 -29
  1267. package/template/nextjs/sui-template/src/chain/config.ts +0 -5
  1268. /package/{template → templates}/101/aptos-template/.dockerignore +0 -0
  1269. /package/{template → templates}/101/aptos-template/.eslintrc.json +0 -0
  1270. /package/{template/101/aptos-template/_gitignore → templates/101/aptos-template/.gitignore_} +0 -0
  1271. /package/{template → templates}/101/aptos-template/.prettierignore +0 -0
  1272. /package/{template → templates}/101/aptos-template/.prettierrc +0 -0
  1273. /package/{template → templates}/101/aptos-template/.prettierrc.json +0 -0
  1274. /package/{template → templates}/101/aptos-template/Dockerfile +0 -0
  1275. /package/{template → templates}/101/aptos-template/LICENSE +0 -0
  1276. /package/{template → templates}/101/aptos-template/README.md +0 -0
  1277. /package/{template/101/movement-template → templates/101/aptos-template}/_gitignore +0 -0
  1278. /package/{template → templates}/101/aptos-template/contracts/counter/Move.toml +0 -0
  1279. /package/{template/101/aptos-template/contracts/counter/build/counter/sources → templates/101/aptos-template/contracts/counter/sources/codegen/eps}/events.move +0 -0
  1280. /package/{template/101/aptos-template/contracts/counter/build/counter/sources → templates/101/aptos-template/contracts/counter/sources/codegen/eps}/world.move +0 -0
  1281. /package/{template/101/aptos-template/contracts/counter/build/counter/sources → templates/101/aptos-template/contracts/counter/sources/codegen}/init.move +0 -0
  1282. /package/{template → templates}/101/aptos-template/contracts/counter/sources/codegen/schemas/counter.move +0 -0
  1283. /package/{template/101/aptos-template/contracts/counter/build → templates/101/aptos-template/contracts}/counter/sources/entity_key.move +0 -0
  1284. /package/{template/101/aptos-template/contracts/counter/build/counter/sources → templates/101/aptos-template/contracts/counter/sources/script}/deploy_hook.move +0 -0
  1285. /package/{template/101/aptos-template/contracts/counter/build/counter/sources → templates/101/aptos-template/contracts/counter/sources/system}/counter_system.move +0 -0
  1286. /package/{template → templates}/101/aptos-template/dubhe.config.ts +0 -0
  1287. /package/{template → templates}/101/aptos-template/jest.config.ts +0 -0
  1288. /package/{template → templates}/101/aptos-template/next-env.d.ts +0 -0
  1289. /package/{template → templates}/101/aptos-template/next-i18next.config.js +0 -0
  1290. /package/{template → templates}/101/aptos-template/next.config.js +0 -0
  1291. /package/{template → templates}/101/aptos-template/package.json +0 -0
  1292. /package/{template → templates}/101/aptos-template/postcss.config.js +0 -0
  1293. /package/{template → templates}/101/aptos-template/public/discord.svg +0 -0
  1294. /package/{template → templates}/101/aptos-template/public/favicon.ico +0 -0
  1295. /package/{template → templates}/101/aptos-template/public/locales/de/common.json +0 -0
  1296. /package/{template → templates}/101/aptos-template/public/locales/de/footer.json +0 -0
  1297. /package/{template → templates}/101/aptos-template/public/locales/de/second-page.json +0 -0
  1298. /package/{template → templates}/101/aptos-template/public/locales/en/common.json +0 -0
  1299. /package/{template → templates}/101/aptos-template/public/locales/en/footer.json +0 -0
  1300. /package/{template → templates}/101/aptos-template/public/locales/en/second-page.json +0 -0
  1301. /package/{template → templates}/101/aptos-template/public/locales/zn/common.json +0 -0
  1302. /package/{template → templates}/101/aptos-template/public/locales/zn/footer.json +0 -0
  1303. /package/{template → templates}/101/aptos-template/public/locales/zn/second-page.json +0 -0
  1304. /package/{template → templates}/101/aptos-template/public/logo.svg +0 -0
  1305. /package/{template → templates}/101/aptos-template/public/medium.svg +0 -0
  1306. /package/{template → templates}/101/aptos-template/public/telegram.svg +0 -0
  1307. /package/{template → templates}/101/aptos-template/public/twitter.svg +0 -0
  1308. /package/{template → templates}/101/aptos-template/scripts/checkBalance.ts +0 -0
  1309. /package/{template → templates}/101/aptos-template/scripts/generateAccount.ts +0 -0
  1310. /package/{template → templates}/101/aptos-template/scripts/storeConfig.ts +0 -0
  1311. /package/{template → templates}/101/aptos-template/src/chain/config.ts +0 -0
  1312. /package/{template → templates}/101/aptos-template/src/css/font-awesome.css +0 -0
  1313. /package/{template → templates}/101/aptos-template/src/css/font-awesome.min.css +0 -0
  1314. /package/{template → templates}/101/aptos-template/src/fonts/FontAwesome.otf +0 -0
  1315. /package/{template → templates}/101/aptos-template/src/fonts/fontawesome-webfont.eot +0 -0
  1316. /package/{template → templates}/101/aptos-template/src/fonts/fontawesome-webfont.svg +0 -0
  1317. /package/{template → templates}/101/aptos-template/src/fonts/fontawesome-webfont.ttf +0 -0
  1318. /package/{template → templates}/101/aptos-template/src/fonts/fontawesome-webfont.woff +0 -0
  1319. /package/{template → templates}/101/aptos-template/src/fonts/fontawesome-webfont.woff2 +0 -0
  1320. /package/{template → templates}/101/aptos-template/src/jotai/index.tsx +0 -0
  1321. /package/{template → templates}/101/aptos-template/src/pages/_app.tsx +0 -0
  1322. /package/{template → templates}/101/aptos-template/src/pages/home/index.tsx +0 -0
  1323. /package/{template → templates}/101/aptos-template/src/pages/index.tsx +0 -0
  1324. /package/{template → templates}/101/aptos-template/tailwind.config.js +0 -0
  1325. /package/{template → templates}/101/aptos-template/tsconfig.json +0 -0
  1326. /package/{template → templates}/101/initia-template/.dockerignore +0 -0
  1327. /package/{template → templates}/101/initia-template/.eslintrc.json +0 -0
  1328. /package/{template/101/initia-template/_gitignore → templates/101/initia-template/.gitignore_} +0 -0
  1329. /package/{template → templates}/101/initia-template/.prettierignore +0 -0
  1330. /package/{template → templates}/101/initia-template/.prettierrc +0 -0
  1331. /package/{template → templates}/101/initia-template/.prettierrc.json +0 -0
  1332. /package/{template → templates}/101/initia-template/Dockerfile +0 -0
  1333. /package/{template → templates}/101/initia-template/LICENSE +0 -0
  1334. /package/{template → templates}/101/initia-template/README.md +0 -0
  1335. /package/{template → templates}/101/initia-template/contracts/counter/Move.toml +0 -0
  1336. /package/{template/101/initia-template/contracts/counter/build → templates/101/initia-template/contracts}/counter/sources/counter.move +0 -0
  1337. /package/{template → templates}/101/initia-template/dubhe.config.ts +0 -0
  1338. /package/{template → templates}/101/initia-template/jest.config.ts +0 -0
  1339. /package/{template → templates}/101/initia-template/next-env.d.ts +0 -0
  1340. /package/{template → templates}/101/initia-template/next-i18next.config.js +0 -0
  1341. /package/{template → templates}/101/initia-template/next.config.js +0 -0
  1342. /package/{template → templates}/101/initia-template/package.json +0 -0
  1343. /package/{template → templates}/101/initia-template/postcss.config.js +0 -0
  1344. /package/{template → templates}/101/initia-template/public/discord.svg +0 -0
  1345. /package/{template → templates}/101/initia-template/public/favicon.ico +0 -0
  1346. /package/{template → templates}/101/initia-template/public/locales/de/common.json +0 -0
  1347. /package/{template → templates}/101/initia-template/public/locales/de/footer.json +0 -0
  1348. /package/{template → templates}/101/initia-template/public/locales/de/second-page.json +0 -0
  1349. /package/{template → templates}/101/initia-template/public/locales/en/common.json +0 -0
  1350. /package/{template → templates}/101/initia-template/public/locales/en/footer.json +0 -0
  1351. /package/{template → templates}/101/initia-template/public/locales/en/second-page.json +0 -0
  1352. /package/{template → templates}/101/initia-template/public/locales/zn/common.json +0 -0
  1353. /package/{template → templates}/101/initia-template/public/locales/zn/footer.json +0 -0
  1354. /package/{template → templates}/101/initia-template/public/locales/zn/second-page.json +0 -0
  1355. /package/{template → templates}/101/initia-template/public/logo.svg +0 -0
  1356. /package/{template → templates}/101/initia-template/public/medium.svg +0 -0
  1357. /package/{template → templates}/101/initia-template/public/telegram.svg +0 -0
  1358. /package/{template → templates}/101/initia-template/public/twitter.svg +0 -0
  1359. /package/{template → templates}/101/initia-template/scripts/checkBalance.ts +0 -0
  1360. /package/{template → templates}/101/initia-template/scripts/generateAccount.ts +0 -0
  1361. /package/{template → templates}/101/initia-template/scripts/storeConfig.ts +0 -0
  1362. /package/{template → templates}/101/initia-template/scripts/waitNode.ts +0 -0
  1363. /package/{template → templates}/101/initia-template/src/chain/config.ts +0 -0
  1364. /package/{template → templates}/101/initia-template/src/css/font-awesome.css +0 -0
  1365. /package/{template → templates}/101/initia-template/src/css/font-awesome.min.css +0 -0
  1366. /package/{template → templates}/101/initia-template/src/fonts/FontAwesome.otf +0 -0
  1367. /package/{template → templates}/101/initia-template/src/fonts/fontawesome-webfont.eot +0 -0
  1368. /package/{template → templates}/101/initia-template/src/fonts/fontawesome-webfont.svg +0 -0
  1369. /package/{template → templates}/101/initia-template/src/fonts/fontawesome-webfont.ttf +0 -0
  1370. /package/{template → templates}/101/initia-template/src/fonts/fontawesome-webfont.woff +0 -0
  1371. /package/{template → templates}/101/initia-template/src/fonts/fontawesome-webfont.woff2 +0 -0
  1372. /package/{template → templates}/101/initia-template/src/jotai/index.tsx +0 -0
  1373. /package/{template → templates}/101/initia-template/src/pages/_app.tsx +0 -0
  1374. /package/{template → templates}/101/initia-template/src/pages/home/index.tsx +0 -0
  1375. /package/{template → templates}/101/initia-template/src/pages/index.tsx +0 -0
  1376. /package/{template → templates}/101/initia-template/tailwind.config.js +0 -0
  1377. /package/{template → templates}/101/initia-template/tsconfig.json +0 -0
  1378. /package/{template → templates}/101/movement-template/.dockerignore +0 -0
  1379. /package/{template → templates}/101/movement-template/.eslintrc.json +0 -0
  1380. /package/{template/101/rooch-template/_gitignore → templates/101/movement-template/.gitignore_} +0 -0
  1381. /package/{template → templates}/101/movement-template/.prettierignore +0 -0
  1382. /package/{template → templates}/101/movement-template/.prettierrc +0 -0
  1383. /package/{template → templates}/101/movement-template/.prettierrc.json +0 -0
  1384. /package/{template → templates}/101/movement-template/Dockerfile +0 -0
  1385. /package/{template → templates}/101/movement-template/LICENSE +0 -0
  1386. /package/{template → templates}/101/movement-template/README.md +0 -0
  1387. /package/{template → templates}/101/movement-template/contracts/counter/Move.toml +0 -0
  1388. /package/{template/101/aptos-template → templates/101/movement-template}/contracts/counter/sources/codegen/eps/events.move +0 -0
  1389. /package/{template/101/aptos-template → templates/101/movement-template}/contracts/counter/sources/codegen/eps/world.move +0 -0
  1390. /package/{template/101/aptos-template → templates/101/movement-template}/contracts/counter/sources/codegen/init.move +0 -0
  1391. /package/{template → templates}/101/movement-template/contracts/counter/sources/codegen/schemas/counter.move +0 -0
  1392. /package/{template/101/aptos-template → templates/101/movement-template}/contracts/counter/sources/entity_key.move +0 -0
  1393. /package/{template/101/aptos-template → templates/101/movement-template}/contracts/counter/sources/script/deploy_hook.move +0 -0
  1394. /package/{template/101/aptos-template → templates/101/movement-template}/contracts/counter/sources/system/counter_system.move +0 -0
  1395. /package/{template → templates}/101/movement-template/dubhe.config.ts +0 -0
  1396. /package/{template → templates}/101/movement-template/jest.config.ts +0 -0
  1397. /package/{template → templates}/101/movement-template/next-env.d.ts +0 -0
  1398. /package/{template → templates}/101/movement-template/next-i18next.config.js +0 -0
  1399. /package/{template → templates}/101/movement-template/next.config.js +0 -0
  1400. /package/{template → templates}/101/movement-template/package.json +0 -0
  1401. /package/{template → templates}/101/movement-template/postcss.config.js +0 -0
  1402. /package/{template → templates}/101/movement-template/public/discord.svg +0 -0
  1403. /package/{template → templates}/101/movement-template/public/favicon.ico +0 -0
  1404. /package/{template → templates}/101/movement-template/public/locales/de/common.json +0 -0
  1405. /package/{template → templates}/101/movement-template/public/locales/de/footer.json +0 -0
  1406. /package/{template → templates}/101/movement-template/public/locales/de/second-page.json +0 -0
  1407. /package/{template → templates}/101/movement-template/public/locales/en/common.json +0 -0
  1408. /package/{template → templates}/101/movement-template/public/locales/en/footer.json +0 -0
  1409. /package/{template → templates}/101/movement-template/public/locales/en/second-page.json +0 -0
  1410. /package/{template → templates}/101/movement-template/public/locales/zn/common.json +0 -0
  1411. /package/{template → templates}/101/movement-template/public/locales/zn/footer.json +0 -0
  1412. /package/{template → templates}/101/movement-template/public/locales/zn/second-page.json +0 -0
  1413. /package/{template → templates}/101/movement-template/public/logo.svg +0 -0
  1414. /package/{template → templates}/101/movement-template/public/medium.svg +0 -0
  1415. /package/{template → templates}/101/movement-template/public/telegram.svg +0 -0
  1416. /package/{template → templates}/101/movement-template/public/twitter.svg +0 -0
  1417. /package/{template → templates}/101/movement-template/scripts/checkBalance.ts +0 -0
  1418. /package/{template → templates}/101/movement-template/scripts/generateAccount.ts +0 -0
  1419. /package/{template → templates}/101/movement-template/scripts/storeConfig.ts +0 -0
  1420. /package/{template → templates}/101/movement-template/src/chain/config.ts +0 -0
  1421. /package/{template → templates}/101/movement-template/src/css/font-awesome.css +0 -0
  1422. /package/{template → templates}/101/movement-template/src/css/font-awesome.min.css +0 -0
  1423. /package/{template → templates}/101/movement-template/src/fonts/FontAwesome.otf +0 -0
  1424. /package/{template → templates}/101/movement-template/src/fonts/fontawesome-webfont.eot +0 -0
  1425. /package/{template → templates}/101/movement-template/src/fonts/fontawesome-webfont.svg +0 -0
  1426. /package/{template → templates}/101/movement-template/src/fonts/fontawesome-webfont.ttf +0 -0
  1427. /package/{template → templates}/101/movement-template/src/fonts/fontawesome-webfont.woff +0 -0
  1428. /package/{template → templates}/101/movement-template/src/fonts/fontawesome-webfont.woff2 +0 -0
  1429. /package/{template → templates}/101/movement-template/src/jotai/index.tsx +0 -0
  1430. /package/{template → templates}/101/movement-template/src/pages/_app.tsx +0 -0
  1431. /package/{template → templates}/101/movement-template/src/pages/home/index.tsx +0 -0
  1432. /package/{template → templates}/101/movement-template/src/pages/index.tsx +0 -0
  1433. /package/{template → templates}/101/movement-template/tailwind.config.js +0 -0
  1434. /package/{template → templates}/101/movement-template/tsconfig.json +0 -0
  1435. /package/{template → templates}/101/rooch-template/.dockerignore +0 -0
  1436. /package/{template → templates}/101/rooch-template/.eslintrc.json +0 -0
  1437. /package/{template → templates}/101/rooch-template/.prettierignore +0 -0
  1438. /package/{template → templates}/101/rooch-template/.prettierrc +0 -0
  1439. /package/{template → templates}/101/rooch-template/.prettierrc.json +0 -0
  1440. /package/{template → templates}/101/rooch-template/Dockerfile +0 -0
  1441. /package/{template → templates}/101/rooch-template/LICENSE +0 -0
  1442. /package/{template → templates}/101/rooch-template/README.md +0 -0
  1443. /package/{template → templates}/101/rooch-template/contracts/counter/Move.toml +0 -0
  1444. /package/{template → templates}/101/rooch-template/contracts/counter/sources/counter.move +0 -0
  1445. /package/{template → templates}/101/rooch-template/dubhe.config.ts +0 -0
  1446. /package/{template → templates}/101/rooch-template/jest.config.ts +0 -0
  1447. /package/{template → templates}/101/rooch-template/next-env.d.ts +0 -0
  1448. /package/{template → templates}/101/rooch-template/next-i18next.config.js +0 -0
  1449. /package/{template → templates}/101/rooch-template/next.config.js +0 -0
  1450. /package/{template → templates}/101/rooch-template/package.json +0 -0
  1451. /package/{template → templates}/101/rooch-template/postcss.config.js +0 -0
  1452. /package/{template → templates}/101/rooch-template/public/discord.svg +0 -0
  1453. /package/{template → templates}/101/rooch-template/public/favicon.ico +0 -0
  1454. /package/{template → templates}/101/rooch-template/public/locales/de/common.json +0 -0
  1455. /package/{template → templates}/101/rooch-template/public/locales/de/footer.json +0 -0
  1456. /package/{template → templates}/101/rooch-template/public/locales/de/second-page.json +0 -0
  1457. /package/{template → templates}/101/rooch-template/public/locales/en/common.json +0 -0
  1458. /package/{template → templates}/101/rooch-template/public/locales/en/footer.json +0 -0
  1459. /package/{template → templates}/101/rooch-template/public/locales/en/second-page.json +0 -0
  1460. /package/{template → templates}/101/rooch-template/public/locales/zn/common.json +0 -0
  1461. /package/{template → templates}/101/rooch-template/public/locales/zn/footer.json +0 -0
  1462. /package/{template → templates}/101/rooch-template/public/locales/zn/second-page.json +0 -0
  1463. /package/{template → templates}/101/rooch-template/public/logo.svg +0 -0
  1464. /package/{template → templates}/101/rooch-template/public/medium.svg +0 -0
  1465. /package/{template → templates}/101/rooch-template/public/telegram.svg +0 -0
  1466. /package/{template → templates}/101/rooch-template/public/twitter.svg +0 -0
  1467. /package/{template → templates}/101/rooch-template/scripts/checkBalance.ts +0 -0
  1468. /package/{template → templates}/101/rooch-template/scripts/generateAccount.ts +0 -0
  1469. /package/{template → templates}/101/rooch-template/scripts/storeConfig.ts +0 -0
  1470. /package/{template → templates}/101/rooch-template/scripts/waitNode.ts +0 -0
  1471. /package/{template → templates}/101/rooch-template/src/chain/config.ts +0 -0
  1472. /package/{template → templates}/101/rooch-template/src/css/font-awesome.css +0 -0
  1473. /package/{template → templates}/101/rooch-template/src/css/font-awesome.min.css +0 -0
  1474. /package/{template → templates}/101/rooch-template/src/fonts/FontAwesome.otf +0 -0
  1475. /package/{template → templates}/101/rooch-template/src/fonts/fontawesome-webfont.eot +0 -0
  1476. /package/{template → templates}/101/rooch-template/src/fonts/fontawesome-webfont.svg +0 -0
  1477. /package/{template → templates}/101/rooch-template/src/fonts/fontawesome-webfont.ttf +0 -0
  1478. /package/{template → templates}/101/rooch-template/src/fonts/fontawesome-webfont.woff +0 -0
  1479. /package/{template → templates}/101/rooch-template/src/fonts/fontawesome-webfont.woff2 +0 -0
  1480. /package/{template → templates}/101/rooch-template/src/jotai/index.tsx +0 -0
  1481. /package/{template → templates}/101/rooch-template/src/pages/_app.tsx +0 -0
  1482. /package/{template → templates}/101/rooch-template/src/pages/home/index.tsx +0 -0
  1483. /package/{template → templates}/101/rooch-template/src/pages/index.tsx +0 -0
  1484. /package/{template → templates}/101/rooch-template/tailwind.config.js +0 -0
  1485. /package/{template → templates}/101/rooch-template/tsconfig.json +0 -0
  1486. /package/{template → templates}/101/sui-template/README.md +0 -0
  1487. /package/{template/101/sui-template → templates/101/sui-template/packages/client}/.prettierrc.json +0 -0
  1488. /package/{template/101/sui-template → templates/101/sui-template/packages/client}/eslint.config.mjs +0 -0
  1489. /package/{template/101/sui-template → templates/101/sui-template/packages/client}/next.config.ts +0 -0
  1490. /package/{template/101/sui-template → templates/101/sui-template/packages/client}/postcss.config.mjs +0 -0
  1491. /package/{template/101/sui-template → templates/101/sui-template/packages/client}/src/app/favicon.ico +0 -0
  1492. /package/{template/101/sui-template → templates/101/sui-template/packages/client}/src/app/globals.css +0 -0
  1493. /package/{template/101/sui-template → templates/101/sui-template/packages/client}/src/app/state/index.tsx +0 -0
  1494. /package/{template/101/sui-template → templates/101/sui-template/packages/client}/tailwind.config.ts +0 -0
  1495. /package/{template/101/sui-template → templates/101/sui-template/packages/client}/tsconfig.json +0 -0
  1496. /package/{template/101/sui-template → templates/101/sui-template/packages/contracts}/.prettierignore +0 -0
  1497. /package/{template/nextjs/aptos-template → templates/101/sui-template/packages/contracts}/.prettierrc.json +0 -0
  1498. /package/{template → templates}/contract/sui-template/_gitignore +0 -0
  1499. /package/{template → templates}/contract/sui-template/tsconfig.json +0 -0
  1500. /package/{template → templates}/nextjs/aptos-template/.dockerignore +0 -0
  1501. /package/{template → templates}/nextjs/aptos-template/.eslintrc.json +0 -0
  1502. /package/{template/nextjs/aptos-template/_gitignore → templates/nextjs/aptos-template/.gitignore_} +0 -0
  1503. /package/{template → templates}/nextjs/aptos-template/.prettierignore +0 -0
  1504. /package/{template/101/sui-template → templates/nextjs/aptos-template}/.prettierrc +0 -0
  1505. /package/{template/nextjs/sui-template → templates/nextjs/aptos-template}/.prettierrc.json +0 -0
  1506. /package/{template → templates}/nextjs/aptos-template/Dockerfile +0 -0
  1507. /package/{template → templates}/nextjs/aptos-template/LICENSE +0 -0
  1508. /package/{template → templates}/nextjs/aptos-template/README.md +0 -0
  1509. /package/{template/cocos → templates/nextjs}/aptos-template/contracts/counter/Move.toml +0 -0
  1510. /package/{template/101/movement-template/contracts/counter/build/counter/sources → templates/nextjs/aptos-template/contracts/counter/sources/codegen/eps}/events.move +0 -0
  1511. /package/{template/101/movement-template/contracts/counter/build/counter/sources → templates/nextjs/aptos-template/contracts/counter/sources/codegen/eps}/world.move +0 -0
  1512. /package/{template/101/movement-template/contracts/counter/build/counter/sources → templates/nextjs/aptos-template/contracts/counter/sources/codegen}/init.move +0 -0
  1513. /package/{template/cocos → templates/nextjs}/aptos-template/contracts/counter/sources/codegen/schemas/counter.move +0 -0
  1514. /package/{template/101/movement-template/contracts/counter/build → templates/nextjs/aptos-template/contracts}/counter/sources/entity_key.move +0 -0
  1515. /package/{template/101/movement-template/contracts/counter/build/counter/sources → templates/nextjs/aptos-template/contracts/counter/sources/script}/deploy_hook.move +0 -0
  1516. /package/{template/101/movement-template/contracts/counter/build/counter/sources → templates/nextjs/aptos-template/contracts/counter/sources/system}/counter_system.move +0 -0
  1517. /package/{template → templates}/nextjs/aptos-template/dubhe.config.ts +0 -0
  1518. /package/{template → templates}/nextjs/aptos-template/jest.config.ts +0 -0
  1519. /package/{template → templates}/nextjs/aptos-template/next-env.d.ts +0 -0
  1520. /package/{template → templates}/nextjs/aptos-template/next-i18next.config.js +0 -0
  1521. /package/{template → templates}/nextjs/aptos-template/next.config.js +0 -0
  1522. /package/{template → templates}/nextjs/aptos-template/package.json +0 -0
  1523. /package/{template → templates}/nextjs/aptos-template/postcss.config.js +0 -0
  1524. /package/{template → templates}/nextjs/aptos-template/public/discord.svg +0 -0
  1525. /package/{template → templates}/nextjs/aptos-template/public/favicon.ico +0 -0
  1526. /package/{template → templates}/nextjs/aptos-template/public/locales/de/common.json +0 -0
  1527. /package/{template → templates}/nextjs/aptos-template/public/locales/de/footer.json +0 -0
  1528. /package/{template → templates}/nextjs/aptos-template/public/locales/de/second-page.json +0 -0
  1529. /package/{template → templates}/nextjs/aptos-template/public/locales/en/common.json +0 -0
  1530. /package/{template → templates}/nextjs/aptos-template/public/locales/en/footer.json +0 -0
  1531. /package/{template → templates}/nextjs/aptos-template/public/locales/en/second-page.json +0 -0
  1532. /package/{template → templates}/nextjs/aptos-template/public/locales/zn/common.json +0 -0
  1533. /package/{template → templates}/nextjs/aptos-template/public/locales/zn/footer.json +0 -0
  1534. /package/{template → templates}/nextjs/aptos-template/public/locales/zn/second-page.json +0 -0
  1535. /package/{template → templates}/nextjs/aptos-template/public/logo.svg +0 -0
  1536. /package/{template → templates}/nextjs/aptos-template/public/medium.svg +0 -0
  1537. /package/{template → templates}/nextjs/aptos-template/public/telegram.svg +0 -0
  1538. /package/{template → templates}/nextjs/aptos-template/public/twitter.svg +0 -0
  1539. /package/{template → templates}/nextjs/aptos-template/scripts/formatAccount.ts +0 -0
  1540. /package/{template → templates}/nextjs/aptos-template/scripts/generateAccount.ts +0 -0
  1541. /package/{template → templates}/nextjs/aptos-template/scripts/storeConfig.ts +0 -0
  1542. /package/{template → templates}/nextjs/aptos-template/src/chain/config.ts +0 -0
  1543. /package/{template → templates}/nextjs/aptos-template/src/components/Container.tsx +0 -0
  1544. /package/{template → templates}/nextjs/aptos-template/src/components/footer/index.tsx +0 -0
  1545. /package/{template → templates}/nextjs/aptos-template/src/components/head/index.tsx +0 -0
  1546. /package/{template → templates}/nextjs/aptos-template/src/components/header/index.tsx +0 -0
  1547. /package/{template → templates}/nextjs/aptos-template/src/css/font-awesome.css +0 -0
  1548. /package/{template → templates}/nextjs/aptos-template/src/css/font-awesome.min.css +0 -0
  1549. /package/{template → templates}/nextjs/aptos-template/src/fonts/FontAwesome.otf +0 -0
  1550. /package/{template → templates}/nextjs/aptos-template/src/fonts/fontawesome-webfont.eot +0 -0
  1551. /package/{template → templates}/nextjs/aptos-template/src/fonts/fontawesome-webfont.svg +0 -0
  1552. /package/{template → templates}/nextjs/aptos-template/src/fonts/fontawesome-webfont.ttf +0 -0
  1553. /package/{template → templates}/nextjs/aptos-template/src/fonts/fontawesome-webfont.woff +0 -0
  1554. /package/{template → templates}/nextjs/aptos-template/src/fonts/fontawesome-webfont.woff2 +0 -0
  1555. /package/{template → templates}/nextjs/aptos-template/src/jotai/index.tsx +0 -0
  1556. /package/{template → templates}/nextjs/aptos-template/src/pages/_app.tsx +0 -0
  1557. /package/{template → templates}/nextjs/aptos-template/src/pages/home/index.tsx +0 -0
  1558. /package/{template → templates}/nextjs/aptos-template/src/pages/index.tsx +0 -0
  1559. /package/{template → templates}/nextjs/aptos-template/tailwind.config.js +0 -0
  1560. /package/{template → templates}/nextjs/aptos-template/tsconfig.json +0 -0
  1561. /package/{template → templates}/nextjs/sui-template/README.md +0 -0
  1562. /package/{template/nextjs/sui-template → templates/nextjs/sui-template/packages/client}/.prettierignore +0 -0
  1563. /package/{template/nextjs/sui-template → templates/nextjs/sui-template/packages/client}/eslint.config.mjs +0 -0
  1564. /package/{template/nextjs/sui-template → templates/nextjs/sui-template/packages/client}/next.config.mjs +0 -0
  1565. /package/{template/nextjs/sui-template → templates/nextjs/sui-template/packages/client}/postcss.config.mjs +0 -0
  1566. /package/{template/nextjs/sui-template → templates/nextjs/sui-template/packages/client}/src/app/favicon.ico +0 -0
  1567. /package/{template/nextjs/sui-template → templates/nextjs/sui-template/packages/client}/src/app/globals.css +0 -0
  1568. /package/{template/nextjs/sui-template → templates/nextjs/sui-template/packages/client}/src/app/state/index.tsx +0 -0
  1569. /package/{template/nextjs/sui-template → templates/nextjs/sui-template/packages/client}/tailwind.config.ts +0 -0
  1570. /package/{template/nextjs/sui-template → templates/nextjs/sui-template/packages/client}/tsconfig.json +0 -0
@@ -1,3461 +0,0 @@
1
- module initia_std::minitswap {
2
- use std::signer;
3
- use std::error;
4
- use std::event;
5
- use std::option::{Self, Option};
6
- use std::hash::{sha2_256, sha3_256};
7
- use std::vector;
8
-
9
- use initia_std::address::to_sdk;
10
- use initia_std::base64;
11
- use initia_std::bcs;
12
- use initia_std::block;
13
- use initia_std::cosmos;
14
- use initia_std::bigdecimal::{Self, BigDecimal};
15
- use initia_std::table::{Self, Table};
16
- use initia_std::table_key;
17
- use initia_std::object::{Self, ExtendRef, Object};
18
- use initia_std::stableswap::{Self, Pool};
19
- use initia_std::string::{Self, String};
20
- use initia_std::fungible_asset::{Self, FungibleAsset, Metadata};
21
- use initia_std::primary_fungible_store;
22
- use initia_std::coin;
23
- use initia_std::json;
24
- use initia_std::string_utils::to_string;
25
- use initia_std::hex;
26
-
27
- // Errors
28
- const EUNAUTHORIZED: u64 = 1;
29
- const EPOOL_NOT_FOUND: u64 = 2;
30
- const ENOT_INIT: u64 = 3;
31
- const ENOT_ENOUGH_BALANCE: u64 = 4;
32
- const EINACTIVE: u64 = 5;
33
- const ENOT_SHARE_TOKEN: u64 = 6;
34
- const EIBC_OP_INIT_PRICE_TOO_LOW: u64 = 7;
35
- const EMAX_CHANGE: u64 = 8;
36
- const EMIN_RETURN: u64 = 9;
37
- const EPOOL_SIZE: u64 = 10;
38
- const EVM_TYPE: u64 = 12;
39
- const EAMOUNT_MISMATCH: u64 = 13;
40
- const EEMERGENCY: u64 = 14;
41
- const ERELEASE_TIME: u64 = 15;
42
- const EINVAILD_METADATA: u64 = 16;
43
- const ESMALL_ARB_PROFIT: u64 = 17;
44
- const EVIRTUAL_POOL_EXISTS: u64 = 18;
45
-
46
- const A_PRECISION: u256 = 100;
47
- const U64_MAX: u128 = 18_446_744_073_709_551_615;
48
- const SYMBOL: vector<u8> = b"uoinit";
49
-
50
- // VM types
51
- const MOVE: u8 = 0;
52
- const COSMWASM: u8 = 1;
53
- const EVM: u8 = 2;
54
-
55
- const MAX_LIMIT: u64 = 30;
56
-
57
- struct ModuleStore has key {
58
- /// Extend reference
59
- extend_ref: ExtendRef,
60
- /// List of pools
61
- pools: Table<Object<Metadata>, Pools>,
62
- /// Max pool size change rate
63
- max_change_rate: BigDecimal,
64
- /// If this state is True, every depositor related transaction sent to Minitswap will fail
65
- emergency_state: bool,
66
- /// admin address who can change emergency_state and pool active
67
- admin: address,
68
-
69
- // deposit unbond related
70
-
71
- /// Not real balance, the amount for shares
72
- depositor_owned_init: u64,
73
- /// unbond period
74
- unbond_period: u64,
75
- /// unbond wait list. key: address + release time
76
- unbond_wait_list: Table<vector<u8>, UnbondEntity>,
77
- /// mint capability of liquidity token
78
- mint_cap: coin::MintCapability,
79
- /// burn capability of liquidity token
80
- burn_cap: coin::BurnCapability,
81
-
82
- // stable swap configs
83
-
84
- /// ANN
85
- stableswap_ann: u64,
86
- /// swap fee rate
87
- stableswap_swap_fee_rate: BigDecimal,
88
-
89
- // swap related configs
90
-
91
- /// Swap fee rate
92
- swap_fee_rate: BigDecimal,
93
- /// Swap fee rate
94
- arb_fee_rate: BigDecimal,
95
-
96
- // in house arb configs
97
-
98
- /// The amount of uinit that the user will take during finalization of in-house arb
99
- trigger_fee: u64,
100
- /// The minimum time needed to trigger the arbitrage
101
- min_arb_profit: u64,
102
- /// How much minimum pegkeeper ibc_op_init balance is needed to trigger the arb
103
- ibc_timeout: u64,
104
- /// Maximum arb_batch size
105
- max_arb_batch: u64,
106
- /// Minimum arb interval
107
- min_arb_interval: u64,
108
- /// global arb map. index => Virtual Pool
109
- global_arb_batch_map: Table<vector<u8>, Object<VirtualPool>>,
110
- /// arb batc index
111
- arb_batch_index: u64
112
- }
113
-
114
- struct VirtualPool has key {
115
- /// IBC OP init metadata
116
- ibc_op_init_metadata: Object<Metadata>,
117
- /// Extend reference
118
- extend_ref: ExtendRef,
119
- /// Z. Virtual pool size
120
- pool_size: u64,
121
- /// V. Recover velocity. Real recover amount = Vt
122
- recover_velocity: BigDecimal,
123
- /// R_max max recover ratio
124
- max_ratio: BigDecimal,
125
- /// f. Flexibility
126
- recover_param: BigDecimal,
127
- /// Virtual pool amount of INIT
128
- init_pool_amount: u64,
129
- /// Virtual pool amount of ibc_op_INIT
130
- ibc_op_init_pool_amount: u64,
131
- /// last recovered timestamp
132
- last_recovered_timestamp: u64,
133
- /// INIT balance of peg keeper (negative value)
134
- virtual_init_balance: u64,
135
- /// ibc op INIT balance of peg keeper
136
- virtual_ibc_op_init_balance: u64,
137
- /// ibc op INIT balance of peg keeper which also include unprocessed arb_batch state.
138
- peg_keeper_owned_ibc_op_init_balance: u64,
139
- /// ANN
140
- ann: u64,
141
- /// Is pool in active
142
- active: bool,
143
-
144
- // in house arb configs
145
-
146
- /// op bridge id
147
- op_bridge_id: u64,
148
- /// ibc channel
149
- ibc_channel: String,
150
- /// layer 2 vm type. One of MOVE or COSMWASM
151
- vm_type: u8,
152
- /// hook contract
153
- hook_contract: String,
154
- /// ongoing in house arb info
155
- arb_batch_map: Table<vector<u8>, ArbInfo>
156
- }
157
-
158
- struct Pools has store {
159
- op_bridge_id: u64,
160
- ibc_channel: String,
161
- virtual_pool: Option<Object<VirtualPool>>,
162
- stableswap_pool: Option<Object<Pool>>
163
- }
164
-
165
- struct UnbondEntity has store {
166
- // owner of unbond entity
167
- account: address,
168
- // share amount that burnt
169
- share_amount: u64,
170
- // init withdraw amount
171
- withdraw_amount: u64,
172
- // release timestamp
173
- release_time: u64
174
- }
175
-
176
- struct ArbInfo has store {
177
- // executed timestamp
178
- executed_time: u64,
179
- // init amount that peg keeper swapped
180
- init_used: u64,
181
- // amount of ibc op init sent
182
- ibc_op_init_sent: u64,
183
- // triggering fee
184
- triggering_fee: u64
185
- }
186
-
187
- #[event]
188
- /// Event emitted when virtual pool created
189
- struct CreatePoolEvent has drop, store {
190
- ibc_op_init_metadata: Object<Metadata>,
191
- recover_velocity: BigDecimal,
192
- pool_size: u64,
193
- ann: u64,
194
- max_ratio: BigDecimal,
195
- recover_param: BigDecimal
196
- }
197
-
198
- #[event]
199
- /// Event emitted when virtual pool size changed
200
- struct ChangePoolSizeEvent has drop, store {
201
- ibc_op_init_metadata: Object<Metadata>,
202
- pool_size: u64,
203
- depositor_owned_init_increase: u64
204
- }
205
-
206
- #[event]
207
- /// Event emitted when update param of virtual pool
208
- struct UpdatePoolParamsEvent has drop, store {
209
- ibc_op_init_metadata: Object<Metadata>,
210
- recover_velocity: Option<BigDecimal>,
211
- ann: Option<u64>,
212
- max_ratio: Option<BigDecimal>,
213
- recover_param: Option<BigDecimal>,
214
- hook_contract: Option<String>
215
- }
216
-
217
- #[event]
218
- /// Event emitted when provide.
219
- struct ProvideEvent has drop, store {
220
- provide_amount: u64,
221
- share_amount: u64
222
- }
223
-
224
- #[event]
225
- /// Event emitted when unbond.
226
- struct UnbondEvent has drop, store {
227
- account: address,
228
- share_amount: u64,
229
- withdraw_amount: u64,
230
- release_time: u64
231
- }
232
-
233
- #[event]
234
- /// Event emitted when withdraw unbond.
235
- struct WithdrawUnbondEvent has drop, store {
236
- account: address,
237
- share_amount: u64,
238
- withdraw_amount: u64,
239
- release_time: u64
240
- }
241
-
242
- #[event]
243
- /// Event emitted when swap token.
244
- struct SwapEvent has drop, store {
245
- offer_coin: Object<Metadata>,
246
- return_coin: Object<Metadata>,
247
- peg_keeper_offer_amount: u64, // always init
248
- peg_keeper_return_amount: u64, // always ibc op init
249
- offer_amount: u64,
250
- return_amount: u64,
251
- init_swap_fee_amount: u64,
252
- init_arb_fee_amount: u64,
253
- ibc_op_init_swap_fee_amount: u64,
254
- ibc_op_init_arb_fee_amount: u64
255
- }
256
-
257
- #[event]
258
- /// Event emitted when stable swap pool created
259
- struct CreateStableswapPoolEvent has drop, store {
260
- ibc_op_init_metadata: Object<Metadata>,
261
- pool: Object<Pool>
262
- }
263
-
264
- #[event]
265
- /// Event emitted when arb initiated
266
- struct InitiateArbEvent has drop, store {
267
- arb_index: u64,
268
- pool: Object<VirtualPool>,
269
- executed_time: u64,
270
- init_used: u64,
271
- ibc_op_init_sent: u64,
272
- triggering_fee: u64
273
- }
274
-
275
- #[event]
276
- /// Event emitted when arb finalized
277
- struct FinalizeArbEvent has drop, store {
278
- arb_index: u64,
279
- pool: Object<VirtualPool>,
280
- init_used: u64,
281
- ibc_op_init_sent: u64,
282
- triggering_fee: u64
283
- }
284
-
285
- #[event]
286
- /// Event emitted when arb reverted
287
- struct RevertArbEvent has drop, store {
288
- arb_index: u64,
289
- pool: Object<VirtualPool>,
290
- init_used: u64,
291
- ibc_op_init_sent: u64,
292
- triggering_fee: u64
293
- }
294
-
295
- fun init_module(chain: &signer) {
296
- let constructor_ref = object::create_object(@initia_std, false);
297
- let extend_ref = object::generate_extend_ref(&constructor_ref);
298
-
299
- let (mint_cap, burn_cap, _) =
300
- coin::initialize(
301
- chain,
302
- option::some(U64_MAX),
303
- string::utf8(b"minitswap liquidity token"),
304
- string::utf8(SYMBOL),
305
- 6,
306
- string::utf8(b""),
307
- string::utf8(b"")
308
- );
309
-
310
- move_to(
311
- chain,
312
- ModuleStore {
313
- extend_ref,
314
- pools: table::new(),
315
- max_change_rate: bigdecimal::from_ratio_u64(1, 10), // 10%
316
- emergency_state: false,
317
- admin: @initia_std,
318
- depositor_owned_init: 0,
319
- unbond_period: 60 * 60 * 24 * 7, // 7days
320
- unbond_wait_list: table::new(),
321
- mint_cap,
322
- burn_cap,
323
- stableswap_ann: 3000,
324
- stableswap_swap_fee_rate: bigdecimal::from_ratio_u64(1, 1000), // 0.1%
325
- swap_fee_rate: bigdecimal::from_ratio_u64(1, 1000), // 0.1%
326
- arb_fee_rate: bigdecimal::from_ratio_u64(1, 1000), // 0.1% TODO: set initial value
327
- trigger_fee: 50000, // 0.5 init TODO: set initial value
328
- min_arb_profit: 1000000, // 1 init TODO: set initial value
329
- ibc_timeout: 60 * 10, // 10 mins
330
- max_arb_batch: 20,
331
- min_arb_interval: 60 * 60 * 24, // 1 day TODO: set initial value
332
- global_arb_batch_map: table::new(),
333
- arb_batch_index: 0
334
- }
335
- );
336
- }
337
-
338
- //
339
- // View Functions
340
- //
341
-
342
- #[view]
343
- public fun get_pool_amount(
344
- ibc_op_init_metadata: Object<Metadata>, after_peg_keeper_swap: bool
345
- ): (u64, u64) acquires ModuleStore, VirtualPool {
346
- let virtual_pool_exists = virtual_pool_exists(ibc_op_init_metadata);
347
-
348
- assert!(
349
- virtual_pool_exists,
350
- error::invalid_argument(EPOOL_NOT_FOUND)
351
- );
352
-
353
- let module_store = borrow_global_mut<ModuleStore>(@initia_std);
354
- let pools = table::borrow(&mut module_store.pools, ibc_op_init_metadata);
355
- let pool =
356
- borrow_global_mut<VirtualPool>(
357
- object::object_address(&*option::borrow(&pools.virtual_pool))
358
- );
359
- assert!(pool.active, error::invalid_state(EINACTIVE));
360
- let (swap_amount, return_amount) =
361
- if (after_peg_keeper_swap) {
362
- calc_peg_keeper_swap(pool)
363
- } else { (0, 0) };
364
- return (
365
- pool.init_pool_amount + swap_amount,
366
- pool.ibc_op_init_pool_amount - return_amount
367
- )
368
- }
369
-
370
- #[view]
371
- public fun get_pool_amount_by_denom(
372
- ibc_op_init_denom: String, after_peg_keeper_swap: bool
373
- ): (u64, u64) acquires ModuleStore, VirtualPool {
374
- let ibc_op_init_metadata = coin::denom_to_metadata(ibc_op_init_denom);
375
- get_pool_amount(ibc_op_init_metadata, after_peg_keeper_swap)
376
- }
377
-
378
- #[view]
379
- public fun get_peg_keeper_balance(
380
- ibc_op_init_metadata: Object<Metadata>, after_peg_keeper_swap: bool
381
- ): (u64, u64) acquires ModuleStore, VirtualPool {
382
- let (_, pool) = borrow_all(ibc_op_init_metadata);
383
- assert!(pool.active, error::invalid_state(EINACTIVE));
384
- let (swap_amount, return_amount) =
385
- if (after_peg_keeper_swap) {
386
- calc_peg_keeper_swap(pool)
387
- } else { (0, 0) };
388
-
389
- return (
390
- pool.virtual_init_balance + swap_amount,
391
- pool.virtual_ibc_op_init_balance + return_amount
392
- )
393
- }
394
-
395
- #[view]
396
- public fun get_peg_keeper_balance_by_denom(
397
- ibc_op_init_denom: String, after_peg_keeper_swap: bool
398
- ): (u64, u64) acquires ModuleStore, VirtualPool {
399
- let ibc_op_init_metadata = coin::denom_to_metadata(ibc_op_init_denom);
400
- get_peg_keeper_balance(ibc_op_init_metadata, after_peg_keeper_swap)
401
- }
402
-
403
- #[view]
404
- public fun swap_simulation(
405
- offer_metadata: Object<Metadata>,
406
- return_metadata: Object<Metadata>,
407
- offer_amount: u64
408
- ): (u64, u64) acquires ModuleStore, VirtualPool {
409
- let (return_amount, fee_amount) =
410
- safe_swap_simulation(offer_metadata, return_metadata, offer_amount);
411
- assert!(
412
- return_amount != 0,
413
- error::invalid_state(EIBC_OP_INIT_PRICE_TOO_LOW)
414
- );
415
- (return_amount, fee_amount)
416
- }
417
-
418
- #[view]
419
- public fun swap_simulation_given_out(
420
- offer_metadata: Object<Metadata>,
421
- return_metadata: Object<Metadata>,
422
- return_amount: u64
423
- ): (u64, u64) acquires ModuleStore, VirtualPool {
424
- let (return_amount, fee_amount) =
425
- safe_swap_simulation_given_out(
426
- offer_metadata,
427
- return_metadata,
428
- return_amount
429
- );
430
- assert!(
431
- return_amount != (U64_MAX as u64),
432
- error::invalid_state(EIBC_OP_INIT_PRICE_TOO_LOW)
433
- );
434
- (return_amount, fee_amount)
435
- }
436
-
437
- #[view]
438
- public fun swap_simulation_by_denom(
439
- offer_denom: String, return_denom: String, offer_amount: u64
440
- ): (u64, u64) acquires ModuleStore, VirtualPool {
441
- let offer_metadata = coin::denom_to_metadata(offer_denom);
442
- let return_metadata = coin::denom_to_metadata(return_denom);
443
- swap_simulation(offer_metadata, return_metadata, offer_amount)
444
- }
445
-
446
- #[view]
447
- public fun spot_price(
448
- base_metadata: Object<Metadata>, quote_metadata: Object<Metadata>
449
- ): BigDecimal acquires ModuleStore, VirtualPool {
450
- let is_init_quote = is_init_metadata(quote_metadata);
451
- let ibc_op_init_metadata = if (is_init_quote) {
452
- base_metadata
453
- } else {
454
- quote_metadata
455
- };
456
-
457
- let virtual_pool_exists = virtual_pool_exists(ibc_op_init_metadata);
458
-
459
- assert!(
460
- virtual_pool_exists,
461
- error::invalid_argument(EPOOL_NOT_FOUND)
462
- );
463
-
464
- let (init_pool_amount, ibc_op_init_pool_amount) =
465
- get_pool_amount(ibc_op_init_metadata, !is_init_quote);
466
- let (_, pool) = borrow_all(ibc_op_init_metadata);
467
-
468
- let swap_amount = 1000000;
469
- let ibc_op_init_return_amount =
470
- get_return_amount(
471
- swap_amount,
472
- init_pool_amount,
473
- ibc_op_init_pool_amount,
474
- pool.pool_size,
475
- pool.ann
476
- );
477
- let init_return_amount =
478
- get_return_amount(
479
- swap_amount,
480
- ibc_op_init_pool_amount,
481
- init_pool_amount,
482
- pool.pool_size,
483
- pool.ann
484
- );
485
-
486
- if (is_init_quote) {
487
- bigdecimal::from_ratio_u64(
488
- init_return_amount + swap_amount,
489
- ibc_op_init_return_amount + swap_amount
490
- )
491
- } else {
492
- bigdecimal::from_ratio_u64(
493
- ibc_op_init_return_amount + swap_amount,
494
- init_return_amount + swap_amount
495
- )
496
- }
497
- }
498
-
499
- #[view]
500
- public fun get_unbond_list(
501
- account: address, start_after: Option<u64>, limit: u64
502
- ): vector<UnbondResponse> acquires ModuleStore {
503
- let module_store = borrow_global<ModuleStore>(@initia_std);
504
- let start_key =
505
- if (option::is_some(&start_after)) {
506
- generate_unbond_key(account, *option::borrow(&start_after) + 1)
507
- } else {
508
- generate_unbond_key(account, 0)
509
- };
510
-
511
- if (limit > MAX_LIMIT) {
512
- limit = MAX_LIMIT
513
- };
514
-
515
- let iter =
516
- table::iter(
517
- &module_store.unbond_wait_list,
518
- option::some(start_key),
519
- option::none(),
520
- 1
521
- );
522
-
523
- let i = 0;
524
- let res: vector<UnbondResponse> = vector[];
525
- while (i < limit && table::prepare(iter)) {
526
- let (_, value) = table::next<vector<u8>, UnbondEntity>(iter);
527
- if (value.account != account) break;
528
-
529
- vector::push_back(
530
- &mut res,
531
- UnbondResponse {
532
- account: value.account,
533
- share_amount: value.share_amount,
534
- withdraw_amount: value.withdraw_amount,
535
- release_time: value.release_time
536
- }
537
- );
538
- };
539
-
540
- return res
541
- }
542
-
543
- #[view]
544
- public fun get_arb_info(id: u64): ArbResponse acquires ModuleStore, VirtualPool {
545
- let module_store = borrow_global<ModuleStore>(@initia_std);
546
- let pool_obj =
547
- table::borrow(
548
- &module_store.global_arb_batch_map,
549
- table_key::encode_u64(id)
550
- );
551
- let pool = borrow_global<VirtualPool>(object::object_address(&*pool_obj));
552
- let arb_info = table::borrow(
553
- &pool.arb_batch_map,
554
- table_key::encode_u64(id)
555
- );
556
-
557
- return ArbResponse {
558
- ibc_op_init_metadata: pool.ibc_op_init_metadata,
559
- id,
560
- executed_time: arb_info.executed_time,
561
- init_used: arb_info.init_used,
562
- ibc_op_init_sent: arb_info.ibc_op_init_sent,
563
- triggering_fee: arb_info.triggering_fee
564
- }
565
- }
566
-
567
- #[view]
568
- public fun get_arb_infos(
569
- ibc_op_init_metadata: Object<Metadata>, start_after: Option<u64>, limit: u64
570
- ): vector<ArbResponse> acquires ModuleStore, VirtualPool {
571
- let (_, pool) = borrow_all(ibc_op_init_metadata);
572
- let start_key =
573
- if (option::is_some(&start_after)) {
574
- table_key::encode_u64(*option::borrow(&start_after) + 1)
575
- } else {
576
- table_key::encode_u64(0)
577
- };
578
-
579
- if (limit > MAX_LIMIT) {
580
- limit = MAX_LIMIT
581
- };
582
-
583
- let iter =
584
- table::iter(
585
- &pool.arb_batch_map,
586
- option::some(start_key),
587
- option::none(),
588
- 1
589
- );
590
-
591
- let i = 0;
592
- let res: vector<ArbResponse> = vector[];
593
- while (i < limit && table::prepare(iter)) {
594
- let (key, arb_info) = table::next<vector<u8>, ArbInfo>(iter);
595
- let id = table_key::decode_u64(key);
596
-
597
- vector::push_back(
598
- &mut res,
599
- ArbResponse {
600
- ibc_op_init_metadata: pool.ibc_op_init_metadata,
601
- id,
602
- executed_time: arb_info.executed_time,
603
- init_used: arb_info.init_used,
604
- ibc_op_init_sent: arb_info.ibc_op_init_sent,
605
- triggering_fee: arb_info.triggering_fee
606
- }
607
- );
608
- };
609
-
610
- return res
611
- }
612
-
613
- #[view]
614
- public fun get_module_store(): ModuleStoreResponse acquires ModuleStore {
615
- let module_store = borrow_global<ModuleStore>(@initia_std);
616
-
617
- return ModuleStoreResponse {
618
- max_change_rate: module_store.max_change_rate,
619
- emergency_state: module_store.emergency_state,
620
- admin: module_store.admin,
621
- depositor_owned_init: module_store.depositor_owned_init,
622
- unbond_period: module_store.unbond_period,
623
- swap_fee_rate: module_store.swap_fee_rate,
624
- arb_fee_rate: module_store.arb_fee_rate,
625
- trigger_fee: module_store.trigger_fee,
626
- min_arb_profit: module_store.min_arb_profit,
627
- ibc_timeout: module_store.ibc_timeout,
628
- max_arb_batch: module_store.max_arb_batch,
629
- min_arb_interval: module_store.min_arb_interval,
630
- arb_batch_index: module_store.arb_batch_index
631
- }
632
- }
633
-
634
- #[view]
635
- public fun get_pools(ibc_op_init_metadata: Object<Metadata>): PoolsResponse acquires ModuleStore {
636
- let module_store = borrow_global<ModuleStore>(@initia_std);
637
- let pools = table::borrow(&module_store.pools, ibc_op_init_metadata);
638
- return PoolsResponse {
639
- ibc_op_init_metadata,
640
- ibc_op_init_denom: coin::symbol(ibc_op_init_metadata),
641
- op_bridge_id: pools.op_bridge_id,
642
- ibc_channel: pools.ibc_channel,
643
- virtual_pool: pools.virtual_pool,
644
- stableswap_pool: pools.stableswap_pool
645
- }
646
- }
647
-
648
- #[view]
649
- public fun get_pools_list(
650
- start_after: Option<Object<Metadata>>, limit: u64
651
- ): vector<PoolsResponse> acquires ModuleStore {
652
- let module_store = borrow_global<ModuleStore>(@initia_std);
653
-
654
- if (limit > MAX_LIMIT) {
655
- limit = MAX_LIMIT
656
- };
657
-
658
- let iter = table::iter(
659
- &module_store.pools,
660
- option::none(),
661
- start_after,
662
- 2
663
- );
664
-
665
- let i = 0;
666
- let res: vector<PoolsResponse> = vector[];
667
- while (i < limit && table::prepare(iter)) {
668
- let (ibc_op_init_metadata, pools) = table::next<Object<Metadata>, Pools>(iter);
669
-
670
- vector::push_back(
671
- &mut res,
672
- PoolsResponse {
673
- ibc_op_init_metadata,
674
- ibc_op_init_denom: coin::symbol(ibc_op_init_metadata),
675
- op_bridge_id: pools.op_bridge_id,
676
- ibc_channel: pools.ibc_channel,
677
- virtual_pool: pools.virtual_pool,
678
- stableswap_pool: pools.stableswap_pool
679
- }
680
- );
681
- };
682
-
683
- return res
684
- }
685
-
686
- #[view]
687
- public fun get_pools_detail(
688
- ibc_op_init_metadata: Object<Metadata>
689
- ): PoolsDetailResponse acquires ModuleStore, VirtualPool {
690
- let module_store = borrow_global<ModuleStore>(@initia_std);
691
- let pools = table::borrow(&module_store.pools, ibc_op_init_metadata);
692
- let virtual_pool =
693
- if (option::is_some(&pools.virtual_pool)) {
694
- let vp =
695
- borrow_global<VirtualPool>(
696
- object::object_address(&*option::borrow(&pools.virtual_pool))
697
- );
698
- option::some(
699
- VirtualPoolDetail {
700
- pool_size: vp.pool_size,
701
- recover_velocity: vp.recover_velocity,
702
- max_ratio: vp.max_ratio,
703
- recover_param: vp.recover_param,
704
- init_pool_amount: vp.init_pool_amount,
705
- ibc_op_init_pool_amount: vp.ibc_op_init_pool_amount,
706
- last_recovered_timestamp: vp.last_recovered_timestamp,
707
- virtual_init_balance: vp.virtual_init_balance,
708
- virtual_ibc_op_init_balance: vp.virtual_ibc_op_init_balance,
709
- peg_keeper_owned_ibc_op_init_balance: vp.peg_keeper_owned_ibc_op_init_balance,
710
- ann: vp.ann,
711
- active: vp.active
712
- }
713
- )
714
- } else {
715
- option::none()
716
- };
717
-
718
- let stableswap_pool =
719
- if (option::is_some(&pools.stableswap_pool)) {
720
- option::some(
721
- stableswap::get_pool(*option::borrow(&pools.stableswap_pool))
722
- )
723
- } else {
724
- option::none()
725
- };
726
-
727
- return PoolsDetailResponse {
728
- ibc_op_init_metadata,
729
- ibc_op_init_denom: coin::symbol(ibc_op_init_metadata),
730
- op_bridge_id: pools.op_bridge_id,
731
- ibc_channel: pools.ibc_channel,
732
- virtual_pool: virtual_pool,
733
- stableswap_pool
734
- }
735
- }
736
-
737
- #[view]
738
- public fun get_pools_detail_list(
739
- start_after: Option<Object<Metadata>>, limit: u64
740
- ): vector<PoolsDetailResponse> acquires ModuleStore, VirtualPool {
741
- let module_store = borrow_global<ModuleStore>(@initia_std);
742
-
743
- if (limit > MAX_LIMIT) {
744
- limit = MAX_LIMIT
745
- };
746
-
747
- let iter = table::iter(
748
- &module_store.pools,
749
- option::none(),
750
- start_after,
751
- 2
752
- );
753
-
754
- let i = 0;
755
- let res: vector<PoolsDetailResponse> = vector[];
756
- while (i < limit && table::prepare(iter)) {
757
- let (ibc_op_init_metadata, pools) = table::next<Object<Metadata>, Pools>(iter);
758
-
759
- let virtual_pool =
760
- if (option::is_some(&pools.virtual_pool)) {
761
- let vp =
762
- borrow_global<VirtualPool>(
763
- object::object_address(
764
- &*option::borrow(&pools.virtual_pool)
765
- )
766
- );
767
- option::some(
768
- VirtualPoolDetail {
769
- pool_size: vp.pool_size,
770
- recover_velocity: vp.recover_velocity,
771
- max_ratio: vp.max_ratio,
772
- recover_param: vp.recover_param,
773
- init_pool_amount: vp.init_pool_amount,
774
- ibc_op_init_pool_amount: vp.ibc_op_init_pool_amount,
775
- last_recovered_timestamp: vp.last_recovered_timestamp,
776
- virtual_init_balance: vp.virtual_init_balance,
777
- virtual_ibc_op_init_balance: vp.virtual_ibc_op_init_balance,
778
- peg_keeper_owned_ibc_op_init_balance: vp.peg_keeper_owned_ibc_op_init_balance,
779
- ann: vp.ann,
780
- active: vp.active
781
- }
782
- )
783
- } else {
784
- option::none()
785
- };
786
-
787
- let stableswap_pool =
788
- if (option::is_some(&pools.stableswap_pool)) {
789
- option::some(
790
- stableswap::get_pool(*option::borrow(&pools.stableswap_pool))
791
- )
792
- } else {
793
- option::none()
794
- };
795
-
796
- vector::push_back(
797
- &mut res,
798
- PoolsDetailResponse {
799
- ibc_op_init_metadata,
800
- ibc_op_init_denom: coin::symbol(ibc_op_init_metadata),
801
- op_bridge_id: pools.op_bridge_id,
802
- ibc_channel: pools.ibc_channel,
803
- virtual_pool: virtual_pool,
804
- stableswap_pool
805
- }
806
- )
807
- };
808
-
809
- return res
810
-
811
- }
812
-
813
- //
814
- // View Function return types
815
- //
816
-
817
- struct UnbondResponse has drop {
818
- account: address,
819
- share_amount: u64,
820
- withdraw_amount: u64,
821
- release_time: u64
822
- }
823
-
824
- public fun unpack_unbond_response(res: UnbondResponse): (address, u64, u64, u64) {
825
- return (res.account, res.share_amount, res.withdraw_amount, res.release_time)
826
- }
827
-
828
- struct ArbResponse has drop {
829
- ibc_op_init_metadata: Object<Metadata>,
830
- id: u64,
831
- executed_time: u64,
832
- init_used: u64,
833
- ibc_op_init_sent: u64,
834
- triggering_fee: u64
835
- }
836
-
837
- public fun unpack_arb_response(res: ArbResponse):
838
- (Object<Metadata>, u64, u64, u64, u64, u64) {
839
- return (
840
- res.ibc_op_init_metadata,
841
- res.id,
842
- res.executed_time,
843
- res.init_used,
844
- res.ibc_op_init_sent,
845
- res.triggering_fee
846
- )
847
- }
848
-
849
- struct ModuleStoreResponse has drop {
850
- max_change_rate: BigDecimal,
851
- emergency_state: bool,
852
- admin: address,
853
- depositor_owned_init: u64,
854
- unbond_period: u64,
855
- swap_fee_rate: BigDecimal,
856
- arb_fee_rate: BigDecimal,
857
- trigger_fee: u64,
858
- min_arb_profit: u64,
859
- ibc_timeout: u64,
860
- max_arb_batch: u64,
861
- min_arb_interval: u64,
862
- arb_batch_index: u64
863
- }
864
-
865
- public fun unpack_module_store_response(
866
- res: ModuleStoreResponse
867
- ): (
868
- BigDecimal,
869
- bool,
870
- address,
871
- u64,
872
- u64,
873
- BigDecimal,
874
- BigDecimal,
875
- u64,
876
- u64,
877
- u64,
878
- u64,
879
- u64,
880
- u64
881
- ) {
882
- return (
883
- res.max_change_rate,
884
- res.emergency_state,
885
- res.admin,
886
- res.depositor_owned_init,
887
- res.unbond_period,
888
- res.swap_fee_rate,
889
- res.arb_fee_rate,
890
- res.trigger_fee,
891
- res.min_arb_profit,
892
- res.ibc_timeout,
893
- res.max_arb_batch,
894
- res.min_arb_interval,
895
- res.arb_batch_index
896
- )
897
- }
898
-
899
- struct PoolsResponse has drop {
900
- ibc_op_init_metadata: Object<Metadata>,
901
- ibc_op_init_denom: String,
902
- op_bridge_id: u64,
903
- ibc_channel: String,
904
- virtual_pool: Option<Object<VirtualPool>>,
905
- stableswap_pool: Option<Object<Pool>>
906
- }
907
-
908
- public fun unpack_pools_response(
909
- res: PoolsResponse
910
- ): (
911
- Object<Metadata>,
912
- String,
913
- u64,
914
- String,
915
- Option<Object<VirtualPool>>,
916
- Option<Object<Pool>>
917
- ) {
918
- return (
919
- res.ibc_op_init_metadata,
920
- res.ibc_op_init_denom,
921
- res.op_bridge_id,
922
- res.ibc_channel,
923
- res.virtual_pool,
924
- res.stableswap_pool
925
- )
926
- }
927
-
928
- struct PoolsDetailResponse has drop {
929
- ibc_op_init_metadata: Object<Metadata>,
930
- ibc_op_init_denom: String,
931
- op_bridge_id: u64,
932
- ibc_channel: String,
933
- virtual_pool: Option<VirtualPoolDetail>,
934
- stableswap_pool: Option<stableswap::PoolResponse>
935
- }
936
-
937
- public fun unpack_pools_detail_response(
938
- res: PoolsDetailResponse
939
- ): (
940
- Object<Metadata>,
941
- String,
942
- u64,
943
- String,
944
- Option<VirtualPoolDetail>,
945
- Option<stableswap::PoolResponse>
946
- ) {
947
- let PoolsDetailResponse {
948
- ibc_op_init_metadata,
949
- ibc_op_init_denom,
950
- op_bridge_id,
951
- ibc_channel,
952
- virtual_pool,
953
- stableswap_pool
954
- } = res;
955
- return (
956
- ibc_op_init_metadata,
957
- ibc_op_init_denom,
958
- op_bridge_id,
959
- ibc_channel,
960
- virtual_pool,
961
- stableswap_pool
962
- )
963
- }
964
-
965
- struct VirtualPoolDetail has drop {
966
- pool_size: u64,
967
- recover_velocity: BigDecimal,
968
- max_ratio: BigDecimal,
969
- recover_param: BigDecimal,
970
- init_pool_amount: u64,
971
- ibc_op_init_pool_amount: u64,
972
- last_recovered_timestamp: u64,
973
- virtual_init_balance: u64,
974
- virtual_ibc_op_init_balance: u64,
975
- peg_keeper_owned_ibc_op_init_balance: u64,
976
- ann: u64,
977
- active: bool
978
- }
979
-
980
- public fun unpack_virtual_pool_detail(
981
- res: VirtualPoolDetail
982
- ): (u64, BigDecimal, BigDecimal, BigDecimal, u64, u64, u64, u64, u64, u64, u64, bool) {
983
- return (
984
- res.pool_size,
985
- res.recover_velocity,
986
- res.max_ratio,
987
- res.recover_param,
988
- res.init_pool_amount,
989
- res.ibc_op_init_pool_amount,
990
- res.last_recovered_timestamp,
991
- res.virtual_init_balance,
992
- res.virtual_ibc_op_init_balance,
993
- res.peg_keeper_owned_ibc_op_init_balance,
994
- res.ann,
995
- res.active
996
- )
997
- }
998
-
999
- //
1000
- // Admin functions
1001
- //
1002
-
1003
- // create new virtual pool
1004
- public entry fun create_pool(
1005
- chain: &signer,
1006
- ibc_op_init_metadata: Object<Metadata>,
1007
- recover_velocity: BigDecimal,
1008
- pool_size: u64,
1009
- ann: u64,
1010
- max_ratio: BigDecimal,
1011
- recover_param: BigDecimal,
1012
- vm_type: u8,
1013
- hook_contract: String,
1014
- op_bridge_id: u64,
1015
- ibc_channel: String
1016
- ) acquires ModuleStore {
1017
- assert_is_chain(chain, false);
1018
- assert!(
1019
- pool_size > 0,
1020
- error::invalid_argument(EPOOL_SIZE)
1021
- );
1022
- let constructor_ref = object::create_object(@initia_std, false);
1023
- let extend_ref = object::generate_extend_ref(&constructor_ref);
1024
- let pool_signer = object::generate_signer(&constructor_ref);
1025
- let (_, timestamp) = block::get_block_info();
1026
-
1027
- assert!(
1028
- vm_type == MOVE || vm_type == COSMWASM || vm_type == EVM,
1029
- error::invalid_argument(EVM_TYPE)
1030
- );
1031
-
1032
- check_bridge_info(
1033
- op_bridge_id,
1034
- ibc_channel,
1035
- ibc_op_init_metadata
1036
- );
1037
-
1038
- move_to(
1039
- &pool_signer,
1040
- VirtualPool {
1041
- ibc_op_init_metadata,
1042
- extend_ref,
1043
- recover_velocity,
1044
- pool_size,
1045
- max_ratio,
1046
- recover_param,
1047
- init_pool_amount: pool_size,
1048
- ibc_op_init_pool_amount: pool_size,
1049
- last_recovered_timestamp: timestamp,
1050
- virtual_init_balance: 0,
1051
- virtual_ibc_op_init_balance: 0,
1052
- peg_keeper_owned_ibc_op_init_balance: 0,
1053
- ann,
1054
- active: true,
1055
- op_bridge_id,
1056
- ibc_channel,
1057
- vm_type,
1058
- hook_contract,
1059
- arb_batch_map: table::new()
1060
- }
1061
- );
1062
-
1063
- let module_store = borrow_global_mut<ModuleStore>(@initia_std);
1064
- let pools =
1065
- borrow_pools_with_default(
1066
- module_store,
1067
- ibc_op_init_metadata,
1068
- op_bridge_id,
1069
- ibc_channel
1070
- );
1071
-
1072
- assert!(
1073
- option::is_none(&pools.virtual_pool),
1074
- error::already_exists(EVIRTUAL_POOL_EXISTS)
1075
- );
1076
- pools.virtual_pool = option::some(
1077
- object::object_from_constructor_ref<VirtualPool>(&constructor_ref)
1078
- );
1079
-
1080
- event::emit(
1081
- CreatePoolEvent {
1082
- ibc_op_init_metadata,
1083
- recover_velocity,
1084
- pool_size,
1085
- ann,
1086
- max_ratio,
1087
- recover_param
1088
- }
1089
- )
1090
- }
1091
-
1092
- // set emergency state
1093
- public entry fun set_emergency_state(chain: &signer, state: bool) acquires ModuleStore {
1094
- assert_is_chain(chain, true);
1095
- let module_store = borrow_global_mut<ModuleStore>(@initia_std);
1096
- module_store.emergency_state = state
1097
- }
1098
-
1099
- // deactivate virtual pool
1100
- public entry fun deactivate(
1101
- chain: &signer, ibc_op_init_metadata: Object<Metadata>
1102
- ) acquires ModuleStore, VirtualPool {
1103
- assert_is_chain(chain, true);
1104
- let module_store = borrow_global_mut<ModuleStore>(@initia_std);
1105
- let pools = table::borrow(&mut module_store.pools, ibc_op_init_metadata);
1106
- let pool =
1107
- borrow_global_mut<VirtualPool>(
1108
- object::object_address(&*option::borrow(&pools.virtual_pool))
1109
- );
1110
- pool.active = false
1111
- }
1112
-
1113
- // activate virtual pool
1114
- public entry fun activate(
1115
- chain: &signer, ibc_op_init_metadata: Object<Metadata>
1116
- ) acquires ModuleStore, VirtualPool {
1117
- assert_is_chain(chain, true);
1118
- let module_store = borrow_global_mut<ModuleStore>(@initia_std);
1119
- let pools = table::borrow(&mut module_store.pools, ibc_op_init_metadata);
1120
- let pool =
1121
- borrow_global_mut<VirtualPool>(
1122
- object::object_address(&*option::borrow(&pools.virtual_pool))
1123
- );
1124
- pool.active = true
1125
- }
1126
-
1127
- // change pool size
1128
- public entry fun change_pool_size(
1129
- chain: &signer, ibc_op_init_metadata: Object<Metadata>, new_pool_size: u64
1130
- ) acquires ModuleStore, VirtualPool {
1131
- assert_is_chain(chain, false);
1132
- assert!(
1133
- new_pool_size > 0,
1134
- error::invalid_argument(EPOOL_SIZE)
1135
- );
1136
- let module_store = borrow_global_mut<ModuleStore>(@initia_std);
1137
- let pools = table::borrow(&mut module_store.pools, ibc_op_init_metadata);
1138
- let pool =
1139
- borrow_global_mut<VirtualPool>(
1140
- object::object_address(&*option::borrow(&pools.virtual_pool))
1141
- );
1142
-
1143
- let change_rate =
1144
- if (new_pool_size > pool.pool_size) {
1145
- bigdecimal::from_ratio_u64(new_pool_size - pool.pool_size, pool.pool_size)
1146
- } else {
1147
- bigdecimal::from_ratio_u64(pool.pool_size - new_pool_size, pool.pool_size)
1148
- };
1149
-
1150
- assert!(
1151
- bigdecimal::ge(module_store.max_change_rate, change_rate),
1152
- error::invalid_argument(EMAX_CHANGE)
1153
- );
1154
-
1155
- let depositor_owned_init_increase =
1156
- if (new_pool_size < pool.pool_size) {
1157
- /*
1158
- Decrease size process
1159
- 1. Change pool amount as ratio
1160
- 2. Calculate diff, update peg keeper's balances
1161
-
1162
- Net Effect
1163
- This action is same with swap INIT > ibc op INIT until pool ratio to be 5:5,
1164
- change pool size and sell some portion of ibc op INIT at same price
1165
- - INIT and ibc op INIT balances of peg keepers -> INIT decrease ibc op INIT increase,
1166
- but INIT decreased amount is smaller than ibc op INIT increased amount.
1167
- - Pool ratio doesn't change (= price not change)
1168
- */
1169
- let current_init_delta = pool.pool_size - pool.init_pool_amount;
1170
- let current_ibc_op_init_delta =
1171
- pool.ibc_op_init_pool_amount - pool.pool_size;
1172
-
1173
- let ratio = bigdecimal::from_ratio_u64(new_pool_size, pool.pool_size);
1174
- pool.init_pool_amount = bigdecimal::mul_by_u64_truncate(
1175
- ratio, pool.init_pool_amount
1176
- );
1177
- pool.ibc_op_init_pool_amount = bigdecimal::mul_by_u64_truncate(
1178
- ratio, pool.ibc_op_init_pool_amount
1179
- );
1180
- pool.pool_size = new_pool_size;
1181
-
1182
- let init_delta = pool.pool_size - pool.init_pool_amount;
1183
- let ibc_op_init_delta = pool.ibc_op_init_pool_amount - pool.pool_size;
1184
-
1185
- let net_init_delta = current_init_delta - init_delta;
1186
- let net_ibc_op_init_delta = current_ibc_op_init_delta
1187
- - ibc_op_init_delta;
1188
-
1189
- pool.virtual_init_balance = pool.virtual_init_balance + net_init_delta;
1190
- pool.virtual_ibc_op_init_balance = pool.virtual_ibc_op_init_balance
1191
- + net_ibc_op_init_delta;
1192
- pool.peg_keeper_owned_ibc_op_init_balance = pool.peg_keeper_owned_ibc_op_init_balance
1193
- + net_ibc_op_init_delta;
1194
- 0
1195
- } else {
1196
- /*
1197
- Increase size process
1198
- 1. Swap INIT > ibc init INIT to make 5:5
1199
- 2. Change pool size
1200
- 3. Swap back ibc init INIT > INIT
1201
- a. If INIT init balance of peg keeper is greater than 0, return it to provider
1202
-
1203
- Net Effect
1204
- - INIT and ibc init INIT balances of peg keepers -> + for INIT and even for ibc init INIT
1205
- - Ratio of pool -> ibc init INIT price decrease
1206
- */
1207
-
1208
- // 1. swap to make 5:5
1209
- let init_swap_amount = pool.pool_size - pool.init_pool_amount;
1210
- let ibc_op_init_swap_amount = pool.ibc_op_init_pool_amount
1211
- - pool.pool_size;
1212
- // pool.init_pool_amount = pool.pool_size;
1213
- // pool.ibc_op_init_pool_amount = pool.pool_size;
1214
- pool.virtual_init_balance = pool.virtual_init_balance
1215
- + init_swap_amount;
1216
- pool.virtual_ibc_op_init_balance = pool.virtual_ibc_op_init_balance
1217
- + ibc_op_init_swap_amount;
1218
- pool.peg_keeper_owned_ibc_op_init_balance = pool.peg_keeper_owned_ibc_op_init_balance
1219
- + ibc_op_init_swap_amount;
1220
-
1221
- // 2. change pool size
1222
- pool.init_pool_amount = new_pool_size;
1223
- pool.ibc_op_init_pool_amount = new_pool_size;
1224
- pool.pool_size = new_pool_size;
1225
-
1226
- // 3. swap back
1227
- let return_amount =
1228
- get_return_amount(
1229
- ibc_op_init_swap_amount,
1230
- pool.ibc_op_init_pool_amount,
1231
- pool.init_pool_amount,
1232
- pool.pool_size,
1233
- pool.ann
1234
- );
1235
- pool.ibc_op_init_pool_amount = pool.ibc_op_init_pool_amount
1236
- + ibc_op_init_swap_amount;
1237
- pool.init_pool_amount = pool.init_pool_amount - return_amount;
1238
- pool.virtual_ibc_op_init_balance = pool.virtual_ibc_op_init_balance
1239
- - ibc_op_init_swap_amount;
1240
- pool.peg_keeper_owned_ibc_op_init_balance = pool.peg_keeper_owned_ibc_op_init_balance
1241
- - ibc_op_init_swap_amount;
1242
-
1243
- if (pool.virtual_init_balance < return_amount) {
1244
- let remain = return_amount - pool.virtual_init_balance;
1245
- module_store.depositor_owned_init = module_store.depositor_owned_init
1246
- + remain;
1247
- pool.virtual_init_balance = 0;
1248
- remain
1249
- } else {
1250
- pool.virtual_init_balance = pool.virtual_init_balance
1251
- - return_amount;
1252
- 0
1253
- }
1254
- };
1255
-
1256
- event::emit(
1257
- ChangePoolSizeEvent {
1258
- ibc_op_init_metadata,
1259
- pool_size: new_pool_size,
1260
- depositor_owned_init_increase
1261
- }
1262
- )
1263
- }
1264
-
1265
- public entry fun update_module_params(
1266
- chain: &signer,
1267
- max_change_rate: Option<BigDecimal>,
1268
- admin: Option<address>,
1269
- unbond_period: Option<u64>,
1270
- swap_fee_rate: Option<BigDecimal>,
1271
- arb_fee_rate: Option<BigDecimal>,
1272
- trigger_fee: Option<u64>,
1273
- min_arb_profit: Option<u64>,
1274
- ibc_timeout: Option<u64>,
1275
- max_arb_batch: Option<u64>,
1276
- min_arb_interval: Option<u64>
1277
- ) acquires ModuleStore {
1278
- assert_is_chain(chain, false);
1279
- let module_store = borrow_global_mut<ModuleStore>(@initia_std);
1280
-
1281
- if (option::is_some(&max_change_rate)) {
1282
- module_store.max_change_rate = option::extract(&mut max_change_rate);
1283
- };
1284
-
1285
- if (option::is_some(&admin)) {
1286
- module_store.admin = option::extract(&mut admin);
1287
- };
1288
-
1289
- if (option::is_some(&unbond_period)) {
1290
- module_store.unbond_period = option::extract(&mut unbond_period);
1291
- };
1292
-
1293
- if (option::is_some(&swap_fee_rate)) {
1294
- module_store.swap_fee_rate = option::extract(&mut swap_fee_rate);
1295
- };
1296
-
1297
- if (option::is_some(&arb_fee_rate)) {
1298
- module_store.arb_fee_rate = option::extract(&mut arb_fee_rate);
1299
- };
1300
-
1301
- if (option::is_some(&trigger_fee)) {
1302
- module_store.trigger_fee = option::extract(&mut trigger_fee);
1303
- };
1304
-
1305
- if (option::is_some(&min_arb_profit)) {
1306
- module_store.min_arb_profit = option::extract(&mut min_arb_profit);
1307
- };
1308
-
1309
- if (option::is_some(&ibc_timeout)) {
1310
- module_store.ibc_timeout = option::extract(&mut ibc_timeout);
1311
- };
1312
-
1313
- if (option::is_some(&max_arb_batch)) {
1314
- module_store.max_arb_batch = option::extract(&mut max_arb_batch);
1315
- };
1316
-
1317
- if (option::is_some(&min_arb_interval)) {
1318
- module_store.min_arb_interval = option::extract(&mut min_arb_interval);
1319
- };
1320
-
1321
- assert!(
1322
- module_store.min_arb_profit > module_store.trigger_fee,
1323
- error::invalid_argument(ESMALL_ARB_PROFIT)
1324
- )
1325
- }
1326
-
1327
- public entry fun update_pool_params(
1328
- chain: &signer,
1329
- ibc_op_init_metadata: Object<Metadata>,
1330
- recover_velocity: Option<BigDecimal>,
1331
- ann: Option<u64>,
1332
- max_ratio: Option<BigDecimal>,
1333
- recover_param: Option<BigDecimal>,
1334
- hook_contract: Option<String>
1335
- ) acquires ModuleStore, VirtualPool {
1336
- assert_is_chain(chain, false);
1337
- let module_store = borrow_global_mut<ModuleStore>(@initia_std);
1338
- let pools = table::borrow(&mut module_store.pools, ibc_op_init_metadata);
1339
- let pool =
1340
- borrow_global_mut<VirtualPool>(
1341
- object::object_address(&*option::borrow(&pools.virtual_pool))
1342
- );
1343
-
1344
- if (option::is_some(&recover_velocity)) {
1345
- pool.recover_velocity = option::extract(&mut recover_velocity);
1346
- };
1347
-
1348
- // It is okay to change ann immediately cause there are no real provider
1349
- if (option::is_some(&ann)) {
1350
- pool.ann = option::extract(&mut ann);
1351
- };
1352
-
1353
- if (option::is_some(&max_ratio)) {
1354
- pool.max_ratio = option::extract(&mut max_ratio);
1355
- };
1356
-
1357
- if (option::is_some(&recover_param)) {
1358
- pool.recover_param = option::extract(&mut recover_param);
1359
- };
1360
-
1361
- if (option::is_some(&hook_contract)) {
1362
- pool.hook_contract = option::extract(&mut hook_contract);
1363
- };
1364
-
1365
- event::emit(
1366
- UpdatePoolParamsEvent {
1367
- ibc_op_init_metadata,
1368
- recover_velocity,
1369
- ann,
1370
- max_ratio,
1371
- recover_param,
1372
- hook_contract
1373
- }
1374
- )
1375
- }
1376
-
1377
- //
1378
- // Entry Functions
1379
- //
1380
-
1381
- public entry fun provide(
1382
- account: &signer, amount: u64, min_return_amount: Option<u64>
1383
- ) acquires ModuleStore {
1384
- let init = primary_fungible_store::withdraw(account, init_metadata(), amount);
1385
- let share_token = provide_internal(init);
1386
- assert_min_amount(&share_token, min_return_amount);
1387
- primary_fungible_store::deposit(signer::address_of(account), share_token);
1388
- }
1389
-
1390
- public entry fun unbond(account: &signer, amount: u64) acquires ModuleStore {
1391
- let share_token =
1392
- primary_fungible_store::withdraw(account, share_token_metadata(), amount);
1393
- unbond_internal(account, share_token);
1394
- }
1395
-
1396
- public entry fun withdraw_unbond(account: &signer, release_time: u64) acquires ModuleStore {
1397
- let addr = signer::address_of(account);
1398
- let module_store = borrow_global_mut<ModuleStore>(@initia_std);
1399
-
1400
- // check emergency
1401
- assert!(
1402
- !module_store.emergency_state,
1403
- error::invalid_state(EEMERGENCY)
1404
- );
1405
-
1406
- // remove unbond entity
1407
- let key = generate_unbond_key(addr, release_time);
1408
- let UnbondEntity { account: _, share_amount, withdraw_amount, release_time } =
1409
- table::remove(&mut module_store.unbond_wait_list, key);
1410
-
1411
- // check release time
1412
- let (_, timestamp) = block::get_block_info();
1413
- assert!(
1414
- timestamp >= release_time,
1415
- error::invalid_state(ERELEASE_TIME)
1416
- );
1417
-
1418
- // release init
1419
- let module_signer =
1420
- object::generate_signer_for_extending(&module_store.extend_ref);
1421
- primary_fungible_store::transfer(
1422
- &module_signer,
1423
- init_metadata(),
1424
- addr,
1425
- withdraw_amount
1426
- );
1427
-
1428
- event::emit(
1429
- WithdrawUnbondEvent {
1430
- account: addr,
1431
- share_amount,
1432
- withdraw_amount,
1433
- release_time
1434
- }
1435
- );
1436
- }
1437
-
1438
- public entry fun swap(
1439
- account: &signer,
1440
- offer_asset_metadata: Object<Metadata>,
1441
- return_asset_metadata: Object<Metadata>,
1442
- amount: u64,
1443
- min_return_amount: Option<u64>
1444
- ) acquires ModuleStore, VirtualPool {
1445
- let offer_asset =
1446
- primary_fungible_store::withdraw(account, offer_asset_metadata, amount);
1447
-
1448
- let return_asset = swap_internal(offer_asset, return_asset_metadata);
1449
- assert_min_amount(&return_asset, min_return_amount);
1450
-
1451
- primary_fungible_store::deposit(signer::address_of(account), return_asset);
1452
- }
1453
-
1454
- public entry fun finalize_arb(
1455
- account: &signer,
1456
- arb_index: u64,
1457
- output_index: u64,
1458
- withdrawal_proofs: vector<String>,
1459
- sender: address,
1460
- sequence: u64,
1461
- version: String,
1462
- state_root: String,
1463
- storage_root: String,
1464
- latest_block_hash: String
1465
- ) acquires ModuleStore, VirtualPool {
1466
- // check arb info
1467
- let module_store = borrow_global<ModuleStore>(@initia_std);
1468
- let pool_obj =
1469
- table::borrow(
1470
- &module_store.global_arb_batch_map,
1471
- table_key::encode_u64(arb_index)
1472
- );
1473
- let pool = borrow_global<VirtualPool>(object::object_address(&*pool_obj));
1474
- let arb_info =
1475
- table::borrow(
1476
- &pool.arb_batch_map,
1477
- table_key::encode_u64(arb_index)
1478
- );
1479
-
1480
- // execute finalize token withdrawal
1481
- let pool_signer = object::generate_signer_for_extending(&pool.extend_ref);
1482
- let withdrawal_msg =
1483
- generate_finalize_token_withdrawal_msg(
1484
- pool.op_bridge_id,
1485
- output_index,
1486
- withdrawal_proofs,
1487
- sender,
1488
- signer::address_of(&pool_signer),
1489
- sequence,
1490
- string::utf8(b"uinit"),
1491
- arb_info.ibc_op_init_sent,
1492
- version,
1493
- state_root,
1494
- storage_root,
1495
- latest_block_hash
1496
- );
1497
- cosmos::stargate(&pool_signer, withdrawal_msg);
1498
-
1499
- // execute hook
1500
- let module_signer =
1501
- object::generate_signer_for_extending(&module_store.extend_ref);
1502
- cosmos::move_execute(
1503
- &module_signer,
1504
- @initia_std,
1505
- string::utf8(b"minitswap"),
1506
- string::utf8(b"finalize_arb_hook"),
1507
- vector[],
1508
- vector[
1509
- bcs::to_bytes(&arb_index),
1510
- bcs::to_bytes(&signer::address_of(account))
1511
- ]
1512
- );
1513
- }
1514
-
1515
- public entry fun finalize_arb_hook(
1516
- module_signer: &signer, arb_index: u64, executor: address
1517
- ) acquires ModuleStore, VirtualPool {
1518
- let module_store = borrow_global_mut<ModuleStore>(@initia_std);
1519
- assert!(
1520
- signer::address_of(module_signer)
1521
- == object::address_from_extend_ref(&module_store.extend_ref),
1522
- error::permission_denied(EUNAUTHORIZED)
1523
- );
1524
-
1525
- let pool_obj =
1526
- table::remove(
1527
- &mut module_store.global_arb_batch_map,
1528
- table_key::encode_u64(arb_index)
1529
- );
1530
- let pool = borrow_global_mut<VirtualPool>(object::object_address(&pool_obj));
1531
- let ArbInfo { executed_time: _, init_used, ibc_op_init_sent, triggering_fee } =
1532
- table::remove(
1533
- &mut pool.arb_batch_map,
1534
- table_key::encode_u64(arb_index)
1535
- );
1536
-
1537
- assert!(pool.active, error::invalid_state(EINACTIVE));
1538
-
1539
- let pool_signer = object::generate_signer_for_extending(&pool.extend_ref);
1540
-
1541
- // update pegkeeper owned balance
1542
- pool.peg_keeper_owned_ibc_op_init_balance = pool.peg_keeper_owned_ibc_op_init_balance
1543
- - ibc_op_init_sent;
1544
-
1545
- // transfer trigger fee
1546
- primary_fungible_store::transfer(
1547
- &pool_signer,
1548
- init_metadata(),
1549
- executor,
1550
- triggering_fee
1551
- );
1552
-
1553
- // transfer leftover to module_addr
1554
- let leftover_amount = ibc_op_init_sent - triggering_fee;
1555
- primary_fungible_store::transfer(
1556
- &pool_signer,
1557
- init_metadata(),
1558
- signer::address_of(module_signer),
1559
- leftover_amount
1560
- );
1561
-
1562
- // update depositor owned init
1563
- let in_house_arb_profit = leftover_amount - init_used;
1564
- module_store.depositor_owned_init = module_store.depositor_owned_init
1565
- + in_house_arb_profit;
1566
-
1567
- // emit event
1568
- event::emit(
1569
- FinalizeArbEvent {
1570
- arb_index,
1571
- pool: pool_obj,
1572
- init_used,
1573
- ibc_op_init_sent,
1574
- triggering_fee
1575
- }
1576
- );
1577
- }
1578
-
1579
- // stableswap
1580
-
1581
- public entry fun create_stableswap_pool(
1582
- account: &signer,
1583
- op_bridge_id: u64,
1584
- ibc_channel: String,
1585
- ibc_op_init_metadata: Object<Metadata>,
1586
- init_amount: u64,
1587
- ibc_op_init_amount: u64
1588
- ) acquires ModuleStore {
1589
- let module_store = borrow_global_mut<ModuleStore>(@initia_std);
1590
- let (_, ibc_denom) =
1591
- check_bridge_info(
1592
- op_bridge_id,
1593
- ibc_channel,
1594
- ibc_op_init_metadata
1595
- );
1596
-
1597
- let creator = object::generate_signer_for_extending(&module_store.extend_ref);
1598
- let symbol = string::utf8(b"INIT - ");
1599
- string::append(&mut symbol, ibc_denom);
1600
-
1601
- let coins: vector<FungibleAsset> = vector[
1602
- coin::withdraw(account, init_metadata(), init_amount),
1603
- coin::withdraw(
1604
- account,
1605
- ibc_op_init_metadata,
1606
- ibc_op_init_amount
1607
- )
1608
- ];
1609
-
1610
- let liquidity_token =
1611
- stableswap::create_pool(
1612
- &creator,
1613
- symbol,
1614
- symbol,
1615
- module_store.stableswap_swap_fee_rate,
1616
- coins,
1617
- module_store.stableswap_ann
1618
- );
1619
- let metadata = fungible_asset::metadata_from_asset(&liquidity_token);
1620
- let pool = object::convert<Metadata, Pool>(metadata);
1621
-
1622
- let pools =
1623
- borrow_pools_with_default(
1624
- module_store,
1625
- ibc_op_init_metadata,
1626
- op_bridge_id,
1627
- ibc_channel
1628
- );
1629
- pools.stableswap_pool = option::some(object::convert<Metadata, Pool>(metadata));
1630
-
1631
- primary_fungible_store::deposit(signer::address_of(account), liquidity_token);
1632
- event::emit(CreateStableswapPoolEvent { ibc_op_init_metadata, pool });
1633
- }
1634
-
1635
- public fun provide_internal(init: FungibleAsset): FungibleAsset acquires ModuleStore {
1636
- // check asset metadata
1637
- assert!(
1638
- is_init(&init),
1639
- error::invalid_argument(ENOT_INIT)
1640
- );
1641
- let provide_amount = fungible_asset::amount(&init);
1642
-
1643
- let module_store = borrow_global_mut<ModuleStore>(@initia_std);
1644
-
1645
- // check emergency
1646
- assert!(
1647
- !module_store.emergency_state,
1648
- error::invalid_state(EEMERGENCY)
1649
- );
1650
-
1651
- // calculate share amount
1652
- let total_share = total_share();
1653
- let share_amount =
1654
- if (total_share == 0) {
1655
- provide_amount
1656
- } else {
1657
- mul_div(
1658
- provide_amount,
1659
- (total_share as u64),
1660
- module_store.depositor_owned_init
1661
- )
1662
- };
1663
-
1664
- // update depositor owned init
1665
- module_store.depositor_owned_init = module_store.depositor_owned_init
1666
- + provide_amount;
1667
-
1668
- // deposit token to module
1669
- let module_addr = object::address_from_extend_ref(&module_store.extend_ref);
1670
- primary_fungible_store::deposit(module_addr, init);
1671
-
1672
- // emit event
1673
- event::emit<ProvideEvent>(ProvideEvent { provide_amount, share_amount });
1674
-
1675
- // mint share token
1676
- coin::mint(&module_store.mint_cap, share_amount)
1677
- }
1678
-
1679
- public fun unbond_internal(
1680
- account: &signer, share_token: FungibleAsset
1681
- ) acquires ModuleStore {
1682
- let module_store = borrow_global_mut<ModuleStore>(@initia_std);
1683
-
1684
- // check emergency
1685
- assert!(
1686
- !module_store.emergency_state,
1687
- error::invalid_state(EEMERGENCY)
1688
- );
1689
-
1690
- // check metadata
1691
- let share_token_metadata = fungible_asset::metadata_from_asset(&share_token);
1692
- assert!(
1693
- share_token_metadata == share_token_metadata(),
1694
- error::invalid_argument(ENOT_SHARE_TOKEN)
1695
- );
1696
-
1697
- // calculate withdraw amount
1698
- let share_amount = fungible_asset::amount(&share_token);
1699
- let total_share = total_share();
1700
- let withdraw_amount =
1701
- mul_div(
1702
- share_amount,
1703
- module_store.depositor_owned_init,
1704
- total_share
1705
- );
1706
-
1707
- // decrease depositor owned init
1708
- module_store.depositor_owned_init = module_store.depositor_owned_init
1709
- - withdraw_amount;
1710
-
1711
- // burn share token
1712
- coin::burn(&module_store.burn_cap, share_token);
1713
-
1714
- // get release time
1715
- let (_, timestamp) = block::get_block_info();
1716
- let release_time = timestamp + module_store.unbond_period;
1717
-
1718
- // create and store withdraw entiry
1719
- let withdraw_entity = UnbondEntity {
1720
- account: signer::address_of(account),
1721
- share_amount,
1722
- withdraw_amount,
1723
- release_time
1724
- };
1725
- let key = generate_unbond_key(signer::address_of(account), release_time);
1726
- table::add(
1727
- &mut module_store.unbond_wait_list,
1728
- key,
1729
- withdraw_entity
1730
- );
1731
-
1732
- // emit event
1733
- event::emit<UnbondEvent>(
1734
- UnbondEvent {
1735
- account: signer::address_of(account),
1736
- share_amount,
1737
- withdraw_amount,
1738
- release_time
1739
- }
1740
- );
1741
- }
1742
-
1743
- public fun swap_internal(
1744
- offer_asset: FungibleAsset, return_metadata: Object<Metadata>
1745
- ): FungibleAsset acquires ModuleStore, VirtualPool {
1746
- let is_init_offered = is_init(&offer_asset);
1747
- let offer_metadata = fungible_asset::metadata_from_asset(&offer_asset);
1748
- let offer_amount = fungible_asset::amount(&offer_asset);
1749
- let ibc_op_init_metadata = offer_metadata;
1750
- let (module_store, pool, module_signer, pool_signer) =
1751
- if (is_init_offered) {
1752
- ibc_op_init_metadata = return_metadata;
1753
- borrow_all_mut(return_metadata)
1754
- } else {
1755
- borrow_all_mut(offer_metadata)
1756
- };
1757
- assert!(pool.active, error::invalid_state(EINACTIVE));
1758
-
1759
- // init offered, do user swap first
1760
- let (
1761
- peg_keeper_offer_amount,
1762
- peg_keeper_return_amount,
1763
- return_asset,
1764
- init_swap_fee_amount,
1765
- init_arb_fee_amount,
1766
- ibc_op_init_swap_fee_amount,
1767
- ibc_op_init_arb_fee_amount
1768
- ) =
1769
- if (is_init_offered) {
1770
- // user swap
1771
- let (
1772
- return_asset, swap_fee_amount, arb_fee_amount, depositor_return_amount
1773
- ) =
1774
- user_swap(
1775
- offer_asset,
1776
- return_metadata,
1777
- module_store,
1778
- pool,
1779
- module_signer,
1780
- pool_signer,
1781
- is_init_offered
1782
- );
1783
-
1784
- // peg keeper swap
1785
- let (peg_keeper_offer_amount, peg_keeper_return_amount) =
1786
- peg_keeper_swap(pool);
1787
-
1788
- // to prevent div by zero
1789
- let init_arb_fee_amount =
1790
- if (arb_fee_amount == 0) { 0 }
1791
- else {
1792
- mul_div(
1793
- depositor_return_amount,
1794
- arb_fee_amount,
1795
- arb_fee_amount + swap_fee_amount
1796
- )
1797
- };
1798
-
1799
- let init_swap_fee_amount = depositor_return_amount
1800
- - init_arb_fee_amount;
1801
-
1802
- (
1803
- peg_keeper_offer_amount,
1804
- peg_keeper_return_amount,
1805
- return_asset,
1806
- init_swap_fee_amount,
1807
- init_arb_fee_amount,
1808
- swap_fee_amount,
1809
- arb_fee_amount
1810
- )
1811
- // if ibc op init offered, do peg keeper swap first
1812
- } else {
1813
- // peg keeper swap
1814
- let (peg_keeper_offer_amount, peg_keeper_return_amount) =
1815
- peg_keeper_swap(pool);
1816
-
1817
- // user swap
1818
- let (return_asset, swap_fee_amount, arb_fee_amount, _) =
1819
- user_swap(
1820
- offer_asset,
1821
- return_metadata,
1822
- module_store,
1823
- pool,
1824
- module_signer,
1825
- pool_signer,
1826
- is_init_offered
1827
- );
1828
-
1829
- (
1830
- peg_keeper_offer_amount,
1831
- peg_keeper_return_amount,
1832
- return_asset,
1833
- swap_fee_amount,
1834
- arb_fee_amount,
1835
- 0,
1836
- 0
1837
- )
1838
- };
1839
-
1840
- // check arb
1841
- check_arb(module_store, pool, ibc_op_init_metadata);
1842
-
1843
- event::emit<SwapEvent>(
1844
- SwapEvent {
1845
- offer_coin: offer_metadata,
1846
- return_coin: return_metadata,
1847
- peg_keeper_offer_amount, // always init
1848
- peg_keeper_return_amount, // always ibc op init
1849
- offer_amount,
1850
- return_amount: fungible_asset::amount(&return_asset),
1851
- init_swap_fee_amount,
1852
- init_arb_fee_amount,
1853
- ibc_op_init_swap_fee_amount,
1854
- ibc_op_init_arb_fee_amount
1855
- }
1856
- );
1857
-
1858
- return_asset
1859
- }
1860
-
1861
- //
1862
- // ibc async callback
1863
- //
1864
-
1865
- public entry fun ibc_ack(
1866
- pool_signer: &signer, callback_id: u64, success: bool
1867
- ) acquires ModuleStore, VirtualPool {
1868
- let module_store = borrow_global_mut<ModuleStore>(@initia_std);
1869
- let pool_obj =
1870
- table::borrow(
1871
- &mut module_store.global_arb_batch_map,
1872
- table_key::encode_u64(callback_id)
1873
- );
1874
- let pool = borrow_global_mut<VirtualPool>(object::object_address(&*pool_obj));
1875
- assert!(
1876
- signer::address_of(pool_signer)
1877
- == object::address_from_extend_ref(&pool.extend_ref),
1878
- error::permission_denied(EUNAUTHORIZED)
1879
- );
1880
-
1881
- // do nothing
1882
- if (success) { return };
1883
-
1884
- revert_arb_state(callback_id);
1885
- }
1886
-
1887
- public entry fun ibc_timeout(
1888
- pool_signer: &signer, callback_id: u64
1889
- ) acquires ModuleStore, VirtualPool {
1890
- let module_store = borrow_global_mut<ModuleStore>(@initia_std);
1891
- let pool_obj =
1892
- table::borrow(
1893
- &mut module_store.global_arb_batch_map,
1894
- table_key::encode_u64(callback_id)
1895
- );
1896
- let pool = borrow_global_mut<VirtualPool>(object::object_address(&*pool_obj));
1897
- assert!(
1898
- signer::address_of(pool_signer)
1899
- == object::address_from_extend_ref(&pool.extend_ref),
1900
- error::permission_denied(EUNAUTHORIZED)
1901
- );
1902
-
1903
- revert_arb_state(callback_id);
1904
- }
1905
-
1906
- fun revert_arb_state(callback_id: u64) acquires ModuleStore, VirtualPool {
1907
- let module_store = borrow_global_mut<ModuleStore>(@initia_std);
1908
- let pool_obj =
1909
- table::remove(
1910
- &mut module_store.global_arb_batch_map,
1911
- table_key::encode_u64(callback_id)
1912
- );
1913
- let pool = borrow_global_mut<VirtualPool>(object::object_address(&pool_obj));
1914
- let ArbInfo { executed_time: _, init_used, ibc_op_init_sent, triggering_fee } =
1915
- table::remove(
1916
- &mut pool.arb_batch_map,
1917
- table_key::encode_u64(callback_id)
1918
- );
1919
- pool.virtual_init_balance = pool.virtual_init_balance + init_used;
1920
- pool.virtual_ibc_op_init_balance = pool.virtual_ibc_op_init_balance
1921
- + ibc_op_init_sent;
1922
-
1923
- event::emit<RevertArbEvent>(
1924
- RevertArbEvent {
1925
- arb_index: callback_id,
1926
- pool: pool_obj,
1927
- init_used,
1928
- ibc_op_init_sent, // always ibc op init
1929
- triggering_fee
1930
- }
1931
- );
1932
-
1933
- }
1934
-
1935
- //
1936
- // Helper function
1937
- //
1938
-
1939
- inline fun borrow_all_mut(
1940
- metadata: Object<Metadata>
1941
- ): (&mut ModuleStore, &mut VirtualPool, signer, signer) acquires ModuleStore, VirtualPool {
1942
- let module_store = borrow_global_mut<ModuleStore>(@initia_std);
1943
- let module_signer =
1944
- object::generate_signer_for_extending(&module_store.extend_ref);
1945
- let pool_addr =
1946
- object::object_address(
1947
- &*option::borrow(
1948
- &table::borrow(&module_store.pools, metadata).virtual_pool
1949
- )
1950
- );
1951
- let pool = borrow_global_mut<VirtualPool>(pool_addr);
1952
- let pool_signer = object::generate_signer_for_extending(&pool.extend_ref);
1953
- (module_store, pool, module_signer, pool_signer)
1954
- }
1955
-
1956
- inline fun borrow_all(
1957
- metadata: Object<Metadata>
1958
- ): (&ModuleStore, &VirtualPool) acquires ModuleStore, VirtualPool {
1959
- let module_store = borrow_global<ModuleStore>(@initia_std);
1960
- let pool_addr =
1961
- object::object_address(
1962
- &*option::borrow(
1963
- &table::borrow(&module_store.pools, metadata).virtual_pool
1964
- )
1965
- );
1966
- let pool = borrow_global<VirtualPool>(pool_addr);
1967
- (module_store, pool)
1968
- }
1969
-
1970
- inline fun virtual_pool_exists(metadata: Object<Metadata>): bool acquires ModuleStore {
1971
- let module_store = borrow_global<ModuleStore>(@initia_std);
1972
- if (!table::contains(&module_store.pools, metadata)) { false }
1973
- else {
1974
- option::is_some(&table::borrow(&module_store.pools, metadata).virtual_pool)
1975
- }
1976
- }
1977
-
1978
- inline fun calc_peg_keeper_swap(pool: &VirtualPool): (u64, u64) acquires ModuleStore, VirtualPool {
1979
- let (_, timestamp) = block::get_block_info();
1980
-
1981
- let imbalance =
1982
- bigdecimal::from_ratio_u64(
1983
- pool.peg_keeper_owned_ibc_op_init_balance
1984
- + pool.ibc_op_init_pool_amount - pool.pool_size, // same with real ibc op init balance
1985
- pool.pool_size
1986
- );
1987
- // Peg keeper swap
1988
- let r_fr = get_fully_recovered_ratio(
1989
- imbalance, pool.max_ratio, pool.recover_param
1990
- );
1991
- let current_ratio =
1992
- bigdecimal::from_ratio_u64(
1993
- pool.ibc_op_init_pool_amount,
1994
- pool.init_pool_amount + pool.ibc_op_init_pool_amount
1995
- );
1996
- let time_diff = timestamp - pool.last_recovered_timestamp;
1997
- if (bigdecimal::gt(current_ratio, r_fr) && time_diff != 0) {
1998
- let (x_fr, _) =
1999
- get_fully_recovered_pool_amounts(pool.pool_size, r_fr, pool.ann);
2000
- let max_recover_amount =
2001
- bigdecimal::mul_by_u64_truncate(pool.recover_velocity, time_diff);
2002
- let swap_amount_to_reach_fr =
2003
- if (x_fr > pool.init_pool_amount) {
2004
- x_fr - pool.init_pool_amount
2005
- } else { 0 };
2006
- let swap_amount =
2007
- if (swap_amount_to_reach_fr < max_recover_amount) {
2008
- swap_amount_to_reach_fr
2009
- } else {
2010
- max_recover_amount
2011
- };
2012
-
2013
- let return_amount =
2014
- get_return_amount(
2015
- swap_amount,
2016
- pool.init_pool_amount,
2017
- pool.ibc_op_init_pool_amount,
2018
- pool.pool_size,
2019
- pool.ann
2020
- );
2021
-
2022
- (swap_amount, return_amount)
2023
- } else { (0, 0) }
2024
- }
2025
-
2026
- fun user_swap(
2027
- offer_asset: FungibleAsset,
2028
- return_metadata: Object<Metadata>,
2029
- module_store: &mut ModuleStore,
2030
- pool: &mut VirtualPool,
2031
- module_signer: signer,
2032
- pool_signer: signer,
2033
- is_init_offered: bool
2034
- ): (FungibleAsset, u64, u64, u64) {
2035
- let module_addr = signer::address_of(&module_signer);
2036
- let pool_addr = signer::address_of(&pool_signer);
2037
-
2038
- let offer_amount = fungible_asset::amount(&offer_asset);
2039
- let arb_fee_amount = 0;
2040
- let (return_asset, swap_fee_amount, depositor_return_amount) =
2041
- if (is_init_offered) {
2042
- primary_fungible_store::deposit(module_addr, offer_asset);
2043
-
2044
- // do swap
2045
- let return_amount =
2046
- get_return_amount(
2047
- offer_amount,
2048
- pool.init_pool_amount,
2049
- pool.ibc_op_init_pool_amount,
2050
- pool.pool_size,
2051
- pool.ann
2052
- );
2053
- pool.init_pool_amount = pool.init_pool_amount + offer_amount;
2054
- pool.ibc_op_init_pool_amount = pool.ibc_op_init_pool_amount
2055
- - return_amount;
2056
-
2057
- assert!(
2058
- pool.ibc_op_init_pool_amount >= pool.pool_size
2059
- && pool.init_pool_amount <= pool.pool_size,
2060
- error::invalid_state(EIBC_OP_INIT_PRICE_TOO_LOW)
2061
- );
2062
-
2063
- // take swap fee
2064
- let swap_fee_amount =
2065
- bigdecimal::mul_by_u64_ceil(
2066
- module_store.swap_fee_rate, return_amount
2067
- );
2068
- return_amount = return_amount - swap_fee_amount;
2069
-
2070
- // take arb fee
2071
- let arb_profit =
2072
- if (return_amount > offer_amount) {
2073
- return_amount - offer_amount
2074
- } else { 0 };
2075
- arb_fee_amount = bigdecimal::mul_by_u64_ceil(
2076
- module_store.arb_fee_rate, arb_profit
2077
- );
2078
- return_amount = return_amount - arb_fee_amount;
2079
- let total_fee_amount = swap_fee_amount + arb_fee_amount;
2080
-
2081
- // swap ibc op init fee to init for depositor
2082
- let depositor_return_amount =
2083
- get_return_amount(
2084
- total_fee_amount,
2085
- pool.ibc_op_init_pool_amount,
2086
- pool.init_pool_amount,
2087
- pool.pool_size,
2088
- pool.ann
2089
- );
2090
- pool.init_pool_amount = pool.init_pool_amount - depositor_return_amount;
2091
- pool.ibc_op_init_pool_amount = pool.ibc_op_init_pool_amount
2092
- + total_fee_amount;
2093
-
2094
- // increase depositor amount
2095
- module_store.depositor_owned_init = module_store.depositor_owned_init
2096
- + depositor_return_amount;
2097
-
2098
- (
2099
- primary_fungible_store::withdraw(
2100
- &pool_signer, return_metadata, return_amount
2101
- ),
2102
- swap_fee_amount,
2103
- depositor_return_amount
2104
- )
2105
- } else {
2106
- primary_fungible_store::deposit(pool_addr, offer_asset);
2107
-
2108
- // do swap
2109
- let return_amount =
2110
- get_return_amount(
2111
- offer_amount,
2112
- pool.ibc_op_init_pool_amount,
2113
- pool.init_pool_amount,
2114
- pool.pool_size,
2115
- pool.ann
2116
- );
2117
- pool.init_pool_amount = pool.init_pool_amount - return_amount;
2118
- pool.ibc_op_init_pool_amount = pool.ibc_op_init_pool_amount
2119
- + offer_amount;
2120
-
2121
- // take swap fee
2122
- let swap_fee_amount =
2123
- bigdecimal::mul_by_u64_ceil(
2124
- module_store.swap_fee_rate, return_amount
2125
- );
2126
- let return_amount = return_amount - swap_fee_amount;
2127
-
2128
- // increase depositor amount
2129
- module_store.depositor_owned_init = module_store.depositor_owned_init
2130
- + swap_fee_amount;
2131
-
2132
- (
2133
- primary_fungible_store::withdraw(
2134
- &module_signer,
2135
- return_metadata,
2136
- return_amount
2137
- ),
2138
- swap_fee_amount,
2139
- swap_fee_amount
2140
- )
2141
- };
2142
-
2143
- (return_asset, swap_fee_amount, arb_fee_amount, depositor_return_amount)
2144
- }
2145
-
2146
- fun peg_keeper_swap(pool: &mut VirtualPool): (u64, u64) {
2147
- let (_, timestamp) = block::get_block_info();
2148
-
2149
- let (peg_keeper_offer_amount, peg_keeper_return_amount) =
2150
- calc_peg_keeper_swap(pool);
2151
- pool.init_pool_amount = pool.init_pool_amount + peg_keeper_offer_amount;
2152
- pool.ibc_op_init_pool_amount = pool.ibc_op_init_pool_amount
2153
- - peg_keeper_return_amount;
2154
- pool.virtual_init_balance = pool.virtual_init_balance + peg_keeper_offer_amount;
2155
- pool.virtual_ibc_op_init_balance = pool.virtual_ibc_op_init_balance
2156
- + peg_keeper_return_amount;
2157
- pool.peg_keeper_owned_ibc_op_init_balance = pool.peg_keeper_owned_ibc_op_init_balance
2158
- + peg_keeper_return_amount;
2159
- pool.last_recovered_timestamp = timestamp;
2160
-
2161
- (peg_keeper_offer_amount, peg_keeper_return_amount)
2162
- }
2163
-
2164
- fun check_arb(
2165
- module_store: &mut ModuleStore,
2166
- pool: &mut VirtualPool,
2167
- ibc_op_init_metadata: Object<Metadata>
2168
- ) {
2169
- // check max arb batch
2170
- if (table::length(&pool.arb_batch_map) > module_store.max_arb_batch) { return };
2171
-
2172
- let expected_arb_profit =
2173
- pool.virtual_ibc_op_init_balance - pool.virtual_init_balance;
2174
-
2175
- // check min_arb_profit
2176
- if (expected_arb_profit < module_store.min_arb_profit) { return };
2177
-
2178
- // get latest arb timestamp
2179
- let iter = table::iter(
2180
- &pool.arb_batch_map,
2181
- option::none(),
2182
- option::none(),
2183
- 2
2184
- );
2185
-
2186
- let last_arb_timestamp =
2187
- if (table::prepare(iter)) {
2188
- let (_, value) = table::next<vector<u8>, ArbInfo>(iter);
2189
- value.executed_time
2190
- } else { 0 };
2191
-
2192
- // check min arb interval
2193
- let (_, timestamp) = block::get_block_info();
2194
- if (timestamp < module_store.min_arb_interval + last_arb_timestamp) { return };
2195
-
2196
- // get new arb batch index
2197
- let arb_index = module_store.arb_batch_index;
2198
- module_store.arb_batch_index = module_store.arb_batch_index + 1;
2199
-
2200
- // set arb info
2201
- let arb_info = ArbInfo {
2202
- executed_time: timestamp,
2203
- init_used: pool.virtual_init_balance,
2204
- ibc_op_init_sent: pool.virtual_ibc_op_init_balance,
2205
- triggering_fee: module_store.trigger_fee
2206
- };
2207
-
2208
- // reset peg keeper balance
2209
- pool.virtual_init_balance = 0;
2210
- pool.virtual_ibc_op_init_balance = 0;
2211
-
2212
- // send ibc message with hook
2213
- send_ibc_message(
2214
- module_store,
2215
- pool,
2216
- arb_index,
2217
- ibc_op_init_metadata,
2218
- arb_info.ibc_op_init_sent
2219
- );
2220
-
2221
- // emit event
2222
- let pools = table::borrow(&mut module_store.pools, ibc_op_init_metadata);
2223
- let pool_obj = *option::borrow(&pools.virtual_pool);
2224
- event::emit(
2225
- InitiateArbEvent {
2226
- arb_index,
2227
- pool: pool_obj,
2228
- executed_time: arb_info.executed_time,
2229
- init_used: arb_info.init_used,
2230
- ibc_op_init_sent: arb_info.ibc_op_init_sent,
2231
- triggering_fee: arb_info.triggering_fee
2232
- }
2233
- );
2234
-
2235
- // store arb info
2236
- table::add(
2237
- &mut module_store.global_arb_batch_map,
2238
- table_key::encode_u64(arb_index),
2239
- pool_obj
2240
- );
2241
- table::add(
2242
- &mut pool.arb_batch_map,
2243
- table_key::encode_u64(arb_index),
2244
- arb_info
2245
- );
2246
- }
2247
-
2248
- fun borrow_pools_with_default(
2249
- module_store: &mut ModuleStore,
2250
- ibc_op_init_metadata: Object<Metadata>,
2251
- op_bridge_id: u64,
2252
- ibc_channel: String
2253
- ): &mut Pools {
2254
- if (table::contains(&module_store.pools, ibc_op_init_metadata)) {
2255
- table::borrow_mut(&mut module_store.pools, ibc_op_init_metadata)
2256
- } else {
2257
- table::add(
2258
- &mut module_store.pools,
2259
- ibc_op_init_metadata,
2260
- Pools {
2261
- op_bridge_id,
2262
- ibc_channel,
2263
- virtual_pool: option::none(),
2264
- stableswap_pool: option::none()
2265
- }
2266
- );
2267
-
2268
- table::borrow_mut(&mut module_store.pools, ibc_op_init_metadata)
2269
- }
2270
- }
2271
-
2272
- fun send_ibc_message(
2273
- module_store: &ModuleStore,
2274
- pool: &mut VirtualPool,
2275
- batch_index: u64,
2276
- ibc_op_init_metadata: Object<Metadata>,
2277
- amount: u64
2278
- ) {
2279
- // create memo (ibc hook)
2280
- let receiver = to_sdk(object::address_from_extend_ref(&pool.extend_ref));
2281
- let op_denom = get_op_denom(pool.op_bridge_id, string::utf8(b"uinit"));
2282
-
2283
- // set async callback
2284
- let (ibc_receiver, memo) =
2285
- generate_ibc_message(
2286
- pool.vm_type,
2287
- pool.hook_contract,
2288
- batch_index,
2289
- receiver,
2290
- op_denom,
2291
- amount
2292
- );
2293
-
2294
- // execute ibc transfer
2295
- let pool_signer = object::generate_signer_for_extending(&pool.extend_ref);
2296
- let (_, timestamp) = block::get_block_info();
2297
-
2298
- cosmos::transfer(
2299
- &pool_signer,
2300
- ibc_receiver,
2301
- ibc_op_init_metadata,
2302
- amount,
2303
- string::utf8(b"transfer"),
2304
- pool.ibc_channel,
2305
- 0,
2306
- 0,
2307
- (timestamp + module_store.ibc_timeout) * 1000000000,
2308
- memo
2309
- )
2310
- }
2311
-
2312
- struct IBCMemo has copy, drop {
2313
- _move_: MemoMove,
2314
- wasm: Option<MemoWasm>,
2315
- evm: Option<MemoEvm>
2316
- }
2317
-
2318
- struct MemoMove has copy, drop {
2319
- message: Option<MemoMoveMessage>,
2320
- async_callback: MemoAsyncCallback
2321
- }
2322
-
2323
- struct MemoAsyncCallback has copy, drop {
2324
- id: u64,
2325
- module_address: address,
2326
- module_name: String
2327
- }
2328
-
2329
- struct MemoMoveMessage has copy, drop {
2330
- module_address: String,
2331
- module_name: String,
2332
- function_name: String,
2333
- type_args: vector<String>,
2334
- args: vector<String>
2335
- }
2336
-
2337
- struct MemoWasm has copy, drop {
2338
- message: MemoWasmMessage
2339
- }
2340
-
2341
- struct MemoWasmMessage has copy, drop {
2342
- contracts: String,
2343
- funds: vector<MemoWasmFunds>,
2344
- msg: MemoWasmMinitswapHook
2345
- }
2346
-
2347
- struct MemoWasmFunds has copy, drop {
2348
- denom: String,
2349
- amount: String
2350
- }
2351
-
2352
- struct MemoWasmMinitswapHook has copy, drop {
2353
- minitswap_hook: MemoWasmMinitswapHookMsg
2354
- }
2355
-
2356
- struct MemoWasmMinitswapHookMsg has copy, drop {
2357
- receiver: String
2358
- }
2359
-
2360
- struct MemoEvm has copy, drop {
2361
- message: MemoEvmMessage
2362
- }
2363
-
2364
- struct MemoEvmMessage has copy, drop {
2365
- contract_addr: String,
2366
- input: String,
2367
- value: String,
2368
- access_list: vector<MemoEvmAccessList>
2369
- }
2370
-
2371
- struct MemoEvmAccessList has copy, drop {
2372
- address: String,
2373
- storage_keys: vector<String>
2374
- }
2375
-
2376
- fun generate_ibc_message(
2377
- vm_type: u8,
2378
- hook_contract: String,
2379
- batch_index: u64,
2380
- receiver: String,
2381
- op_denom: String,
2382
- amount: u64
2383
- ): (String, String) {
2384
- let memo = IBCMemo {
2385
- _move_: MemoMove {
2386
- message: option::none(),
2387
- async_callback: MemoAsyncCallback {
2388
- id: batch_index,
2389
- module_address: @initia_std,
2390
- module_name: string::utf8(b"minitswap")
2391
- }
2392
- },
2393
- wasm: option::none(),
2394
- evm: option::none()
2395
- };
2396
-
2397
- // set hook message
2398
- let ibc_receiver =
2399
- if (vm_type == MOVE) {
2400
- memo._move_.message = option::some(
2401
- MemoMoveMessage {
2402
- module_address: hook_contract,
2403
- module_name: string::utf8(b"minitswap_hook"),
2404
- function_name: string::utf8(b"minitswap_hook"),
2405
- type_args: vector[],
2406
- args: vector[
2407
- base64::to_string(bcs::to_bytes(&op_denom)),
2408
- base64::to_string(bcs::to_bytes(&amount)),
2409
- base64::to_string(bcs::to_bytes(&receiver))
2410
- ]
2411
- }
2412
- );
2413
-
2414
- let ibc_receiver = hook_contract;
2415
- string::append(
2416
- &mut ibc_receiver,
2417
- string::utf8(b"::minitswap_hook::minitswap_hook")
2418
- );
2419
- ibc_receiver
2420
- } else if (vm_type == COSMWASM) {
2421
- memo.wasm = option::some(
2422
- MemoWasm {
2423
- message: MemoWasmMessage {
2424
- contracts: hook_contract,
2425
- funds: vector[MemoWasmFunds {
2426
- denom: op_denom,
2427
- amount: to_string(&amount)
2428
- }],
2429
- msg: MemoWasmMinitswapHook {
2430
- minitswap_hook: MemoWasmMinitswapHookMsg { receiver }
2431
- }
2432
- }
2433
- }
2434
- );
2435
-
2436
- hook_contract
2437
- } else if (vm_type == EVM) {
2438
- memo.evm = option::some(
2439
- MemoEvm {
2440
- message: MemoEvmMessage {
2441
- contract_addr: hook_contract,
2442
- input: create_evm_input(&op_denom, amount, &receiver),
2443
- value: string::utf8(b"0"),
2444
- access_list: vector[]
2445
- }
2446
- }
2447
- );
2448
-
2449
- hook_contract
2450
- } else {
2451
- abort(error::invalid_argument(EVM_TYPE))
2452
- };
2453
-
2454
- (ibc_receiver, json::marshal_to_string(&memo))
2455
- }
2456
-
2457
- // abi encode of minitswapHook(string,uint256,string)
2458
- fun create_evm_input(denom: &String, amount: u64, receiver: &String): String {
2459
- let denom_bytes = pad_zero(*string::bytes(denom));
2460
- let denom_bytes_len = vector::length(&denom_bytes);
2461
- let receiver_bytes = pad_zero(*string::bytes(receiver));
2462
-
2463
- let hex_input = vector[0xbe, 0xed, 0x09, 0x35]; // selector: keccak256(b"minitswapHook(string,uint256,string")).slice(0, 4)
2464
- vector::append(&mut hex_input, table_key::encode_u256(0x60)); // start position of denom: padded(0x60)
2465
- vector::append(&mut hex_input, table_key::encode_u256((amount as u256)));
2466
- vector::append(
2467
- &mut hex_input, table_key::encode_u256((0x60 + 32 + denom_bytes_len as u256))
2468
- ); // start position of receiver
2469
- vector::append(
2470
- &mut hex_input,
2471
- table_key::encode_u256((string::length(denom) as u256))
2472
- ); // denom length
2473
- vector::append(&mut hex_input, denom_bytes); // denom bytes
2474
- vector::append(
2475
- &mut hex_input,
2476
- table_key::encode_u256((string::length(receiver) as u256))
2477
- ); // receiver length
2478
- vector::append(&mut hex_input, receiver_bytes); // receiver bytes
2479
-
2480
- return to_string(&hex_input)
2481
- }
2482
-
2483
- fun pad_zero(data: vector<u8>): vector<u8> {
2484
- let padding = vector[
2485
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2486
- 0, 0, 0, 0, 0, 0
2487
- ];
2488
- let pad_len = 32 - vector::length(&data) % 32;
2489
- if (pad_len == 32) {
2490
- return data
2491
- };
2492
-
2493
- vector::trim_reverse(&mut padding, pad_len);
2494
- vector::append(&mut data, padding);
2495
- return data
2496
- }
2497
-
2498
- struct FinalizeTokenWithdrawalRequest has copy, drop {
2499
- _type_: String,
2500
- bridge_id: u64,
2501
- output_index: u64,
2502
- withdrawal_proofs: vector<String>,
2503
- sender: String,
2504
- receiver: String,
2505
- sequence: u64,
2506
- amount: CosmosCoin,
2507
- version: String,
2508
- state_root: String,
2509
- storage_root: String,
2510
- latest_block_hash: String
2511
- }
2512
-
2513
- struct CosmosCoin has copy, drop {
2514
- denom: String,
2515
- amount: u64
2516
- }
2517
-
2518
- fun generate_finalize_token_withdrawal_msg(
2519
- bridge_id: u64,
2520
- output_index: u64,
2521
- withdrawal_proofs: vector<String>,
2522
- sender: address,
2523
- receiver: address,
2524
- sequence: u64,
2525
- denom: String,
2526
- amount: u64,
2527
- version: String,
2528
- state_root: String,
2529
- storage_root: String,
2530
- latest_block_hash: String
2531
- ): vector<u8> {
2532
- json::marshal(
2533
- &FinalizeTokenWithdrawalRequest {
2534
- _type_: string::utf8(b"/opinit.ophost.v1.MsgFinalizeTokenWithdrawal"),
2535
- bridge_id,
2536
- output_index,
2537
- withdrawal_proofs,
2538
- sender: to_sdk(sender),
2539
- receiver: to_sdk(receiver),
2540
- sequence,
2541
- amount: CosmosCoin { denom, amount },
2542
- version,
2543
- state_root,
2544
- storage_root,
2545
- latest_block_hash
2546
- }
2547
- )
2548
- }
2549
-
2550
- fun init_metadata(): Object<Metadata> {
2551
- let addr = object::create_object_address(&@initia_std, b"uinit");
2552
- object::address_to_object<Metadata>(addr)
2553
- }
2554
-
2555
- fun share_token_metadata(): Object<Metadata> {
2556
- let addr = object::create_object_address(&@initia_std, SYMBOL);
2557
- object::address_to_object<Metadata>(addr)
2558
- }
2559
-
2560
- fun total_share(): u64 {
2561
- let supply = fungible_asset::supply(share_token_metadata());
2562
- (*option::borrow(&supply) as u64)
2563
- }
2564
-
2565
- fun assert_is_chain(account: &signer, allow_admin: bool) acquires ModuleStore {
2566
- let addr = signer::address_of(account);
2567
- let module_store = borrow_global<ModuleStore>(@initia_std);
2568
- assert!(
2569
- addr == @initia_std || (allow_admin && module_store.admin == addr),
2570
- error::permission_denied(EUNAUTHORIZED)
2571
- );
2572
- }
2573
-
2574
- fun generate_unbond_key(account: address, release_time: u64): vector<u8> {
2575
- let key = bcs::to_bytes(&account);
2576
- vector::append(&mut key, table_key::encode_u64(release_time));
2577
- key
2578
- }
2579
-
2580
- fun get_ibc_denom(channel_id: String, denom: String): String {
2581
- let trace = string::utf8(b"transfer/");
2582
- string::append(&mut trace, channel_id);
2583
- string::append(&mut trace, string::utf8(b"/"));
2584
- string::append(&mut trace, denom);
2585
- let hash = sha2_256(*string::bytes(&trace));
2586
-
2587
- let denom = string::utf8(b"ibc/");
2588
- string::append(
2589
- &mut denom,
2590
- hex::encode_to_string_with_option(&hash, true)
2591
- );
2592
- denom
2593
- }
2594
-
2595
- fun get_op_denom(op_bridge_id: u64, denom: String): String {
2596
- let bytes = table_key::encode_u64(op_bridge_id);
2597
- vector::append(&mut bytes, *string::bytes(&denom));
2598
- let hash = sha3_256(bytes);
2599
-
2600
- let denom = string::utf8(b"l2/");
2601
- string::append(&mut denom, hex::encode_to_string(&hash));
2602
- denom
2603
- }
2604
-
2605
- fun check_bridge_info(
2606
- op_bridge_id: u64, ibc_channel: String, ibc_op_init_metadata: Object<Metadata>
2607
- ): (String, String) {
2608
- let op_denom = get_op_denom(op_bridge_id, string::utf8(b"uinit"));
2609
- let ibc_denom = get_ibc_denom(ibc_channel, op_denom);
2610
- let ibc_token_address =
2611
- object::create_object_address(&@initia_std, *string::bytes(&ibc_denom));
2612
- assert!(
2613
- object::object_address(&ibc_op_init_metadata) == ibc_token_address,
2614
- error::invalid_argument(EINVAILD_METADATA)
2615
- );
2616
-
2617
- (op_denom, ibc_denom)
2618
- }
2619
-
2620
- fun mul_div(a: u64, b: u64, c: u64): u64 {
2621
- let a = (a as u128);
2622
- let b = (b as u128);
2623
- let c = (c as u128);
2624
- (a * b / c as u64)
2625
- }
2626
-
2627
- fun is_init(init: &FungibleAsset): bool {
2628
- let fa_metadata = fungible_asset::metadata_from_asset(init);
2629
- is_init_metadata(fa_metadata)
2630
- }
2631
-
2632
- fun is_init_metadata(metadata: Object<Metadata>): bool {
2633
- metadata == init_metadata()
2634
- }
2635
-
2636
- fun get_d0(pool_size: u64, ann: u64): u64 {
2637
- get_d(pool_size, pool_size, ann)
2638
- }
2639
-
2640
- fun get_d(init_amount: u64, ibc_op_init_amount: u64, ann: u64): u64 {
2641
- let init_amount = (init_amount as u256);
2642
- let ibc_op_init_amount = (ibc_op_init_amount as u256);
2643
- let ann = (ann as u256);
2644
-
2645
- let sum = init_amount + ibc_op_init_amount;
2646
- if (sum == 0) return 0;
2647
- let d = sum;
2648
-
2649
- let i = 0;
2650
-
2651
- // converge
2652
- // d = (ann * sum - d_prod) / (ann - 1)
2653
- while (i < 255) {
2654
- let d_prev = d;
2655
- // D ** (n + 1) / (n ** n * prod) in our case, always n = 2
2656
- let d_prod = d * d * d / 4 / init_amount / ibc_op_init_amount;
2657
-
2658
- d = (ann * sum / A_PRECISION + d_prod * 2) * d
2659
- / ((ann - A_PRECISION) * d / A_PRECISION + 3 * d_prod);
2660
- if (d > d_prev) {
2661
- if (d - d_prev <= 1) break
2662
- } else {
2663
- if (d_prev - d <= 1) break
2664
- };
2665
- i = i + 1;
2666
- };
2667
-
2668
- return (d as u64)
2669
- }
2670
-
2671
- fun get_return_amount(
2672
- offer_amount: u64,
2673
- offer_pool_amount: u64,
2674
- return_pool_amount: u64,
2675
- pool_size: u64,
2676
- ann: u64
2677
- ): u64 {
2678
- if (offer_amount == 0) {
2679
- return 0
2680
- };
2681
-
2682
- let d = get_d0(pool_size, ann);
2683
- let offer_pool_amount_after = offer_pool_amount + offer_amount;
2684
-
2685
- let y = get_y(d, offer_pool_amount_after, ann);
2686
-
2687
- (return_pool_amount - y as u64)
2688
- }
2689
-
2690
- fun get_offer_amount(
2691
- return_amount: u64,
2692
- offer_pool_amount: u64,
2693
- return_pool_amount: u64,
2694
- pool_size: u64,
2695
- ann: u64
2696
- ): u64 {
2697
- if (return_amount == 0) {
2698
- return 0
2699
- };
2700
-
2701
- let d = get_d0(pool_size, ann);
2702
- let return_pool_amount_after = return_pool_amount - return_amount;
2703
-
2704
- let y = get_y(d, return_pool_amount_after, ann);
2705
-
2706
- (y - offer_pool_amount as u64)
2707
- }
2708
-
2709
- /// get counterparty's amount
2710
- fun get_y(d: u64, x: u64, ann: u64): u64 {
2711
- let d = (d as u256);
2712
- let x = (x as u256);
2713
- let ann = (ann as u256);
2714
-
2715
- // Done by solving quadratic equation iteratively.
2716
- // x_1**2 + x_1 * (sum' - (A*n**n - 1) * D / (A * n**n)) = D ** (n + 1) / (n ** (2 * n) * prod' * A)
2717
- // y**2 + y * (x - (A * 2**2 - 1) * D / (A * 2**2)) = D ** (2 + 1) / (2 ** (2 * 2) * x * A)
2718
- // y**2 + b*y = c
2719
-
2720
- // y = (y**2 + c) / (2*y + b)
2721
-
2722
- let c = d * d * d * A_PRECISION / ann / 4 / x; // d ** (2 + 1) / ann / 2 ** 2 / x
2723
- let b_plus_d = x + d * A_PRECISION / ann; // need to sub d but sub later due to value must be less than 0
2724
-
2725
- let y_prev;
2726
- let y = d;
2727
-
2728
- let i = 0;
2729
- // converge
2730
- while (i < 255) {
2731
- y_prev = y;
2732
- y = (y * y + c) / (2 * y + b_plus_d - d); // sub d here
2733
-
2734
- if (y > y_prev) {
2735
- if (y - y_prev <= 1) break
2736
- } else {
2737
- if (y_prev - y <= 1) break
2738
- };
2739
- i = i + 1;
2740
- };
2741
-
2742
- (y as u64)
2743
- }
2744
-
2745
- // R_fr = 0.5 + (R_max - 0.5) * (f * I) ** 3 / (1 + (f * I) ** 3)
2746
- fun get_fully_recovered_ratio(
2747
- imbalance: BigDecimal, max_ratio: BigDecimal, recover_param: BigDecimal
2748
- ): BigDecimal {
2749
- let fi = bigdecimal::mul(recover_param, imbalance);
2750
- let fi3 = bigdecimal::mul(fi, bigdecimal::mul(fi, fi));
2751
- let half = bigdecimal::from_ratio_u64(1, 2); // .5
2752
- let to_sum =
2753
- bigdecimal::mul(
2754
- bigdecimal::sub(max_ratio, half), // R_max - 0.5
2755
- bigdecimal::div(fi3, bigdecimal::add(bigdecimal::one(), fi3))
2756
- // (f * I) ** 3 / (1 + (f * I) ** 3)
2757
- );
2758
-
2759
- bigdecimal::add(half, to_sum)
2760
- }
2761
-
2762
- fun get_fully_recovered_pool_amounts(
2763
- pool_size: u64, fully_recovered_ratio: BigDecimal, ann: u64
2764
- ): (u64, u64) {
2765
- let one = bigdecimal::one();
2766
- let g =
2767
- bigdecimal::div(
2768
- fully_recovered_ratio, bigdecimal::sub(one, fully_recovered_ratio)
2769
- );
2770
- let z = pool_size;
2771
-
2772
- // Get first point
2773
- let d0 = get_d0(pool_size, ann);
2774
- let x =
2775
- bigdecimal::truncate_u64(
2776
- bigdecimal::div(
2777
- bigdecimal::mul_by_u64(bigdecimal::from_u64(z), 2),
2778
- bigdecimal::add(g, one)
2779
- )
2780
- ); // x = 2z / (g + 1)
2781
- if (x == z) { // fully_recovered_ratio = 0.5
2782
- return (pool_size, pool_size)
2783
- };
2784
- let y = get_y(d0, (x as u64), ann);
2785
-
2786
- let i = 0;
2787
- let x_prev;
2788
- // get the cross point of y = grad * x and [(pool_size, pool_size), (x_prev, y_prev)]
2789
- // the point is (temp_x, y), get x from y
2790
- while (i < 255) {
2791
- x_prev = x;
2792
- // get cross point of y = g * x and y - y' = [(z - y') / (z - x')](x - x')
2793
- // x = z * (x' - y') / (g * (x'- z) - (y' - z))
2794
- // x = z * (y' - x') / (g * (z - x') + (y' - z))
2795
- let temp_x =
2796
- bigdecimal::div(
2797
- bigdecimal::mul_by_u64(bigdecimal::from_u64(z), y - x),
2798
- bigdecimal::add_by_u64(bigdecimal::mul_by_u64(g, z - x), y - z)
2799
- );
2800
-
2801
- // get y from temp x
2802
- y = bigdecimal::truncate_u64(bigdecimal::mul(g, temp_x));
2803
- // get x from y
2804
- x = get_y(d0, y, ann);
2805
-
2806
- // when fully recovered rate is too close to 0.5 y can be same with pool_size
2807
- if (y == z) break;
2808
-
2809
- // when fully recovered rate is too close to 0.5 x can be slightly higher than pool_size
2810
- if (x > z) {
2811
- x = pool_size;
2812
- break
2813
- };
2814
-
2815
- if (x >= x_prev) {
2816
- if (x - x_prev <= 1) break
2817
- } else {
2818
- if (x_prev - x <= 1) break
2819
- };
2820
- i = i + 1;
2821
- };
2822
-
2823
- ((x as u64), (y as u64))
2824
- }
2825
-
2826
- fun assert_min_amount(fa: &FungibleAsset, min_return: Option<u64>) {
2827
- if (option::is_some(&min_return)) {
2828
- let amount = fungible_asset::amount(fa);
2829
- assert!(
2830
- amount >= option::extract(&mut min_return),
2831
- error::invalid_state(EMIN_RETURN)
2832
- )
2833
- }
2834
- }
2835
-
2836
- // swap simulation that not returning error
2837
- public fun safe_swap_simulation(
2838
- offer_metadata: Object<Metadata>,
2839
- return_metadata: Object<Metadata>,
2840
- offer_amount: u64
2841
- ): (u64, u64) acquires ModuleStore, VirtualPool {
2842
- let is_init_offered = is_init_metadata(offer_metadata);
2843
- let ibc_op_init_metadata =
2844
- if (is_init_offered) {
2845
- return_metadata
2846
- } else {
2847
- offer_metadata
2848
- };
2849
-
2850
- let virtual_pool_exists = virtual_pool_exists(ibc_op_init_metadata);
2851
-
2852
- assert!(
2853
- virtual_pool_exists,
2854
- error::invalid_argument(EPOOL_NOT_FOUND)
2855
- );
2856
-
2857
- let (init_pool_amount, ibc_op_init_pool_amount) =
2858
- get_pool_amount(ibc_op_init_metadata, !is_init_offered);
2859
- let (module_store, pool) = borrow_all(ibc_op_init_metadata);
2860
- let (pool_size, ann) = (pool.pool_size, pool.ann);
2861
- let (return_amount, fee_amount) =
2862
- if (is_init_offered) {
2863
- let return_amount =
2864
- get_return_amount(
2865
- offer_amount,
2866
- init_pool_amount,
2867
- ibc_op_init_pool_amount,
2868
- pool_size,
2869
- ann
2870
- );
2871
-
2872
- if (ibc_op_init_pool_amount - return_amount < pool_size) {
2873
- return (0, 0)
2874
- };
2875
-
2876
- // take swap fee
2877
- let swap_fee_amount =
2878
- bigdecimal::mul_by_u64_ceil(
2879
- module_store.swap_fee_rate, return_amount
2880
- );
2881
-
2882
- // take arb fee
2883
- let arb_profit =
2884
- if (return_amount > offer_amount + swap_fee_amount) {
2885
- return_amount - swap_fee_amount - offer_amount
2886
- } else { 0 };
2887
- let arb_fee_amount =
2888
- bigdecimal::mul_by_u64_ceil(module_store.arb_fee_rate, arb_profit);
2889
- let fee_amount = swap_fee_amount + arb_fee_amount;
2890
-
2891
- (return_amount, fee_amount)
2892
- } else {
2893
- let return_amount =
2894
- get_return_amount(
2895
- offer_amount,
2896
- ibc_op_init_pool_amount,
2897
- init_pool_amount,
2898
- pool_size,
2899
- ann
2900
- );
2901
- let fee_amount =
2902
- bigdecimal::mul_by_u64_ceil(
2903
- module_store.swap_fee_rate, return_amount
2904
- );
2905
-
2906
- (return_amount, fee_amount)
2907
- };
2908
-
2909
- return_amount = return_amount - fee_amount;
2910
-
2911
- (return_amount, fee_amount)
2912
- }
2913
-
2914
- public fun safe_swap_simulation_given_out(
2915
- offer_metadata: Object<Metadata>,
2916
- return_metadata: Object<Metadata>,
2917
- return_amount: u64
2918
- ): (u64, u64) acquires ModuleStore, VirtualPool {
2919
- let is_init_offered = is_init_metadata(offer_metadata);
2920
- let ibc_op_init_metadata =
2921
- if (is_init_offered) {
2922
- return_metadata
2923
- } else {
2924
- offer_metadata
2925
- };
2926
-
2927
- let virtual_pool_exists = virtual_pool_exists(ibc_op_init_metadata);
2928
-
2929
- assert!(
2930
- virtual_pool_exists,
2931
- error::invalid_argument(EPOOL_NOT_FOUND)
2932
- );
2933
-
2934
- let (init_pool_amount, ibc_op_init_pool_amount) =
2935
- get_pool_amount(ibc_op_init_metadata, !is_init_offered);
2936
- let (module_store, pool) = borrow_all(ibc_op_init_metadata);
2937
- let (pool_size, ann) = (pool.pool_size, pool.ann);
2938
- let (offer_amount, fee_amount) =
2939
- if (is_init_offered) {
2940
- // first assume there are no arb fee and calculate offer amount
2941
- // and then calculate arb fee and get actual return amount which is same with return_amount_before_swap_fee - swap_fee_amount - arb_fee_amount
2942
- // to make actual return amount to return amount, set return_amount_before_swap_fee = return_amount_before_swap_fee + return_diff
2943
- // where return_diff = target return amount - actual return amount
2944
- // and recalculate offer amount repeatedly until return amount <= actual return amount
2945
- // note that actual return is always small or equal with target return amount
2946
-
2947
- // adjust fee. return amount before swap fee = return amount * 1 / (1 - f)
2948
- let return_amount_before_swap_fee =
2949
- bigdecimal::truncate_u64(
2950
- bigdecimal::div(
2951
- bigdecimal::from_u64(return_amount),
2952
- bigdecimal::sub(
2953
- bigdecimal::one(), module_store.swap_fee_rate
2954
- )
2955
- )
2956
- );
2957
- if (ibc_op_init_pool_amount - return_amount_before_swap_fee < pool_size) {
2958
- return ((U64_MAX as u64), (U64_MAX as u64))
2959
- };
2960
-
2961
- let swap_fee_amount = return_amount_before_swap_fee - return_amount;
2962
-
2963
- let offer_amount =
2964
- get_offer_amount(
2965
- return_amount_before_swap_fee,
2966
- init_pool_amount,
2967
- ibc_op_init_pool_amount,
2968
- pool_size,
2969
- ann
2970
- );
2971
-
2972
- // calculate arb fee
2973
- let arb_profit =
2974
- if (return_amount > offer_amount) {
2975
- return_amount - offer_amount
2976
- } else { 0 };
2977
- let arb_fee_amount =
2978
- bigdecimal::mul_by_u64_ceil(module_store.arb_fee_rate, arb_profit);
2979
-
2980
- // actual return amount is return amount - arb fee
2981
- let actual_return_amount = return_amount - arb_fee_amount;
2982
- let return_diff = arb_fee_amount;
2983
-
2984
- // retry while actual return amount is equal to return amount
2985
- let i = 0;
2986
- while (return_amount > actual_return_amount && i < 255) {
2987
- return_amount_before_swap_fee = return_amount_before_swap_fee
2988
- + return_diff;
2989
-
2990
- if (ibc_op_init_pool_amount - return_amount_before_swap_fee
2991
- < pool_size) {
2992
- return ((U64_MAX as u64), (U64_MAX as u64))
2993
- };
2994
-
2995
- swap_fee_amount = bigdecimal::mul_by_u64_ceil(
2996
- module_store.swap_fee_rate,
2997
- return_amount_before_swap_fee
2998
- );
2999
-
3000
- offer_amount = get_offer_amount(
3001
- return_amount_before_swap_fee,
3002
- init_pool_amount,
3003
- ibc_op_init_pool_amount,
3004
- pool_size,
3005
- ann
3006
- );
3007
-
3008
- // calculate arb fee
3009
- arb_profit = if (return_amount > offer_amount) {
3010
- return_amount_before_swap_fee - swap_fee_amount - offer_amount
3011
- } else { 0 };
3012
- arb_fee_amount = bigdecimal::mul_by_u64_ceil(
3013
- module_store.arb_fee_rate, arb_profit
3014
- );
3015
- actual_return_amount = return_amount_before_swap_fee
3016
- - swap_fee_amount - arb_fee_amount;
3017
- if (actual_return_amount >= return_amount) break;
3018
-
3019
- return_diff = return_amount - actual_return_amount;
3020
- i = i + 1;
3021
- };
3022
-
3023
- (offer_amount, swap_fee_amount + arb_fee_amount)
3024
- } else {
3025
- // adjust fee. amount = amount * 1 / (1 - f)
3026
- let return_amount_ =
3027
- bigdecimal::truncate_u64(
3028
- bigdecimal::div(
3029
- bigdecimal::from_u64(return_amount),
3030
- bigdecimal::sub(
3031
- bigdecimal::one(), module_store.swap_fee_rate
3032
- )
3033
- )
3034
- );
3035
- let fee_amount = return_amount_ - return_amount;
3036
-
3037
- let offer_amount =
3038
- get_offer_amount(
3039
- return_amount_,
3040
- ibc_op_init_pool_amount,
3041
- init_pool_amount,
3042
- pool_size,
3043
- ann
3044
- );
3045
-
3046
- (offer_amount, fee_amount)
3047
- };
3048
-
3049
- (offer_amount, fee_amount)
3050
- }
3051
-
3052
- #[test_only]
3053
- public fun init_module_for_test() {
3054
- init_module(&initia_std::account::create_signer_for_test(@initia_std));
3055
- }
3056
-
3057
- #[test_only]
3058
- fun initialized_coin(
3059
- account: &signer, symbol: String
3060
- ): (coin::BurnCapability, coin::FreezeCapability, coin::MintCapability) {
3061
- let (mint_cap, burn_cap, freeze_cap, _) =
3062
- coin::initialize_and_generate_extend_ref(
3063
- account,
3064
- option::none(),
3065
- string::utf8(b""),
3066
- symbol,
3067
- 6,
3068
- string::utf8(b""),
3069
- string::utf8(b"")
3070
- );
3071
-
3072
- return (burn_cap, freeze_cap, mint_cap)
3073
- }
3074
-
3075
- #[test_only]
3076
- fun finalize_arb_mock(
3077
- account: &signer,
3078
- arb_index: u64,
3079
- _bridge_id: u64,
3080
- _output_index: u64,
3081
- _withdrawal_proofs: vector<String>,
3082
- _sender: address,
3083
- _sequence: u64,
3084
- amount: u64,
3085
- _version: String,
3086
- _state_root: String,
3087
- _storage_root: String,
3088
- _latest_block_hash: String,
3089
- init_mint_cap: &coin::MintCapability
3090
- ) acquires ModuleStore, VirtualPool {
3091
- // check arb info
3092
- let module_store = borrow_global<ModuleStore>(@initia_std);
3093
- let pool_obj =
3094
- table::borrow(
3095
- &module_store.global_arb_batch_map,
3096
- table_key::encode_u64(arb_index)
3097
- );
3098
- let pool = borrow_global<VirtualPool>(object::object_address(&*pool_obj));
3099
- let arb_info =
3100
- table::borrow(
3101
- &pool.arb_batch_map,
3102
- table_key::encode_u64(arb_index)
3103
- );
3104
-
3105
- assert!(
3106
- amount == arb_info.ibc_op_init_sent,
3107
- error::invalid_argument(EAMOUNT_MISMATCH)
3108
- );
3109
-
3110
- // mock finalize withdraw
3111
- coin::mint_to(
3112
- init_mint_cap,
3113
- object::address_from_extend_ref(&pool.extend_ref),
3114
- amount
3115
- );
3116
-
3117
- let module_signer =
3118
- object::generate_signer_for_extending(&module_store.extend_ref);
3119
-
3120
- // execute hook
3121
- finalize_arb_hook(
3122
- &module_signer,
3123
- arb_index,
3124
- signer::address_of(account)
3125
- );
3126
- }
3127
-
3128
- #[test]
3129
- fun test_finalize_token_withdrawal_msg() {
3130
- let msg =
3131
- generate_finalize_token_withdrawal_msg(
3132
- 1,
3133
- 2,
3134
- vector[string::utf8(b"abc"), string::utf8(b"123")],
3135
- @0x1,
3136
- @0x2,
3137
- 3,
3138
- string::utf8(b"uinit"),
3139
- 100,
3140
- string::utf8(b"version"),
3141
- string::utf8(b"state_root"),
3142
- string::utf8(b"storage_root"),
3143
- string::utf8(b"latest_block_hash")
3144
- );
3145
- let json_str =
3146
- b"{\"@type\":\"/opinit.ophost.v1.MsgFinalizeTokenWithdrawal\",\"amount\":{\"amount\":\"100\",\"denom\":\"uinit\"},\"bridge_id\":\"1\",\"latest_block_hash\":\"latest_block_hash\",\"output_index\":\"2\",\"receiver\":\"init1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqzwsp0lj\",\"sender\":\"init1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqpqr5e3d\",\"sequence\":\"3\",\"state_root\":\"state_root\",\"storage_root\":\"storage_root\",\"version\":\"version\",\"withdrawal_proofs\":[\"abc\",\"123\"]}";
3147
- assert!(msg == json_str, 0);
3148
- }
3149
-
3150
- #[test]
3151
- fun test_ibc_denom() {
3152
- let ibc_denom =
3153
- get_ibc_denom(
3154
- string::utf8(b"channel-0"),
3155
- string::utf8(
3156
- b"l2/771d639f30fbe45e3fbca954ffbe2fcc26f915f5513c67a4a2d0bc1d635bdefd"
3157
- )
3158
- );
3159
- assert!(
3160
- string::utf8(
3161
- b"ibc/82EB1C694C571F954E68BFD68CFCFCD6123B0EBB69AAA8BAB7A082939B45E802"
3162
- ) == ibc_denom,
3163
- 0
3164
- );
3165
- }
3166
-
3167
- #[test]
3168
- fun test_op_denom() {
3169
- let op_denom = get_op_denom(1, string::utf8(b"uinit"));
3170
- assert!(
3171
- string::utf8(
3172
- b"l2/771d639f30fbe45e3fbca954ffbe2fcc26f915f5513c67a4a2d0bc1d635bdefd"
3173
- ) == op_denom,
3174
- 0
3175
- );
3176
- }
3177
-
3178
- #[test(chain = @0x1)]
3179
- fun in_house_arb_test(chain: signer) acquires ModuleStore, VirtualPool {
3180
- initia_std::primary_fungible_store::init_module_for_test();
3181
- init_module(&chain);
3182
- block::set_block_info(0, 100);
3183
- let chain_addr = signer::address_of(&chain);
3184
-
3185
- let (_, _, initia_mint_cap) = initialized_coin(&chain, string::utf8(b"uinit"));
3186
- let (_, _, ibc_op_init_mint_cap) =
3187
- initialized_coin(
3188
- &chain,
3189
- string::utf8(
3190
- b"ibc/82EB1C694C571F954E68BFD68CFCFCD6123B0EBB69AAA8BAB7A082939B45E802"
3191
- )
3192
- );
3193
- let init_metadata = coin::metadata(chain_addr, string::utf8(b"uinit"));
3194
- let ibc_op_init_metadata =
3195
- coin::metadata(
3196
- chain_addr,
3197
- string::utf8(
3198
- b"ibc/82EB1C694C571F954E68BFD68CFCFCD6123B0EBB69AAA8BAB7A082939B45E802"
3199
- )
3200
- );
3201
- coin::mint_to(&initia_mint_cap, chain_addr, 1000000000);
3202
- coin::mint_to(&ibc_op_init_mint_cap, chain_addr, 1000000000);
3203
- provide(&chain, 15000000, option::none());
3204
-
3205
- create_pool(
3206
- &chain,
3207
- ibc_op_init_metadata,
3208
- bigdecimal::from_ratio_u64(100000, 1),
3209
- 10000000,
3210
- 3000,
3211
- bigdecimal::from_ratio_u64(7, 10),
3212
- bigdecimal::from_ratio_u64(2, 1),
3213
- MOVE,
3214
- string::utf8(b"0x1"),
3215
- 1,
3216
- string::utf8(b"channel-0")
3217
- );
3218
-
3219
- swap(
3220
- &chain,
3221
- ibc_op_init_metadata,
3222
- init_metadata,
3223
- 10000000,
3224
- option::none()
3225
- );
3226
-
3227
- block::set_block_info(0, 100000);
3228
-
3229
- // trigger check arb
3230
- swap(
3231
- &chain,
3232
- ibc_op_init_metadata,
3233
- init_metadata,
3234
- 10000000,
3235
- option::none()
3236
- );
3237
-
3238
- let arb_info = get_arb_info(0);
3239
-
3240
- // finalize arb
3241
- let str = string::utf8(b"");
3242
- let excutor_balance_before = coin::balance(@0x1, init_metadata);
3243
-
3244
- finalize_arb_mock(
3245
- &chain,
3246
- 0,
3247
- 1,
3248
- 1,
3249
- vector[],
3250
- @0x1,
3251
- 1,
3252
- arb_info.ibc_op_init_sent,
3253
- str,
3254
- str,
3255
- str,
3256
- str,
3257
- &initia_mint_cap
3258
- );
3259
-
3260
- let excutor_balance_after = coin::balance(@0x1, init_metadata);
3261
-
3262
- // check triggering fee
3263
- assert!(
3264
- excutor_balance_after - excutor_balance_before == arb_info.triggering_fee,
3265
- 0
3266
- );
3267
- }
3268
-
3269
- #[test(chain = @0x1)]
3270
- fun end_to_end(chain: signer) acquires ModuleStore, VirtualPool {
3271
- initia_std::primary_fungible_store::init_module_for_test();
3272
- init_module(&chain);
3273
- stableswap::init_module_for_test();
3274
-
3275
- block::set_block_info(0, 100);
3276
-
3277
- let chain_addr = signer::address_of(&chain);
3278
-
3279
- let (_, _, initia_mint_cap) = initialized_coin(&chain, string::utf8(b"uinit"));
3280
- let (_, _, ibc_op_init_1_mint_cap) =
3281
- initialized_coin(
3282
- &chain,
3283
- string::utf8(
3284
- b"ibc/82EB1C694C571F954E68BFD68CFCFCD6123B0EBB69AAA8BAB7A082939B45E802"
3285
- )
3286
- );
3287
- let (_, _, ibc_op_init_2_mint_cap) =
3288
- initialized_coin(
3289
- &chain,
3290
- string::utf8(
3291
- b"ibc/AD8D520BF2D981113B652A3BCD55368EF146FCB9E016F8B1DAECAA5D570BC8A1"
3292
- )
3293
- );
3294
- let init_metadata = coin::metadata(chain_addr, string::utf8(b"uinit"));
3295
- let ibc_op_init_1_metadata =
3296
- coin::metadata(
3297
- chain_addr,
3298
- string::utf8(
3299
- b"ibc/82EB1C694C571F954E68BFD68CFCFCD6123B0EBB69AAA8BAB7A082939B45E802"
3300
- )
3301
- );
3302
- let ibc_op_init_2_metadata =
3303
- coin::metadata(
3304
- chain_addr,
3305
- string::utf8(
3306
- b"ibc/AD8D520BF2D981113B652A3BCD55368EF146FCB9E016F8B1DAECAA5D570BC8A1"
3307
- )
3308
- );
3309
-
3310
- coin::mint_to(&initia_mint_cap, chain_addr, 100000000);
3311
- coin::mint_to(
3312
- &ibc_op_init_1_mint_cap,
3313
- chain_addr,
3314
- 1000000000
3315
- );
3316
- coin::mint_to(
3317
- &ibc_op_init_2_mint_cap,
3318
- chain_addr,
3319
- 1000000000
3320
- );
3321
- provide(&chain, 15000000, option::none());
3322
-
3323
- create_pool(
3324
- &chain,
3325
- ibc_op_init_1_metadata,
3326
- bigdecimal::from_ratio_u64(100000, 1),
3327
- 10000000,
3328
- 3000,
3329
- bigdecimal::from_ratio_u64(7, 10),
3330
- bigdecimal::from_ratio_u64(2, 1),
3331
- MOVE,
3332
- string::utf8(b"0x1"),
3333
- 1,
3334
- string::utf8(b"channel-0")
3335
- );
3336
-
3337
- create_pool(
3338
- &chain,
3339
- ibc_op_init_2_metadata,
3340
- bigdecimal::from_ratio_u64(100000, 1),
3341
- 10000000,
3342
- 3000,
3343
- bigdecimal::from_ratio_u64(7, 10),
3344
- bigdecimal::from_ratio_u64(2, 1),
3345
- MOVE,
3346
- string::utf8(b"0x1"),
3347
- 2,
3348
- string::utf8(b"channel-2")
3349
- );
3350
-
3351
- create_stableswap_pool(
3352
- &chain,
3353
- 1,
3354
- string::utf8(b"channel-0"),
3355
- ibc_op_init_1_metadata,
3356
- 10000000,
3357
- 10000000
3358
- );
3359
-
3360
- // swap ibc op init to init
3361
- let (return_amount, _) =
3362
- swap_simulation(
3363
- ibc_op_init_1_metadata,
3364
- init_metadata,
3365
- 1000000
3366
- );
3367
- assert!(return_amount == 992740, 0);
3368
-
3369
- let balance_before = coin::balance(chain_addr, init_metadata);
3370
- swap(
3371
- &chain,
3372
- ibc_op_init_1_metadata,
3373
- init_metadata,
3374
- 1000000,
3375
- option::none()
3376
- );
3377
- let balance_after = coin::balance(chain_addr, init_metadata);
3378
- assert!(
3379
- balance_after - balance_before == return_amount,
3380
- 0
3381
- );
3382
-
3383
- // swap init to ibc op init
3384
- let (return_amount, _) =
3385
- swap_simulation(init_metadata, ibc_op_init_1_metadata, 500000);
3386
- assert!(return_amount == 504224, 0);
3387
-
3388
- let balance_before = coin::balance(chain_addr, ibc_op_init_1_metadata);
3389
- swap(
3390
- &chain,
3391
- init_metadata,
3392
- ibc_op_init_1_metadata,
3393
- 500000,
3394
- option::none()
3395
- );
3396
- let balance_after = coin::balance(chain_addr, ibc_op_init_1_metadata);
3397
- assert!(
3398
- balance_after - balance_before == return_amount,
3399
- 0
3400
- );
3401
-
3402
- change_pool_size(&chain, ibc_op_init_1_metadata, 9000000);
3403
- }
3404
-
3405
- #[test]
3406
- fun test_generate_ibc_message() {
3407
- let (ibc_receiver, memo) =
3408
- generate_ibc_message(
3409
- MOVE,
3410
- string::utf8(b"0x1"),
3411
- 1,
3412
- string::utf8(b"receiver"),
3413
- string::utf8(b"op_denom"),
3414
- 1000000
3415
- );
3416
-
3417
- assert!(ibc_receiver == string::utf8(b"0x1::minitswap_hook::minitswap_hook"), 0);
3418
- assert!(
3419
- memo
3420
- == string::utf8(
3421
- b"{\"evm\":null,\"move\":{\"async_callback\":{\"id\":\"1\",\"module_address\":\"0x1\",\"module_name\":\"minitswap\"},\"message\":{\"args\":[\"CG9wX2Rlbm9t\",\"QEIPAAAAAAA=\",\"CHJlY2VpdmVy\"],\"function_name\":\"minitswap_hook\",\"module_address\":\"0x1\",\"module_name\":\"minitswap_hook\",\"type_args\":[]}},\"wasm\":null}"
3422
- ),
3423
- 1
3424
- );
3425
-
3426
- let (ibc_receiver, memo) =
3427
- generate_ibc_message(
3428
- COSMWASM,
3429
- string::utf8(b"cosmwasm_contract_addr"),
3430
- 1,
3431
- string::utf8(b"receiver"),
3432
- string::utf8(b"op_denom"),
3433
- 1000000
3434
- );
3435
-
3436
- assert!(ibc_receiver == string::utf8(b"cosmwasm_contract_addr"), 2);
3437
- assert!(
3438
- memo
3439
- == string::utf8(
3440
- b"{\"evm\":null,\"move\":{\"async_callback\":{\"id\":\"1\",\"module_address\":\"0x1\",\"module_name\":\"minitswap\"},\"message\":null},\"wasm\":{\"message\":{\"contracts\":\"cosmwasm_contract_addr\",\"funds\":[{\"amount\":\"1000000\",\"denom\":\"op_denom\"}],\"msg\":{\"minitswap_hook\":{\"receiver\":\"receiver\"}}}}}"
3441
- ),
3442
- 3
3443
- );
3444
- }
3445
-
3446
- #[test]
3447
- fun test_evm_input() {
3448
- assert!(
3449
- create_evm_input(
3450
- &string::utf8(
3451
- b"l2/771d639f30fbe45e3fbca954ffbe2fcc26f915f5513c67a4a2d0bc1d635bdefd"
3452
- ),
3453
- 100,
3454
- &string::utf8(b"init1lf0swvvhy3vqautdemmvunfmp0grfrjgzznx9s")
3455
- ) == string::utf8(
3456
- b"0xbeed09350000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000006400000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000000436c322f373731643633396633306662653435653366626361393534666662653266636332366639313566353531336336376134613264306263316436333562646566640000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002b696e6974316c663073777676687933767161757464656d6d76756e666d7030677266726a677a7a6e783973000000000000000000000000000000000000000000"
3457
- ),
3458
- 0
3459
- )
3460
- }
3461
- }