@flarenetwork/flare-periphery-contract-artifacts 0.0.1

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 (498) hide show
  1. package/dist/README.md +5 -0
  2. package/dist/coston/abis.coston.d.ts +4 -0
  3. package/dist/coston/abis.coston.d.ts.map +1 -0
  4. package/dist/coston/abis.coston.js +213 -0
  5. package/dist/coston/abis.coston.js.map +1 -0
  6. package/dist/coston/artifacts/contracts/addressUpdater/implementation/AddressUpdatable.sol/AddressUpdatable.json +42 -0
  7. package/dist/coston/artifacts/contracts/addressUpdater/implementation/AddressUpdater.sol/AddressUpdater.json +381 -0
  8. package/dist/coston/artifacts/contracts/addressUpdater/interface/IIAddressUpdatable.sol/IIAddressUpdatable.json +29 -0
  9. package/dist/coston/artifacts/contracts/addressUpdater/interface/IIAddressUpdater.sol/IIAddressUpdater.json +105 -0
  10. package/dist/coston/artifacts/contracts/claiming/implementation/ClaimSetupManager.sol/ClaimSetupManager.json +1151 -0
  11. package/dist/coston/artifacts/contracts/claiming/implementation/CloneFactory.sol/CloneFactory.json +10 -0
  12. package/dist/coston/artifacts/contracts/claiming/implementation/DelegationAccount.sol/DelegationAccount.json +346 -0
  13. package/dist/coston/artifacts/contracts/claiming/interface/IIClaimSetupManager.sol/IIClaimSetupManager.json +795 -0
  14. package/dist/coston/artifacts/contracts/claiming/interface/IIDelegationAccount.sol/IIDelegationAccount.json +316 -0
  15. package/dist/coston/artifacts/contracts/ftso/implementation/Ftso.sol/Ftso.json +1104 -0
  16. package/dist/coston/artifacts/contracts/ftso/implementation/FtsoManager.sol/FtsoManager.json +1723 -0
  17. package/dist/coston/artifacts/contracts/ftso/interface/IIFtso.sol/IIFtso.json +953 -0
  18. package/dist/coston/artifacts/contracts/ftso/interface/IIFtsoManager.sol/IIFtsoManager.json +878 -0
  19. package/dist/coston/artifacts/contracts/ftso/interface/IIFtsoManagerV1.sol/IIFtsoManagerV1.json +102 -0
  20. package/dist/coston/artifacts/contracts/ftso/lib/FtsoEpoch.sol/FtsoEpoch.json +10 -0
  21. package/dist/coston/artifacts/contracts/ftso/lib/FtsoManagement.sol/FtsoManagement.json +43 -0
  22. package/dist/coston/artifacts/contracts/ftso/lib/FtsoManagerSettings.sol/FtsoManagerSettings.json +10 -0
  23. package/dist/coston/artifacts/contracts/ftso/lib/FtsoMedian.sol/FtsoMedian.json +10 -0
  24. package/dist/coston/artifacts/contracts/ftso/lib/FtsoVote.sol/FtsoVote.json +10 -0
  25. package/dist/coston/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockFtsoRegistry.json +624 -0
  26. package/dist/coston/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockPriceSubmitter.json +241 -0
  27. package/dist/coston/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockVoterWhitelister.json +198 -0
  28. package/dist/coston/artifacts/contracts/ftso/priceProviderMockContracts/priceProviderMockFtso.sol/MockNpmFtso.json +1048 -0
  29. package/dist/coston/artifacts/contracts/genesis/implementation/FlareDaemon.sol/FlareDaemon.json +676 -0
  30. package/dist/coston/artifacts/contracts/genesis/implementation/GovernanceSettings.sol/GovernanceSettings.json +224 -0
  31. package/dist/coston/artifacts/contracts/genesis/implementation/PriceSubmitter.sol/PriceSubmitter.json +407 -0
  32. package/dist/coston/artifacts/contracts/genesis/implementation/StateConnector.sol/StateConnector.json +324 -0
  33. package/dist/coston/artifacts/contracts/genesis/interface/IFlareDaemonize.sol/IFlareDaemonize.json +37 -0
  34. package/dist/coston/artifacts/contracts/genesis/interface/IFtsoGenesis.sol/IFtsoGenesis.json +91 -0
  35. package/dist/coston/artifacts/contracts/genesis/interface/IFtsoManagerGenesis.sol/IFtsoManagerGenesis.json +24 -0
  36. package/dist/coston/artifacts/contracts/genesis/interface/IFtsoRegistryGenesis.sol/IFtsoRegistryGenesis.json +30 -0
  37. package/dist/coston/artifacts/contracts/genesis/interface/IIPriceSubmitter.sol/IIPriceSubmitter.json +285 -0
  38. package/dist/coston/artifacts/contracts/genesis/interface/IInflationGenesis.sol/IInflationGenesis.json +18 -0
  39. package/dist/coston/artifacts/contracts/governance/implementation/Governed.sol/Governed.json +126 -0
  40. package/dist/coston/artifacts/contracts/governance/implementation/GovernedAtGenesis.sol/GovernedAtGenesis.json +139 -0
  41. package/dist/coston/artifacts/contracts/governance/implementation/GovernedBase.sol/GovernedBase.json +115 -0
  42. package/dist/coston/artifacts/contracts/governance/implementation/GovernedBaseV2.sol/GovernedBaseV2.json +209 -0
  43. package/dist/coston/artifacts/contracts/governance/implementation/GovernedV2.sol/GovernedV2.json +220 -0
  44. package/dist/coston/artifacts/contracts/governance/implementation/Governor.sol/Governor.json +653 -0
  45. package/dist/coston/artifacts/contracts/governance/implementation/GovernorProposals.sol/GovernorProposals.json +24 -0
  46. package/dist/coston/artifacts/contracts/governance/implementation/GovernorProposer.sol/GovernorProposer.json +265 -0
  47. package/dist/coston/artifacts/contracts/governance/implementation/GovernorVotePower.sol/GovernorVotePower.json +24 -0
  48. package/dist/coston/artifacts/contracts/governance/implementation/GovernorVotes.sol/GovernorVotes.json +10 -0
  49. package/dist/coston/artifacts/contracts/governance/implementation/InflationAllocation.sol/InflationAllocation.json +351 -0
  50. package/dist/coston/artifacts/contracts/governance/implementation/PollingFoundation.sol/PollingFoundation.json +1065 -0
  51. package/dist/coston/artifacts/contracts/governance/interface/IIGovernorProposer.sol/IIGovernorProposer.json +30 -0
  52. package/dist/coston/artifacts/contracts/governance/interface/IIPollingFoundation.sol/IIPollingFoundation.json +640 -0
  53. package/dist/coston/artifacts/contracts/inflation/implementation/Inflation.sol/Inflation.json +879 -0
  54. package/dist/coston/artifacts/contracts/inflation/implementation/Supply.sol/Supply.json +403 -0
  55. package/dist/coston/artifacts/contracts/inflation/interface/IIInflationPercentageProvider.sol/IIInflationPercentageProvider.json +24 -0
  56. package/dist/coston/artifacts/contracts/inflation/interface/IIInflationReceiver.sol/IIInflationReceiver.json +44 -0
  57. package/dist/coston/artifacts/contracts/inflation/interface/IIInflationSharingPercentageProvider.sol/IIInflationSharingPercentageProvider.json +36 -0
  58. package/dist/coston/artifacts/contracts/inflation/interface/IISupply.sol/IISupply.json +88 -0
  59. package/dist/coston/artifacts/contracts/inflation/lib/InflationAnnum.sol/InflationAnnum.json +10 -0
  60. package/dist/coston/artifacts/contracts/inflation/lib/InflationAnnums.sol/InflationAnnums.json +10 -0
  61. package/dist/coston/artifacts/contracts/inflation/lib/RewardService.sol/RewardService.json +30 -0
  62. package/dist/coston/artifacts/contracts/inflation/lib/RewardServices.sol/RewardServices.json +49 -0
  63. package/dist/coston/artifacts/contracts/mockXAsset/interface/ICollateralizable.sol/ICollateralizable.json +234 -0
  64. package/dist/coston/artifacts/contracts/token/implementation/CheckPointable.sol/CheckPointable.json +129 -0
  65. package/dist/coston/artifacts/contracts/token/implementation/CleanupBlockNumberManager.sol/CleanupBlockNumberManager.json +254 -0
  66. package/dist/coston/artifacts/contracts/token/implementation/Delegatable.sol/Delegatable.json +222 -0
  67. package/dist/coston/artifacts/contracts/token/implementation/GovernanceVotePower.sol/GovernanceVotePower.json +324 -0
  68. package/dist/coston/artifacts/contracts/token/implementation/VPContract.sol/VPContract.json +774 -0
  69. package/dist/coston/artifacts/contracts/token/implementation/VPToken.sol/VPToken.json +1102 -0
  70. package/dist/coston/artifacts/contracts/token/implementation/WNat.sol/WNat.json +1195 -0
  71. package/dist/coston/artifacts/contracts/token/interface/IICleanable.sol/IICleanable.json +63 -0
  72. package/dist/coston/artifacts/contracts/token/interface/IIGovernanceVotePower.sol/IIGovernanceVotePower.json +252 -0
  73. package/dist/coston/artifacts/contracts/token/interface/IIVPContract.sol/IIVPContract.json +609 -0
  74. package/dist/coston/artifacts/contracts/token/interface/IIVPToken.sol/IIVPToken.json +790 -0
  75. package/dist/coston/artifacts/contracts/token/lib/CheckPointHistory.sol/CheckPointHistory.json +10 -0
  76. package/dist/coston/artifacts/contracts/token/lib/CheckPointHistoryCache.sol/CheckPointHistoryCache.json +10 -0
  77. package/dist/coston/artifacts/contracts/token/lib/CheckPointsByAddress.sol/CheckPointsByAddress.json +10 -0
  78. package/dist/coston/artifacts/contracts/token/lib/DelegateCheckPointHistory.sol/DelegateCheckPointHistory.json +10 -0
  79. package/dist/coston/artifacts/contracts/token/lib/DelegateCheckPointsByAddress.sol/DelegateCheckPointsByAddress.json +10 -0
  80. package/dist/coston/artifacts/contracts/token/lib/DelegationHistory.sol/DelegationHistory.json +24 -0
  81. package/dist/coston/artifacts/contracts/token/lib/ExplicitDelegation.sol/ExplicitDelegation.json +10 -0
  82. package/dist/coston/artifacts/contracts/token/lib/PercentageDelegation.sol/PercentageDelegation.json +24 -0
  83. package/dist/coston/artifacts/contracts/token/lib/VotePower.sol/VotePower.json +10 -0
  84. package/dist/coston/artifacts/contracts/token/lib/VotePowerCache.sol/VotePowerCache.json +10 -0
  85. package/dist/coston/artifacts/contracts/tokenPools/implementation/Distribution.sol/Distribution.json +414 -0
  86. package/dist/coston/artifacts/contracts/tokenPools/implementation/FtsoRewardManager.sol/FtsoRewardManager.json +1027 -0
  87. package/dist/coston/artifacts/contracts/tokenPools/interface/IIFtsoRewardManager.sol/IIFtsoRewardManager.json +627 -0
  88. package/dist/coston/artifacts/contracts/tokenPools/interface/IIFtsoRewardManagerV2.sol/IIFtsoRewardManagerV2.json +949 -0
  89. package/dist/coston/artifacts/contracts/tokenPools/interface/IITokenPool.sol/IITokenPool.json +34 -0
  90. package/dist/coston/artifacts/contracts/tokenPools/lib/DataProviderFee.sol/DataProviderFee.json +10 -0
  91. package/dist/coston/artifacts/contracts/utils/implementation/AddressSet.sol/AddressSet.json +10 -0
  92. package/dist/coston/artifacts/contracts/utils/implementation/DateTimeLibrary.sol/BokkyPooBahsDateTimeLibrary.json +154 -0
  93. package/dist/coston/artifacts/contracts/utils/implementation/FlareContractRegistry.sol/FlareContractRegistry.json +147 -0
  94. package/dist/coston/artifacts/contracts/utils/implementation/FtsoRegistry.sol/FtsoRegistry.json +769 -0
  95. package/dist/coston/artifacts/contracts/utils/implementation/FtsoRegistryProxy.sol/FtsoRegistryProxy.json +272 -0
  96. package/dist/coston/artifacts/contracts/utils/implementation/FtsoV2Upgrader.sol/FtsoV2Upgrader.json +440 -0
  97. package/dist/coston/artifacts/contracts/utils/implementation/GovernedAndFlareDaemonized.sol/GovernedAndFlareDaemonized.json +144 -0
  98. package/dist/coston/artifacts/contracts/utils/implementation/GovernedAndFlareDaemonizedV2.sol/GovernedAndFlareDaemonizedV2.json +238 -0
  99. package/dist/coston/artifacts/contracts/utils/implementation/ProxyGoverned.sol/ProxyGoverned.json +256 -0
  100. package/dist/coston/artifacts/contracts/utils/implementation/RevertErrorTracking.sol/RevertErrorTracking.json +131 -0
  101. package/dist/coston/artifacts/contracts/utils/implementation/SafePct.sol/SafePct.json +10 -0
  102. package/dist/coston/artifacts/contracts/utils/implementation/VoterWhitelister.sol/VoterWhitelister.json +418 -0
  103. package/dist/coston/artifacts/contracts/utils/interface/IIFtsoRegistry.sol/IIFtsoRegistry.json +477 -0
  104. package/dist/coston/artifacts/contracts/utils/interface/IIFtsoRegistryV1.sol/IIFtsoRegistryV1.json +120 -0
  105. package/dist/coston/artifacts/contracts/utils/interface/IIRandomProvider.sol/IIRandomProvider.json +60 -0
  106. package/dist/coston/artifacts/contracts/utils/interface/IIVoterWhitelister.sol/IIVoterWhitelister.json +236 -0
  107. package/dist/coston/artifacts/contracts/utils/interface/IUpdateValidators.sol/IUpdateValidators.json +18 -0
  108. package/dist/coston/deploys/contractAddresses.d.ts +31 -0
  109. package/dist/coston/deploys/contractAddresses.d.ts.map +1 -0
  110. package/dist/coston/deploys/contractAddresses.js +34 -0
  111. package/dist/coston/deploys/contractAddresses.js.map +1 -0
  112. package/dist/coston/deploys/coston.json +142 -0
  113. package/dist/coston/deploys/mapper.d.ts +7 -0
  114. package/dist/coston/deploys/mapper.d.ts.map +1 -0
  115. package/dist/coston/deploys/mapper.js +40 -0
  116. package/dist/coston/deploys/mapper.js.map +1 -0
  117. package/dist/coston/index.d.ts +3 -0
  118. package/dist/coston/index.d.ts.map +1 -0
  119. package/dist/coston/index.js +20 -0
  120. package/dist/coston/index.js.map +1 -0
  121. package/dist/coston2/abis.coston2.d.ts +4 -0
  122. package/dist/coston2/abis.coston2.d.ts.map +1 -0
  123. package/dist/coston2/abis.coston2.js +253 -0
  124. package/dist/coston2/abis.coston2.js.map +1 -0
  125. package/dist/coston2/artifacts/contracts/addressUpdater/implementation/AddressUpdatable.sol/AddressUpdatable.json +42 -0
  126. package/dist/coston2/artifacts/contracts/addressUpdater/implementation/AddressUpdater.sol/AddressUpdater.json +311 -0
  127. package/dist/coston2/artifacts/contracts/addressUpdater/interface/IIAddressUpdatable.sol/IIAddressUpdatable.json +29 -0
  128. package/dist/coston2/artifacts/contracts/assetRegistry/implementation/FlareAssetRegistry.sol/FlareAssetRegistry.json +525 -0
  129. package/dist/coston2/artifacts/contracts/assetRegistry/implementation/WNatRegistryProvider.sol/WNatRegistryProvider.json +113 -0
  130. package/dist/coston2/artifacts/contracts/assetRegistry/interface/IIERC20WithMetadata.sol/IIERC20WithMetadata.json +233 -0
  131. package/dist/coston2/artifacts/contracts/assetRegistry/interface/IIFlareAssetRegistry.sol/IIFlareAssetRegistry.json +316 -0
  132. package/dist/coston2/artifacts/contracts/assetRegistry/interface/IIFlareAssetRegistryProvider.sol/IIFlareAssetRegistryProvider.json +66 -0
  133. package/dist/coston2/artifacts/contracts/assetRegistry/lib/StandardAttributes.sol/StandardAttributes.json +10 -0
  134. package/dist/coston2/artifacts/contracts/claiming/implementation/ClaimSetupManager.sol/ClaimSetupManager.json +1151 -0
  135. package/dist/coston2/artifacts/contracts/claiming/implementation/CloneFactory.sol/CloneFactory.json +10 -0
  136. package/dist/coston2/artifacts/contracts/claiming/implementation/DelegationAccount.sol/DelegationAccount.json +346 -0
  137. package/dist/coston2/artifacts/contracts/claiming/interface/IIClaimSetupManager.sol/IIClaimSetupManager.json +795 -0
  138. package/dist/coston2/artifacts/contracts/claiming/interface/IIDelegationAccount.sol/IIDelegationAccount.json +316 -0
  139. package/dist/coston2/artifacts/contracts/ftso/implementation/Ftso.sol/Ftso.json +1007 -0
  140. package/dist/coston2/artifacts/contracts/ftso/implementation/FtsoManager.sol/FtsoManager.json +1647 -0
  141. package/dist/coston2/artifacts/contracts/ftso/interface/IIFtso.sol/IIFtso.json +856 -0
  142. package/dist/coston2/artifacts/contracts/ftso/interface/IIFtsoManager.sol/IIFtsoManager.json +837 -0
  143. package/dist/coston2/artifacts/contracts/ftso/interface/IIFtsoManagerV1.sol/IIFtsoManagerV1.json +102 -0
  144. package/dist/coston2/artifacts/contracts/ftso/lib/FtsoEpoch.sol/FtsoEpoch.json +10 -0
  145. package/dist/coston2/artifacts/contracts/ftso/lib/FtsoManagement.sol/FtsoManagement.json +43 -0
  146. package/dist/coston2/artifacts/contracts/ftso/lib/FtsoManagerSettings.sol/FtsoManagerSettings.json +10 -0
  147. package/dist/coston2/artifacts/contracts/ftso/lib/FtsoMedian.sol/FtsoMedian.json +10 -0
  148. package/dist/coston2/artifacts/contracts/ftso/lib/FtsoVote.sol/FtsoVote.json +10 -0
  149. package/dist/coston2/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockFtsoRegistry.json +718 -0
  150. package/dist/coston2/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockPriceSubmitter.json +338 -0
  151. package/dist/coston2/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockVoterWhitelister.json +198 -0
  152. package/dist/coston2/artifacts/contracts/ftso/priceProviderMockContracts/priceProviderMockFtso.sol/MockNpmFtso.json +951 -0
  153. package/dist/coston2/artifacts/contracts/genesis/implementation/DistributionTreasury.sol/DistributionTreasury.json +336 -0
  154. package/dist/coston2/artifacts/contracts/genesis/implementation/FlareDaemon.sol/FlareDaemon.json +794 -0
  155. package/dist/coston2/artifacts/contracts/genesis/implementation/GovernanceSettings.sol/GovernanceSettings.json +219 -0
  156. package/dist/coston2/artifacts/contracts/genesis/implementation/IncentivePoolTreasury.sol/IncentivePoolTreasury.json +292 -0
  157. package/dist/coston2/artifacts/contracts/genesis/implementation/InitialAirdrop.sol/InitialAirdrop.json +493 -0
  158. package/dist/coston2/artifacts/contracts/genesis/implementation/PriceSubmitter.sol/PriceSubmitter.json +569 -0
  159. package/dist/coston2/artifacts/contracts/genesis/implementation/StateConnector.sol/StateConnector.json +324 -0
  160. package/dist/coston2/artifacts/contracts/genesis/interface/IFlareDaemonize.sol/IFlareDaemonize.json +50 -0
  161. package/dist/coston2/artifacts/contracts/genesis/interface/IFtsoGenesis.sol/IFtsoGenesis.json +63 -0
  162. package/dist/coston2/artifacts/contracts/genesis/interface/IFtsoManagerGenesis.sol/IFtsoManagerGenesis.json +24 -0
  163. package/dist/coston2/artifacts/contracts/genesis/interface/IFtsoRegistryGenesis.sol/IFtsoRegistryGenesis.json +30 -0
  164. package/dist/coston2/artifacts/contracts/genesis/interface/IIPriceSubmitter.sol/IIPriceSubmitter.json +283 -0
  165. package/dist/coston2/artifacts/contracts/genesis/interface/IInflationGenesis.sol/IInflationGenesis.json +18 -0
  166. package/dist/coston2/artifacts/contracts/governance/implementation/Governed.sol/Governed.json +220 -0
  167. package/dist/coston2/artifacts/contracts/governance/implementation/GovernedAtGenesis.sol/GovernedAtGenesis.json +233 -0
  168. package/dist/coston2/artifacts/contracts/governance/implementation/GovernedBase.sol/GovernedBase.json +209 -0
  169. package/dist/coston2/artifacts/contracts/governance/implementation/Governor.sol/Governor.json +653 -0
  170. package/dist/coston2/artifacts/contracts/governance/implementation/GovernorProposals.sol/GovernorProposals.json +24 -0
  171. package/dist/coston2/artifacts/contracts/governance/implementation/GovernorProposer.sol/GovernorProposer.json +265 -0
  172. package/dist/coston2/artifacts/contracts/governance/implementation/GovernorVotePower.sol/GovernorVotePower.json +24 -0
  173. package/dist/coston2/artifacts/contracts/governance/implementation/GovernorVotes.sol/GovernorVotes.json +10 -0
  174. package/dist/coston2/artifacts/contracts/governance/implementation/PollingFoundation.sol/PollingFoundation.json +1070 -0
  175. package/dist/coston2/artifacts/contracts/governance/interface/IIGovernorProposer.sol/IIGovernorProposer.json +30 -0
  176. package/dist/coston2/artifacts/contracts/governance/interface/IIPollingFoundation.sol/IIPollingFoundation.json +640 -0
  177. package/dist/coston2/artifacts/contracts/inflation/implementation/Inflation.sol/Inflation.json +926 -0
  178. package/dist/coston2/artifacts/contracts/inflation/implementation/InflationAllocation.sol/InflationAllocation.json +463 -0
  179. package/dist/coston2/artifacts/contracts/inflation/implementation/Supply.sol/Supply.json +543 -0
  180. package/dist/coston2/artifacts/contracts/inflation/interface/IIInflationAllocation.sol/IIInflationAllocation.json +49 -0
  181. package/dist/coston2/artifacts/contracts/inflation/interface/IIInflationPercentageProvider.sol/IIInflationPercentageProvider.json +24 -0
  182. package/dist/coston2/artifacts/contracts/inflation/interface/IIInflationReceiver.sol/IIInflationReceiver.json +57 -0
  183. package/dist/coston2/artifacts/contracts/inflation/interface/IIInflationSharingPercentageProvider.sol/IIInflationSharingPercentageProvider.json +36 -0
  184. package/dist/coston2/artifacts/contracts/inflation/interface/IISupply.sol/IISupply.json +82 -0
  185. package/dist/coston2/artifacts/contracts/inflation/lib/InflationAnnum.sol/InflationAnnum.json +10 -0
  186. package/dist/coston2/artifacts/contracts/inflation/lib/InflationAnnums.sol/InflationAnnums.json +10 -0
  187. package/dist/coston2/artifacts/contracts/inflation/lib/RewardService.sol/RewardService.json +30 -0
  188. package/dist/coston2/artifacts/contracts/inflation/lib/RewardServices.sol/RewardServices.json +49 -0
  189. package/dist/coston2/artifacts/contracts/mockXAsset/interface/ICollateralizable.sol/ICollateralizable.json +234 -0
  190. package/dist/coston2/artifacts/contracts/token/implementation/CheckPointable.sol/CheckPointable.json +142 -0
  191. package/dist/coston2/artifacts/contracts/token/implementation/CleanupBlockNumberManager.sol/CleanupBlockNumberManager.json +389 -0
  192. package/dist/coston2/artifacts/contracts/token/implementation/Delegatable.sol/Delegatable.json +235 -0
  193. package/dist/coston2/artifacts/contracts/token/implementation/GovernanceVotePower.sol/GovernanceVotePower.json +324 -0
  194. package/dist/coston2/artifacts/contracts/token/implementation/VPContract.sol/VPContract.json +798 -0
  195. package/dist/coston2/artifacts/contracts/token/implementation/VPToken.sol/VPToken.json +1264 -0
  196. package/dist/coston2/artifacts/contracts/token/implementation/WNat.sol/WNat.json +1357 -0
  197. package/dist/coston2/artifacts/contracts/token/interface/IICleanable.sol/IICleanable.json +50 -0
  198. package/dist/coston2/artifacts/contracts/token/interface/IIGovernanceVotePower.sol/IIGovernanceVotePower.json +252 -0
  199. package/dist/coston2/artifacts/contracts/token/interface/IIVPContract.sol/IIVPContract.json +620 -0
  200. package/dist/coston2/artifacts/contracts/token/interface/IIVPToken.sol/IIVPToken.json +832 -0
  201. package/dist/coston2/artifacts/contracts/token/lib/CheckPointHistory.sol/CheckPointHistory.json +10 -0
  202. package/dist/coston2/artifacts/contracts/token/lib/CheckPointHistoryCache.sol/CheckPointHistoryCache.json +10 -0
  203. package/dist/coston2/artifacts/contracts/token/lib/CheckPointsByAddress.sol/CheckPointsByAddress.json +10 -0
  204. package/dist/coston2/artifacts/contracts/token/lib/DelegateCheckPointHistory.sol/DelegateCheckPointHistory.json +10 -0
  205. package/dist/coston2/artifacts/contracts/token/lib/DelegateCheckPointsByAddress.sol/DelegateCheckPointsByAddress.json +10 -0
  206. package/dist/coston2/artifacts/contracts/token/lib/DelegationHistory.sol/DelegationHistory.json +24 -0
  207. package/dist/coston2/artifacts/contracts/token/lib/ExplicitDelegation.sol/ExplicitDelegation.json +10 -0
  208. package/dist/coston2/artifacts/contracts/token/lib/PercentageDelegation.sol/PercentageDelegation.json +24 -0
  209. package/dist/coston2/artifacts/contracts/token/lib/VotePower.sol/VotePower.json +10 -0
  210. package/dist/coston2/artifacts/contracts/token/lib/VotePowerCache.sol/VotePowerCache.json +10 -0
  211. package/dist/coston2/artifacts/contracts/tokenPools/implementation/AttestationProviderRewardManager.sol/AttestationProviderRewardManager.json +741 -0
  212. package/dist/coston2/artifacts/contracts/tokenPools/implementation/Distribution.sol/Distribution.json +561 -0
  213. package/dist/coston2/artifacts/contracts/tokenPools/implementation/DistributionToDelegators.sol/DistributionToDelegators.json +1121 -0
  214. package/dist/coston2/artifacts/contracts/tokenPools/implementation/Escrow.sol/Escrow.json +769 -0
  215. package/dist/coston2/artifacts/contracts/tokenPools/implementation/FtsoRewardManager.sol/FtsoRewardManager.json +1412 -0
  216. package/dist/coston2/artifacts/contracts/tokenPools/implementation/GenericRewardManager.sol/GenericRewardManager.json +720 -0
  217. package/dist/coston2/artifacts/contracts/tokenPools/implementation/IncentivePool.sol/IncentivePool.json +927 -0
  218. package/dist/coston2/artifacts/contracts/tokenPools/implementation/IncentivePoolAllocation.sol/IncentivePoolAllocation.json +463 -0
  219. package/dist/coston2/artifacts/contracts/tokenPools/implementation/ValidatorRewardManager.sol/ValidatorRewardManager.json +741 -0
  220. package/dist/coston2/artifacts/contracts/tokenPools/interface/IIFtsoRewardManager.sol/IIFtsoRewardManager.json +962 -0
  221. package/dist/coston2/artifacts/contracts/tokenPools/interface/IIGenericRewardManager.sol/IIGenericRewardManager.json +413 -0
  222. package/dist/coston2/artifacts/contracts/tokenPools/interface/IIIncentivePoolAllocation.sol/IIIncentivePoolAllocation.json +49 -0
  223. package/dist/coston2/artifacts/contracts/tokenPools/interface/IIIncentivePoolPercentageProvider.sol/IIIncentivePoolPercentageProvider.json +24 -0
  224. package/dist/coston2/artifacts/contracts/tokenPools/interface/IIIncentivePoolReceiver.sol/IIIncentivePoolReceiver.json +57 -0
  225. package/dist/coston2/artifacts/contracts/tokenPools/interface/IIIncentivePoolSharingPercentageProvider.sol/IIIncentivePoolSharingPercentageProvider.json +36 -0
  226. package/dist/coston2/artifacts/contracts/tokenPools/interface/IITokenPool.sol/IITokenPool.json +34 -0
  227. package/dist/coston2/artifacts/contracts/tokenPools/lib/DataProviderFee.sol/DataProviderFee.json +10 -0
  228. package/dist/coston2/artifacts/contracts/tokenPools/lib/IncentivePoolAnnum.sol/IncentivePoolAnnum.json +10 -0
  229. package/dist/coston2/artifacts/contracts/tokenPools/lib/IncentivePoolAnnums.sol/IncentivePoolAnnums.json +10 -0
  230. package/dist/coston2/artifacts/contracts/tokenPools/lib/IncentivePoolRewardService.sol/IncentivePoolRewardService.json +30 -0
  231. package/dist/coston2/artifacts/contracts/tokenPools/lib/IncentivePoolRewardServices.sol/IncentivePoolRewardServices.json +49 -0
  232. package/dist/coston2/artifacts/contracts/utils/implementation/AddressSet.sol/AddressSet.json +10 -0
  233. package/dist/coston2/artifacts/contracts/utils/implementation/DateTimeLibrary.sol/BokkyPooBahsDateTimeLibrary.json +154 -0
  234. package/dist/coston2/artifacts/contracts/utils/implementation/FtsoRegistry.sol/FtsoRegistry.json +769 -0
  235. package/dist/coston2/artifacts/contracts/utils/implementation/FtsoRegistryProxy.sol/FtsoRegistryProxy.json +272 -0
  236. package/dist/coston2/artifacts/contracts/utils/implementation/FundDistributor.sol/FundDistributor.json +71 -0
  237. package/dist/coston2/artifacts/contracts/utils/implementation/GovernedAndFlareDaemonized.sol/GovernedAndFlareDaemonized.json +238 -0
  238. package/dist/coston2/artifacts/contracts/utils/implementation/ProxyGoverned.sol/ProxyGoverned.json +256 -0
  239. package/dist/coston2/artifacts/contracts/utils/implementation/RevertErrorTracking.sol/RevertErrorTracking.json +131 -0
  240. package/dist/coston2/artifacts/contracts/utils/implementation/SafePct.sol/SafePct.json +10 -0
  241. package/dist/coston2/artifacts/contracts/utils/implementation/SelfdestructTransfer.sol/SelfdestructTransfer.json +91 -0
  242. package/dist/coston2/artifacts/contracts/utils/implementation/ValidatorRegistry.sol/ValidatorRegistry.json +149 -0
  243. package/dist/coston2/artifacts/contracts/utils/implementation/VoterWhitelister.sol/VoterWhitelister.json +530 -0
  244. package/dist/coston2/artifacts/contracts/utils/interface/IIFtsoRegistry.sol/IIFtsoRegistry.json +477 -0
  245. package/dist/coston2/artifacts/contracts/utils/interface/IIVoterWhitelister.sol/IIVoterWhitelister.json +236 -0
  246. package/dist/coston2/artifacts/contracts/utils/interface/IUpdateValidators.sol/IUpdateValidators.json +18 -0
  247. package/dist/coston2/deploys/contractAddresses.d.ts +45 -0
  248. package/dist/coston2/deploys/contractAddresses.d.ts.map +1 -0
  249. package/dist/coston2/deploys/contractAddresses.js +48 -0
  250. package/dist/coston2/deploys/contractAddresses.js.map +1 -0
  251. package/dist/coston2/deploys/coston2.json +212 -0
  252. package/dist/coston2/deploys/mapper.d.ts +7 -0
  253. package/dist/coston2/deploys/mapper.d.ts.map +1 -0
  254. package/dist/coston2/deploys/mapper.js +40 -0
  255. package/dist/coston2/deploys/mapper.js.map +1 -0
  256. package/dist/coston2/index.d.ts +3 -0
  257. package/dist/coston2/index.d.ts.map +1 -0
  258. package/dist/coston2/index.js +20 -0
  259. package/dist/coston2/index.js.map +1 -0
  260. package/dist/flare/abis.flare.d.ts +4 -0
  261. package/dist/flare/abis.flare.d.ts.map +1 -0
  262. package/dist/flare/abis.flare.js +251 -0
  263. package/dist/flare/abis.flare.js.map +1 -0
  264. package/dist/flare/artifacts/contracts/addressUpdater/implementation/AddressUpdatable.sol/AddressUpdatable.json +42 -0
  265. package/dist/flare/artifacts/contracts/addressUpdater/implementation/AddressUpdater.sol/AddressUpdater.json +311 -0
  266. package/dist/flare/artifacts/contracts/addressUpdater/interface/IIAddressUpdatable.sol/IIAddressUpdatable.json +29 -0
  267. package/dist/flare/artifacts/contracts/assetRegistry/implementation/FlareAssetRegistry.sol/FlareAssetRegistry.json +525 -0
  268. package/dist/flare/artifacts/contracts/assetRegistry/implementation/WNatRegistryProvider.sol/WNatRegistryProvider.json +113 -0
  269. package/dist/flare/artifacts/contracts/assetRegistry/interface/IIERC20WithMetadata.sol/IIERC20WithMetadata.json +233 -0
  270. package/dist/flare/artifacts/contracts/assetRegistry/interface/IIFlareAssetRegistry.sol/IIFlareAssetRegistry.json +316 -0
  271. package/dist/flare/artifacts/contracts/assetRegistry/interface/IIFlareAssetRegistryProvider.sol/IIFlareAssetRegistryProvider.json +66 -0
  272. package/dist/flare/artifacts/contracts/assetRegistry/lib/StandardAttributes.sol/StandardAttributes.json +10 -0
  273. package/dist/flare/artifacts/contracts/claiming/implementation/ClaimSetupManager.sol/ClaimSetupManager.json +1151 -0
  274. package/dist/flare/artifacts/contracts/claiming/implementation/CloneFactory.sol/CloneFactory.json +10 -0
  275. package/dist/flare/artifacts/contracts/claiming/implementation/DelegationAccount.sol/DelegationAccount.json +346 -0
  276. package/dist/flare/artifacts/contracts/claiming/interface/IIClaimSetupManager.sol/IIClaimSetupManager.json +795 -0
  277. package/dist/flare/artifacts/contracts/claiming/interface/IIDelegationAccount.sol/IIDelegationAccount.json +316 -0
  278. package/dist/flare/artifacts/contracts/ftso/implementation/Ftso.sol/Ftso.json +1007 -0
  279. package/dist/flare/artifacts/contracts/ftso/implementation/FtsoManager.sol/FtsoManager.json +1647 -0
  280. package/dist/flare/artifacts/contracts/ftso/interface/IIFtso.sol/IIFtso.json +856 -0
  281. package/dist/flare/artifacts/contracts/ftso/interface/IIFtsoManager.sol/IIFtsoManager.json +837 -0
  282. package/dist/flare/artifacts/contracts/ftso/interface/IIFtsoManagerV1.sol/IIFtsoManagerV1.json +102 -0
  283. package/dist/flare/artifacts/contracts/ftso/lib/FtsoEpoch.sol/FtsoEpoch.json +10 -0
  284. package/dist/flare/artifacts/contracts/ftso/lib/FtsoManagement.sol/FtsoManagement.json +43 -0
  285. package/dist/flare/artifacts/contracts/ftso/lib/FtsoManagerSettings.sol/FtsoManagerSettings.json +10 -0
  286. package/dist/flare/artifacts/contracts/ftso/lib/FtsoMedian.sol/FtsoMedian.json +10 -0
  287. package/dist/flare/artifacts/contracts/ftso/lib/FtsoVote.sol/FtsoVote.json +10 -0
  288. package/dist/flare/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockFtsoRegistry.json +718 -0
  289. package/dist/flare/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockPriceSubmitter.json +338 -0
  290. package/dist/flare/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockVoterWhitelister.json +198 -0
  291. package/dist/flare/artifacts/contracts/ftso/priceProviderMockContracts/priceProviderMockFtso.sol/MockNpmFtso.json +951 -0
  292. package/dist/flare/artifacts/contracts/genesis/implementation/DistributionTreasury.sol/DistributionTreasury.json +336 -0
  293. package/dist/flare/artifacts/contracts/genesis/implementation/FlareDaemon.sol/FlareDaemon.json +794 -0
  294. package/dist/flare/artifacts/contracts/genesis/implementation/GovernanceSettings.sol/GovernanceSettings.json +219 -0
  295. package/dist/flare/artifacts/contracts/genesis/implementation/IncentivePoolTreasury.sol/IncentivePoolTreasury.json +292 -0
  296. package/dist/flare/artifacts/contracts/genesis/implementation/InitialAirdrop.sol/InitialAirdrop.json +493 -0
  297. package/dist/flare/artifacts/contracts/genesis/implementation/PriceSubmitter.sol/PriceSubmitter.json +569 -0
  298. package/dist/flare/artifacts/contracts/genesis/implementation/StateConnector.sol/StateConnector.json +324 -0
  299. package/dist/flare/artifacts/contracts/genesis/interface/IFlareDaemonize.sol/IFlareDaemonize.json +50 -0
  300. package/dist/flare/artifacts/contracts/genesis/interface/IFtsoGenesis.sol/IFtsoGenesis.json +63 -0
  301. package/dist/flare/artifacts/contracts/genesis/interface/IFtsoManagerGenesis.sol/IFtsoManagerGenesis.json +24 -0
  302. package/dist/flare/artifacts/contracts/genesis/interface/IFtsoRegistryGenesis.sol/IFtsoRegistryGenesis.json +30 -0
  303. package/dist/flare/artifacts/contracts/genesis/interface/IIPriceSubmitter.sol/IIPriceSubmitter.json +283 -0
  304. package/dist/flare/artifacts/contracts/genesis/interface/IInflationGenesis.sol/IInflationGenesis.json +18 -0
  305. package/dist/flare/artifacts/contracts/governance/implementation/Governed.sol/Governed.json +220 -0
  306. package/dist/flare/artifacts/contracts/governance/implementation/GovernedAtGenesis.sol/GovernedAtGenesis.json +233 -0
  307. package/dist/flare/artifacts/contracts/governance/implementation/GovernedBase.sol/GovernedBase.json +209 -0
  308. package/dist/flare/artifacts/contracts/governance/implementation/Governor.sol/Governor.json +653 -0
  309. package/dist/flare/artifacts/contracts/governance/implementation/GovernorProposals.sol/GovernorProposals.json +24 -0
  310. package/dist/flare/artifacts/contracts/governance/implementation/GovernorProposer.sol/GovernorProposer.json +265 -0
  311. package/dist/flare/artifacts/contracts/governance/implementation/GovernorVotePower.sol/GovernorVotePower.json +24 -0
  312. package/dist/flare/artifacts/contracts/governance/implementation/GovernorVotes.sol/GovernorVotes.json +10 -0
  313. package/dist/flare/artifacts/contracts/governance/implementation/PollingFoundation.sol/PollingFoundation.json +1070 -0
  314. package/dist/flare/artifacts/contracts/governance/interface/IIGovernorProposer.sol/IIGovernorProposer.json +30 -0
  315. package/dist/flare/artifacts/contracts/governance/interface/IIPollingFoundation.sol/IIPollingFoundation.json +640 -0
  316. package/dist/flare/artifacts/contracts/inflation/implementation/Inflation.sol/Inflation.json +926 -0
  317. package/dist/flare/artifacts/contracts/inflation/implementation/InflationAllocation.sol/InflationAllocation.json +463 -0
  318. package/dist/flare/artifacts/contracts/inflation/implementation/Supply.sol/Supply.json +543 -0
  319. package/dist/flare/artifacts/contracts/inflation/interface/IIInflationAllocation.sol/IIInflationAllocation.json +49 -0
  320. package/dist/flare/artifacts/contracts/inflation/interface/IIInflationPercentageProvider.sol/IIInflationPercentageProvider.json +24 -0
  321. package/dist/flare/artifacts/contracts/inflation/interface/IIInflationReceiver.sol/IIInflationReceiver.json +57 -0
  322. package/dist/flare/artifacts/contracts/inflation/interface/IIInflationSharingPercentageProvider.sol/IIInflationSharingPercentageProvider.json +36 -0
  323. package/dist/flare/artifacts/contracts/inflation/interface/IISupply.sol/IISupply.json +82 -0
  324. package/dist/flare/artifacts/contracts/inflation/lib/InflationAnnum.sol/InflationAnnum.json +10 -0
  325. package/dist/flare/artifacts/contracts/inflation/lib/InflationAnnums.sol/InflationAnnums.json +10 -0
  326. package/dist/flare/artifacts/contracts/inflation/lib/RewardService.sol/RewardService.json +30 -0
  327. package/dist/flare/artifacts/contracts/inflation/lib/RewardServices.sol/RewardServices.json +49 -0
  328. package/dist/flare/artifacts/contracts/mockXAsset/interface/ICollateralizable.sol/ICollateralizable.json +234 -0
  329. package/dist/flare/artifacts/contracts/token/implementation/CheckPointable.sol/CheckPointable.json +142 -0
  330. package/dist/flare/artifacts/contracts/token/implementation/CleanupBlockNumberManager.sol/CleanupBlockNumberManager.json +389 -0
  331. package/dist/flare/artifacts/contracts/token/implementation/Delegatable.sol/Delegatable.json +235 -0
  332. package/dist/flare/artifacts/contracts/token/implementation/GovernanceVotePower.sol/GovernanceVotePower.json +324 -0
  333. package/dist/flare/artifacts/contracts/token/implementation/VPContract.sol/VPContract.json +798 -0
  334. package/dist/flare/artifacts/contracts/token/implementation/VPToken.sol/VPToken.json +1264 -0
  335. package/dist/flare/artifacts/contracts/token/implementation/WNat.sol/WNat.json +1357 -0
  336. package/dist/flare/artifacts/contracts/token/interface/IICleanable.sol/IICleanable.json +50 -0
  337. package/dist/flare/artifacts/contracts/token/interface/IIGovernanceVotePower.sol/IIGovernanceVotePower.json +252 -0
  338. package/dist/flare/artifacts/contracts/token/interface/IIVPContract.sol/IIVPContract.json +620 -0
  339. package/dist/flare/artifacts/contracts/token/interface/IIVPToken.sol/IIVPToken.json +832 -0
  340. package/dist/flare/artifacts/contracts/token/lib/CheckPointHistory.sol/CheckPointHistory.json +10 -0
  341. package/dist/flare/artifacts/contracts/token/lib/CheckPointHistoryCache.sol/CheckPointHistoryCache.json +10 -0
  342. package/dist/flare/artifacts/contracts/token/lib/CheckPointsByAddress.sol/CheckPointsByAddress.json +10 -0
  343. package/dist/flare/artifacts/contracts/token/lib/DelegateCheckPointHistory.sol/DelegateCheckPointHistory.json +10 -0
  344. package/dist/flare/artifacts/contracts/token/lib/DelegateCheckPointsByAddress.sol/DelegateCheckPointsByAddress.json +10 -0
  345. package/dist/flare/artifacts/contracts/token/lib/DelegationHistory.sol/DelegationHistory.json +24 -0
  346. package/dist/flare/artifacts/contracts/token/lib/ExplicitDelegation.sol/ExplicitDelegation.json +10 -0
  347. package/dist/flare/artifacts/contracts/token/lib/PercentageDelegation.sol/PercentageDelegation.json +24 -0
  348. package/dist/flare/artifacts/contracts/token/lib/VotePower.sol/VotePower.json +10 -0
  349. package/dist/flare/artifacts/contracts/token/lib/VotePowerCache.sol/VotePowerCache.json +10 -0
  350. package/dist/flare/artifacts/contracts/tokenPools/implementation/AttestationProviderRewardManager.sol/AttestationProviderRewardManager.json +741 -0
  351. package/dist/flare/artifacts/contracts/tokenPools/implementation/Distribution.sol/Distribution.json +561 -0
  352. package/dist/flare/artifacts/contracts/tokenPools/implementation/DistributionToDelegators.sol/DistributionToDelegators.json +1121 -0
  353. package/dist/flare/artifacts/contracts/tokenPools/implementation/Escrow.sol/Escrow.json +769 -0
  354. package/dist/flare/artifacts/contracts/tokenPools/implementation/FtsoRewardManager.sol/FtsoRewardManager.json +1412 -0
  355. package/dist/flare/artifacts/contracts/tokenPools/implementation/GenericRewardManager.sol/GenericRewardManager.json +720 -0
  356. package/dist/flare/artifacts/contracts/tokenPools/implementation/IncentivePool.sol/IncentivePool.json +927 -0
  357. package/dist/flare/artifacts/contracts/tokenPools/implementation/IncentivePoolAllocation.sol/IncentivePoolAllocation.json +463 -0
  358. package/dist/flare/artifacts/contracts/tokenPools/implementation/ValidatorRewardManager.sol/ValidatorRewardManager.json +741 -0
  359. package/dist/flare/artifacts/contracts/tokenPools/interface/IIFtsoRewardManager.sol/IIFtsoRewardManager.json +962 -0
  360. package/dist/flare/artifacts/contracts/tokenPools/interface/IIGenericRewardManager.sol/IIGenericRewardManager.json +413 -0
  361. package/dist/flare/artifacts/contracts/tokenPools/interface/IIIncentivePoolAllocation.sol/IIIncentivePoolAllocation.json +49 -0
  362. package/dist/flare/artifacts/contracts/tokenPools/interface/IIIncentivePoolPercentageProvider.sol/IIIncentivePoolPercentageProvider.json +24 -0
  363. package/dist/flare/artifacts/contracts/tokenPools/interface/IIIncentivePoolReceiver.sol/IIIncentivePoolReceiver.json +57 -0
  364. package/dist/flare/artifacts/contracts/tokenPools/interface/IIIncentivePoolSharingPercentageProvider.sol/IIIncentivePoolSharingPercentageProvider.json +36 -0
  365. package/dist/flare/artifacts/contracts/tokenPools/interface/IITokenPool.sol/IITokenPool.json +34 -0
  366. package/dist/flare/artifacts/contracts/tokenPools/lib/DataProviderFee.sol/DataProviderFee.json +10 -0
  367. package/dist/flare/artifacts/contracts/tokenPools/lib/IncentivePoolAnnum.sol/IncentivePoolAnnum.json +10 -0
  368. package/dist/flare/artifacts/contracts/tokenPools/lib/IncentivePoolAnnums.sol/IncentivePoolAnnums.json +10 -0
  369. package/dist/flare/artifacts/contracts/tokenPools/lib/IncentivePoolRewardService.sol/IncentivePoolRewardService.json +30 -0
  370. package/dist/flare/artifacts/contracts/tokenPools/lib/IncentivePoolRewardServices.sol/IncentivePoolRewardServices.json +49 -0
  371. package/dist/flare/artifacts/contracts/utils/implementation/AddressSet.sol/AddressSet.json +10 -0
  372. package/dist/flare/artifacts/contracts/utils/implementation/DateTimeLibrary.sol/BokkyPooBahsDateTimeLibrary.json +154 -0
  373. package/dist/flare/artifacts/contracts/utils/implementation/FtsoRegistry.sol/FtsoRegistry.json +769 -0
  374. package/dist/flare/artifacts/contracts/utils/implementation/FtsoRegistryProxy.sol/FtsoRegistryProxy.json +272 -0
  375. package/dist/flare/artifacts/contracts/utils/implementation/FundDistributor.sol/FundDistributor.json +71 -0
  376. package/dist/flare/artifacts/contracts/utils/implementation/GovernedAndFlareDaemonized.sol/GovernedAndFlareDaemonized.json +238 -0
  377. package/dist/flare/artifacts/contracts/utils/implementation/ProxyGoverned.sol/ProxyGoverned.json +256 -0
  378. package/dist/flare/artifacts/contracts/utils/implementation/RevertErrorTracking.sol/RevertErrorTracking.json +131 -0
  379. package/dist/flare/artifacts/contracts/utils/implementation/SafePct.sol/SafePct.json +10 -0
  380. package/dist/flare/artifacts/contracts/utils/implementation/ValidatorRegistry.sol/ValidatorRegistry.json +149 -0
  381. package/dist/flare/artifacts/contracts/utils/implementation/VoterWhitelister.sol/VoterWhitelister.json +530 -0
  382. package/dist/flare/artifacts/contracts/utils/interface/IIFtsoRegistry.sol/IIFtsoRegistry.json +477 -0
  383. package/dist/flare/artifacts/contracts/utils/interface/IIVoterWhitelister.sol/IIVoterWhitelister.json +236 -0
  384. package/dist/flare/artifacts/contracts/utils/interface/IUpdateValidators.sol/IUpdateValidators.json +18 -0
  385. package/dist/flare/deploys/contractAddresses.d.ts +44 -0
  386. package/dist/flare/deploys/contractAddresses.d.ts.map +1 -0
  387. package/dist/flare/deploys/contractAddresses.js +47 -0
  388. package/dist/flare/deploys/contractAddresses.js.map +1 -0
  389. package/dist/flare/deploys/flare.json +207 -0
  390. package/dist/flare/deploys/mapper.d.ts +7 -0
  391. package/dist/flare/deploys/mapper.d.ts.map +1 -0
  392. package/dist/flare/deploys/mapper.js +40 -0
  393. package/dist/flare/deploys/mapper.js.map +1 -0
  394. package/dist/flare/index.d.ts +3 -0
  395. package/dist/flare/index.d.ts.map +1 -0
  396. package/dist/flare/index.js +20 -0
  397. package/dist/flare/index.js.map +1 -0
  398. package/dist/index.d.ts +7 -0
  399. package/dist/index.d.ts.map +1 -0
  400. package/dist/index.js +48 -0
  401. package/dist/index.js.map +1 -0
  402. package/dist/package.json +28 -0
  403. package/dist/songbird/abis.songbird.d.ts +4 -0
  404. package/dist/songbird/abis.songbird.d.ts.map +1 -0
  405. package/dist/songbird/abis.songbird.js +165 -0
  406. package/dist/songbird/abis.songbird.js.map +1 -0
  407. package/dist/songbird/artifacts/contracts/ftso/implementation/Ftso.sol/Ftso.json +955 -0
  408. package/dist/songbird/artifacts/contracts/ftso/implementation/FtsoManager.sol/FtsoManager.json +1111 -0
  409. package/dist/songbird/artifacts/contracts/ftso/interface/IIFtso.sol/IIFtso.json +811 -0
  410. package/dist/songbird/artifacts/contracts/ftso/interface/IIFtsoManager.sol/IIFtsoManager.json +603 -0
  411. package/dist/songbird/artifacts/contracts/ftso/lib/FtsoEpoch.sol/FtsoEpoch.json +10 -0
  412. package/dist/songbird/artifacts/contracts/ftso/lib/FtsoManagerSettings.sol/FtsoManagerSettings.json +10 -0
  413. package/dist/songbird/artifacts/contracts/ftso/lib/FtsoMedian.sol/FtsoMedian.json +10 -0
  414. package/dist/songbird/artifacts/contracts/ftso/lib/FtsoVote.sol/FtsoVote.json +10 -0
  415. package/dist/songbird/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockFtsoRegistry.json +443 -0
  416. package/dist/songbird/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockPriceSubmitter.json +241 -0
  417. package/dist/songbird/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockVoterWhitelister.json +198 -0
  418. package/dist/songbird/artifacts/contracts/ftso/priceProviderMockContracts/priceProviderMockFtso.sol/MockNpmFtso.json +906 -0
  419. package/dist/songbird/artifacts/contracts/genesis/implementation/FlareDaemon.sol/FlareDaemon.json +676 -0
  420. package/dist/songbird/artifacts/contracts/genesis/implementation/PriceSubmitter.sol/PriceSubmitter.json +407 -0
  421. package/dist/songbird/artifacts/contracts/genesis/implementation/StateConnector.sol/StateConnector.json +1003 -0
  422. package/dist/songbird/artifacts/contracts/genesis/interface/IFlareDaemonize.sol/IFlareDaemonize.json +37 -0
  423. package/dist/songbird/artifacts/contracts/genesis/interface/IFtsoGenesis.sol/IFtsoGenesis.json +91 -0
  424. package/dist/songbird/artifacts/contracts/genesis/interface/IFtsoRegistryGenesis.sol/IFtsoRegistryGenesis.json +30 -0
  425. package/dist/songbird/artifacts/contracts/genesis/interface/IIPriceSubmitter.sol/IIPriceSubmitter.json +285 -0
  426. package/dist/songbird/artifacts/contracts/genesis/interface/IInflationGenesis.sol/IInflationGenesis.json +18 -0
  427. package/dist/songbird/artifacts/contracts/governance/implementation/Governed.sol/Governed.json +126 -0
  428. package/dist/songbird/artifacts/contracts/governance/implementation/GovernedAtGenesis.sol/GovernedAtGenesis.json +139 -0
  429. package/dist/songbird/artifacts/contracts/governance/implementation/GovernedBase.sol/GovernedBase.json +115 -0
  430. package/dist/songbird/artifacts/contracts/governance/implementation/Governor.sol/Governor.json +785 -0
  431. package/dist/songbird/artifacts/contracts/governance/implementation/GovernorProposals.sol/GovernorProposals.json +24 -0
  432. package/dist/songbird/artifacts/contracts/governance/implementation/GovernorProposer.sol/GovernorProposer.json +171 -0
  433. package/dist/songbird/artifacts/contracts/governance/implementation/GovernorVotePower.sol/GovernorVotePower.json +24 -0
  434. package/dist/songbird/artifacts/contracts/governance/implementation/GovernorVotes.sol/GovernorVotes.json +10 -0
  435. package/dist/songbird/artifacts/contracts/governance/implementation/InflationAllocation.sol/InflationAllocation.json +351 -0
  436. package/dist/songbird/artifacts/contracts/governance/implementation/PollingFoundation.sol/PollingFoundation.json +994 -0
  437. package/dist/songbird/artifacts/contracts/governance/interface/IIGovernorProposer.sol/IIGovernorProposer.json +30 -0
  438. package/dist/songbird/artifacts/contracts/governance/interface/IIPollingFoundation.sol/IIPollingFoundation.json +671 -0
  439. package/dist/songbird/artifacts/contracts/inflation/implementation/Inflation.sol/Inflation.json +879 -0
  440. package/dist/songbird/artifacts/contracts/inflation/implementation/Supply.sol/Supply.json +403 -0
  441. package/dist/songbird/artifacts/contracts/inflation/interface/IIInflationPercentageProvider.sol/IIInflationPercentageProvider.json +24 -0
  442. package/dist/songbird/artifacts/contracts/inflation/interface/IIInflationReceiver.sol/IIInflationReceiver.json +44 -0
  443. package/dist/songbird/artifacts/contracts/inflation/interface/IIInflationSharingPercentageProvider.sol/IIInflationSharingPercentageProvider.json +36 -0
  444. package/dist/songbird/artifacts/contracts/inflation/interface/IISupply.sol/IISupply.json +88 -0
  445. package/dist/songbird/artifacts/contracts/inflation/lib/InflationAnnum.sol/InflationAnnum.json +10 -0
  446. package/dist/songbird/artifacts/contracts/inflation/lib/InflationAnnums.sol/InflationAnnums.json +10 -0
  447. package/dist/songbird/artifacts/contracts/inflation/lib/RewardService.sol/RewardService.json +30 -0
  448. package/dist/songbird/artifacts/contracts/inflation/lib/RewardServices.sol/RewardServices.json +49 -0
  449. package/dist/songbird/artifacts/contracts/mockXAsset/interface/ICollateralizable.sol/ICollateralizable.json +234 -0
  450. package/dist/songbird/artifacts/contracts/token/implementation/CheckPointable.sol/CheckPointable.json +129 -0
  451. package/dist/songbird/artifacts/contracts/token/implementation/CleanupBlockNumberManager.sol/CleanupBlockNumberManager.json +254 -0
  452. package/dist/songbird/artifacts/contracts/token/implementation/Delegatable.sol/Delegatable.json +222 -0
  453. package/dist/songbird/artifacts/contracts/token/implementation/GovernanceVotePower.sol/GovernanceVotePower.json +324 -0
  454. package/dist/songbird/artifacts/contracts/token/implementation/VPContract.sol/VPContract.json +774 -0
  455. package/dist/songbird/artifacts/contracts/token/implementation/VPToken.sol/VPToken.json +1102 -0
  456. package/dist/songbird/artifacts/contracts/token/implementation/WNat.sol/WNat.json +1195 -0
  457. package/dist/songbird/artifacts/contracts/token/interface/IICleanable.sol/IICleanable.json +63 -0
  458. package/dist/songbird/artifacts/contracts/token/interface/IIGovernanceVotePower.sol/IIGovernanceVotePower.json +252 -0
  459. package/dist/songbird/artifacts/contracts/token/interface/IIVPContract.sol/IIVPContract.json +609 -0
  460. package/dist/songbird/artifacts/contracts/token/interface/IIVPToken.sol/IIVPToken.json +790 -0
  461. package/dist/songbird/artifacts/contracts/token/lib/CheckPointHistory.sol/CheckPointHistory.json +10 -0
  462. package/dist/songbird/artifacts/contracts/token/lib/CheckPointHistoryCache.sol/CheckPointHistoryCache.json +10 -0
  463. package/dist/songbird/artifacts/contracts/token/lib/CheckPointsByAddress.sol/CheckPointsByAddress.json +10 -0
  464. package/dist/songbird/artifacts/contracts/token/lib/DelegateCheckPointHistory.sol/DelegateCheckPointHistory.json +10 -0
  465. package/dist/songbird/artifacts/contracts/token/lib/DelegateCheckPointsByAddress.sol/DelegateCheckPointsByAddress.json +10 -0
  466. package/dist/songbird/artifacts/contracts/token/lib/DelegationHistory.sol/DelegationHistory.json +24 -0
  467. package/dist/songbird/artifacts/contracts/token/lib/ExplicitDelegation.sol/ExplicitDelegation.json +10 -0
  468. package/dist/songbird/artifacts/contracts/token/lib/PercentageDelegation.sol/PercentageDelegation.json +24 -0
  469. package/dist/songbird/artifacts/contracts/token/lib/VotePower.sol/VotePower.json +10 -0
  470. package/dist/songbird/artifacts/contracts/token/lib/VotePowerCache.sol/VotePowerCache.json +10 -0
  471. package/dist/songbird/artifacts/contracts/tokenPools/implementation/DataAvailabilityRewardManager.sol/DataAvailabilityRewardManager.json +566 -0
  472. package/dist/songbird/artifacts/contracts/tokenPools/implementation/Distribution.sol/Distribution.json +391 -0
  473. package/dist/songbird/artifacts/contracts/tokenPools/implementation/FtsoRewardManager.sol/FtsoRewardManager.json +1027 -0
  474. package/dist/songbird/artifacts/contracts/tokenPools/interface/IIDataAvailabilityRewardManager.sol/IIDataAvailabilityRewardManager.json +203 -0
  475. package/dist/songbird/artifacts/contracts/tokenPools/interface/IIFtsoRewardManager.sol/IIFtsoRewardManager.json +558 -0
  476. package/dist/songbird/artifacts/contracts/tokenPools/interface/IITokenPool.sol/IITokenPool.json +34 -0
  477. package/dist/songbird/artifacts/contracts/utils/implementation/DateTimeLibrary.sol/BokkyPooBahsDateTimeLibrary.json +154 -0
  478. package/dist/songbird/artifacts/contracts/utils/implementation/FtsoRegistry.sol/FtsoRegistry.json +475 -0
  479. package/dist/songbird/artifacts/contracts/utils/implementation/GovernedAndFlareDaemonized.sol/GovernedAndFlareDaemonized.json +144 -0
  480. package/dist/songbird/artifacts/contracts/utils/implementation/RevertErrorTracking.sol/RevertErrorTracking.json +149 -0
  481. package/dist/songbird/artifacts/contracts/utils/implementation/SafePct.sol/SafePct.json +10 -0
  482. package/dist/songbird/artifacts/contracts/utils/implementation/VoterWhitelister.sol/VoterWhitelister.json +418 -0
  483. package/dist/songbird/artifacts/contracts/utils/interface/IIFtsoRegistry.sol/IIFtsoRegistry.json +315 -0
  484. package/dist/songbird/artifacts/contracts/utils/interface/IIVoterWhitelister.sol/IIVoterWhitelister.json +236 -0
  485. package/dist/songbird/deploys/contractAddresses.d.ts +29 -0
  486. package/dist/songbird/deploys/contractAddresses.d.ts.map +1 -0
  487. package/dist/songbird/deploys/contractAddresses.js +32 -0
  488. package/dist/songbird/deploys/contractAddresses.js.map +1 -0
  489. package/dist/songbird/deploys/mapper.d.ts +7 -0
  490. package/dist/songbird/deploys/mapper.d.ts.map +1 -0
  491. package/dist/songbird/deploys/mapper.js +40 -0
  492. package/dist/songbird/deploys/mapper.js.map +1 -0
  493. package/dist/songbird/deploys/songbird.json +132 -0
  494. package/dist/songbird/index.d.ts +3 -0
  495. package/dist/songbird/index.d.ts.map +1 -0
  496. package/dist/songbird/index.js +20 -0
  497. package/dist/songbird/index.js.map +1 -0
  498. package/package.json +28 -0
@@ -0,0 +1,774 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "VPContract",
4
+ "sourceName": "contracts/token/implementation/VPContract.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "contract IVPToken",
10
+ "name": "_ownerToken",
11
+ "type": "address"
12
+ },
13
+ {
14
+ "internalType": "bool",
15
+ "name": "_isReplacement",
16
+ "type": "bool"
17
+ }
18
+ ],
19
+ "stateMutability": "nonpayable",
20
+ "type": "constructor"
21
+ },
22
+ {
23
+ "anonymous": false,
24
+ "inputs": [
25
+ {
26
+ "indexed": false,
27
+ "internalType": "address",
28
+ "name": "_owner",
29
+ "type": "address"
30
+ },
31
+ {
32
+ "indexed": false,
33
+ "internalType": "uint256",
34
+ "name": "_blockNumber",
35
+ "type": "uint256"
36
+ }
37
+ ],
38
+ "name": "CreatedVotePowerCache",
39
+ "type": "event"
40
+ },
41
+ {
42
+ "anonymous": false,
43
+ "inputs": [
44
+ {
45
+ "indexed": true,
46
+ "internalType": "address",
47
+ "name": "from",
48
+ "type": "address"
49
+ },
50
+ {
51
+ "indexed": true,
52
+ "internalType": "address",
53
+ "name": "to",
54
+ "type": "address"
55
+ },
56
+ {
57
+ "indexed": false,
58
+ "internalType": "uint256",
59
+ "name": "priorVotePower",
60
+ "type": "uint256"
61
+ },
62
+ {
63
+ "indexed": false,
64
+ "internalType": "uint256",
65
+ "name": "newVotePower",
66
+ "type": "uint256"
67
+ }
68
+ ],
69
+ "name": "Delegate",
70
+ "type": "event"
71
+ },
72
+ {
73
+ "anonymous": false,
74
+ "inputs": [
75
+ {
76
+ "indexed": true,
77
+ "internalType": "address",
78
+ "name": "delegator",
79
+ "type": "address"
80
+ },
81
+ {
82
+ "indexed": true,
83
+ "internalType": "address",
84
+ "name": "delegatee",
85
+ "type": "address"
86
+ },
87
+ {
88
+ "indexed": false,
89
+ "internalType": "uint256",
90
+ "name": "votePower",
91
+ "type": "uint256"
92
+ },
93
+ {
94
+ "indexed": false,
95
+ "internalType": "uint256",
96
+ "name": "blockNumber",
97
+ "type": "uint256"
98
+ }
99
+ ],
100
+ "name": "Revoke",
101
+ "type": "event"
102
+ },
103
+ {
104
+ "inputs": [
105
+ {
106
+ "internalType": "address[]",
107
+ "name": "_owners",
108
+ "type": "address[]"
109
+ },
110
+ {
111
+ "internalType": "uint256",
112
+ "name": "_blockNumber",
113
+ "type": "uint256"
114
+ }
115
+ ],
116
+ "name": "batchVotePowerOfAt",
117
+ "outputs": [
118
+ {
119
+ "internalType": "uint256[]",
120
+ "name": "_votePowers",
121
+ "type": "uint256[]"
122
+ }
123
+ ],
124
+ "stateMutability": "view",
125
+ "type": "function"
126
+ },
127
+ {
128
+ "inputs": [],
129
+ "name": "cleanupBlockNumber",
130
+ "outputs": [
131
+ {
132
+ "internalType": "uint256",
133
+ "name": "",
134
+ "type": "uint256"
135
+ }
136
+ ],
137
+ "stateMutability": "view",
138
+ "type": "function"
139
+ },
140
+ {
141
+ "inputs": [
142
+ {
143
+ "internalType": "address",
144
+ "name": "_from",
145
+ "type": "address"
146
+ },
147
+ {
148
+ "internalType": "address",
149
+ "name": "_to",
150
+ "type": "address"
151
+ },
152
+ {
153
+ "internalType": "uint256",
154
+ "name": "_balance",
155
+ "type": "uint256"
156
+ },
157
+ {
158
+ "internalType": "uint256",
159
+ "name": "_bips",
160
+ "type": "uint256"
161
+ }
162
+ ],
163
+ "name": "delegate",
164
+ "outputs": [],
165
+ "stateMutability": "nonpayable",
166
+ "type": "function"
167
+ },
168
+ {
169
+ "inputs": [
170
+ {
171
+ "internalType": "address",
172
+ "name": "_from",
173
+ "type": "address"
174
+ },
175
+ {
176
+ "internalType": "address",
177
+ "name": "_to",
178
+ "type": "address"
179
+ },
180
+ {
181
+ "internalType": "uint256",
182
+ "name": "_balance",
183
+ "type": "uint256"
184
+ },
185
+ {
186
+ "internalType": "uint256",
187
+ "name": "_amount",
188
+ "type": "uint256"
189
+ }
190
+ ],
191
+ "name": "delegateExplicit",
192
+ "outputs": [],
193
+ "stateMutability": "nonpayable",
194
+ "type": "function"
195
+ },
196
+ {
197
+ "inputs": [
198
+ {
199
+ "internalType": "address",
200
+ "name": "_owner",
201
+ "type": "address"
202
+ }
203
+ ],
204
+ "name": "delegatesOf",
205
+ "outputs": [
206
+ {
207
+ "internalType": "address[]",
208
+ "name": "_delegateAddresses",
209
+ "type": "address[]"
210
+ },
211
+ {
212
+ "internalType": "uint256[]",
213
+ "name": "_bips",
214
+ "type": "uint256[]"
215
+ },
216
+ {
217
+ "internalType": "uint256",
218
+ "name": "_count",
219
+ "type": "uint256"
220
+ },
221
+ {
222
+ "internalType": "uint256",
223
+ "name": "_delegationMode",
224
+ "type": "uint256"
225
+ }
226
+ ],
227
+ "stateMutability": "view",
228
+ "type": "function"
229
+ },
230
+ {
231
+ "inputs": [
232
+ {
233
+ "internalType": "address",
234
+ "name": "_owner",
235
+ "type": "address"
236
+ },
237
+ {
238
+ "internalType": "uint256",
239
+ "name": "_blockNumber",
240
+ "type": "uint256"
241
+ }
242
+ ],
243
+ "name": "delegatesOfAt",
244
+ "outputs": [
245
+ {
246
+ "internalType": "address[]",
247
+ "name": "_delegateAddresses",
248
+ "type": "address[]"
249
+ },
250
+ {
251
+ "internalType": "uint256[]",
252
+ "name": "_bips",
253
+ "type": "uint256[]"
254
+ },
255
+ {
256
+ "internalType": "uint256",
257
+ "name": "_count",
258
+ "type": "uint256"
259
+ },
260
+ {
261
+ "internalType": "uint256",
262
+ "name": "_delegationMode",
263
+ "type": "uint256"
264
+ }
265
+ ],
266
+ "stateMutability": "view",
267
+ "type": "function"
268
+ },
269
+ {
270
+ "inputs": [
271
+ {
272
+ "internalType": "address",
273
+ "name": "_who",
274
+ "type": "address"
275
+ }
276
+ ],
277
+ "name": "delegationModeOf",
278
+ "outputs": [
279
+ {
280
+ "internalType": "uint256",
281
+ "name": "",
282
+ "type": "uint256"
283
+ }
284
+ ],
285
+ "stateMutability": "view",
286
+ "type": "function"
287
+ },
288
+ {
289
+ "inputs": [
290
+ {
291
+ "internalType": "address",
292
+ "name": "_from",
293
+ "type": "address"
294
+ },
295
+ {
296
+ "internalType": "address",
297
+ "name": "_to",
298
+ "type": "address"
299
+ },
300
+ {
301
+ "internalType": "uint256",
302
+ "name": "_count",
303
+ "type": "uint256"
304
+ }
305
+ ],
306
+ "name": "explicitDelegationHistoryCleanup",
307
+ "outputs": [
308
+ {
309
+ "internalType": "uint256",
310
+ "name": "",
311
+ "type": "uint256"
312
+ }
313
+ ],
314
+ "stateMutability": "nonpayable",
315
+ "type": "function"
316
+ },
317
+ {
318
+ "inputs": [],
319
+ "name": "isReplacement",
320
+ "outputs": [
321
+ {
322
+ "internalType": "bool",
323
+ "name": "",
324
+ "type": "bool"
325
+ }
326
+ ],
327
+ "stateMutability": "view",
328
+ "type": "function"
329
+ },
330
+ {
331
+ "inputs": [],
332
+ "name": "ownerToken",
333
+ "outputs": [
334
+ {
335
+ "internalType": "contract IVPToken",
336
+ "name": "",
337
+ "type": "address"
338
+ }
339
+ ],
340
+ "stateMutability": "view",
341
+ "type": "function"
342
+ },
343
+ {
344
+ "inputs": [
345
+ {
346
+ "internalType": "address",
347
+ "name": "_owner",
348
+ "type": "address"
349
+ },
350
+ {
351
+ "internalType": "uint256",
352
+ "name": "_count",
353
+ "type": "uint256"
354
+ }
355
+ ],
356
+ "name": "percentageDelegationHistoryCleanup",
357
+ "outputs": [
358
+ {
359
+ "internalType": "uint256",
360
+ "name": "",
361
+ "type": "uint256"
362
+ }
363
+ ],
364
+ "stateMutability": "nonpayable",
365
+ "type": "function"
366
+ },
367
+ {
368
+ "inputs": [
369
+ {
370
+ "internalType": "address",
371
+ "name": "_from",
372
+ "type": "address"
373
+ },
374
+ {
375
+ "internalType": "address",
376
+ "name": "_to",
377
+ "type": "address"
378
+ },
379
+ {
380
+ "internalType": "uint256",
381
+ "name": "_blockNumber",
382
+ "type": "uint256"
383
+ }
384
+ ],
385
+ "name": "revocationCleanup",
386
+ "outputs": [
387
+ {
388
+ "internalType": "uint256",
389
+ "name": "",
390
+ "type": "uint256"
391
+ }
392
+ ],
393
+ "stateMutability": "nonpayable",
394
+ "type": "function"
395
+ },
396
+ {
397
+ "inputs": [
398
+ {
399
+ "internalType": "address",
400
+ "name": "_from",
401
+ "type": "address"
402
+ },
403
+ {
404
+ "internalType": "address",
405
+ "name": "_to",
406
+ "type": "address"
407
+ },
408
+ {
409
+ "internalType": "uint256",
410
+ "name": "_balance",
411
+ "type": "uint256"
412
+ },
413
+ {
414
+ "internalType": "uint256",
415
+ "name": "_blockNumber",
416
+ "type": "uint256"
417
+ }
418
+ ],
419
+ "name": "revokeDelegationAt",
420
+ "outputs": [],
421
+ "stateMutability": "nonpayable",
422
+ "type": "function"
423
+ },
424
+ {
425
+ "inputs": [
426
+ {
427
+ "internalType": "address",
428
+ "name": "_cleanerContract",
429
+ "type": "address"
430
+ }
431
+ ],
432
+ "name": "setCleanerContract",
433
+ "outputs": [],
434
+ "stateMutability": "nonpayable",
435
+ "type": "function"
436
+ },
437
+ {
438
+ "inputs": [
439
+ {
440
+ "internalType": "uint256",
441
+ "name": "_blockNumber",
442
+ "type": "uint256"
443
+ }
444
+ ],
445
+ "name": "setCleanupBlockNumber",
446
+ "outputs": [],
447
+ "stateMutability": "nonpayable",
448
+ "type": "function"
449
+ },
450
+ {
451
+ "inputs": [
452
+ {
453
+ "internalType": "address",
454
+ "name": "_cbnManager",
455
+ "type": "address"
456
+ }
457
+ ],
458
+ "name": "setCleanupBlockNumberManager",
459
+ "outputs": [],
460
+ "stateMutability": "nonpayable",
461
+ "type": "function"
462
+ },
463
+ {
464
+ "inputs": [
465
+ {
466
+ "internalType": "address",
467
+ "name": "_from",
468
+ "type": "address"
469
+ },
470
+ {
471
+ "internalType": "uint256",
472
+ "name": "_balance",
473
+ "type": "uint256"
474
+ }
475
+ ],
476
+ "name": "undelegateAll",
477
+ "outputs": [],
478
+ "stateMutability": "nonpayable",
479
+ "type": "function"
480
+ },
481
+ {
482
+ "inputs": [
483
+ {
484
+ "internalType": "address",
485
+ "name": "_from",
486
+ "type": "address"
487
+ },
488
+ {
489
+ "internalType": "address[]",
490
+ "name": "_delegateAddresses",
491
+ "type": "address[]"
492
+ }
493
+ ],
494
+ "name": "undelegateAllExplicit",
495
+ "outputs": [
496
+ {
497
+ "internalType": "uint256",
498
+ "name": "",
499
+ "type": "uint256"
500
+ }
501
+ ],
502
+ "stateMutability": "nonpayable",
503
+ "type": "function"
504
+ },
505
+ {
506
+ "inputs": [
507
+ {
508
+ "internalType": "address",
509
+ "name": "_owner",
510
+ "type": "address"
511
+ },
512
+ {
513
+ "internalType": "uint256",
514
+ "name": "_balance",
515
+ "type": "uint256"
516
+ }
517
+ ],
518
+ "name": "undelegatedVotePowerOf",
519
+ "outputs": [
520
+ {
521
+ "internalType": "uint256",
522
+ "name": "",
523
+ "type": "uint256"
524
+ }
525
+ ],
526
+ "stateMutability": "view",
527
+ "type": "function"
528
+ },
529
+ {
530
+ "inputs": [
531
+ {
532
+ "internalType": "address",
533
+ "name": "_owner",
534
+ "type": "address"
535
+ },
536
+ {
537
+ "internalType": "uint256",
538
+ "name": "_balance",
539
+ "type": "uint256"
540
+ },
541
+ {
542
+ "internalType": "uint256",
543
+ "name": "_blockNumber",
544
+ "type": "uint256"
545
+ }
546
+ ],
547
+ "name": "undelegatedVotePowerOfAt",
548
+ "outputs": [
549
+ {
550
+ "internalType": "uint256",
551
+ "name": "",
552
+ "type": "uint256"
553
+ }
554
+ ],
555
+ "stateMutability": "view",
556
+ "type": "function"
557
+ },
558
+ {
559
+ "inputs": [
560
+ {
561
+ "internalType": "address",
562
+ "name": "_from",
563
+ "type": "address"
564
+ },
565
+ {
566
+ "internalType": "address",
567
+ "name": "_to",
568
+ "type": "address"
569
+ },
570
+ {
571
+ "internalType": "uint256",
572
+ "name": "_fromBalance",
573
+ "type": "uint256"
574
+ },
575
+ {
576
+ "internalType": "uint256",
577
+ "name": "_toBalance",
578
+ "type": "uint256"
579
+ },
580
+ {
581
+ "internalType": "uint256",
582
+ "name": "_amount",
583
+ "type": "uint256"
584
+ }
585
+ ],
586
+ "name": "updateAtTokenTransfer",
587
+ "outputs": [],
588
+ "stateMutability": "nonpayable",
589
+ "type": "function"
590
+ },
591
+ {
592
+ "inputs": [
593
+ {
594
+ "internalType": "address",
595
+ "name": "_owner",
596
+ "type": "address"
597
+ },
598
+ {
599
+ "internalType": "uint256",
600
+ "name": "_blockNumber",
601
+ "type": "uint256"
602
+ }
603
+ ],
604
+ "name": "votePowerCacheCleanup",
605
+ "outputs": [
606
+ {
607
+ "internalType": "uint256",
608
+ "name": "",
609
+ "type": "uint256"
610
+ }
611
+ ],
612
+ "stateMutability": "nonpayable",
613
+ "type": "function"
614
+ },
615
+ {
616
+ "inputs": [
617
+ {
618
+ "internalType": "address",
619
+ "name": "_from",
620
+ "type": "address"
621
+ },
622
+ {
623
+ "internalType": "address",
624
+ "name": "_to",
625
+ "type": "address"
626
+ },
627
+ {
628
+ "internalType": "uint256",
629
+ "name": "_balance",
630
+ "type": "uint256"
631
+ }
632
+ ],
633
+ "name": "votePowerFromTo",
634
+ "outputs": [
635
+ {
636
+ "internalType": "uint256",
637
+ "name": "",
638
+ "type": "uint256"
639
+ }
640
+ ],
641
+ "stateMutability": "view",
642
+ "type": "function"
643
+ },
644
+ {
645
+ "inputs": [
646
+ {
647
+ "internalType": "address",
648
+ "name": "_from",
649
+ "type": "address"
650
+ },
651
+ {
652
+ "internalType": "address",
653
+ "name": "_to",
654
+ "type": "address"
655
+ },
656
+ {
657
+ "internalType": "uint256",
658
+ "name": "_balance",
659
+ "type": "uint256"
660
+ },
661
+ {
662
+ "internalType": "uint256",
663
+ "name": "_blockNumber",
664
+ "type": "uint256"
665
+ }
666
+ ],
667
+ "name": "votePowerFromToAt",
668
+ "outputs": [
669
+ {
670
+ "internalType": "uint256",
671
+ "name": "",
672
+ "type": "uint256"
673
+ }
674
+ ],
675
+ "stateMutability": "view",
676
+ "type": "function"
677
+ },
678
+ {
679
+ "inputs": [
680
+ {
681
+ "internalType": "address",
682
+ "name": "_owner",
683
+ "type": "address"
684
+ },
685
+ {
686
+ "internalType": "uint256",
687
+ "name": "_count",
688
+ "type": "uint256"
689
+ }
690
+ ],
691
+ "name": "votePowerHistoryCleanup",
692
+ "outputs": [
693
+ {
694
+ "internalType": "uint256",
695
+ "name": "",
696
+ "type": "uint256"
697
+ }
698
+ ],
699
+ "stateMutability": "nonpayable",
700
+ "type": "function"
701
+ },
702
+ {
703
+ "inputs": [
704
+ {
705
+ "internalType": "address",
706
+ "name": "_who",
707
+ "type": "address"
708
+ }
709
+ ],
710
+ "name": "votePowerOf",
711
+ "outputs": [
712
+ {
713
+ "internalType": "uint256",
714
+ "name": "",
715
+ "type": "uint256"
716
+ }
717
+ ],
718
+ "stateMutability": "view",
719
+ "type": "function"
720
+ },
721
+ {
722
+ "inputs": [
723
+ {
724
+ "internalType": "address",
725
+ "name": "_who",
726
+ "type": "address"
727
+ },
728
+ {
729
+ "internalType": "uint256",
730
+ "name": "_blockNumber",
731
+ "type": "uint256"
732
+ }
733
+ ],
734
+ "name": "votePowerOfAt",
735
+ "outputs": [
736
+ {
737
+ "internalType": "uint256",
738
+ "name": "",
739
+ "type": "uint256"
740
+ }
741
+ ],
742
+ "stateMutability": "view",
743
+ "type": "function"
744
+ },
745
+ {
746
+ "inputs": [
747
+ {
748
+ "internalType": "address",
749
+ "name": "_who",
750
+ "type": "address"
751
+ },
752
+ {
753
+ "internalType": "uint256",
754
+ "name": "_blockNumber",
755
+ "type": "uint256"
756
+ }
757
+ ],
758
+ "name": "votePowerOfAtCached",
759
+ "outputs": [
760
+ {
761
+ "internalType": "uint256",
762
+ "name": "",
763
+ "type": "uint256"
764
+ }
765
+ ],
766
+ "stateMutability": "nonpayable",
767
+ "type": "function"
768
+ }
769
+ ],
770
+ "bytecode": "0x60c06040523480156200001157600080fd5b506040516200514538038062005145833981810160405260408110156200003757600080fd5b5080516020909101516001600160a01b038216620000875760405162461bcd60e51b8152600401808060200182810382526023815260200180620051226023913960400191505060405180910390fd5b606082901b6001600160601b031916608052151560f881901b60a0526001600160a01b039091169060ff16614fd56200014d60003980610f91528061161d528061171352806117a752806118945280612196528061226b528061272b5250806108c05280610a195280610b415280610b7f5280610c775280610dc35280610ed25280611005528061110d528061121c528061129552806112e1528061130a528061165e5280611740528061192e5280611a005280611bb35280611bdc5250614fd56000f3fe608060405234801561001057600080fd5b50600436106101c45760003560e01c8063833aca92116100f9578063cabc452811610097578063eadb436211610071578063eadb4362146107fb578063ed475a791461083d578063f683776714610869578063f6a494af1461088f576101c4565b8063cabc452814610791578063deea13e7146107c7578063e587497e146107cf576101c4565b806392bfe6d8116100d357806392bfe6d8146106d75780639dc6b9f214610703578063aa94d3f214610739578063c7c62fab14610755576101c4565b8063833aca9214610639578063891339a8146106755780638c0b6b40146106a1576101c4565b806349e3c7e511610166578063653718831161014057806365371883146104f65780637de5b8ed1461051a5780637f4fcaa9146105e75780637f57d58f1461060d576101c4565b806349e3c7e5146103995780634a03d5561461048e5780636230001a146104ba576101c4565b8063142d1018116101a2578063142d1018146102d95780631a05274c146102ff578063315039271461032b578063404d9e821461035d576101c4565b806305109ecf146101c95780630f8b8af7146101f757806313de97f5146102bc575b600080fd5b6101f5600480360360408110156101df57600080fd5b506001600160a01b0381351690602001356108b5565b005b6102aa6004803603604081101561020d57600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561023857600080fd5b82018360208201111561024a57600080fd5b8035906020019184602083028401116401000000008311171561026c57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550610a0c945050505050565b60408051918252519081900360200190f35b6101f5600480360360208110156102d257600080fd5b5035610b36565b6102aa600480360360208110156102ef57600080fd5b50356001600160a01b0316610c55565b6102aa6004803603604081101561031557600080fd5b506001600160a01b038135169060200135610d16565b6102aa6004803603606081101561034157600080fd5b506001600160a01b038135169060208101359060400135610d8c565b6101f56004803603608081101561037357600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135610db8565b61043e600480360360408110156103af57600080fd5b8101906020810181356401000000008111156103ca57600080fd5b8201836020820111156103dc57600080fd5b803590602001918460208302840111640100000000831117156103fe57600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295505091359250610f81915050565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561047a578181015183820152602001610462565b505050509050019250505060405180910390f35b6102aa600480360360408110156104a457600080fd5b506001600160a01b0381351690602001356110da565b6101f5600480360360808110156104d057600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611102565b6104fe611293565b604080516001600160a01b039092168252519081900360200190f35b6105406004803603602081101561053057600080fd5b50356001600160a01b03166112b7565b604051808060200180602001858152602001848152602001838103835287818151815260200191508051906020019060200280838360005b83811015610590578181015183820152602001610578565b50505050905001838103825286818151815260200191508051906020019060200280838360005b838110156105cf5781810151838201526020016105b7565b50505050905001965050505050505060405180910390f35b6101f5600480360360208110156105fd57600080fd5b50356001600160a01b03166112d6565b6102aa6004803603604081101561062357600080fd5b506001600160a01b038135169060200135611407565b6102aa6004803603608081101561064f57600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611487565b6102aa6004803603604081101561068b57600080fd5b506001600160a01b0381351690602001356114a0565b6102aa600480360360608110156106b757600080fd5b506001600160a01b0381358116916020810135909116906040013561155c565b6102aa600480360360408110156106ed57600080fd5b506001600160a01b038135169060200135611619565b6102aa6004803603606081101561071957600080fd5b506001600160a01b03813581169160208101359091169060400135611704565b610741611711565b604080519115158252519081900360200190f35b6101f56004803603608081101561076b57600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611735565b6102aa600480360360608110156107a757600080fd5b506001600160a01b038135811691602081013590911690604001356117ff565b6102aa611881565b6102aa600480360360408110156107e557600080fd5b506001600160a01b038135169060200135611890565b6101f5600480360360a081101561081157600080fd5b506001600160a01b038135811691602081013590911690604081013590606081013590608001356119f5565b6105406004803603604081101561085357600080fd5b506001600160a01b038135169060200135611ad1565b6102aa6004803603602081101561087f57600080fd5b50356001600160a01b0316611b92565b6101f5600480360360208110156108a557600080fd5b50356001600160a01b0316611ba8565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610925576040805162461bcd60e51b815260206004820152601060248201526f37b7363c9037bbb732b9103a37b5b2b760811b604482015290519081900360640190fd5b8161092f81611cc0565b6040518060400160405280601c81526020017f416c72656164792064656c656761746564206578706c696369746c7900000000815250906109ee5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156109b357818101518382015260200161099b565b50505050905090810190601f1680156109e05780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506109f883611d07565b15610a0757610a078383611d9f565b505050565b6000336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610a7e576040805162461bcd60e51b815260206004820152601060248201526f37b7363c9037bbb732b9103a37b5b2b760811b604482015290519081900360640190fd5b82610a8881611f3f565b6040518060400160405280601f81526020017f416c72656164792064656c6567617465642062792070657263656e746167650081525090610b0a5760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156109b357818101518382015260200161099b565b50610b1484611d07565b15610b2a57610b238484611f76565b9150610b2f565b600091505b5092915050565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161480610b7757506008546001600160a01b031633145b80610c0e57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635aa6e6756040518163ffffffff1660e01b815260040160206040518083038186803b158015610bd657600080fd5b505afa158015610bea573d6000803e3d6000fd5b505050506040513d6020811015610c0057600080fd5b50516001600160a01b031633145b610c495760405162461bcd60e51b815260040180806020018281038252602f815260200180614e70602f913960400191505060405180910390fd5b610c528161210e565b50565b6000610c6082612192565b15610c7557610c6e826121df565b9050610d11565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a08231836040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b158015610ce257600080fd5b505afa158015610cf6573d6000803e3d6000fd5b505050506040513d6020811015610d0c57600080fd5b505190505b919050565b6007546000906001600160a01b03163314610d70576040805162461bcd60e51b815260206004820152601560248201527413db9b1e4818db19585b995c8818dbdb9d1c9858dd605a1b604482015290519081900360640190fd5b600654610d8390600390859085906121ec565b90505b92915050565b6000610d9784612192565b15610dae57610da78484846121fa565b9050610db1565b50815b9392505050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610e28576040805162461bcd60e51b815260206004820152601060248201526f37b7363c9037bbb732b9103a37b5b2b760811b604482015290519081900360640190fd5b83610e3281611f3f565b6040518060400160405280601f81526020017f416c72656164792064656c6567617465642062792070657263656e746167650081525090610eb45760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156109b357818101518382015260200161099b565b50610ebf8584612269565b610ec884612192565b610f6e57610f6e847f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a08231876040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b158015610f3d57600080fd5b505afa158015610f51573d6000803e3d6000fd5b505050506040513d6020811015610f6757600080fd5b5051612269565b610f7a85858585612306565b5050505050565b6060610f8d83836125eb565b90507f000000000000000000000000000000000000000000000000000000000000000015610d865760005b8151811015610b2f57818181518110610fcd57fe5b60200260200101516000148015610ffe5750610ffc848281518110610fee57fe5b602002602001015184612727565b155b156110d2577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316634ee2cd7e85838151811061103e57fe5b6020026020010151856040518363ffffffff1660e01b815260040180836001600160a01b031681526020018281526020019250505060206040518083038186803b15801561108b57600080fd5b505afa15801561109f573d6000803e3d6000fd5b505050506040513d60208110156110b557600080fd5b505182518390839081106110c557fe5b6020026020010181815250505b600101610fb8565b60006110e583612192565b156110fb576110f48383612788565b9050610d86565b5080610d86565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611172576040805162461bcd60e51b815260206004820152601060248201526f37b7363c9037bbb732b9103a37b5b2b760811b604482015290519081900360640190fd5b8361117c81611cc0565b6040518060400160405280601c81526020017f416c72656164792064656c656761746564206578706c696369746c7900000000815250906111fe5760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156109b357818101518382015260200161099b565b506112098584612269565b61121284612192565b61128757611287847f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a08231876040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b158015610f3d57600080fd5b610f7a85858585612795565b7f000000000000000000000000000000000000000000000000000000000000000081565b6060806000806112c78543611ad1565b93509350935093509193509193565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016148061139957507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635aa6e6756040518163ffffffff1660e01b815260040160206040518083038186803b15801561136157600080fd5b505afa158015611375573d6000803e3d6000fd5b505050506040513d602081101561138b57600080fd5b50516001600160a01b031633145b6113e5576040805162461bcd60e51b81526020600482015260186024820152776f6e6c79206f776e6572206f7220676f7665726e616e636560401b604482015290519081900360640190fd5b600880546001600160a01b0319166001600160a01b0392909216919091179055565b6007546000906001600160a01b03163314611461576040805162461bcd60e51b815260206004820152601560248201527413db9b1e4818db19585b995c8818dbdb9d1c9858dd605a1b604482015290519081900360640190fd5b6006546001600160a01b0384166000908152600160205260409020610d83918490612a08565b600061149585858585612a15565b90505b949350505050565b6007546000906001600160a01b031633146114fa576040805162461bcd60e51b815260206004820152601560248201527413db9b1e4818db19585b995c8818dbdb9d1c9858dd605a1b604482015290519081900360640190fd5b6006548210611550576040805162461bcd60e51b815260206004820152601e60248201527f4e6f20636c65616e757020616674657220636c65616e757020626c6f636b0000604482015290519081900360640190fd5b610d8360048484612a8c565b6007546000906001600160a01b031633146115b6576040805162461bcd60e51b815260206004820152601560248201527413db9b1e4818db19585b995c8818dbdb9d1c9858dd605a1b604482015290519081900360640190fd5b600654821061160c576040805162461bcd60e51b815260206004820152601e60248201527f4e6f20636c65616e757020616674657220636c65616e757020626c6f636b0000604482015290519081900360640190fd5b6114986004858585612af9565b60007f0000000000000000000000000000000000000000000000000000000000000000158061164d575061164d8383612727565b1561165c576110f48383612b87565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316634ee2cd7e84846040518363ffffffff1660e01b815260040180836001600160a01b031681526020018281526020019250505060206040518083038186803b1580156116d157600080fd5b505afa1580156116e5573d6000803e3d6000fd5b505050506040513d60208110156116fb57600080fd5b50519050610d86565b6000611498848484612bec565b7f000000000000000000000000000000000000000000000000000000000000000081565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146117a5576040805162461bcd60e51b815260206004820152601060248201526f37b7363c9037bbb732b9103a37b5b2b760811b604482015290519081900360640190fd5b7f000000000000000000000000000000000000000000000000000000000000000015806117e857506117d78482612727565b80156117e857506117e88382612727565b156117f9576117f984848484612bfa565b50505050565b6007546000906001600160a01b03163314611859576040805162461bcd60e51b815260206004820152601560248201527413db9b1e4818db19585b995c8818dbdb9d1c9858dd605a1b604482015290519081900360640190fd5b6006546001600160a01b03851660009081526002602052604090206114989185908590612cf5565b600061188b612d1c565b905090565b60007f000000000000000000000000000000000000000000000000000000000000000015806118c457506118c48383612727565b156118d3576110f48383612d22565b604080516001600160a01b038516602080830191909152818301859052825180830384018152606090920183528151918101919091206000818152600a90925291902054801561192a57600019019150610d869050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316634ee2cd7e87876040518363ffffffff1660e01b815260040180836001600160a01b031681526020018281526020019250505060206040518083038186803b1580156119a157600080fd5b505afa1580156119b5573d6000803e3d6000fd5b505050506040513d60208110156119cb57600080fd5b505190506119da816001612e22565b6000938452600a602052604090932092909255509050610d86565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611a65576040805162461bcd60e51b815260206004820152601060248201526f37b7363c9037bbb732b9103a37b5b2b760811b604482015290519081900360640190fd5b6001600160a01b038516611a8d57611a7d8483612269565b611a88848383612e7c565b610f7a565b6001600160a01b038416611ab057611aa58584612269565b611a88858483612eb1565b611aba8584612269565b611ac48483612269565b610f7a8585858585612f93565b6060806000806000611ae2876130a3565b90506001816002811115611af257fe5b1415611b0c57611b0287876130c1565b9095509350611b76565b6000816002811115611b1a57fe5b1415611b3f576040805160008082526020820190815281830190925295509350611b76565b60405162461bcd60e51b8152600401808060200182810382526033815260200180614f6d6033913960400191505060405180910390fd5b84519250806002811115611b8657fe5b91505092959194509250565b6000611b9d826130a3565b6002811115610d8657fe5b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161480611c6b57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635aa6e6756040518163ffffffff1660e01b815260040160206040518083038186803b158015611c3357600080fd5b505afa158015611c47573d6000803e3d6000fd5b505050506040513d6020811015611c5d57600080fd5b50516001600160a01b031633145b611cb7576040805162461bcd60e51b81526020600482015260186024820152776f6e6c79206f776e6572206f7220676f7665726e616e636560401b604482015290519081900360640190fd5b610c5281613300565b6001600160a01b03811660009081526020819052604081205460ff1681816002811115611ce957fe5b1480610db1575060015b816002811115611cff57fe5b149392505050565b6001600160a01b03811660009081526020819052604081205460ff1681816002811115611d3057fe5b1415611d40576000915050610d11565b6002816002811115611d4e57fe5b1415611d7e576001600160a01b0383166000908152600260205260408120611d7590613322565b11915050610d11565b6001600160a01b0383166000908152600160205260408120611d759061332d565b6001600160a01b03821660009081526020819052604081205460ff1690816002811115611dc857fe5b1415611dd45750611f3b565b6001816002811115611de257fe5b14611e1e5760405162461bcd60e51b815260040180806020018281038252603c815260200180614d9c603c913960400191505060405180910390fd5b6001600160a01b03831660009081526001602052604081209080611e4183613339565b9150915060005b8251811015611f1a576000838281518110611e5f57fe5b602002602001015190506000611e95848481518110611e7a57fe5b60200260200101516127108a61334e9092919063ffffffff16565b9050611ea460038a8484613447565b600654611eb8906003908b906002906121ec565b50600654611ecd9060039084906002906121ec565b50816001600160a01b0316896001600160a01b0316600080516020614e26833981519152836000604051808381526020018281526020019250505060405180910390a35050600101611e48565b50611f2483613484565b600654611f35908490600290612a08565b50505050505b5050565b6001600160a01b03811660009081526020819052604081205460ff1681816002811115611f6857fe5b1480610db157506002611cf3565b6001600160a01b03821660009081526020819052604081205460ff1681816002811115611f9f57fe5b1415611faf576000915050610d86565b6002816002811115611fbd57fe5b14611ff95760405162461bcd60e51b8152600401808060200182810382526042815260200180614e9f6042913960600191505060405180910390fd5b6001600160a01b0384166000908152600260205260408120905b84518110156120fb57600085828151811061202a57fe5b602002602001015190506000612049828561348d90919063ffffffff16565b9050806120575750506120f3565b6120646003898484613447565b600654612078906003908a906002906121ec565b5060065461208d9060039084906002906121ec565b5061209a8483600061349c565b6006546120ad9085908490600290612cf5565b50816001600160a01b0316886001600160a01b0316600080516020614e26833981519152836000604051808381526020018281526020019250505060405180910390a350505b600101612013565b5061210581613322565b95945050505050565b60065481101561214f5760405162461bcd60e51b8152600401808060200182810382526028815260200180614dfe6028913960400191505060405180910390fd5b43811061218d5760405162461bcd60e51b8152600401808060200182810382526021815260200180614d7b6021913960400191505060405180910390fd5b600655565b60007f00000000000000000000000000000000000000000000000000000000000000006121c157506001610d11565b506001600160a01b0316600090815260096020526040902054151590565b6000610d86600383613506565b600061149585858585613513565b60008160065481101561223e5760405162461bcd60e51b815260040180806020018281038252602a815260200180614e46602a913960400191505060405180910390fd5b600061224b86868661354e565b905060008061225a878461362c565b9550505050505b509392505050565b7f000000000000000000000000000000000000000000000000000000000000000061229357611f3b565b6001600160a01b038216600090815260096020526040902054611f3b576122b9826121df565b1580156122cc57506122ca82611d07565b155b6122d257fe5b6122de82600083612e7c565b6122e9436001612e22565b6001600160a01b0383166000908152600960205260409020555050565b6001600160a01b03831661235b576040805162461bcd60e51b815260206004820152601760248201527643616e6e6f742064656c656761746520746f207a65726f60481b604482015290519081900360640190fd5b836001600160a01b0316836001600160a01b031614156123bc576040805162461bcd60e51b815260206004820152601760248201527621b0b73737ba103232b632b3b0ba32903a379039b2b63360491b604482015290519081900360640190fd5b6123c584611f3f565b612416576040805162461bcd60e51b815260206004820152601960248201527f43616e6e6f742064656c656761746520627920616d6f756e7400000000000000604482015290519081900360640190fd5b6001600160a01b038416600090815260026020526040812090612439828661348d565b9050808310156124575761245260038787868503613447565b612507565b600061246d826124678988612788565b90612e22565b9050838110156040518060400160405280602081526020017f556e64656c65676174656420766f746520706f77657220746f6f20736d616c6c815250906124f55760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156109b357818101518382015260200161099b565b5061250560038888858803613652565b505b60065461251b9060039088906002906121ec565b506006546125309060039087906002906121ec565b5061253c82868561349c565b60065461254f9083908790600290612cf5565b5060026001600160a01b03871660009081526020819052604090205460ff16600281111561257957fe5b146125a2576001600160a01b0386166000908152602081905260409020805460ff191660021790555b846001600160a01b0316866001600160a01b0316600080516020614e268339815191528386604051808381526020018281526020019250505060405180910390a3505050505050565b60608160065481101561262f5760405162461bcd60e51b815260040180806020018281038252602a815260200180614e46602a913960400191505060405180910390fd5b438310612683576040805162461bcd60e51b815260206004820181905260248201527f43616e206f6e6c79206265207573656420666f72207061737420626c6f636b73604482015290519081900360640190fd5b835167ffffffffffffffff8111801561269b57600080fd5b506040519080825280602002602001820160405280156126c5578160200160208202803683370190505b50915060005b845181101561271f5761270060038683815181106126e557fe5b602002602001015186600461368f909392919063ffffffff16565b83828151811061270c57fe5b60209081029190910101526001016126cb565b505092915050565b60007f000000000000000000000000000000000000000000000000000000000000000061275657506001610d86565b6001600160a01b0383166000908152600960205260409020548015801590611498575060001901919091111592915050565b6000610d838383436121fa565b6001600160a01b0383166127ea576040805162461bcd60e51b815260206004820152601760248201527643616e6e6f742064656c656761746520746f207a65726f60481b604482015290519081900360640190fd5b836001600160a01b0316836001600160a01b0316141561284b576040805162461bcd60e51b815260206004820152601760248201527621b0b73737ba103232b632b3b0ba32903a379039b2b63360491b604482015290519081900360640190fd5b61285484611cc0565b6128a5576040805162461bcd60e51b815260206004820152601d60248201527f43616e6e6f742064656c65676174652062792070657263656e74616765000000604482015290519081900360640190fd5b6001600160a01b0384166000908152600160205260408120906128c882866136fe565b90506000806128d884888761370a565b6006546128e9908590600290612a08565b508215612900576128fd868461271061334e565b91505b841561291657612913868661271061334e565b90505b818110156129325761292d60038989848603613447565b612941565b61294160038989858503613652565b600654612955906003908a906002906121ec565b5060065461296a9060039089906002906121ec565b5060016001600160a01b03891660009081526020819052604090205460ff16600281111561299457fe5b146129bd576001600160a01b0388166000908152602081905260409020805460ff191660011790555b866001600160a01b0316886001600160a01b0316600080516020614e268339815191528484604051808381526020018281526020019250505060405180910390a35050505050505050565b60006114988484846137b1565b600081600654811015612a595760405162461bcd60e51b815260040180806020018281038252602a815260200180614e46602a913960400191505060405180910390fd5b612a66600487878661388e565b15612a745760009150612a83565b612a80868686866138e2565b91505b50949350505050565b604080516001600160a01b038416602080830191909152818301849052825180830384018152606090920183528151918101919091206000818152918690529181205490919015612aee57600090815260208590526040812055506001610db1565b506000949350505050565b604080516001600160a01b03808616602080840191909152828401859052835180840385018152606090930184528251928101929092206000818152600189018452848120928716815292829052928220549192918015612b7957506001600160a01b038516600090815260209190915260408120555060019050611498565b506000979650505050505050565b600081600654811015612bcb5760405162461bcd60e51b815260040180806020018281038252602a815260200180614e46602a913960400191505060405180910390fd5b43831015612be157610b2360046003868661368f565b610b23600385613506565b6000611498848484436138e2565b80600654811015612c3c5760405162461bcd60e51b815260040180806020018281038252602a815260200180614e46602a913960400191505060405180910390fd5b438210612c7a5760405162461bcd60e51b815260040180806020018281038252603b815260200180614f02603b913960400191505060405180910390fd5b6000612c88868686866138e2565b9050612c9a6004600388888588613995565b846001600160a01b0316866001600160a01b03167fd6f80c7d68e3e62bd7a51c3d37e575c1cfbc311c07487b69ef4eb570bc21cb688386604051808381526020018281526020019250505060405180910390a3505050505050565b6000612d02858484613b08565b9050612d1360028601858585613513565b01949350505050565b60065490565b600081600654811015612d665760405162461bcd60e51b815260040180806020018281038252602a815260200180614e46602a913960400191505060405180910390fd5b438310612dba576040805162461bcd60e51b815260206004820181905260248201527f43616e206f6e6c79206265207573656420666f72207061737420626c6f636b73604482015290519081900360640190fd5b600080612dcb600460038888613ba7565b915091508015612a8357604080516001600160a01b03881681526020810187905281517fb0b412112c2958bbc2537fa96db51ddcfe7d0d074143f0b5308b6aab19b6694b929181900390910190a150949350505050565b600082820183811015610d83576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b612e8860038483613c31565b600654612e9c9060039085906002906121ec565b50610a078383612eac8185612e22565b613c58565b6000612ed882604051806060016040528060268152602001614dd860269139859190613d99565b9050612ee5848483613c58565b612ef0848484613df3565b6040518060400160405280602081526020017f556e64656c65676174656420766f746520706f77657220746f6f20736d616c6c81525090612f725760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156109b357818101518382015260200161099b565b50612f7f60038584613e40565b600654610f7a9060039086906002906121ec565b6000612fba82604051806060016040528060268152602001614dd860269139869190613d99565b9050612fc7868583613c58565b612fd2868584613df3565b6040518060400160405280602081526020017f556e64656c65676174656420766f746520706f77657220746f6f20736d616c6c815250906130545760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156109b357818101518382015260200161099b565b506130626003878785613e67565b6006546130769060039088906002906121ec565b5060065461308b9060039087906002906121ec565b5061309b8584612eac8186612e22565b505050505050565b6001600160a01b031660009081526020819052604090205460ff1690565b606080826006548110156131065760405162461bcd60e51b815260040180806020018281038252602a815260200180614e46602a913960400191505060405180910390fd5b6001600160a01b038516600090815260016020526040902060608061312b8388613e8e565b909250905060005b825181101561318f576131678984838151811061314c57fe5b60200260200101518a600461388e909392919063ffffffff16565b1561318757600082828151811061317a57fe5b6020026020010181815250505b600101613133565b506000805b83518110156131c7578281815181106131a957fe5b60200260200101516000146131bf576001909101905b600101613194565b508067ffffffffffffffff811180156131df57600080fd5b50604051908082528060200260200182016040528015613209578160200160208202803683370190505b5096508067ffffffffffffffff8111801561322357600080fd5b5060405190808252806020026020018201604052801561324d578160200160208202803683370190505b5095506000805b84518110156132f25783818151811061326957fe5b60200260200101516000146132ea5784818151811061328457fe5b602002602001015189838151811061329857fe5b60200260200101906001600160a01b031690816001600160a01b0316815250508381815181106132c457fe5b60200260200101518883815181106132d857fe5b60209081029190910101526001909101905b600101613254565b505050505050509250929050565b600780546001600160a01b0319166001600160a01b0392909216919091179055565b6000610d8682613ea6565b6000610d868243613eb2565b60608061334583613f09565b91509150915091565b6000808211613397576040805162461bcd60e51b815260206004820152601060248201526f4469766973696f6e206279207a65726f60801b604482015290519081900360640190fd5b836133a457506000610db1565b838302838582816133b157fe5b0414156133ca578281816133c157fe5b04915050610db1565b60008386816133d557fe5b04905060008487816133e357fe5b06905060008587816133f157fe5b04905060008688816133ff57fe5b06905061225a613419886134138685613f16565b90613f6f565b6124676134268686613f16565b6124676134338987613f16565b6124678d6134418c8b613f16565b90613f16565b82826001600160a01b03821615801561346757506001600160a01b038116155b1561346e57fe5b826134785761309b565b61309b86858786613fd6565b610c5281614065565b6000610d836002840183614088565b60006134ab6002850184614088565b905060006134ec8361246784604051806040016040528060098152602001680546f74616c203c20360bc1b8152506134e58a600001613ea6565b9190613d99565b90506134fc600286018585614095565b610f7a85826140b3565b6000610d8383834361417c565b60006001600160a01b03841615612aee576001600160a01b0384166000908152602086905260409020613547908484613b08565b9050611498565b6000816006548110156135925760405162461bcd60e51b815260040180806020018281038252602a815260200180614e46602a913960400191505060405180910390fd5b6001600160a01b03851660009081526020819052604081205460ff16908160028111156135bb57fe5b14156135cb576000925050612261565b60028160028111156135d957fe5b1415613609576001600160a01b03861660009081526002602052604090206136019085614189565b925050612261565b6001600160a01b0386166000908152600160205260409020613601908686614195565b600080838311156136425750600090508061364b565b50600190508183035b9250929050565b82826001600160a01b03821615801561367257506001600160a01b038116155b1561367957fe5b826136835761309b565b61309b86868686613fd6565b604080516001600160a01b038416602080830191909152818301849052825180830384018152606090920183528151918101919091206000818152918790529181205490919080156136e8576000190191506114989050565b6136f386868661417c565b979650505050505050565b6000610d8383836141a5565b61271081111561371657fe5b6137218383836141b2565b61271061372d84614293565b11156040518060400160405280601c81526020017f4d61782064656c65676174696f6e206269707320657863656564656400000000815250906117f95760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156109b357818101518382015260200161099b565b6000816137c057506000610db1565b8354806137d1576000915050610db1565b600185015460006137ee6137e58388612e22565b6001850361429f565b9050815b818110801561382457508588600001826001018154811061380f57fe5b90600052602060002090600302016000015411155b156138705787600001818154811061383857fe5b600091825260208220600390910201818155906138586001830182614d18565b613866600283016000614d18565b50506001016137f2565b8281111561388057600188018190555b919091039695505050505050565b604080516001600160a01b0394851660208083019190915281830193909352815180820383018152606090910182528051908301206000908152600195909501825280852092909316845252902054151590565b6001600160a01b03841660009081526020819052604081205460ff168181600281111561390b57fe5b141561391b576000915050611498565b600181600281111561392957fe5b141561396a576001600160a01b03861660009081526001602052604081206139529087866142b5565b9050613961858261271061334e565b92505050611498565b6001600160a01b038616600090815260026020526040902061398d9086856142c2565b915050611498565b8161399f5761309b565b604080516001600160a01b0380871660208084019190915282840185905283518084038501815260609093018452825192810192909220600081815260018b018452848120928816815291909252919091205415613a36576040805162461bcd60e51b815260206004820152600f60248201526e105b1c9958591e481c995d9bdad959608a1b604482015290519081900360640190fd5b6000613a4488888786613ba7565b5090506000858460405160200180836001600160a01b0316815260200182815260200192505050604051602081830303815290604052805190602001209050613ad78982613ad2886040518060400160405280601781526020017f5265766f6b65642076616c756520746f6f206c6172676500000000000000000081525087613d999092919063ffffffff16565b6142d2565b5050600090815260018701602090815260408083206001600160a01b03871684529091529020829055505050505050565b600081613b1757506000610db1565b835480613b28576000915050610db1565b60018501546000613b3c6137e58388612e22565b9050815b8181108015613b72575085886000018260010181548110613b5d57fe5b90600052602060002090600202016000015411155b1561387057876000018181548110613b8657fe5b60009182526020822060029091020181815560019081019190915501613b40565b604080516001600160a01b0384166020808301919091528183018490528251808303840181526060909201835281519181019190912060008181529187905291812054909182918015613c055760001901925060009150613c289050565b6000613c1288888861417c565b9050613c1f8984836142d2565b93506001925050505b94509492505050565b80613c3b57610a07565b6001600160a01b038216613c4b57fe5b610a078360008484613fd6565b60016001600160a01b03841660009081526020819052604090205460ff166002811115613c8157fe5b1415610a07576001600160a01b03831660009081526001602052604081209080613caa83613339565b9150915060005b8251811015611f35576000838281518110613cc857fe5b602002602001015190506000613ce3848481518110611e7a57fe5b90506000613cf6858581518110611e7a57fe5b905081811115613d1457613d0f60038b85858503613652565b613d23565b613d2360038b85848603613447565b600654613d37906003908c906002906121ec565b50600654613d4c9060039085906002906121ec565b50826001600160a01b03168a6001600160a01b0316600080516020614e268339815191528484604051808381526020018281526020019250505060405180910390a3505050600101613cb1565b60008184841115613deb5760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156109b357818101518382015260200161099b565b505050900390565b600060026001600160a01b03851660009081526020819052604090205460ff166002811115613e1e57fe5b1415613e385781613e2f8585612788565b10159050610db1565b506001610db1565b80613e4a57610a07565b6001600160a01b038216613e5a57fe5b610a078383600084613fd6565b82826001600160a01b038216158015613e8757506001600160a01b038116155b1561368357fe5b606080613e9b84846142f0565b915091509250929050565b6000610d86824361448c565b6000806000613ec9856000018660010154866145b2565b9150915081613edd57600092505050610d86565b846000018181548110613eec57fe5b600091825260209091206001600390920201015495945050505050565b60608061334583436142f0565b600082613f2557506000610d86565b82820282848281613f3257fe5b0414610d835760405162461bcd60e51b8152600401808060200182810382526021815260200180614ee16021913960400191505060405180910390fd5b6000808211613fc5576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b818381613fce57fe5b049392505050565b80613fe0576117f9565b6001600160a01b038316158015613ffe57506001600160a01b038216155b1561400557fe5b6001600160a01b0383161561403957600061402a826140248787614088565b90614690565b9050614037858583614095565b505b6001600160a01b038216156117f9576000614058826124678786614088565b9050610f7a858483614095565b805415610c52578054600181018255600082815260209020436003909202015550565b6000610d838383436146ed565b6001600160a01b03821660009081526020849052604090206117f981835b8154806140f7576040805180820190915243815260208082018481528554600181810188556000888152939093209351600290910290930192835551910155610a07565b600083600001600183038154811061410b57fe5b600091825260209091206002909102018054909150438114156141345760018201849055610f7a565b80431161413d57fe5b604080518082019091524381526020808201868152875460018181018a5560008a81529390932093516002909102909301928355519101555050505050565b60006114988484846146ed565b6000610d83838361448c565b600061149884846127108561470f565b6000610d838383436147be565b82548061422257811561421d578354600180820186556000868152602080822043600390950201938455838301805480850182559083528183200180546001600160a01b0319166001600160a01b038916179055600290930180549283018155815291909120018290555b6117f9565b600084600001600183038154811061423657fe5b600091825260209091206003909102018054909150438114156142635761425e82868661488d565b61309b565b80431161426c57fe5b855460018101875560008781526020902043600390920201908155611f3581848888614926565b6000610d8682436149bf565b60008183106142ae5781610d83565b5090919050565b60006114988484846147be565b60006114986002850184846146ed565b6142dd816001612e22565b6000928352602093909352506040902055565b606080600080614308866000018760010154876145b2565b9150915081614332575050604080516000808252602082019081528183019092529250905061364b565b600086600001828154811061434357fe5b6000918252602090912060039091020160018101549091508067ffffffffffffffff8111801561437257600080fd5b5060405190808252806020026020018201604052801561439c578160200160208202803683370190505b5095508067ffffffffffffffff811180156143b657600080fd5b506040519080825280602002602001820160405280156143e0578160200160208202803683370190505b50945060005b81811015614480578260010181815481106143fd57fe5b9060005260206000200160009054906101000a90046001600160a01b031687828151811061442757fe5b60200260200101906001600160a01b031690816001600160a01b03168152505082600201818154811061445657fe5b906000526020600020015486828151811061446d57fe5b60209081029190910101526001016143e6565b50505050509250929050565b8154600090806144a0576000915050610d86565b43831015806144d257508360000160018203815481106144bc57fe5b9060005260206000209060020201600001548310155b15614503578360000160018203815481106144e957fe5b906000526020600020906002020160010154915050610d86565b6001840154845485908290811061451657fe5b90600052602060002090600202016000015484101561457757801561456c5760405162461bcd60e51b8152600401808060200182810382526030815260200180614f3d6030913960400191505060405180910390fd5b600092505050610d86565b6000614584868387614a60565b905085600001818154811061459557fe5b906000526020600020906002020160010154935050505092915050565b82546000908190806145c75760009250614687565b43841015806145f657508560018203815481106145e057fe5b9060005260206000209060030201600001548410155b1561460a5760019250600181039150614687565b85858154811061461657fe5b90600052602060002090600302016000015484101561467557841561466c5760405162461bcd60e51b8152600401808060200182810382526030815260200180614d4b6030913960400191505060405180910390fd5b60009250614687565b60019250614684868686614ad7565b91505b50935093915050565b6000828211156146e7576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6001600160a01b0382166000908152602084905260408120612105818461448c565b6000806000614726876000018860010154866145b2565b915091508161473a57600092505050611498565b600087600001828154811061474b57fe5b6000918252602082206002600390920201908101549195509150845b818110156147b1576147a76147a08a8a86600201858154811061478657fe5b906000526020600020015461334e9092919063ffffffff16565b8790612e22565b9550600101614767565b5050505050949350505050565b60008060006147d5866000018760010154866145b2565b91509150816147e957600092505050610db1565b60008660000182815481106147fa57fe5b600091825260208220600160039092020190810154909250905b8181101561487e57876001600160a01b031683600101828154811061483557fe5b6000918252602090912001546001600160a01b031614156148765782600201818154811061485f57fe5b906000526020600020015495505050505050610db1565b600101614814565b50600098975050505050505050565b600183015460005b81811080156148d05750836001600160a01b03168560010182815481106148b857fe5b6000918252602090912001546001600160a01b031614155b156148dd57600101614895565b8181101561491a57821561490c57828560020182815481106148fb57fe5b600091825260209091200155611a88565b611a88858260018503614b4e565b610f7a85858585614c48565b60018301546000805b828110156149ad57600086600101828154811061494857fe5b6000918252602090912001546001600160a01b039081169150861681141561497f5761497688828785614c48565b600192506149a4565b6149a4888289600201858154811061499357fe5b906000526020600020015485614c48565b5060010161492f565b508061309b5761309b86858585614c48565b60008060006149d6856000018660010154866145b2565b91509150816149ea57600092505050610d86565b60008560000182815481106149fb57fe5b6000918252602082206002600390920201908101549195509150845b81811015614a5557614a4b836002018281548110614a3157fe5b906000526020600020015487612e2290919063ffffffff16565b9550600101614a17565b505050505092915050565b825460009083908290614a74906001614690565b90505b81811115612a83576000614a95600261341360016124678688612e22565b905084878281548110614aa457fe5b90600052602060002090600202016000015411614ac357809250614ad1565b614ace816001614690565b91505b50614a77565b825460009083908290614aeb906001614690565b90505b81811115612a83576000614b0c600261341360016124678688612e22565b905084878281548110614b1b57fe5b90600052602060002090600302016000015411614b3a57809250614b48565b614b45816001614690565b91505b50614aee565b80821015614bf157826001018181548110614b6557fe5b6000918252602090912001546001840180546001600160a01b039092169184908110614b8d57fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550826002018181548110614bca57fe5b9060005260206000200154836002018381548110614be457fe5b6000918252602090912001555b82600101805480614bfe57fe5b600082815260209020810160001990810180546001600160a01b031916905501905560028301805480614c2d57fe5b60019003818190600052602060002001600090559055505050565b81156117f95760408051808201909152601681527513585e0819195b1959d85d195cc8195e18d95959195960521b602082015260028210614cca5760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156109b357818101518382015260200161099b565b506001808501805480830182556000918252602080832090910180546001600160a01b0388166001600160a01b03199091161790556002870180549384018155825290200182905550505050565b5080546000825590600052602060002090810190610c5291905b80821115614d465760008155600101614d32565b509056fe44656c65676174696f6e486973746f72793a2072656164696e672066726f6d20636c65616e65642d757020626c6f636b436c65616e757020626c6f636b206d75737420626520696e207468652070617374756e64656c6567617465416c6c2063616e206f6e6c79206265207573656420696e2070657263656e746167652064656c65676174696f6e206d6f646545524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365436c65616e757020626c6f636b206e756d626572206d757374206e65766572206465637265617365500599802164a08023e87ffc3eed0ba3ae60697b3083ba81d046683679d81c6b44656c6567617461626c653a2072656164696e672066726f6d20636c65616e65642d757020626c6f636b6f6e6c79206f776e65722c20676f7665726e616e6365206f7220636c65616e757020626c6f636b206d616e61676572756e64656c6567617465416c6c4578706c696369742063616e206f6e6c79206265207573656420696e206578706c696369742064656c65676174696f6e206d6f6465536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f775265766f6b65206973206f6e6c7920666f722074686520706173742c2075736520756e64656c656761746520666f72207468652070726573656e74436865636b506f696e74486973746f72793a2072656164696e672066726f6d20636c65616e65642d757020626c6f636b64656c6567617465734f6620646f6573206e6f7420776f726b20696e20414d4f554e542064656c65676174696f6e206d6f6465a2646970667358221220632e5f1ff11207979ad9b116ba95f0087e2ea3aa28ec0722ae2318dbab97c48664736f6c634300070600335650436f6e7472616374206d7573742062656c6f6e6720746f2061205650546f6b656e",
771
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101c45760003560e01c8063833aca92116100f9578063cabc452811610097578063eadb436211610071578063eadb4362146107fb578063ed475a791461083d578063f683776714610869578063f6a494af1461088f576101c4565b8063cabc452814610791578063deea13e7146107c7578063e587497e146107cf576101c4565b806392bfe6d8116100d357806392bfe6d8146106d75780639dc6b9f214610703578063aa94d3f214610739578063c7c62fab14610755576101c4565b8063833aca9214610639578063891339a8146106755780638c0b6b40146106a1576101c4565b806349e3c7e511610166578063653718831161014057806365371883146104f65780637de5b8ed1461051a5780637f4fcaa9146105e75780637f57d58f1461060d576101c4565b806349e3c7e5146103995780634a03d5561461048e5780636230001a146104ba576101c4565b8063142d1018116101a2578063142d1018146102d95780631a05274c146102ff578063315039271461032b578063404d9e821461035d576101c4565b806305109ecf146101c95780630f8b8af7146101f757806313de97f5146102bc575b600080fd5b6101f5600480360360408110156101df57600080fd5b506001600160a01b0381351690602001356108b5565b005b6102aa6004803603604081101561020d57600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561023857600080fd5b82018360208201111561024a57600080fd5b8035906020019184602083028401116401000000008311171561026c57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550610a0c945050505050565b60408051918252519081900360200190f35b6101f5600480360360208110156102d257600080fd5b5035610b36565b6102aa600480360360208110156102ef57600080fd5b50356001600160a01b0316610c55565b6102aa6004803603604081101561031557600080fd5b506001600160a01b038135169060200135610d16565b6102aa6004803603606081101561034157600080fd5b506001600160a01b038135169060208101359060400135610d8c565b6101f56004803603608081101561037357600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135610db8565b61043e600480360360408110156103af57600080fd5b8101906020810181356401000000008111156103ca57600080fd5b8201836020820111156103dc57600080fd5b803590602001918460208302840111640100000000831117156103fe57600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295505091359250610f81915050565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561047a578181015183820152602001610462565b505050509050019250505060405180910390f35b6102aa600480360360408110156104a457600080fd5b506001600160a01b0381351690602001356110da565b6101f5600480360360808110156104d057600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611102565b6104fe611293565b604080516001600160a01b039092168252519081900360200190f35b6105406004803603602081101561053057600080fd5b50356001600160a01b03166112b7565b604051808060200180602001858152602001848152602001838103835287818151815260200191508051906020019060200280838360005b83811015610590578181015183820152602001610578565b50505050905001838103825286818151815260200191508051906020019060200280838360005b838110156105cf5781810151838201526020016105b7565b50505050905001965050505050505060405180910390f35b6101f5600480360360208110156105fd57600080fd5b50356001600160a01b03166112d6565b6102aa6004803603604081101561062357600080fd5b506001600160a01b038135169060200135611407565b6102aa6004803603608081101561064f57600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611487565b6102aa6004803603604081101561068b57600080fd5b506001600160a01b0381351690602001356114a0565b6102aa600480360360608110156106b757600080fd5b506001600160a01b0381358116916020810135909116906040013561155c565b6102aa600480360360408110156106ed57600080fd5b506001600160a01b038135169060200135611619565b6102aa6004803603606081101561071957600080fd5b506001600160a01b03813581169160208101359091169060400135611704565b610741611711565b604080519115158252519081900360200190f35b6101f56004803603608081101561076b57600080fd5b506001600160a01b03813581169160208101359091169060408101359060600135611735565b6102aa600480360360608110156107a757600080fd5b506001600160a01b038135811691602081013590911690604001356117ff565b6102aa611881565b6102aa600480360360408110156107e557600080fd5b506001600160a01b038135169060200135611890565b6101f5600480360360a081101561081157600080fd5b506001600160a01b038135811691602081013590911690604081013590606081013590608001356119f5565b6105406004803603604081101561085357600080fd5b506001600160a01b038135169060200135611ad1565b6102aa6004803603602081101561087f57600080fd5b50356001600160a01b0316611b92565b6101f5600480360360208110156108a557600080fd5b50356001600160a01b0316611ba8565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610925576040805162461bcd60e51b815260206004820152601060248201526f37b7363c9037bbb732b9103a37b5b2b760811b604482015290519081900360640190fd5b8161092f81611cc0565b6040518060400160405280601c81526020017f416c72656164792064656c656761746564206578706c696369746c7900000000815250906109ee5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156109b357818101518382015260200161099b565b50505050905090810190601f1680156109e05780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506109f883611d07565b15610a0757610a078383611d9f565b505050565b6000336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610a7e576040805162461bcd60e51b815260206004820152601060248201526f37b7363c9037bbb732b9103a37b5b2b760811b604482015290519081900360640190fd5b82610a8881611f3f565b6040518060400160405280601f81526020017f416c72656164792064656c6567617465642062792070657263656e746167650081525090610b0a5760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156109b357818101518382015260200161099b565b50610b1484611d07565b15610b2a57610b238484611f76565b9150610b2f565b600091505b5092915050565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161480610b7757506008546001600160a01b031633145b80610c0e57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635aa6e6756040518163ffffffff1660e01b815260040160206040518083038186803b158015610bd657600080fd5b505afa158015610bea573d6000803e3d6000fd5b505050506040513d6020811015610c0057600080fd5b50516001600160a01b031633145b610c495760405162461bcd60e51b815260040180806020018281038252602f815260200180614e70602f913960400191505060405180910390fd5b610c528161210e565b50565b6000610c6082612192565b15610c7557610c6e826121df565b9050610d11565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a08231836040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b158015610ce257600080fd5b505afa158015610cf6573d6000803e3d6000fd5b505050506040513d6020811015610d0c57600080fd5b505190505b919050565b6007546000906001600160a01b03163314610d70576040805162461bcd60e51b815260206004820152601560248201527413db9b1e4818db19585b995c8818dbdb9d1c9858dd605a1b604482015290519081900360640190fd5b600654610d8390600390859085906121ec565b90505b92915050565b6000610d9784612192565b15610dae57610da78484846121fa565b9050610db1565b50815b9392505050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610e28576040805162461bcd60e51b815260206004820152601060248201526f37b7363c9037bbb732b9103a37b5b2b760811b604482015290519081900360640190fd5b83610e3281611f3f565b6040518060400160405280601f81526020017f416c72656164792064656c6567617465642062792070657263656e746167650081525090610eb45760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156109b357818101518382015260200161099b565b50610ebf8584612269565b610ec884612192565b610f6e57610f6e847f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a08231876040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b158015610f3d57600080fd5b505afa158015610f51573d6000803e3d6000fd5b505050506040513d6020811015610f6757600080fd5b5051612269565b610f7a85858585612306565b5050505050565b6060610f8d83836125eb565b90507f000000000000000000000000000000000000000000000000000000000000000015610d865760005b8151811015610b2f57818181518110610fcd57fe5b60200260200101516000148015610ffe5750610ffc848281518110610fee57fe5b602002602001015184612727565b155b156110d2577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316634ee2cd7e85838151811061103e57fe5b6020026020010151856040518363ffffffff1660e01b815260040180836001600160a01b031681526020018281526020019250505060206040518083038186803b15801561108b57600080fd5b505afa15801561109f573d6000803e3d6000fd5b505050506040513d60208110156110b557600080fd5b505182518390839081106110c557fe5b6020026020010181815250505b600101610fb8565b60006110e583612192565b156110fb576110f48383612788565b9050610d86565b5080610d86565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611172576040805162461bcd60e51b815260206004820152601060248201526f37b7363c9037bbb732b9103a37b5b2b760811b604482015290519081900360640190fd5b8361117c81611cc0565b6040518060400160405280601c81526020017f416c72656164792064656c656761746564206578706c696369746c7900000000815250906111fe5760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156109b357818101518382015260200161099b565b506112098584612269565b61121284612192565b61128757611287847f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166370a08231876040518263ffffffff1660e01b815260040180826001600160a01b0316815260200191505060206040518083038186803b158015610f3d57600080fd5b610f7a85858585612795565b7f000000000000000000000000000000000000000000000000000000000000000081565b6060806000806112c78543611ad1565b93509350935093509193509193565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016148061139957507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635aa6e6756040518163ffffffff1660e01b815260040160206040518083038186803b15801561136157600080fd5b505afa158015611375573d6000803e3d6000fd5b505050506040513d602081101561138b57600080fd5b50516001600160a01b031633145b6113e5576040805162461bcd60e51b81526020600482015260186024820152776f6e6c79206f776e6572206f7220676f7665726e616e636560401b604482015290519081900360640190fd5b600880546001600160a01b0319166001600160a01b0392909216919091179055565b6007546000906001600160a01b03163314611461576040805162461bcd60e51b815260206004820152601560248201527413db9b1e4818db19585b995c8818dbdb9d1c9858dd605a1b604482015290519081900360640190fd5b6006546001600160a01b0384166000908152600160205260409020610d83918490612a08565b600061149585858585612a15565b90505b949350505050565b6007546000906001600160a01b031633146114fa576040805162461bcd60e51b815260206004820152601560248201527413db9b1e4818db19585b995c8818dbdb9d1c9858dd605a1b604482015290519081900360640190fd5b6006548210611550576040805162461bcd60e51b815260206004820152601e60248201527f4e6f20636c65616e757020616674657220636c65616e757020626c6f636b0000604482015290519081900360640190fd5b610d8360048484612a8c565b6007546000906001600160a01b031633146115b6576040805162461bcd60e51b815260206004820152601560248201527413db9b1e4818db19585b995c8818dbdb9d1c9858dd605a1b604482015290519081900360640190fd5b600654821061160c576040805162461bcd60e51b815260206004820152601e60248201527f4e6f20636c65616e757020616674657220636c65616e757020626c6f636b0000604482015290519081900360640190fd5b6114986004858585612af9565b60007f0000000000000000000000000000000000000000000000000000000000000000158061164d575061164d8383612727565b1561165c576110f48383612b87565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316634ee2cd7e84846040518363ffffffff1660e01b815260040180836001600160a01b031681526020018281526020019250505060206040518083038186803b1580156116d157600080fd5b505afa1580156116e5573d6000803e3d6000fd5b505050506040513d60208110156116fb57600080fd5b50519050610d86565b6000611498848484612bec565b7f000000000000000000000000000000000000000000000000000000000000000081565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146117a5576040805162461bcd60e51b815260206004820152601060248201526f37b7363c9037bbb732b9103a37b5b2b760811b604482015290519081900360640190fd5b7f000000000000000000000000000000000000000000000000000000000000000015806117e857506117d78482612727565b80156117e857506117e88382612727565b156117f9576117f984848484612bfa565b50505050565b6007546000906001600160a01b03163314611859576040805162461bcd60e51b815260206004820152601560248201527413db9b1e4818db19585b995c8818dbdb9d1c9858dd605a1b604482015290519081900360640190fd5b6006546001600160a01b03851660009081526002602052604090206114989185908590612cf5565b600061188b612d1c565b905090565b60007f000000000000000000000000000000000000000000000000000000000000000015806118c457506118c48383612727565b156118d3576110f48383612d22565b604080516001600160a01b038516602080830191909152818301859052825180830384018152606090920183528151918101919091206000818152600a90925291902054801561192a57600019019150610d869050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316634ee2cd7e87876040518363ffffffff1660e01b815260040180836001600160a01b031681526020018281526020019250505060206040518083038186803b1580156119a157600080fd5b505afa1580156119b5573d6000803e3d6000fd5b505050506040513d60208110156119cb57600080fd5b505190506119da816001612e22565b6000938452600a602052604090932092909255509050610d86565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611a65576040805162461bcd60e51b815260206004820152601060248201526f37b7363c9037bbb732b9103a37b5b2b760811b604482015290519081900360640190fd5b6001600160a01b038516611a8d57611a7d8483612269565b611a88848383612e7c565b610f7a565b6001600160a01b038416611ab057611aa58584612269565b611a88858483612eb1565b611aba8584612269565b611ac48483612269565b610f7a8585858585612f93565b6060806000806000611ae2876130a3565b90506001816002811115611af257fe5b1415611b0c57611b0287876130c1565b9095509350611b76565b6000816002811115611b1a57fe5b1415611b3f576040805160008082526020820190815281830190925295509350611b76565b60405162461bcd60e51b8152600401808060200182810382526033815260200180614f6d6033913960400191505060405180910390fd5b84519250806002811115611b8657fe5b91505092959194509250565b6000611b9d826130a3565b6002811115610d8657fe5b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161480611c6b57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635aa6e6756040518163ffffffff1660e01b815260040160206040518083038186803b158015611c3357600080fd5b505afa158015611c47573d6000803e3d6000fd5b505050506040513d6020811015611c5d57600080fd5b50516001600160a01b031633145b611cb7576040805162461bcd60e51b81526020600482015260186024820152776f6e6c79206f776e6572206f7220676f7665726e616e636560401b604482015290519081900360640190fd5b610c5281613300565b6001600160a01b03811660009081526020819052604081205460ff1681816002811115611ce957fe5b1480610db1575060015b816002811115611cff57fe5b149392505050565b6001600160a01b03811660009081526020819052604081205460ff1681816002811115611d3057fe5b1415611d40576000915050610d11565b6002816002811115611d4e57fe5b1415611d7e576001600160a01b0383166000908152600260205260408120611d7590613322565b11915050610d11565b6001600160a01b0383166000908152600160205260408120611d759061332d565b6001600160a01b03821660009081526020819052604081205460ff1690816002811115611dc857fe5b1415611dd45750611f3b565b6001816002811115611de257fe5b14611e1e5760405162461bcd60e51b815260040180806020018281038252603c815260200180614d9c603c913960400191505060405180910390fd5b6001600160a01b03831660009081526001602052604081209080611e4183613339565b9150915060005b8251811015611f1a576000838281518110611e5f57fe5b602002602001015190506000611e95848481518110611e7a57fe5b60200260200101516127108a61334e9092919063ffffffff16565b9050611ea460038a8484613447565b600654611eb8906003908b906002906121ec565b50600654611ecd9060039084906002906121ec565b50816001600160a01b0316896001600160a01b0316600080516020614e26833981519152836000604051808381526020018281526020019250505060405180910390a35050600101611e48565b50611f2483613484565b600654611f35908490600290612a08565b50505050505b5050565b6001600160a01b03811660009081526020819052604081205460ff1681816002811115611f6857fe5b1480610db157506002611cf3565b6001600160a01b03821660009081526020819052604081205460ff1681816002811115611f9f57fe5b1415611faf576000915050610d86565b6002816002811115611fbd57fe5b14611ff95760405162461bcd60e51b8152600401808060200182810382526042815260200180614e9f6042913960600191505060405180910390fd5b6001600160a01b0384166000908152600260205260408120905b84518110156120fb57600085828151811061202a57fe5b602002602001015190506000612049828561348d90919063ffffffff16565b9050806120575750506120f3565b6120646003898484613447565b600654612078906003908a906002906121ec565b5060065461208d9060039084906002906121ec565b5061209a8483600061349c565b6006546120ad9085908490600290612cf5565b50816001600160a01b0316886001600160a01b0316600080516020614e26833981519152836000604051808381526020018281526020019250505060405180910390a350505b600101612013565b5061210581613322565b95945050505050565b60065481101561214f5760405162461bcd60e51b8152600401808060200182810382526028815260200180614dfe6028913960400191505060405180910390fd5b43811061218d5760405162461bcd60e51b8152600401808060200182810382526021815260200180614d7b6021913960400191505060405180910390fd5b600655565b60007f00000000000000000000000000000000000000000000000000000000000000006121c157506001610d11565b506001600160a01b0316600090815260096020526040902054151590565b6000610d86600383613506565b600061149585858585613513565b60008160065481101561223e5760405162461bcd60e51b815260040180806020018281038252602a815260200180614e46602a913960400191505060405180910390fd5b600061224b86868661354e565b905060008061225a878461362c565b9550505050505b509392505050565b7f000000000000000000000000000000000000000000000000000000000000000061229357611f3b565b6001600160a01b038216600090815260096020526040902054611f3b576122b9826121df565b1580156122cc57506122ca82611d07565b155b6122d257fe5b6122de82600083612e7c565b6122e9436001612e22565b6001600160a01b0383166000908152600960205260409020555050565b6001600160a01b03831661235b576040805162461bcd60e51b815260206004820152601760248201527643616e6e6f742064656c656761746520746f207a65726f60481b604482015290519081900360640190fd5b836001600160a01b0316836001600160a01b031614156123bc576040805162461bcd60e51b815260206004820152601760248201527621b0b73737ba103232b632b3b0ba32903a379039b2b63360491b604482015290519081900360640190fd5b6123c584611f3f565b612416576040805162461bcd60e51b815260206004820152601960248201527f43616e6e6f742064656c656761746520627920616d6f756e7400000000000000604482015290519081900360640190fd5b6001600160a01b038416600090815260026020526040812090612439828661348d565b9050808310156124575761245260038787868503613447565b612507565b600061246d826124678988612788565b90612e22565b9050838110156040518060400160405280602081526020017f556e64656c65676174656420766f746520706f77657220746f6f20736d616c6c815250906124f55760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156109b357818101518382015260200161099b565b5061250560038888858803613652565b505b60065461251b9060039088906002906121ec565b506006546125309060039087906002906121ec565b5061253c82868561349c565b60065461254f9083908790600290612cf5565b5060026001600160a01b03871660009081526020819052604090205460ff16600281111561257957fe5b146125a2576001600160a01b0386166000908152602081905260409020805460ff191660021790555b846001600160a01b0316866001600160a01b0316600080516020614e268339815191528386604051808381526020018281526020019250505060405180910390a3505050505050565b60608160065481101561262f5760405162461bcd60e51b815260040180806020018281038252602a815260200180614e46602a913960400191505060405180910390fd5b438310612683576040805162461bcd60e51b815260206004820181905260248201527f43616e206f6e6c79206265207573656420666f72207061737420626c6f636b73604482015290519081900360640190fd5b835167ffffffffffffffff8111801561269b57600080fd5b506040519080825280602002602001820160405280156126c5578160200160208202803683370190505b50915060005b845181101561271f5761270060038683815181106126e557fe5b602002602001015186600461368f909392919063ffffffff16565b83828151811061270c57fe5b60209081029190910101526001016126cb565b505092915050565b60007f000000000000000000000000000000000000000000000000000000000000000061275657506001610d86565b6001600160a01b0383166000908152600960205260409020548015801590611498575060001901919091111592915050565b6000610d838383436121fa565b6001600160a01b0383166127ea576040805162461bcd60e51b815260206004820152601760248201527643616e6e6f742064656c656761746520746f207a65726f60481b604482015290519081900360640190fd5b836001600160a01b0316836001600160a01b0316141561284b576040805162461bcd60e51b815260206004820152601760248201527621b0b73737ba103232b632b3b0ba32903a379039b2b63360491b604482015290519081900360640190fd5b61285484611cc0565b6128a5576040805162461bcd60e51b815260206004820152601d60248201527f43616e6e6f742064656c65676174652062792070657263656e74616765000000604482015290519081900360640190fd5b6001600160a01b0384166000908152600160205260408120906128c882866136fe565b90506000806128d884888761370a565b6006546128e9908590600290612a08565b508215612900576128fd868461271061334e565b91505b841561291657612913868661271061334e565b90505b818110156129325761292d60038989848603613447565b612941565b61294160038989858503613652565b600654612955906003908a906002906121ec565b5060065461296a9060039089906002906121ec565b5060016001600160a01b03891660009081526020819052604090205460ff16600281111561299457fe5b146129bd576001600160a01b0388166000908152602081905260409020805460ff191660011790555b866001600160a01b0316886001600160a01b0316600080516020614e268339815191528484604051808381526020018281526020019250505060405180910390a35050505050505050565b60006114988484846137b1565b600081600654811015612a595760405162461bcd60e51b815260040180806020018281038252602a815260200180614e46602a913960400191505060405180910390fd5b612a66600487878661388e565b15612a745760009150612a83565b612a80868686866138e2565b91505b50949350505050565b604080516001600160a01b038416602080830191909152818301849052825180830384018152606090920183528151918101919091206000818152918690529181205490919015612aee57600090815260208590526040812055506001610db1565b506000949350505050565b604080516001600160a01b03808616602080840191909152828401859052835180840385018152606090930184528251928101929092206000818152600189018452848120928716815292829052928220549192918015612b7957506001600160a01b038516600090815260209190915260408120555060019050611498565b506000979650505050505050565b600081600654811015612bcb5760405162461bcd60e51b815260040180806020018281038252602a815260200180614e46602a913960400191505060405180910390fd5b43831015612be157610b2360046003868661368f565b610b23600385613506565b6000611498848484436138e2565b80600654811015612c3c5760405162461bcd60e51b815260040180806020018281038252602a815260200180614e46602a913960400191505060405180910390fd5b438210612c7a5760405162461bcd60e51b815260040180806020018281038252603b815260200180614f02603b913960400191505060405180910390fd5b6000612c88868686866138e2565b9050612c9a6004600388888588613995565b846001600160a01b0316866001600160a01b03167fd6f80c7d68e3e62bd7a51c3d37e575c1cfbc311c07487b69ef4eb570bc21cb688386604051808381526020018281526020019250505060405180910390a3505050505050565b6000612d02858484613b08565b9050612d1360028601858585613513565b01949350505050565b60065490565b600081600654811015612d665760405162461bcd60e51b815260040180806020018281038252602a815260200180614e46602a913960400191505060405180910390fd5b438310612dba576040805162461bcd60e51b815260206004820181905260248201527f43616e206f6e6c79206265207573656420666f72207061737420626c6f636b73604482015290519081900360640190fd5b600080612dcb600460038888613ba7565b915091508015612a8357604080516001600160a01b03881681526020810187905281517fb0b412112c2958bbc2537fa96db51ddcfe7d0d074143f0b5308b6aab19b6694b929181900390910190a150949350505050565b600082820183811015610d83576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b612e8860038483613c31565b600654612e9c9060039085906002906121ec565b50610a078383612eac8185612e22565b613c58565b6000612ed882604051806060016040528060268152602001614dd860269139859190613d99565b9050612ee5848483613c58565b612ef0848484613df3565b6040518060400160405280602081526020017f556e64656c65676174656420766f746520706f77657220746f6f20736d616c6c81525090612f725760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156109b357818101518382015260200161099b565b50612f7f60038584613e40565b600654610f7a9060039086906002906121ec565b6000612fba82604051806060016040528060268152602001614dd860269139869190613d99565b9050612fc7868583613c58565b612fd2868584613df3565b6040518060400160405280602081526020017f556e64656c65676174656420766f746520706f77657220746f6f20736d616c6c815250906130545760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156109b357818101518382015260200161099b565b506130626003878785613e67565b6006546130769060039088906002906121ec565b5060065461308b9060039087906002906121ec565b5061309b8584612eac8186612e22565b505050505050565b6001600160a01b031660009081526020819052604090205460ff1690565b606080826006548110156131065760405162461bcd60e51b815260040180806020018281038252602a815260200180614e46602a913960400191505060405180910390fd5b6001600160a01b038516600090815260016020526040902060608061312b8388613e8e565b909250905060005b825181101561318f576131678984838151811061314c57fe5b60200260200101518a600461388e909392919063ffffffff16565b1561318757600082828151811061317a57fe5b6020026020010181815250505b600101613133565b506000805b83518110156131c7578281815181106131a957fe5b60200260200101516000146131bf576001909101905b600101613194565b508067ffffffffffffffff811180156131df57600080fd5b50604051908082528060200260200182016040528015613209578160200160208202803683370190505b5096508067ffffffffffffffff8111801561322357600080fd5b5060405190808252806020026020018201604052801561324d578160200160208202803683370190505b5095506000805b84518110156132f25783818151811061326957fe5b60200260200101516000146132ea5784818151811061328457fe5b602002602001015189838151811061329857fe5b60200260200101906001600160a01b031690816001600160a01b0316815250508381815181106132c457fe5b60200260200101518883815181106132d857fe5b60209081029190910101526001909101905b600101613254565b505050505050509250929050565b600780546001600160a01b0319166001600160a01b0392909216919091179055565b6000610d8682613ea6565b6000610d868243613eb2565b60608061334583613f09565b91509150915091565b6000808211613397576040805162461bcd60e51b815260206004820152601060248201526f4469766973696f6e206279207a65726f60801b604482015290519081900360640190fd5b836133a457506000610db1565b838302838582816133b157fe5b0414156133ca578281816133c157fe5b04915050610db1565b60008386816133d557fe5b04905060008487816133e357fe5b06905060008587816133f157fe5b04905060008688816133ff57fe5b06905061225a613419886134138685613f16565b90613f6f565b6124676134268686613f16565b6124676134338987613f16565b6124678d6134418c8b613f16565b90613f16565b82826001600160a01b03821615801561346757506001600160a01b038116155b1561346e57fe5b826134785761309b565b61309b86858786613fd6565b610c5281614065565b6000610d836002840183614088565b60006134ab6002850184614088565b905060006134ec8361246784604051806040016040528060098152602001680546f74616c203c20360bc1b8152506134e58a600001613ea6565b9190613d99565b90506134fc600286018585614095565b610f7a85826140b3565b6000610d8383834361417c565b60006001600160a01b03841615612aee576001600160a01b0384166000908152602086905260409020613547908484613b08565b9050611498565b6000816006548110156135925760405162461bcd60e51b815260040180806020018281038252602a815260200180614e46602a913960400191505060405180910390fd5b6001600160a01b03851660009081526020819052604081205460ff16908160028111156135bb57fe5b14156135cb576000925050612261565b60028160028111156135d957fe5b1415613609576001600160a01b03861660009081526002602052604090206136019085614189565b925050612261565b6001600160a01b0386166000908152600160205260409020613601908686614195565b600080838311156136425750600090508061364b565b50600190508183035b9250929050565b82826001600160a01b03821615801561367257506001600160a01b038116155b1561367957fe5b826136835761309b565b61309b86868686613fd6565b604080516001600160a01b038416602080830191909152818301849052825180830384018152606090920183528151918101919091206000818152918790529181205490919080156136e8576000190191506114989050565b6136f386868661417c565b979650505050505050565b6000610d8383836141a5565b61271081111561371657fe5b6137218383836141b2565b61271061372d84614293565b11156040518060400160405280601c81526020017f4d61782064656c65676174696f6e206269707320657863656564656400000000815250906117f95760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156109b357818101518382015260200161099b565b6000816137c057506000610db1565b8354806137d1576000915050610db1565b600185015460006137ee6137e58388612e22565b6001850361429f565b9050815b818110801561382457508588600001826001018154811061380f57fe5b90600052602060002090600302016000015411155b156138705787600001818154811061383857fe5b600091825260208220600390910201818155906138586001830182614d18565b613866600283016000614d18565b50506001016137f2565b8281111561388057600188018190555b919091039695505050505050565b604080516001600160a01b0394851660208083019190915281830193909352815180820383018152606090910182528051908301206000908152600195909501825280852092909316845252902054151590565b6001600160a01b03841660009081526020819052604081205460ff168181600281111561390b57fe5b141561391b576000915050611498565b600181600281111561392957fe5b141561396a576001600160a01b03861660009081526001602052604081206139529087866142b5565b9050613961858261271061334e565b92505050611498565b6001600160a01b038616600090815260026020526040902061398d9086856142c2565b915050611498565b8161399f5761309b565b604080516001600160a01b0380871660208084019190915282840185905283518084038501815260609093018452825192810192909220600081815260018b018452848120928816815291909252919091205415613a36576040805162461bcd60e51b815260206004820152600f60248201526e105b1c9958591e481c995d9bdad959608a1b604482015290519081900360640190fd5b6000613a4488888786613ba7565b5090506000858460405160200180836001600160a01b0316815260200182815260200192505050604051602081830303815290604052805190602001209050613ad78982613ad2886040518060400160405280601781526020017f5265766f6b65642076616c756520746f6f206c6172676500000000000000000081525087613d999092919063ffffffff16565b6142d2565b5050600090815260018701602090815260408083206001600160a01b03871684529091529020829055505050505050565b600081613b1757506000610db1565b835480613b28576000915050610db1565b60018501546000613b3c6137e58388612e22565b9050815b8181108015613b72575085886000018260010181548110613b5d57fe5b90600052602060002090600202016000015411155b1561387057876000018181548110613b8657fe5b60009182526020822060029091020181815560019081019190915501613b40565b604080516001600160a01b0384166020808301919091528183018490528251808303840181526060909201835281519181019190912060008181529187905291812054909182918015613c055760001901925060009150613c289050565b6000613c1288888861417c565b9050613c1f8984836142d2565b93506001925050505b94509492505050565b80613c3b57610a07565b6001600160a01b038216613c4b57fe5b610a078360008484613fd6565b60016001600160a01b03841660009081526020819052604090205460ff166002811115613c8157fe5b1415610a07576001600160a01b03831660009081526001602052604081209080613caa83613339565b9150915060005b8251811015611f35576000838281518110613cc857fe5b602002602001015190506000613ce3848481518110611e7a57fe5b90506000613cf6858581518110611e7a57fe5b905081811115613d1457613d0f60038b85858503613652565b613d23565b613d2360038b85848603613447565b600654613d37906003908c906002906121ec565b50600654613d4c9060039085906002906121ec565b50826001600160a01b03168a6001600160a01b0316600080516020614e268339815191528484604051808381526020018281526020019250505060405180910390a3505050600101613cb1565b60008184841115613deb5760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156109b357818101518382015260200161099b565b505050900390565b600060026001600160a01b03851660009081526020819052604090205460ff166002811115613e1e57fe5b1415613e385781613e2f8585612788565b10159050610db1565b506001610db1565b80613e4a57610a07565b6001600160a01b038216613e5a57fe5b610a078383600084613fd6565b82826001600160a01b038216158015613e8757506001600160a01b038116155b1561368357fe5b606080613e9b84846142f0565b915091509250929050565b6000610d86824361448c565b6000806000613ec9856000018660010154866145b2565b9150915081613edd57600092505050610d86565b846000018181548110613eec57fe5b600091825260209091206001600390920201015495945050505050565b60608061334583436142f0565b600082613f2557506000610d86565b82820282848281613f3257fe5b0414610d835760405162461bcd60e51b8152600401808060200182810382526021815260200180614ee16021913960400191505060405180910390fd5b6000808211613fc5576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b818381613fce57fe5b049392505050565b80613fe0576117f9565b6001600160a01b038316158015613ffe57506001600160a01b038216155b1561400557fe5b6001600160a01b0383161561403957600061402a826140248787614088565b90614690565b9050614037858583614095565b505b6001600160a01b038216156117f9576000614058826124678786614088565b9050610f7a858483614095565b805415610c52578054600181018255600082815260209020436003909202015550565b6000610d838383436146ed565b6001600160a01b03821660009081526020849052604090206117f981835b8154806140f7576040805180820190915243815260208082018481528554600181810188556000888152939093209351600290910290930192835551910155610a07565b600083600001600183038154811061410b57fe5b600091825260209091206002909102018054909150438114156141345760018201849055610f7a565b80431161413d57fe5b604080518082019091524381526020808201868152875460018181018a5560008a81529390932093516002909102909301928355519101555050505050565b60006114988484846146ed565b6000610d83838361448c565b600061149884846127108561470f565b6000610d838383436147be565b82548061422257811561421d578354600180820186556000868152602080822043600390950201938455838301805480850182559083528183200180546001600160a01b0319166001600160a01b038916179055600290930180549283018155815291909120018290555b6117f9565b600084600001600183038154811061423657fe5b600091825260209091206003909102018054909150438114156142635761425e82868661488d565b61309b565b80431161426c57fe5b855460018101875560008781526020902043600390920201908155611f3581848888614926565b6000610d8682436149bf565b60008183106142ae5781610d83565b5090919050565b60006114988484846147be565b60006114986002850184846146ed565b6142dd816001612e22565b6000928352602093909352506040902055565b606080600080614308866000018760010154876145b2565b9150915081614332575050604080516000808252602082019081528183019092529250905061364b565b600086600001828154811061434357fe5b6000918252602090912060039091020160018101549091508067ffffffffffffffff8111801561437257600080fd5b5060405190808252806020026020018201604052801561439c578160200160208202803683370190505b5095508067ffffffffffffffff811180156143b657600080fd5b506040519080825280602002602001820160405280156143e0578160200160208202803683370190505b50945060005b81811015614480578260010181815481106143fd57fe5b9060005260206000200160009054906101000a90046001600160a01b031687828151811061442757fe5b60200260200101906001600160a01b031690816001600160a01b03168152505082600201818154811061445657fe5b906000526020600020015486828151811061446d57fe5b60209081029190910101526001016143e6565b50505050509250929050565b8154600090806144a0576000915050610d86565b43831015806144d257508360000160018203815481106144bc57fe5b9060005260206000209060020201600001548310155b15614503578360000160018203815481106144e957fe5b906000526020600020906002020160010154915050610d86565b6001840154845485908290811061451657fe5b90600052602060002090600202016000015484101561457757801561456c5760405162461bcd60e51b8152600401808060200182810382526030815260200180614f3d6030913960400191505060405180910390fd5b600092505050610d86565b6000614584868387614a60565b905085600001818154811061459557fe5b906000526020600020906002020160010154935050505092915050565b82546000908190806145c75760009250614687565b43841015806145f657508560018203815481106145e057fe5b9060005260206000209060030201600001548410155b1561460a5760019250600181039150614687565b85858154811061461657fe5b90600052602060002090600302016000015484101561467557841561466c5760405162461bcd60e51b8152600401808060200182810382526030815260200180614d4b6030913960400191505060405180910390fd5b60009250614687565b60019250614684868686614ad7565b91505b50935093915050565b6000828211156146e7576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b6001600160a01b0382166000908152602084905260408120612105818461448c565b6000806000614726876000018860010154866145b2565b915091508161473a57600092505050611498565b600087600001828154811061474b57fe5b6000918252602082206002600390920201908101549195509150845b818110156147b1576147a76147a08a8a86600201858154811061478657fe5b906000526020600020015461334e9092919063ffffffff16565b8790612e22565b9550600101614767565b5050505050949350505050565b60008060006147d5866000018760010154866145b2565b91509150816147e957600092505050610db1565b60008660000182815481106147fa57fe5b600091825260208220600160039092020190810154909250905b8181101561487e57876001600160a01b031683600101828154811061483557fe5b6000918252602090912001546001600160a01b031614156148765782600201818154811061485f57fe5b906000526020600020015495505050505050610db1565b600101614814565b50600098975050505050505050565b600183015460005b81811080156148d05750836001600160a01b03168560010182815481106148b857fe5b6000918252602090912001546001600160a01b031614155b156148dd57600101614895565b8181101561491a57821561490c57828560020182815481106148fb57fe5b600091825260209091200155611a88565b611a88858260018503614b4e565b610f7a85858585614c48565b60018301546000805b828110156149ad57600086600101828154811061494857fe5b6000918252602090912001546001600160a01b039081169150861681141561497f5761497688828785614c48565b600192506149a4565b6149a4888289600201858154811061499357fe5b906000526020600020015485614c48565b5060010161492f565b508061309b5761309b86858585614c48565b60008060006149d6856000018660010154866145b2565b91509150816149ea57600092505050610d86565b60008560000182815481106149fb57fe5b6000918252602082206002600390920201908101549195509150845b81811015614a5557614a4b836002018281548110614a3157fe5b906000526020600020015487612e2290919063ffffffff16565b9550600101614a17565b505050505092915050565b825460009083908290614a74906001614690565b90505b81811115612a83576000614a95600261341360016124678688612e22565b905084878281548110614aa457fe5b90600052602060002090600202016000015411614ac357809250614ad1565b614ace816001614690565b91505b50614a77565b825460009083908290614aeb906001614690565b90505b81811115612a83576000614b0c600261341360016124678688612e22565b905084878281548110614b1b57fe5b90600052602060002090600302016000015411614b3a57809250614b48565b614b45816001614690565b91505b50614aee565b80821015614bf157826001018181548110614b6557fe5b6000918252602090912001546001840180546001600160a01b039092169184908110614b8d57fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550826002018181548110614bca57fe5b9060005260206000200154836002018381548110614be457fe5b6000918252602090912001555b82600101805480614bfe57fe5b600082815260209020810160001990810180546001600160a01b031916905501905560028301805480614c2d57fe5b60019003818190600052602060002001600090559055505050565b81156117f95760408051808201909152601681527513585e0819195b1959d85d195cc8195e18d95959195960521b602082015260028210614cca5760405162461bcd60e51b81526020600482018181528351602484015283519092839260449091019190850190808383600083156109b357818101518382015260200161099b565b506001808501805480830182556000918252602080832090910180546001600160a01b0388166001600160a01b03199091161790556002870180549384018155825290200182905550505050565b5080546000825590600052602060002090810190610c5291905b80821115614d465760008155600101614d32565b509056fe44656c65676174696f6e486973746f72793a2072656164696e672066726f6d20636c65616e65642d757020626c6f636b436c65616e757020626c6f636b206d75737420626520696e207468652070617374756e64656c6567617465416c6c2063616e206f6e6c79206265207573656420696e2070657263656e746167652064656c65676174696f6e206d6f646545524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365436c65616e757020626c6f636b206e756d626572206d757374206e65766572206465637265617365500599802164a08023e87ffc3eed0ba3ae60697b3083ba81d046683679d81c6b44656c6567617461626c653a2072656164696e672066726f6d20636c65616e65642d757020626c6f636b6f6e6c79206f776e65722c20676f7665726e616e6365206f7220636c65616e757020626c6f636b206d616e61676572756e64656c6567617465416c6c4578706c696369742063616e206f6e6c79206265207573656420696e206578706c696369742064656c65676174696f6e206d6f6465536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f775265766f6b65206973206f6e6c7920666f722074686520706173742c2075736520756e64656c656761746520666f72207468652070726573656e74436865636b506f696e74486973746f72793a2072656164696e672066726f6d20636c65616e65642d757020626c6f636b64656c6567617465734f6620646f6573206e6f7420776f726b20696e20414d4f554e542064656c65676174696f6e206d6f6465a2646970667358221220632e5f1ff11207979ad9b116ba95f0087e2ea3aa28ec0722ae2318dbab97c48664736f6c63430007060033",
772
+ "linkReferences": {},
773
+ "deployedLinkReferences": {}
774
+ }