@flarenetwork/flare-periphery-contract-artifacts 0.0.3 → 0.1.0

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 (848) hide show
  1. package/{dist/README.md → README.md} +2 -1
  2. package/coston/README.md +7 -0
  3. package/coston/artifacts/contracts/addressUpdater/implementation/AddressUpdatable.sol/AddressUpdatable.json +42 -0
  4. package/coston/artifacts/contracts/addressUpdater/implementation/AddressUpdater.sol/AddressUpdater.json +381 -0
  5. package/coston/artifacts/contracts/addressUpdater/interface/IIAddressUpdatable.sol/IIAddressUpdatable.json +29 -0
  6. package/coston/artifacts/contracts/addressUpdater/interface/IIAddressUpdater.sol/IIAddressUpdater.json +105 -0
  7. package/coston/artifacts/contracts/assetRegistry/implementation/FlareAssetRegistry.sol/FlareAssetRegistry.json +525 -0
  8. package/coston/artifacts/contracts/assetRegistry/implementation/WNatRegistryProvider.sol/WNatRegistryProvider.json +113 -0
  9. package/coston/artifacts/contracts/assetRegistry/interface/IIERC20WithMetadata.sol/IIERC20WithMetadata.json +233 -0
  10. package/coston/artifacts/contracts/assetRegistry/interface/IIFlareAssetRegistry.sol/IIFlareAssetRegistry.json +316 -0
  11. package/coston/artifacts/contracts/assetRegistry/interface/IIFlareAssetRegistryProvider.sol/IIFlareAssetRegistryProvider.json +66 -0
  12. package/coston/artifacts/contracts/assetRegistry/lib/StandardAttributes.sol/StandardAttributes.json +10 -0
  13. package/coston/artifacts/contracts/claiming/implementation/ClaimSetupManager.sol/ClaimSetupManager.json +1151 -0
  14. package/coston/artifacts/contracts/claiming/implementation/CloneFactory.sol/CloneFactory.json +10 -0
  15. package/coston/artifacts/contracts/claiming/implementation/DelegationAccount.sol/DelegationAccount.json +346 -0
  16. package/coston/artifacts/contracts/claiming/interface/IIClaimSetupManager.sol/IIClaimSetupManager.json +795 -0
  17. package/coston/artifacts/contracts/claiming/interface/IIDelegationAccount.sol/IIDelegationAccount.json +316 -0
  18. package/coston/artifacts/contracts/ftso/implementation/Ftso.sol/Ftso.json +1104 -0
  19. package/coston/artifacts/contracts/ftso/implementation/FtsoManager.sol/FtsoManager.json +1723 -0
  20. package/coston/artifacts/contracts/ftso/interface/IIFtso.sol/IIFtso.json +953 -0
  21. package/coston/artifacts/contracts/ftso/interface/IIFtsoManager.sol/IIFtsoManager.json +878 -0
  22. package/coston/artifacts/contracts/ftso/interface/IIFtsoManagerV1.sol/IIFtsoManagerV1.json +102 -0
  23. package/coston/artifacts/contracts/ftso/lib/FtsoEpoch.sol/FtsoEpoch.json +10 -0
  24. package/coston/artifacts/contracts/ftso/lib/FtsoManagement.sol/FtsoManagement.json +43 -0
  25. package/coston/artifacts/contracts/ftso/lib/FtsoManagerSettings.sol/FtsoManagerSettings.json +10 -0
  26. package/coston/artifacts/contracts/ftso/lib/FtsoMedian.sol/FtsoMedian.json +10 -0
  27. package/coston/artifacts/contracts/ftso/lib/FtsoVote.sol/FtsoVote.json +10 -0
  28. package/coston/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockFtsoRegistry.json +624 -0
  29. package/coston/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockPriceSubmitter.json +241 -0
  30. package/coston/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockVoterWhitelister.json +236 -0
  31. package/coston/artifacts/contracts/ftso/priceProviderMockContracts/priceProviderMockFtso.sol/MockNpmFtso.json +1048 -0
  32. package/coston/artifacts/contracts/genesis/implementation/FlareDaemon.sol/FlareDaemon.json +676 -0
  33. package/coston/artifacts/contracts/genesis/implementation/GovernanceSettings.sol/GovernanceSettings.json +224 -0
  34. package/coston/artifacts/contracts/genesis/implementation/PriceSubmitter.sol/PriceSubmitter.json +407 -0
  35. package/coston/artifacts/contracts/genesis/implementation/StateConnector.sol/StateConnector.json +324 -0
  36. package/coston/artifacts/contracts/genesis/interface/IFlareDaemonize.sol/IFlareDaemonize.json +37 -0
  37. package/coston/artifacts/contracts/genesis/interface/IFtsoGenesis.sol/IFtsoGenesis.json +91 -0
  38. package/coston/artifacts/contracts/genesis/interface/IFtsoManagerGenesis.sol/IFtsoManagerGenesis.json +24 -0
  39. package/coston/artifacts/contracts/genesis/interface/IFtsoRegistryGenesis.sol/IFtsoRegistryGenesis.json +30 -0
  40. package/coston/artifacts/contracts/genesis/interface/IIPriceSubmitter.sol/IIPriceSubmitter.json +285 -0
  41. package/coston/artifacts/contracts/genesis/interface/IInflationGenesis.sol/IInflationGenesis.json +18 -0
  42. package/coston/artifacts/contracts/governance/implementation/Governed.sol/Governed.json +126 -0
  43. package/coston/artifacts/contracts/governance/implementation/GovernedAtGenesis.sol/GovernedAtGenesis.json +139 -0
  44. package/coston/artifacts/contracts/governance/implementation/GovernedBase.sol/GovernedBase.json +115 -0
  45. package/coston/artifacts/contracts/governance/implementation/GovernedBaseV2.sol/GovernedBaseV2.json +209 -0
  46. package/coston/artifacts/contracts/governance/implementation/GovernedV2.sol/GovernedV2.json +220 -0
  47. package/coston/artifacts/contracts/governance/implementation/Governor.sol/Governor.json +653 -0
  48. package/coston/artifacts/contracts/governance/implementation/GovernorProposals.sol/GovernorProposals.json +24 -0
  49. package/coston/artifacts/contracts/governance/implementation/GovernorProposer.sol/GovernorProposer.json +265 -0
  50. package/coston/artifacts/contracts/governance/implementation/GovernorVotePower.sol/GovernorVotePower.json +24 -0
  51. package/coston/artifacts/contracts/governance/implementation/GovernorVotes.sol/GovernorVotes.json +10 -0
  52. package/coston/artifacts/contracts/governance/implementation/PollingFoundation.sol/PollingFoundation.json +1065 -0
  53. package/coston/artifacts/contracts/governance/implementation/PollingFtso.sol/PollingFtso.json +1187 -0
  54. package/coston/artifacts/contracts/governance/interface/IIGovernorProposer.sol/IIGovernorProposer.json +30 -0
  55. package/coston/artifacts/contracts/governance/interface/IIPollingFoundation.sol/IIPollingFoundation.json +640 -0
  56. package/coston/artifacts/contracts/inflation/implementation/Inflation.sol/Inflation.json +854 -0
  57. package/coston/artifacts/contracts/inflation/implementation/InflationAllocation.sol/InflationAllocation.json +463 -0
  58. package/coston/artifacts/contracts/inflation/implementation/SelfDestructBurner.sol/SelfDestructBurner.json +73 -0
  59. package/coston/artifacts/contracts/inflation/implementation/Supply.sol/Supply.json +642 -0
  60. package/coston/artifacts/contracts/inflation/interface/IIInflationAllocation.sol/IIInflationAllocation.json +49 -0
  61. package/coston/artifacts/contracts/inflation/interface/IIInflationReceiver.sol/IIInflationReceiver.json +70 -0
  62. package/coston/artifacts/contracts/inflation/interface/IIInflationV1.sol/IIInflationV1.json +142 -0
  63. package/coston/artifacts/contracts/inflation/interface/IIPreInflationCalculation.sol/IIPreInflationCalculation.json +18 -0
  64. package/coston/artifacts/contracts/inflation/interface/IISupply.sol/IISupply.json +82 -0
  65. package/coston/artifacts/contracts/inflation/lib/InflationRewardServices.sol/InflationRewardServices.json +68 -0
  66. package/coston/artifacts/contracts/inflation/lib/InflationTimeSlots.sol/InflationTimeSlots.json +10 -0
  67. package/coston/artifacts/contracts/mockXAsset/interface/ICollateralizable.sol/ICollateralizable.json +234 -0
  68. package/coston/artifacts/contracts/token/implementation/CheckPointable.sol/CheckPointable.json +129 -0
  69. package/coston/artifacts/contracts/token/implementation/CleanupBlockNumberManager.sol/CleanupBlockNumberManager.json +389 -0
  70. package/coston/artifacts/contracts/token/implementation/Delegatable.sol/Delegatable.json +222 -0
  71. package/coston/artifacts/contracts/token/implementation/GovernanceVotePower.sol/GovernanceVotePower.json +324 -0
  72. package/coston/artifacts/contracts/token/implementation/VPContract.sol/VPContract.json +774 -0
  73. package/coston/artifacts/contracts/token/implementation/VPToken.sol/VPToken.json +1102 -0
  74. package/coston/artifacts/contracts/token/implementation/WNat.sol/WNat.json +1195 -0
  75. package/coston/artifacts/contracts/token/interface/IICleanable.sol/IICleanable.json +63 -0
  76. package/coston/artifacts/contracts/token/interface/IIGovernanceVotePower.sol/IIGovernanceVotePower.json +252 -0
  77. package/coston/artifacts/contracts/token/interface/IIVPContract.sol/IIVPContract.json +609 -0
  78. package/coston/artifacts/contracts/token/interface/IIVPToken.sol/IIVPToken.json +790 -0
  79. package/coston/artifacts/contracts/token/lib/CheckPointHistory.sol/CheckPointHistory.json +10 -0
  80. package/coston/artifacts/contracts/token/lib/CheckPointHistoryCache.sol/CheckPointHistoryCache.json +10 -0
  81. package/coston/artifacts/contracts/token/lib/CheckPointsByAddress.sol/CheckPointsByAddress.json +10 -0
  82. package/coston/artifacts/contracts/token/lib/DelegateCheckPointHistory.sol/DelegateCheckPointHistory.json +10 -0
  83. package/coston/artifacts/contracts/token/lib/DelegateCheckPointsByAddress.sol/DelegateCheckPointsByAddress.json +10 -0
  84. package/coston/artifacts/contracts/token/lib/DelegationHistory.sol/DelegationHistory.json +24 -0
  85. package/coston/artifacts/contracts/token/lib/ExplicitDelegation.sol/ExplicitDelegation.json +10 -0
  86. package/coston/artifacts/contracts/token/lib/PercentageDelegation.sol/PercentageDelegation.json +24 -0
  87. package/coston/artifacts/contracts/token/lib/VotePower.sol/VotePower.json +10 -0
  88. package/coston/artifacts/contracts/token/lib/VotePowerCache.sol/VotePowerCache.json +10 -0
  89. package/coston/artifacts/contracts/tokenPools/implementation/FtsoRewardManager.sol/FtsoRewardManager.json +1425 -0
  90. package/coston/artifacts/contracts/tokenPools/implementation/InflationReceiver.sol/InflationReceiver.json +127 -0
  91. package/coston/artifacts/contracts/tokenPools/implementation/TokenPoolBase.sol/TokenPoolBase.json +10 -0
  92. package/coston/artifacts/contracts/tokenPools/interface/IIFtsoRewardManager.sol/IIFtsoRewardManager.json +975 -0
  93. package/coston/artifacts/contracts/tokenPools/interface/IITokenPool.sol/IITokenPool.json +34 -0
  94. package/coston/artifacts/contracts/tokenPools/lib/DataProviderFee.sol/DataProviderFee.json +10 -0
  95. package/coston/artifacts/contracts/userInterfaces/IClaimSetupManager.sol/IClaimSetupManager.json +665 -0
  96. package/coston/artifacts/contracts/userInterfaces/IDelegationAccount.sol/IDelegationAccount.json +144 -0
  97. package/coston/artifacts/contracts/userInterfaces/IFlareAssetRegistry.sol/IFlareAssetRegistry.json +241 -0
  98. package/coston/artifacts/contracts/userInterfaces/IFlareContractRegistry.sol/IFlareContractRegistry.json +105 -0
  99. package/coston/artifacts/contracts/userInterfaces/IFtso.sol/IFtso.json +512 -0
  100. package/coston/artifacts/contracts/userInterfaces/IFtsoManager.sol/IFtsoManager.json +376 -0
  101. package/coston/artifacts/contracts/userInterfaces/IFtsoRegistry.sol/IFtsoRegistry.json +445 -0
  102. package/coston/artifacts/contracts/userInterfaces/IFtsoRewardManager.sol/IFtsoRewardManager.json +702 -0
  103. package/coston/artifacts/contracts/userInterfaces/IGenericRewardManager.sol/IGenericRewardManager.json +248 -0
  104. package/coston/artifacts/contracts/userInterfaces/IGovernanceSettings.sol/IGovernanceSettings.json +69 -0
  105. package/coston/artifacts/contracts/userInterfaces/IGovernanceVotePower.sol/IGovernanceVotePower.json +117 -0
  106. package/coston/artifacts/contracts/userInterfaces/IGovernor.sol/IGovernor.json +484 -0
  107. package/coston/artifacts/contracts/userInterfaces/IPollingFtso.sol/IPollingFtso.json +639 -0
  108. package/coston/artifacts/contracts/userInterfaces/IPriceSubmitter.sol/IPriceSubmitter.json +200 -0
  109. package/coston/artifacts/contracts/userInterfaces/IVPContractEvents.sol/IVPContractEvents.json +73 -0
  110. package/coston/artifacts/contracts/userInterfaces/IVPToken.sol/IVPToken.json +658 -0
  111. package/coston/artifacts/contracts/userInterfaces/IVoterWhitelister.sol/IVoterWhitelister.json +199 -0
  112. package/coston/artifacts/contracts/userInterfaces/IWNat.sol/IWNat.json +62 -0
  113. package/coston/artifacts/contracts/utils/implementation/AddressSet.sol/AddressSet.json +10 -0
  114. package/coston/artifacts/contracts/utils/implementation/DateTimeLibrary.sol/BokkyPooBahsDateTimeLibrary.json +154 -0
  115. package/coston/artifacts/contracts/utils/implementation/FlareContractRegistry.sol/FlareContractRegistry.json +147 -0
  116. package/coston/artifacts/contracts/utils/implementation/FtsoRegistry.sol/FtsoRegistry.json +769 -0
  117. package/coston/artifacts/contracts/utils/implementation/FtsoRegistryProxy.sol/FtsoRegistryProxy.json +272 -0
  118. package/coston/artifacts/contracts/utils/implementation/FtsoV2Upgrader.sol/FtsoV2Upgrader.json +440 -0
  119. package/coston/artifacts/contracts/utils/implementation/GovernedAndFlareDaemonized.sol/GovernedAndFlareDaemonized.json +144 -0
  120. package/coston/artifacts/contracts/utils/implementation/GovernedAndFlareDaemonizedV2.sol/GovernedAndFlareDaemonizedV2.json +238 -0
  121. package/coston/artifacts/contracts/utils/implementation/ProxyGoverned.sol/ProxyGoverned.json +256 -0
  122. package/coston/artifacts/contracts/utils/implementation/RevertErrorTracking.sol/RevertErrorTracking.json +131 -0
  123. package/coston/artifacts/contracts/utils/implementation/SafePct.sol/SafePct.json +10 -0
  124. package/coston/artifacts/contracts/utils/implementation/VoterWhitelister.sol/VoterWhitelister.json +653 -0
  125. package/coston/artifacts/contracts/utils/interface/IIFtsoRegistry.sol/IIFtsoRegistry.json +477 -0
  126. package/coston/artifacts/contracts/utils/interface/IIFtsoRegistryV1.sol/IIFtsoRegistryV1.json +120 -0
  127. package/coston/artifacts/contracts/utils/interface/IIRandomProvider.sol/IIRandomProvider.json +60 -0
  128. package/coston/artifacts/contracts/utils/interface/IIVoterWhitelister.sol/IIVoterWhitelister.json +308 -0
  129. package/coston/artifacts/contracts/utils/interface/IUpdateValidators.sol/IUpdateValidators.json +18 -0
  130. package/{dist/coston/deploys/coston.json → coston/deploys/contracts.json} +71 -16
  131. package/coston2/README.md +7 -0
  132. package/coston2/artifacts/contracts/addressUpdater/implementation/AddressUpdatable.sol/AddressUpdatable.json +42 -0
  133. package/coston2/artifacts/contracts/addressUpdater/implementation/AddressUpdater.sol/AddressUpdater.json +381 -0
  134. package/coston2/artifacts/contracts/addressUpdater/interface/IIAddressUpdatable.sol/IIAddressUpdatable.json +29 -0
  135. package/coston2/artifacts/contracts/addressUpdater/interface/IIAddressUpdater.sol/IIAddressUpdater.json +105 -0
  136. package/coston2/artifacts/contracts/assetRegistry/implementation/FlareAssetRegistry.sol/FlareAssetRegistry.json +525 -0
  137. package/coston2/artifacts/contracts/assetRegistry/implementation/WNatRegistryProvider.sol/WNatRegistryProvider.json +113 -0
  138. package/coston2/artifacts/contracts/assetRegistry/interface/IIERC20WithMetadata.sol/IIERC20WithMetadata.json +233 -0
  139. package/coston2/artifacts/contracts/assetRegistry/interface/IIFlareAssetRegistry.sol/IIFlareAssetRegistry.json +316 -0
  140. package/coston2/artifacts/contracts/assetRegistry/interface/IIFlareAssetRegistryProvider.sol/IIFlareAssetRegistryProvider.json +66 -0
  141. package/coston2/artifacts/contracts/assetRegistry/lib/StandardAttributes.sol/StandardAttributes.json +10 -0
  142. package/coston2/artifacts/contracts/claiming/implementation/ClaimSetupManager.sol/ClaimSetupManager.json +1151 -0
  143. package/coston2/artifacts/contracts/claiming/implementation/CloneFactory.sol/CloneFactory.json +10 -0
  144. package/coston2/artifacts/contracts/claiming/implementation/DelegationAccount.sol/DelegationAccount.json +346 -0
  145. package/coston2/artifacts/contracts/claiming/interface/IIClaimSetupManager.sol/IIClaimSetupManager.json +795 -0
  146. package/coston2/artifacts/contracts/claiming/interface/IIDelegationAccount.sol/IIDelegationAccount.json +316 -0
  147. package/coston2/artifacts/contracts/ftso/implementation/Ftso.sol/Ftso.json +1039 -0
  148. package/coston2/artifacts/contracts/ftso/implementation/FtsoManager.sol/FtsoManager.json +1723 -0
  149. package/coston2/artifacts/contracts/ftso/interface/IIFtso.sol/IIFtso.json +888 -0
  150. package/coston2/artifacts/contracts/ftso/interface/IIFtsoManager.sol/IIFtsoManager.json +891 -0
  151. package/coston2/artifacts/contracts/ftso/interface/IIFtsoManagerV1.sol/IIFtsoManagerV1.json +102 -0
  152. package/coston2/artifacts/contracts/ftso/lib/FtsoEpoch.sol/FtsoEpoch.json +10 -0
  153. package/coston2/artifacts/contracts/ftso/lib/FtsoManagement.sol/FtsoManagement.json +43 -0
  154. package/coston2/artifacts/contracts/ftso/lib/FtsoManagerSettings.sol/FtsoManagerSettings.json +10 -0
  155. package/coston2/artifacts/contracts/ftso/lib/FtsoMedian.sol/FtsoMedian.json +10 -0
  156. package/coston2/artifacts/contracts/ftso/lib/FtsoVote.sol/FtsoVote.json +10 -0
  157. package/coston2/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockFtsoRegistry.json +718 -0
  158. package/coston2/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockPriceSubmitter.json +338 -0
  159. package/coston2/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockVoterWhitelister.json +236 -0
  160. package/coston2/artifacts/contracts/ftso/priceProviderMockContracts/priceProviderMockFtso.sol/MockNpmFtso.json +983 -0
  161. package/coston2/artifacts/contracts/genesis/implementation/DistributionTreasury.sol/DistributionTreasury.json +289 -0
  162. package/coston2/artifacts/contracts/genesis/implementation/FlareDaemon.sol/FlareDaemon.json +794 -0
  163. package/coston2/artifacts/contracts/genesis/implementation/GovernanceSettings.sol/GovernanceSettings.json +219 -0
  164. package/coston2/artifacts/contracts/genesis/implementation/IncentivePoolTreasury.sol/IncentivePoolTreasury.json +292 -0
  165. package/coston2/artifacts/contracts/genesis/implementation/InitialAirdrop.sol/InitialAirdrop.json +493 -0
  166. package/coston2/artifacts/contracts/genesis/implementation/PriceSubmitter.sol/PriceSubmitter.json +569 -0
  167. package/coston2/artifacts/contracts/genesis/implementation/StateConnector.sol/StateConnector.json +324 -0
  168. package/coston2/artifacts/contracts/genesis/interface/IFlareDaemonize.sol/IFlareDaemonize.json +50 -0
  169. package/coston2/artifacts/contracts/genesis/interface/IFtsoGenesis.sol/IFtsoGenesis.json +63 -0
  170. package/coston2/artifacts/contracts/genesis/interface/IFtsoManagerGenesis.sol/IFtsoManagerGenesis.json +24 -0
  171. package/coston2/artifacts/contracts/genesis/interface/IFtsoRegistryGenesis.sol/IFtsoRegistryGenesis.json +30 -0
  172. package/coston2/artifacts/contracts/genesis/interface/IIPriceSubmitter.sol/IIPriceSubmitter.json +283 -0
  173. package/coston2/artifacts/contracts/genesis/interface/IInflationGenesis.sol/IInflationGenesis.json +18 -0
  174. package/coston2/artifacts/contracts/governance/implementation/Governed.sol/Governed.json +220 -0
  175. package/coston2/artifacts/contracts/governance/implementation/GovernedAtGenesis.sol/GovernedAtGenesis.json +233 -0
  176. package/coston2/artifacts/contracts/governance/implementation/GovernedBase.sol/GovernedBase.json +209 -0
  177. package/coston2/artifacts/contracts/governance/implementation/Governor.sol/Governor.json +653 -0
  178. package/coston2/artifacts/contracts/governance/implementation/GovernorProposals.sol/GovernorProposals.json +24 -0
  179. package/coston2/artifacts/contracts/governance/implementation/GovernorProposer.sol/GovernorProposer.json +265 -0
  180. package/coston2/artifacts/contracts/governance/implementation/GovernorVotePower.sol/GovernorVotePower.json +24 -0
  181. package/coston2/artifacts/contracts/governance/implementation/GovernorVotes.sol/GovernorVotes.json +10 -0
  182. package/coston2/artifacts/contracts/governance/implementation/PollingFoundation.sol/PollingFoundation.json +1070 -0
  183. package/coston2/artifacts/contracts/governance/implementation/PollingFtso.sol/PollingFtso.json +1187 -0
  184. package/coston2/artifacts/contracts/governance/interface/IIGovernorProposer.sol/IIGovernorProposer.json +30 -0
  185. package/coston2/artifacts/contracts/governance/interface/IIPollingFoundation.sol/IIPollingFoundation.json +640 -0
  186. package/coston2/artifacts/contracts/inflation/implementation/Inflation.sol/Inflation.json +926 -0
  187. package/coston2/artifacts/contracts/inflation/implementation/InflationAllocation.sol/InflationAllocation.json +463 -0
  188. package/coston2/artifacts/contracts/inflation/implementation/Supply.sol/Supply.json +543 -0
  189. package/coston2/artifacts/contracts/inflation/interface/IIInflationAllocation.sol/IIInflationAllocation.json +49 -0
  190. package/coston2/artifacts/contracts/inflation/interface/IIInflationPercentageProvider.sol/IIInflationPercentageProvider.json +24 -0
  191. package/coston2/artifacts/contracts/inflation/interface/IIInflationReceiver.sol/IIInflationReceiver.json +57 -0
  192. package/coston2/artifacts/contracts/inflation/interface/IIInflationSharingPercentageProvider.sol/IIInflationSharingPercentageProvider.json +36 -0
  193. package/coston2/artifacts/contracts/inflation/interface/IISupply.sol/IISupply.json +82 -0
  194. package/coston2/artifacts/contracts/inflation/lib/InflationAnnum.sol/InflationAnnum.json +10 -0
  195. package/coston2/artifacts/contracts/inflation/lib/InflationAnnums.sol/InflationAnnums.json +10 -0
  196. package/coston2/artifacts/contracts/inflation/lib/RewardService.sol/RewardService.json +30 -0
  197. package/coston2/artifacts/contracts/inflation/lib/RewardServices.sol/RewardServices.json +49 -0
  198. package/coston2/artifacts/contracts/mockXAsset/interface/ICollateralizable.sol/ICollateralizable.json +234 -0
  199. package/coston2/artifacts/contracts/token/implementation/CheckPointable.sol/CheckPointable.json +142 -0
  200. package/coston2/artifacts/contracts/token/implementation/CleanupBlockNumberManager.sol/CleanupBlockNumberManager.json +389 -0
  201. package/coston2/artifacts/contracts/token/implementation/Delegatable.sol/Delegatable.json +235 -0
  202. package/coston2/artifacts/contracts/token/implementation/GovernanceVotePower.sol/GovernanceVotePower.json +324 -0
  203. package/coston2/artifacts/contracts/token/implementation/VPContract.sol/VPContract.json +798 -0
  204. package/coston2/artifacts/contracts/token/implementation/VPToken.sol/VPToken.json +1264 -0
  205. package/coston2/artifacts/contracts/token/implementation/WNat.sol/WNat.json +1357 -0
  206. package/coston2/artifacts/contracts/token/interface/IICleanable.sol/IICleanable.json +50 -0
  207. package/coston2/artifacts/contracts/token/interface/IIGovernanceVotePower.sol/IIGovernanceVotePower.json +252 -0
  208. package/coston2/artifacts/contracts/token/interface/IIVPContract.sol/IIVPContract.json +620 -0
  209. package/coston2/artifacts/contracts/token/interface/IIVPToken.sol/IIVPToken.json +832 -0
  210. package/coston2/artifacts/contracts/token/lib/CheckPointHistory.sol/CheckPointHistory.json +10 -0
  211. package/coston2/artifacts/contracts/token/lib/CheckPointHistoryCache.sol/CheckPointHistoryCache.json +10 -0
  212. package/coston2/artifacts/contracts/token/lib/CheckPointsByAddress.sol/CheckPointsByAddress.json +10 -0
  213. package/coston2/artifacts/contracts/token/lib/DelegateCheckPointHistory.sol/DelegateCheckPointHistory.json +10 -0
  214. package/coston2/artifacts/contracts/token/lib/DelegateCheckPointsByAddress.sol/DelegateCheckPointsByAddress.json +10 -0
  215. package/coston2/artifacts/contracts/token/lib/DelegationHistory.sol/DelegationHistory.json +24 -0
  216. package/coston2/artifacts/contracts/token/lib/ExplicitDelegation.sol/ExplicitDelegation.json +10 -0
  217. package/coston2/artifacts/contracts/token/lib/IICombinedNatBalance.sol/IICombinedNatBalance.json +54 -0
  218. package/coston2/artifacts/contracts/token/lib/PercentageDelegation.sol/PercentageDelegation.json +24 -0
  219. package/coston2/artifacts/contracts/token/lib/VotePower.sol/VotePower.json +10 -0
  220. package/coston2/artifacts/contracts/token/lib/VotePowerCache.sol/VotePowerCache.json +10 -0
  221. package/coston2/artifacts/contracts/tokenPools/implementation/AttestationProviderRewardManager.sol/AttestationProviderRewardManager.json +741 -0
  222. package/coston2/artifacts/contracts/tokenPools/implementation/DistributionToDelegators.sol/DistributionToDelegators.json +1038 -0
  223. package/coston2/artifacts/contracts/tokenPools/implementation/Escrow.sol/Escrow.json +769 -0
  224. package/coston2/artifacts/contracts/tokenPools/implementation/FtsoRewardManager.sol/FtsoRewardManager.json +1412 -0
  225. package/coston2/artifacts/contracts/tokenPools/implementation/GenericRewardManager.sol/GenericRewardManager.json +720 -0
  226. package/coston2/artifacts/contracts/tokenPools/implementation/IncentivePool.sol/IncentivePool.json +927 -0
  227. package/coston2/artifacts/contracts/tokenPools/implementation/IncentivePoolAllocation.sol/IncentivePoolAllocation.json +463 -0
  228. package/coston2/artifacts/contracts/tokenPools/implementation/ValidatorRewardManager.sol/ValidatorRewardManager.json +741 -0
  229. package/coston2/artifacts/contracts/tokenPools/interface/IIFtsoRewardManager.sol/IIFtsoRewardManager.json +962 -0
  230. package/coston2/artifacts/contracts/tokenPools/interface/IIGenericRewardManager.sol/IIGenericRewardManager.json +413 -0
  231. package/coston2/artifacts/contracts/tokenPools/interface/IIIncentivePoolAllocation.sol/IIIncentivePoolAllocation.json +49 -0
  232. package/coston2/artifacts/contracts/tokenPools/interface/IIIncentivePoolPercentageProvider.sol/IIIncentivePoolPercentageProvider.json +24 -0
  233. package/coston2/artifacts/contracts/tokenPools/interface/IIIncentivePoolReceiver.sol/IIIncentivePoolReceiver.json +57 -0
  234. package/coston2/artifacts/contracts/tokenPools/interface/IIIncentivePoolSharingPercentageProvider.sol/IIIncentivePoolSharingPercentageProvider.json +36 -0
  235. package/coston2/artifacts/contracts/tokenPools/interface/IITokenPool.sol/IITokenPool.json +34 -0
  236. package/coston2/artifacts/contracts/tokenPools/lib/DataProviderFee.sol/DataProviderFee.json +10 -0
  237. package/coston2/artifacts/contracts/tokenPools/lib/IncentivePoolAnnum.sol/IncentivePoolAnnum.json +10 -0
  238. package/coston2/artifacts/contracts/tokenPools/lib/IncentivePoolAnnums.sol/IncentivePoolAnnums.json +10 -0
  239. package/coston2/artifacts/contracts/tokenPools/lib/IncentivePoolRewardService.sol/IncentivePoolRewardService.json +30 -0
  240. package/coston2/artifacts/contracts/tokenPools/lib/IncentivePoolRewardServices.sol/IncentivePoolRewardServices.json +49 -0
  241. package/coston2/artifacts/contracts/userInterfaces/IClaimSetupManager.sol/IClaimSetupManager.json +665 -0
  242. package/coston2/artifacts/contracts/userInterfaces/IDelegationAccount.sol/IDelegationAccount.json +144 -0
  243. package/coston2/artifacts/contracts/userInterfaces/IDistributionToDelegators.sol/IDistributionToDelegators.json +258 -0
  244. package/coston2/artifacts/contracts/userInterfaces/IFlareAssetRegistry.sol/IFlareAssetRegistry.json +241 -0
  245. package/coston2/artifacts/contracts/userInterfaces/IFlareContractRegistry.sol/IFlareContractRegistry.json +105 -0
  246. package/coston2/artifacts/contracts/userInterfaces/IFtso.sol/IFtso.json +475 -0
  247. package/coston2/artifacts/contracts/userInterfaces/IFtsoManager.sol/IFtsoManager.json +376 -0
  248. package/coston2/artifacts/contracts/userInterfaces/IFtsoRegistry.sol/IFtsoRegistry.json +445 -0
  249. package/coston2/artifacts/contracts/userInterfaces/IFtsoRewardManager.sol/IFtsoRewardManager.json +702 -0
  250. package/coston2/artifacts/contracts/userInterfaces/IGenericRewardManager.sol/IGenericRewardManager.json +248 -0
  251. package/coston2/artifacts/contracts/userInterfaces/IGovernanceSettings.sol/IGovernanceSettings.json +69 -0
  252. package/coston2/artifacts/contracts/userInterfaces/IGovernanceVotePower.sol/IGovernanceVotePower.json +117 -0
  253. package/coston2/artifacts/contracts/userInterfaces/IGovernor.sol/IGovernor.json +484 -0
  254. package/coston2/artifacts/contracts/userInterfaces/IPollingFtso.sol/IPollingFtso.json +639 -0
  255. package/coston2/artifacts/contracts/userInterfaces/IPriceSubmitter.sol/IPriceSubmitter.json +221 -0
  256. package/coston2/artifacts/contracts/userInterfaces/IVPContractEvents.sol/IVPContractEvents.json +73 -0
  257. package/coston2/artifacts/contracts/userInterfaces/IVPToken.sol/IVPToken.json +700 -0
  258. package/coston2/artifacts/contracts/userInterfaces/IValidatorRegistry.sol/IValidatorRegistry.json +136 -0
  259. package/coston2/artifacts/contracts/userInterfaces/IVoterWhitelister.sol/IVoterWhitelister.json +199 -0
  260. package/coston2/artifacts/contracts/userInterfaces/IWNat.sol/IWNat.json +62 -0
  261. package/coston2/artifacts/contracts/utils/implementation/AddressSet.sol/AddressSet.json +10 -0
  262. package/coston2/artifacts/contracts/utils/implementation/DateTimeLibrary.sol/BokkyPooBahsDateTimeLibrary.json +154 -0
  263. package/coston2/artifacts/contracts/utils/implementation/FlareContractRegistry.sol/FlareContractRegistry.json +147 -0
  264. package/coston2/artifacts/contracts/utils/implementation/FtsoRegistry.sol/FtsoRegistry.json +769 -0
  265. package/coston2/artifacts/contracts/utils/implementation/FtsoRegistryProxy.sol/FtsoRegistryProxy.json +272 -0
  266. package/coston2/artifacts/contracts/utils/implementation/FtsoV2Upgrader.sol/FtsoV2Upgrader.json +384 -0
  267. package/coston2/artifacts/contracts/utils/implementation/FundDistributor.sol/FundDistributor.json +71 -0
  268. package/coston2/artifacts/contracts/utils/implementation/GovernedAndFlareDaemonized.sol/GovernedAndFlareDaemonized.json +238 -0
  269. package/coston2/artifacts/contracts/utils/implementation/ProxyGoverned.sol/ProxyGoverned.json +256 -0
  270. package/coston2/artifacts/contracts/utils/implementation/RevertErrorTracking.sol/RevertErrorTracking.json +131 -0
  271. package/coston2/artifacts/contracts/utils/implementation/SafePct.sol/SafePct.json +10 -0
  272. package/coston2/artifacts/contracts/utils/implementation/SelfdestructTransfer.sol/SelfdestructTransfer.json +91 -0
  273. package/coston2/artifacts/contracts/utils/implementation/ValidatorRegistry.sol/ValidatorRegistry.json +149 -0
  274. package/coston2/artifacts/contracts/utils/implementation/VoterWhitelister.sol/VoterWhitelister.json +653 -0
  275. package/coston2/artifacts/contracts/utils/interface/IIFtsoRegistry.sol/IIFtsoRegistry.json +477 -0
  276. package/coston2/artifacts/contracts/utils/interface/IIRandomProvider.sol/IIRandomProvider.json +60 -0
  277. package/coston2/artifacts/contracts/utils/interface/IIVoterWhitelister.sol/IIVoterWhitelister.json +308 -0
  278. package/coston2/artifacts/contracts/utils/interface/IUpdateValidators.sol/IUpdateValidators.json +18 -0
  279. package/{dist/coston2/deploys/coston2.json → coston2/deploys/contracts.json} +54 -19
  280. package/dist/coston/abis.d.ts +4 -0
  281. package/dist/coston/abis.d.ts.map +1 -0
  282. package/dist/coston/{abis.coston.js → abis.js} +35 -21
  283. package/dist/coston/abis.js.map +1 -0
  284. package/dist/coston/artifacts/contracts/assetRegistry/implementation/FlareAssetRegistry.sol/FlareAssetRegistry.json +525 -0
  285. package/dist/coston/artifacts/contracts/assetRegistry/implementation/WNatRegistryProvider.sol/WNatRegistryProvider.json +113 -0
  286. package/dist/coston/artifacts/contracts/assetRegistry/interface/IIERC20WithMetadata.sol/IIERC20WithMetadata.json +233 -0
  287. package/dist/coston/artifacts/contracts/assetRegistry/interface/IIFlareAssetRegistry.sol/IIFlareAssetRegistry.json +316 -0
  288. package/dist/coston/artifacts/contracts/assetRegistry/interface/IIFlareAssetRegistryProvider.sol/IIFlareAssetRegistryProvider.json +66 -0
  289. package/dist/coston/artifacts/contracts/assetRegistry/lib/StandardAttributes.sol/StandardAttributes.json +10 -0
  290. package/dist/coston/artifacts/contracts/claiming/implementation/ClaimSetupManager.sol/ClaimSetupManager.json +2 -2
  291. package/dist/coston/artifacts/contracts/claiming/implementation/DelegationAccount.sol/DelegationAccount.json +2 -2
  292. package/dist/coston/artifacts/contracts/ftso/implementation/Ftso.sol/Ftso.json +2 -2
  293. package/dist/coston/artifacts/contracts/ftso/implementation/FtsoManager.sol/FtsoManager.json +3 -3
  294. package/dist/coston/artifacts/contracts/ftso/lib/FtsoEpoch.sol/FtsoEpoch.json +2 -2
  295. package/dist/coston/artifacts/contracts/ftso/lib/FtsoManagement.sol/FtsoManagement.json +2 -2
  296. package/dist/coston/artifacts/contracts/ftso/lib/FtsoVote.sol/FtsoVote.json +2 -2
  297. package/dist/coston/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockFtsoRegistry.json +2 -2
  298. package/dist/coston/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockPriceSubmitter.json +2 -2
  299. package/dist/coston/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockVoterWhitelister.json +40 -2
  300. package/dist/coston/artifacts/contracts/genesis/implementation/FlareDaemon.sol/FlareDaemon.json +2 -2
  301. package/dist/coston/artifacts/contracts/governance/implementation/PollingFoundation.sol/PollingFoundation.json +2 -2
  302. package/dist/coston/artifacts/contracts/governance/implementation/PollingFtso.sol/PollingFtso.json +1187 -0
  303. package/dist/coston/artifacts/contracts/inflation/implementation/Inflation.sol/Inflation.json +273 -298
  304. package/dist/coston/artifacts/contracts/inflation/implementation/InflationAllocation.sol/InflationAllocation.json +463 -0
  305. package/dist/coston/artifacts/contracts/inflation/implementation/SelfDestructBurner.sol/SelfDestructBurner.json +73 -0
  306. package/dist/coston/artifacts/contracts/inflation/implementation/Supply.sol/Supply.json +290 -51
  307. package/dist/coston/artifacts/contracts/inflation/interface/{IIInflationSharingPercentageProvider.sol/IIInflationSharingPercentageProvider.json → IIInflationAllocation.sol/IIInflationAllocation.json} +15 -2
  308. package/dist/coston/artifacts/contracts/inflation/interface/IIInflationReceiver.sol/IIInflationReceiver.json +26 -0
  309. package/dist/coston/artifacts/contracts/inflation/interface/IIInflationV1.sol/IIInflationV1.json +142 -0
  310. package/dist/coston/artifacts/contracts/inflation/interface/IIPreInflationCalculation.sol/IIPreInflationCalculation.json +18 -0
  311. package/dist/coston/artifacts/contracts/inflation/interface/IISupply.sol/IISupply.json +6 -12
  312. package/dist/coston/artifacts/contracts/inflation/lib/{RewardServices.sol/RewardServices.json → InflationRewardServices.sol/InflationRewardServices.json} +25 -6
  313. package/dist/coston/artifacts/contracts/inflation/lib/InflationTimeSlots.sol/InflationTimeSlots.json +10 -0
  314. package/dist/coston/artifacts/contracts/token/implementation/CleanupBlockNumberManager.sol/CleanupBlockNumberManager.json +172 -37
  315. package/dist/coston/artifacts/contracts/token/implementation/Delegatable.sol/Delegatable.json +2 -2
  316. package/dist/coston/artifacts/contracts/token/implementation/GovernanceVotePower.sol/GovernanceVotePower.json +2 -2
  317. package/dist/coston/artifacts/contracts/token/implementation/VPContract.sol/VPContract.json +2 -2
  318. package/dist/coston/artifacts/contracts/token/implementation/VPToken.sol/VPToken.json +2 -2
  319. package/dist/coston/artifacts/contracts/token/implementation/WNat.sol/WNat.json +2 -2
  320. package/dist/coston/artifacts/contracts/token/lib/DelegationHistory.sol/DelegationHistory.json +2 -2
  321. package/dist/coston/artifacts/contracts/token/lib/ExplicitDelegation.sol/ExplicitDelegation.json +2 -2
  322. package/dist/coston/artifacts/contracts/token/lib/PercentageDelegation.sol/PercentageDelegation.json +2 -2
  323. package/dist/coston/artifacts/contracts/tokenPools/implementation/FtsoRewardManager.sol/FtsoRewardManager.json +535 -137
  324. package/dist/coston/artifacts/contracts/tokenPools/implementation/InflationReceiver.sol/InflationReceiver.json +127 -0
  325. package/dist/coston/artifacts/contracts/tokenPools/implementation/TokenPoolBase.sol/TokenPoolBase.json +10 -0
  326. package/dist/coston/artifacts/contracts/tokenPools/interface/IIFtsoRewardManager.sol/IIFtsoRewardManager.json +348 -0
  327. package/dist/coston/artifacts/contracts/utils/implementation/FtsoV2Upgrader.sol/FtsoV2Upgrader.json +2 -2
  328. package/dist/coston/artifacts/contracts/utils/implementation/GovernedAndFlareDaemonized.sol/GovernedAndFlareDaemonized.json +2 -2
  329. package/dist/coston/artifacts/contracts/utils/implementation/GovernedAndFlareDaemonizedV2.sol/GovernedAndFlareDaemonizedV2.json +2 -2
  330. package/dist/coston/artifacts/contracts/utils/implementation/SafePct.sol/SafePct.json +2 -2
  331. package/dist/coston/artifacts/contracts/utils/implementation/VoterWhitelister.sol/VoterWhitelister.json +276 -41
  332. package/dist/coston/artifacts/contracts/utils/interface/IIVoterWhitelister.sol/IIVoterWhitelister.json +72 -0
  333. package/dist/coston/deploys/{contractAddresses.d.ts → addresses.d.ts} +14 -3
  334. package/dist/coston/deploys/addresses.d.ts.map +1 -0
  335. package/dist/coston/deploys/{contractAddresses.js → addresses.js} +20 -9
  336. package/dist/coston/deploys/addresses.js.map +1 -0
  337. package/dist/coston/deploys/contracts.json +202 -0
  338. package/dist/coston/deploys/mapper.d.ts +2 -2
  339. package/dist/coston/deploys/mapper.d.ts.map +1 -1
  340. package/dist/coston/deploys/mapper.js +13 -19
  341. package/dist/coston/deploys/mapper.js.map +1 -1
  342. package/dist/coston/index.d.ts +1 -1
  343. package/dist/coston/index.d.ts.map +1 -1
  344. package/dist/coston/index.js +1 -2
  345. package/dist/coston/index.js.map +1 -1
  346. package/dist/coston2/abis.d.ts +4 -0
  347. package/dist/coston2/abis.d.ts.map +1 -0
  348. package/dist/coston2/{abis.coston2.js → abis.js} +7 -3
  349. package/dist/coston2/abis.js.map +1 -0
  350. package/dist/coston2/artifacts/contracts/claiming/implementation/ClaimSetupManager.sol/ClaimSetupManager.json +2 -2
  351. package/dist/coston2/artifacts/contracts/claiming/implementation/DelegationAccount.sol/DelegationAccount.json +2 -2
  352. package/dist/coston2/artifacts/contracts/ftso/implementation/Ftso.sol/Ftso.json +36 -4
  353. package/dist/coston2/artifacts/contracts/ftso/implementation/FtsoManager.sol/FtsoManager.json +158 -82
  354. package/dist/coston2/artifacts/contracts/ftso/interface/IIFtso.sol/IIFtso.json +34 -2
  355. package/dist/coston2/artifacts/contracts/ftso/interface/IIFtsoManager.sol/IIFtsoManager.json +54 -0
  356. package/dist/coston2/artifacts/contracts/ftso/lib/FtsoEpoch.sol/FtsoEpoch.json +2 -2
  357. package/dist/coston2/artifacts/contracts/ftso/lib/FtsoManagement.sol/FtsoManagement.json +2 -2
  358. package/dist/coston2/artifacts/contracts/ftso/lib/FtsoManagerSettings.sol/FtsoManagerSettings.json +2 -2
  359. package/dist/coston2/artifacts/contracts/ftso/lib/FtsoMedian.sol/FtsoMedian.json +2 -2
  360. package/dist/coston2/artifacts/contracts/ftso/lib/FtsoVote.sol/FtsoVote.json +2 -2
  361. package/dist/coston2/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockFtsoRegistry.json +2 -2
  362. package/dist/coston2/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockPriceSubmitter.json +2 -2
  363. package/dist/coston2/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockVoterWhitelister.json +40 -2
  364. package/dist/coston2/artifacts/contracts/ftso/priceProviderMockContracts/priceProviderMockFtso.sol/MockNpmFtso.json +36 -4
  365. package/dist/coston2/artifacts/contracts/genesis/implementation/FlareDaemon.sol/FlareDaemon.json +2 -2
  366. package/dist/coston2/artifacts/contracts/genesis/implementation/InitialAirdrop.sol/InitialAirdrop.json +2 -2
  367. package/dist/coston2/artifacts/contracts/governance/implementation/PollingFoundation.sol/PollingFoundation.json +2 -2
  368. package/dist/coston2/artifacts/contracts/governance/implementation/PollingFtso.sol/PollingFtso.json +1187 -0
  369. package/dist/coston2/artifacts/contracts/inflation/implementation/Inflation.sol/Inflation.json +2 -2
  370. package/dist/coston2/artifacts/contracts/inflation/implementation/InflationAllocation.sol/InflationAllocation.json +2 -2
  371. package/dist/coston2/artifacts/contracts/inflation/lib/InflationAnnum.sol/InflationAnnum.json +2 -2
  372. package/dist/coston2/artifacts/contracts/inflation/lib/InflationAnnums.sol/InflationAnnums.json +2 -2
  373. package/dist/coston2/artifacts/contracts/inflation/lib/RewardService.sol/RewardService.json +2 -2
  374. package/dist/coston2/artifacts/contracts/inflation/lib/RewardServices.sol/RewardServices.json +2 -2
  375. package/dist/coston2/artifacts/contracts/token/implementation/Delegatable.sol/Delegatable.json +2 -2
  376. package/dist/coston2/artifacts/contracts/token/implementation/GovernanceVotePower.sol/GovernanceVotePower.json +2 -2
  377. package/dist/coston2/artifacts/contracts/token/implementation/VPContract.sol/VPContract.json +2 -2
  378. package/dist/coston2/artifacts/contracts/token/implementation/VPToken.sol/VPToken.json +2 -2
  379. package/dist/coston2/artifacts/contracts/token/implementation/WNat.sol/WNat.json +2 -2
  380. package/dist/coston2/artifacts/contracts/token/lib/DelegationHistory.sol/DelegationHistory.json +2 -2
  381. package/dist/coston2/artifacts/contracts/token/lib/ExplicitDelegation.sol/ExplicitDelegation.json +2 -2
  382. package/dist/coston2/artifacts/contracts/token/lib/PercentageDelegation.sol/PercentageDelegation.json +2 -2
  383. package/dist/coston2/artifacts/contracts/tokenPools/implementation/AttestationProviderRewardManager.sol/AttestationProviderRewardManager.json +2 -2
  384. package/dist/coston2/artifacts/contracts/tokenPools/implementation/DistributionToDelegators.sol/DistributionToDelegators.json +2 -2
  385. package/dist/coston2/artifacts/contracts/tokenPools/implementation/Escrow.sol/Escrow.json +2 -2
  386. package/dist/coston2/artifacts/contracts/tokenPools/implementation/FtsoRewardManager.sol/FtsoRewardManager.json +2 -2
  387. package/dist/coston2/artifacts/contracts/tokenPools/implementation/IncentivePool.sol/IncentivePool.json +2 -2
  388. package/dist/coston2/artifacts/contracts/tokenPools/implementation/IncentivePoolAllocation.sol/IncentivePoolAllocation.json +2 -2
  389. package/dist/coston2/artifacts/contracts/tokenPools/implementation/ValidatorRewardManager.sol/ValidatorRewardManager.json +2 -2
  390. package/dist/coston2/artifacts/contracts/tokenPools/lib/IncentivePoolAnnum.sol/IncentivePoolAnnum.json +2 -2
  391. package/dist/coston2/artifacts/contracts/tokenPools/lib/IncentivePoolAnnums.sol/IncentivePoolAnnums.json +2 -2
  392. package/dist/coston2/artifacts/contracts/tokenPools/lib/IncentivePoolRewardService.sol/IncentivePoolRewardService.json +2 -2
  393. package/dist/coston2/artifacts/contracts/tokenPools/lib/IncentivePoolRewardServices.sol/IncentivePoolRewardServices.json +2 -2
  394. package/dist/coston2/artifacts/contracts/utils/implementation/FtsoRegistry.sol/FtsoRegistry.json +2 -2
  395. package/dist/coston2/artifacts/contracts/utils/implementation/FtsoV2Upgrader.sol/FtsoV2Upgrader.json +384 -0
  396. package/dist/coston2/artifacts/contracts/utils/implementation/FundDistributor.sol/FundDistributor.json +2 -2
  397. package/dist/coston2/artifacts/contracts/utils/implementation/GovernedAndFlareDaemonized.sol/GovernedAndFlareDaemonized.json +2 -2
  398. package/dist/coston2/artifacts/contracts/utils/implementation/SafePct.sol/SafePct.json +2 -2
  399. package/dist/coston2/artifacts/contracts/utils/implementation/VoterWhitelister.sol/VoterWhitelister.json +126 -3
  400. package/dist/coston2/artifacts/contracts/utils/interface/IIVoterWhitelister.sol/IIVoterWhitelister.json +72 -0
  401. package/dist/coston2/deploys/{contractAddresses.d.ts → addresses.d.ts} +10 -3
  402. package/dist/coston2/deploys/addresses.d.ts.map +1 -0
  403. package/dist/coston2/deploys/{contractAddresses.js → addresses.js} +22 -15
  404. package/dist/coston2/deploys/addresses.js.map +1 -0
  405. package/dist/coston2/deploys/contracts.json +252 -0
  406. package/dist/coston2/deploys/mapper.d.ts +2 -2
  407. package/dist/coston2/deploys/mapper.d.ts.map +1 -1
  408. package/dist/coston2/deploys/mapper.js +13 -19
  409. package/dist/coston2/deploys/mapper.js.map +1 -1
  410. package/dist/coston2/index.d.ts +1 -1
  411. package/dist/coston2/index.d.ts.map +1 -1
  412. package/dist/coston2/index.js +1 -2
  413. package/dist/coston2/index.js.map +1 -1
  414. package/dist/flare/abis.d.ts +4 -0
  415. package/dist/flare/abis.d.ts.map +1 -0
  416. package/dist/flare/{abis.flare.js → abis.js} +7 -3
  417. package/dist/flare/abis.js.map +1 -0
  418. package/dist/flare/artifacts/contracts/claiming/implementation/ClaimSetupManager.sol/ClaimSetupManager.json +2 -2
  419. package/dist/flare/artifacts/contracts/claiming/implementation/DelegationAccount.sol/DelegationAccount.json +2 -2
  420. package/dist/flare/artifacts/contracts/ftso/implementation/Ftso.sol/Ftso.json +36 -4
  421. package/dist/flare/artifacts/contracts/ftso/implementation/FtsoManager.sol/FtsoManager.json +158 -82
  422. package/dist/flare/artifacts/contracts/ftso/interface/IIFtso.sol/IIFtso.json +34 -2
  423. package/dist/flare/artifacts/contracts/ftso/interface/IIFtsoManager.sol/IIFtsoManager.json +54 -0
  424. package/dist/flare/artifacts/contracts/ftso/lib/FtsoEpoch.sol/FtsoEpoch.json +2 -2
  425. package/dist/flare/artifacts/contracts/ftso/lib/FtsoManagement.sol/FtsoManagement.json +2 -2
  426. package/dist/flare/artifacts/contracts/ftso/lib/FtsoManagerSettings.sol/FtsoManagerSettings.json +2 -2
  427. package/dist/flare/artifacts/contracts/ftso/lib/FtsoMedian.sol/FtsoMedian.json +2 -2
  428. package/dist/flare/artifacts/contracts/ftso/lib/FtsoVote.sol/FtsoVote.json +2 -2
  429. package/dist/flare/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockFtsoRegistry.json +2 -2
  430. package/dist/flare/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockPriceSubmitter.json +2 -2
  431. package/dist/flare/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockVoterWhitelister.json +40 -2
  432. package/dist/flare/artifacts/contracts/ftso/priceProviderMockContracts/priceProviderMockFtso.sol/MockNpmFtso.json +36 -4
  433. package/dist/flare/artifacts/contracts/genesis/implementation/FlareDaemon.sol/FlareDaemon.json +2 -2
  434. package/dist/flare/artifacts/contracts/genesis/implementation/InitialAirdrop.sol/InitialAirdrop.json +2 -2
  435. package/dist/flare/artifacts/contracts/governance/implementation/PollingFoundation.sol/PollingFoundation.json +2 -2
  436. package/dist/flare/artifacts/contracts/governance/implementation/PollingFtso.sol/PollingFtso.json +1187 -0
  437. package/dist/flare/artifacts/contracts/inflation/implementation/Inflation.sol/Inflation.json +2 -2
  438. package/dist/flare/artifacts/contracts/inflation/implementation/InflationAllocation.sol/InflationAllocation.json +2 -2
  439. package/dist/flare/artifacts/contracts/inflation/lib/InflationAnnum.sol/InflationAnnum.json +2 -2
  440. package/dist/flare/artifacts/contracts/inflation/lib/InflationAnnums.sol/InflationAnnums.json +2 -2
  441. package/dist/flare/artifacts/contracts/inflation/lib/RewardService.sol/RewardService.json +2 -2
  442. package/dist/flare/artifacts/contracts/inflation/lib/RewardServices.sol/RewardServices.json +2 -2
  443. package/dist/flare/artifacts/contracts/token/implementation/Delegatable.sol/Delegatable.json +2 -2
  444. package/dist/flare/artifacts/contracts/token/implementation/GovernanceVotePower.sol/GovernanceVotePower.json +2 -2
  445. package/dist/flare/artifacts/contracts/token/implementation/VPContract.sol/VPContract.json +2 -2
  446. package/dist/flare/artifacts/contracts/token/implementation/VPToken.sol/VPToken.json +2 -2
  447. package/dist/flare/artifacts/contracts/token/implementation/WNat.sol/WNat.json +2 -2
  448. package/dist/flare/artifacts/contracts/token/lib/DelegationHistory.sol/DelegationHistory.json +2 -2
  449. package/dist/flare/artifacts/contracts/token/lib/ExplicitDelegation.sol/ExplicitDelegation.json +2 -2
  450. package/dist/flare/artifacts/contracts/token/lib/PercentageDelegation.sol/PercentageDelegation.json +2 -2
  451. package/dist/flare/artifacts/contracts/tokenPools/implementation/AttestationProviderRewardManager.sol/AttestationProviderRewardManager.json +2 -2
  452. package/dist/flare/artifacts/contracts/tokenPools/implementation/DistributionToDelegators.sol/DistributionToDelegators.json +2 -2
  453. package/dist/flare/artifacts/contracts/tokenPools/implementation/Escrow.sol/Escrow.json +2 -2
  454. package/dist/flare/artifacts/contracts/tokenPools/implementation/FtsoRewardManager.sol/FtsoRewardManager.json +2 -2
  455. package/dist/flare/artifacts/contracts/tokenPools/implementation/IncentivePool.sol/IncentivePool.json +2 -2
  456. package/dist/flare/artifacts/contracts/tokenPools/implementation/IncentivePoolAllocation.sol/IncentivePoolAllocation.json +2 -2
  457. package/dist/flare/artifacts/contracts/tokenPools/implementation/ValidatorRewardManager.sol/ValidatorRewardManager.json +2 -2
  458. package/dist/flare/artifacts/contracts/tokenPools/lib/IncentivePoolAnnum.sol/IncentivePoolAnnum.json +2 -2
  459. package/dist/flare/artifacts/contracts/tokenPools/lib/IncentivePoolAnnums.sol/IncentivePoolAnnums.json +2 -2
  460. package/dist/flare/artifacts/contracts/tokenPools/lib/IncentivePoolRewardService.sol/IncentivePoolRewardService.json +2 -2
  461. package/dist/flare/artifacts/contracts/tokenPools/lib/IncentivePoolRewardServices.sol/IncentivePoolRewardServices.json +2 -2
  462. package/dist/flare/artifacts/contracts/utils/implementation/FtsoRegistry.sol/FtsoRegistry.json +2 -2
  463. package/dist/flare/artifacts/contracts/utils/implementation/FtsoV2Upgrader.sol/FtsoV2Upgrader.json +384 -0
  464. package/dist/flare/artifacts/contracts/utils/implementation/FundDistributor.sol/FundDistributor.json +2 -2
  465. package/dist/flare/artifacts/contracts/utils/implementation/GovernedAndFlareDaemonized.sol/GovernedAndFlareDaemonized.json +2 -2
  466. package/dist/flare/artifacts/contracts/utils/implementation/SafePct.sol/SafePct.json +2 -2
  467. package/dist/flare/artifacts/contracts/utils/implementation/VoterWhitelister.sol/VoterWhitelister.json +126 -3
  468. package/dist/flare/artifacts/contracts/utils/interface/IIVoterWhitelister.sol/IIVoterWhitelister.json +72 -0
  469. package/dist/flare/deploys/{contractAddresses.d.ts → addresses.d.ts} +11 -3
  470. package/dist/flare/deploys/addresses.d.ts.map +1 -0
  471. package/dist/flare/deploys/{contractAddresses.js → addresses.js} +23 -15
  472. package/dist/flare/deploys/addresses.js.map +1 -0
  473. package/dist/flare/deploys/{flare.json → contracts.json} +60 -20
  474. package/dist/flare/deploys/mapper.d.ts +2 -2
  475. package/dist/flare/deploys/mapper.d.ts.map +1 -1
  476. package/dist/flare/deploys/mapper.js +13 -19
  477. package/dist/flare/deploys/mapper.js.map +1 -1
  478. package/dist/flare/index.d.ts +1 -1
  479. package/dist/flare/index.d.ts.map +1 -1
  480. package/dist/flare/index.js +1 -2
  481. package/dist/flare/index.js.map +1 -1
  482. package/dist/index.d.ts.map +1 -1
  483. package/dist/index.js +5 -9
  484. package/dist/index.js.map +1 -1
  485. package/dist/songbird/abis.d.ts +4 -0
  486. package/dist/songbird/abis.d.ts.map +1 -0
  487. package/dist/songbird/{abis.songbird.js → abis.js} +17 -7
  488. package/dist/songbird/abis.js.map +1 -0
  489. package/dist/songbird/artifacts/contracts/assetRegistry/implementation/FlareAssetRegistry.sol/FlareAssetRegistry.json +525 -0
  490. package/dist/songbird/artifacts/contracts/assetRegistry/implementation/WNatRegistryProvider.sol/WNatRegistryProvider.json +113 -0
  491. package/dist/songbird/artifacts/contracts/assetRegistry/interface/IIERC20WithMetadata.sol/IIERC20WithMetadata.json +233 -0
  492. package/dist/songbird/artifacts/contracts/assetRegistry/interface/IIFlareAssetRegistry.sol/IIFlareAssetRegistry.json +316 -0
  493. package/dist/songbird/artifacts/contracts/assetRegistry/interface/IIFlareAssetRegistryProvider.sol/IIFlareAssetRegistryProvider.json +66 -0
  494. package/dist/songbird/artifacts/contracts/assetRegistry/lib/StandardAttributes.sol/StandardAttributes.json +10 -0
  495. package/dist/songbird/artifacts/contracts/claiming/implementation/ClaimSetupManager.sol/ClaimSetupManager.json +2 -2
  496. package/dist/songbird/artifacts/contracts/claiming/implementation/DelegationAccount.sol/DelegationAccount.json +2 -2
  497. package/dist/songbird/artifacts/contracts/ftso/implementation/Ftso.sol/Ftso.json +2 -2
  498. package/dist/songbird/artifacts/contracts/ftso/implementation/FtsoManager.sol/FtsoManager.json +3 -3
  499. package/dist/songbird/artifacts/contracts/ftso/lib/FtsoEpoch.sol/FtsoEpoch.json +2 -2
  500. package/dist/songbird/artifacts/contracts/ftso/lib/FtsoManagement.sol/FtsoManagement.json +2 -2
  501. package/dist/songbird/artifacts/contracts/ftso/lib/FtsoVote.sol/FtsoVote.json +2 -2
  502. package/dist/songbird/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockFtsoRegistry.json +2 -2
  503. package/dist/songbird/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockPriceSubmitter.json +2 -2
  504. package/dist/songbird/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockVoterWhitelister.json +40 -2
  505. package/dist/songbird/artifacts/contracts/genesis/implementation/FlareDaemon.sol/FlareDaemon.json +2 -2
  506. package/dist/songbird/artifacts/contracts/governance/implementation/InflationAllocation.sol/InflationAllocation.json +2 -2
  507. package/dist/songbird/artifacts/contracts/governance/implementation/PollingFoundation.sol/PollingFoundation.json +2 -2
  508. package/dist/songbird/artifacts/contracts/governance/implementation/PollingFtso.sol/PollingFtso.json +1187 -0
  509. package/dist/songbird/artifacts/contracts/inflation/implementation/Inflation.sol/Inflation.json +2 -2
  510. package/dist/songbird/artifacts/contracts/inflation/lib/InflationAnnum.sol/InflationAnnum.json +2 -2
  511. package/dist/songbird/artifacts/contracts/inflation/lib/InflationAnnums.sol/InflationAnnums.json +2 -2
  512. package/dist/songbird/artifacts/contracts/inflation/lib/RewardService.sol/RewardService.json +2 -2
  513. package/dist/songbird/artifacts/contracts/inflation/lib/RewardServices.sol/RewardServices.json +2 -2
  514. package/dist/songbird/artifacts/contracts/token/implementation/CleanupBlockNumberManager.sol/CleanupBlockNumberManager.json +172 -37
  515. package/dist/songbird/artifacts/contracts/token/implementation/Delegatable.sol/Delegatable.json +2 -2
  516. package/dist/songbird/artifacts/contracts/token/implementation/GovernanceVotePower.sol/GovernanceVotePower.json +2 -2
  517. package/dist/songbird/artifacts/contracts/token/implementation/VPContract.sol/VPContract.json +2 -2
  518. package/dist/songbird/artifacts/contracts/token/implementation/VPToken.sol/VPToken.json +2 -2
  519. package/dist/songbird/artifacts/contracts/token/implementation/WNat.sol/WNat.json +2 -2
  520. package/dist/songbird/artifacts/contracts/token/lib/DelegationHistory.sol/DelegationHistory.json +2 -2
  521. package/dist/songbird/artifacts/contracts/token/lib/ExplicitDelegation.sol/ExplicitDelegation.json +2 -2
  522. package/dist/songbird/artifacts/contracts/token/lib/PercentageDelegation.sol/PercentageDelegation.json +2 -2
  523. package/dist/songbird/artifacts/contracts/tokenPools/implementation/FtsoRewardManager.sol/FtsoRewardManager.json +523 -138
  524. package/dist/songbird/artifacts/contracts/tokenPools/interface/IIFtsoRewardManager.sol/IIFtsoRewardManager.json +322 -0
  525. package/dist/songbird/artifacts/contracts/utils/implementation/FtsoV2Upgrader.sol/FtsoV2Upgrader.json +2 -2
  526. package/dist/songbird/artifacts/contracts/utils/implementation/GovernedAndFlareDaemonized.sol/GovernedAndFlareDaemonized.json +2 -2
  527. package/dist/songbird/artifacts/contracts/utils/implementation/GovernedAndFlareDaemonizedV2.sol/GovernedAndFlareDaemonizedV2.json +2 -2
  528. package/dist/songbird/artifacts/contracts/utils/implementation/SafePct.sol/SafePct.json +2 -2
  529. package/dist/songbird/artifacts/contracts/utils/implementation/VoterWhitelister.sol/VoterWhitelister.json +276 -41
  530. package/dist/songbird/artifacts/contracts/utils/interface/IIVoterWhitelister.sol/IIVoterWhitelister.json +72 -0
  531. package/dist/songbird/deploys/{contractAddresses.d.ts → addresses.d.ts} +14 -3
  532. package/dist/songbird/deploys/addresses.d.ts.map +1 -0
  533. package/dist/songbird/deploys/{contractAddresses.js → addresses.js} +17 -6
  534. package/dist/songbird/deploys/addresses.js.map +1 -0
  535. package/dist/songbird/deploys/{songbird.json → contracts.json} +68 -13
  536. package/dist/songbird/deploys/mapper.d.ts +2 -2
  537. package/dist/songbird/deploys/mapper.d.ts.map +1 -1
  538. package/dist/songbird/deploys/mapper.js +13 -19
  539. package/dist/songbird/deploys/mapper.js.map +1 -1
  540. package/dist/songbird/index.d.ts +1 -1
  541. package/dist/songbird/index.d.ts.map +1 -1
  542. package/dist/songbird/index.js +1 -2
  543. package/dist/songbird/index.js.map +1 -1
  544. package/flare/README.md +7 -0
  545. package/flare/artifacts/contracts/addressUpdater/implementation/AddressUpdatable.sol/AddressUpdatable.json +42 -0
  546. package/flare/artifacts/contracts/addressUpdater/implementation/AddressUpdater.sol/AddressUpdater.json +381 -0
  547. package/flare/artifacts/contracts/addressUpdater/interface/IIAddressUpdatable.sol/IIAddressUpdatable.json +29 -0
  548. package/flare/artifacts/contracts/addressUpdater/interface/IIAddressUpdater.sol/IIAddressUpdater.json +105 -0
  549. package/flare/artifacts/contracts/assetRegistry/implementation/FlareAssetRegistry.sol/FlareAssetRegistry.json +525 -0
  550. package/flare/artifacts/contracts/assetRegistry/implementation/WNatRegistryProvider.sol/WNatRegistryProvider.json +113 -0
  551. package/flare/artifacts/contracts/assetRegistry/interface/IIERC20WithMetadata.sol/IIERC20WithMetadata.json +233 -0
  552. package/flare/artifacts/contracts/assetRegistry/interface/IIFlareAssetRegistry.sol/IIFlareAssetRegistry.json +316 -0
  553. package/flare/artifacts/contracts/assetRegistry/interface/IIFlareAssetRegistryProvider.sol/IIFlareAssetRegistryProvider.json +66 -0
  554. package/flare/artifacts/contracts/assetRegistry/lib/StandardAttributes.sol/StandardAttributes.json +10 -0
  555. package/flare/artifacts/contracts/claiming/implementation/ClaimSetupManager.sol/ClaimSetupManager.json +1151 -0
  556. package/flare/artifacts/contracts/claiming/implementation/CloneFactory.sol/CloneFactory.json +10 -0
  557. package/flare/artifacts/contracts/claiming/implementation/DelegationAccount.sol/DelegationAccount.json +346 -0
  558. package/flare/artifacts/contracts/claiming/interface/IIClaimSetupManager.sol/IIClaimSetupManager.json +795 -0
  559. package/flare/artifacts/contracts/claiming/interface/IIDelegationAccount.sol/IIDelegationAccount.json +316 -0
  560. package/flare/artifacts/contracts/ftso/implementation/Ftso.sol/Ftso.json +1039 -0
  561. package/flare/artifacts/contracts/ftso/implementation/FtsoManager.sol/FtsoManager.json +1723 -0
  562. package/flare/artifacts/contracts/ftso/interface/IIFtso.sol/IIFtso.json +888 -0
  563. package/flare/artifacts/contracts/ftso/interface/IIFtsoManager.sol/IIFtsoManager.json +891 -0
  564. package/flare/artifacts/contracts/ftso/interface/IIFtsoManagerV1.sol/IIFtsoManagerV1.json +102 -0
  565. package/flare/artifacts/contracts/ftso/lib/FtsoEpoch.sol/FtsoEpoch.json +10 -0
  566. package/flare/artifacts/contracts/ftso/lib/FtsoManagement.sol/FtsoManagement.json +43 -0
  567. package/flare/artifacts/contracts/ftso/lib/FtsoManagerSettings.sol/FtsoManagerSettings.json +10 -0
  568. package/flare/artifacts/contracts/ftso/lib/FtsoMedian.sol/FtsoMedian.json +10 -0
  569. package/flare/artifacts/contracts/ftso/lib/FtsoVote.sol/FtsoVote.json +10 -0
  570. package/flare/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockFtsoRegistry.json +718 -0
  571. package/flare/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockPriceSubmitter.json +338 -0
  572. package/flare/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockVoterWhitelister.json +236 -0
  573. package/flare/artifacts/contracts/ftso/priceProviderMockContracts/priceProviderMockFtso.sol/MockNpmFtso.json +983 -0
  574. package/flare/artifacts/contracts/genesis/implementation/DistributionTreasury.sol/DistributionTreasury.json +289 -0
  575. package/flare/artifacts/contracts/genesis/implementation/FlareDaemon.sol/FlareDaemon.json +794 -0
  576. package/flare/artifacts/contracts/genesis/implementation/GovernanceSettings.sol/GovernanceSettings.json +219 -0
  577. package/flare/artifacts/contracts/genesis/implementation/IncentivePoolTreasury.sol/IncentivePoolTreasury.json +292 -0
  578. package/flare/artifacts/contracts/genesis/implementation/InitialAirdrop.sol/InitialAirdrop.json +493 -0
  579. package/flare/artifacts/contracts/genesis/implementation/PriceSubmitter.sol/PriceSubmitter.json +569 -0
  580. package/flare/artifacts/contracts/genesis/implementation/StateConnector.sol/StateConnector.json +324 -0
  581. package/flare/artifacts/contracts/genesis/interface/IFlareDaemonize.sol/IFlareDaemonize.json +50 -0
  582. package/flare/artifacts/contracts/genesis/interface/IFtsoGenesis.sol/IFtsoGenesis.json +63 -0
  583. package/flare/artifacts/contracts/genesis/interface/IFtsoManagerGenesis.sol/IFtsoManagerGenesis.json +24 -0
  584. package/flare/artifacts/contracts/genesis/interface/IFtsoRegistryGenesis.sol/IFtsoRegistryGenesis.json +30 -0
  585. package/flare/artifacts/contracts/genesis/interface/IIPriceSubmitter.sol/IIPriceSubmitter.json +283 -0
  586. package/flare/artifacts/contracts/genesis/interface/IInflationGenesis.sol/IInflationGenesis.json +18 -0
  587. package/flare/artifacts/contracts/governance/implementation/Governed.sol/Governed.json +220 -0
  588. package/flare/artifacts/contracts/governance/implementation/GovernedAtGenesis.sol/GovernedAtGenesis.json +233 -0
  589. package/flare/artifacts/contracts/governance/implementation/GovernedBase.sol/GovernedBase.json +209 -0
  590. package/flare/artifacts/contracts/governance/implementation/Governor.sol/Governor.json +653 -0
  591. package/flare/artifacts/contracts/governance/implementation/GovernorProposals.sol/GovernorProposals.json +24 -0
  592. package/flare/artifacts/contracts/governance/implementation/GovernorProposer.sol/GovernorProposer.json +265 -0
  593. package/flare/artifacts/contracts/governance/implementation/GovernorVotePower.sol/GovernorVotePower.json +24 -0
  594. package/flare/artifacts/contracts/governance/implementation/GovernorVotes.sol/GovernorVotes.json +10 -0
  595. package/flare/artifacts/contracts/governance/implementation/PollingFoundation.sol/PollingFoundation.json +1070 -0
  596. package/flare/artifacts/contracts/governance/implementation/PollingFtso.sol/PollingFtso.json +1187 -0
  597. package/flare/artifacts/contracts/governance/interface/IIGovernorProposer.sol/IIGovernorProposer.json +30 -0
  598. package/flare/artifacts/contracts/governance/interface/IIPollingFoundation.sol/IIPollingFoundation.json +640 -0
  599. package/flare/artifacts/contracts/inflation/implementation/Inflation.sol/Inflation.json +926 -0
  600. package/flare/artifacts/contracts/inflation/implementation/InflationAllocation.sol/InflationAllocation.json +463 -0
  601. package/flare/artifacts/contracts/inflation/implementation/Supply.sol/Supply.json +543 -0
  602. package/flare/artifacts/contracts/inflation/interface/IIInflationAllocation.sol/IIInflationAllocation.json +49 -0
  603. package/flare/artifacts/contracts/inflation/interface/IIInflationPercentageProvider.sol/IIInflationPercentageProvider.json +24 -0
  604. package/flare/artifacts/contracts/inflation/interface/IIInflationReceiver.sol/IIInflationReceiver.json +57 -0
  605. package/flare/artifacts/contracts/inflation/interface/IIInflationSharingPercentageProvider.sol/IIInflationSharingPercentageProvider.json +36 -0
  606. package/flare/artifacts/contracts/inflation/interface/IISupply.sol/IISupply.json +82 -0
  607. package/flare/artifacts/contracts/inflation/lib/InflationAnnum.sol/InflationAnnum.json +10 -0
  608. package/flare/artifacts/contracts/inflation/lib/InflationAnnums.sol/InflationAnnums.json +10 -0
  609. package/flare/artifacts/contracts/inflation/lib/RewardService.sol/RewardService.json +30 -0
  610. package/flare/artifacts/contracts/inflation/lib/RewardServices.sol/RewardServices.json +49 -0
  611. package/flare/artifacts/contracts/mockXAsset/interface/ICollateralizable.sol/ICollateralizable.json +234 -0
  612. package/flare/artifacts/contracts/token/implementation/CheckPointable.sol/CheckPointable.json +142 -0
  613. package/flare/artifacts/contracts/token/implementation/CleanupBlockNumberManager.sol/CleanupBlockNumberManager.json +389 -0
  614. package/flare/artifacts/contracts/token/implementation/Delegatable.sol/Delegatable.json +235 -0
  615. package/flare/artifacts/contracts/token/implementation/GovernanceVotePower.sol/GovernanceVotePower.json +324 -0
  616. package/flare/artifacts/contracts/token/implementation/VPContract.sol/VPContract.json +798 -0
  617. package/flare/artifacts/contracts/token/implementation/VPToken.sol/VPToken.json +1264 -0
  618. package/flare/artifacts/contracts/token/implementation/WNat.sol/WNat.json +1357 -0
  619. package/flare/artifacts/contracts/token/interface/IICleanable.sol/IICleanable.json +50 -0
  620. package/flare/artifacts/contracts/token/interface/IIGovernanceVotePower.sol/IIGovernanceVotePower.json +252 -0
  621. package/flare/artifacts/contracts/token/interface/IIVPContract.sol/IIVPContract.json +620 -0
  622. package/flare/artifacts/contracts/token/interface/IIVPToken.sol/IIVPToken.json +832 -0
  623. package/flare/artifacts/contracts/token/lib/CheckPointHistory.sol/CheckPointHistory.json +10 -0
  624. package/flare/artifacts/contracts/token/lib/CheckPointHistoryCache.sol/CheckPointHistoryCache.json +10 -0
  625. package/flare/artifacts/contracts/token/lib/CheckPointsByAddress.sol/CheckPointsByAddress.json +10 -0
  626. package/flare/artifacts/contracts/token/lib/DelegateCheckPointHistory.sol/DelegateCheckPointHistory.json +10 -0
  627. package/flare/artifacts/contracts/token/lib/DelegateCheckPointsByAddress.sol/DelegateCheckPointsByAddress.json +10 -0
  628. package/flare/artifacts/contracts/token/lib/DelegationHistory.sol/DelegationHistory.json +24 -0
  629. package/flare/artifacts/contracts/token/lib/ExplicitDelegation.sol/ExplicitDelegation.json +10 -0
  630. package/flare/artifacts/contracts/token/lib/IICombinedNatBalance.sol/IICombinedNatBalance.json +54 -0
  631. package/flare/artifacts/contracts/token/lib/PercentageDelegation.sol/PercentageDelegation.json +24 -0
  632. package/flare/artifacts/contracts/token/lib/VotePower.sol/VotePower.json +10 -0
  633. package/flare/artifacts/contracts/token/lib/VotePowerCache.sol/VotePowerCache.json +10 -0
  634. package/flare/artifacts/contracts/tokenPools/implementation/AttestationProviderRewardManager.sol/AttestationProviderRewardManager.json +741 -0
  635. package/flare/artifacts/contracts/tokenPools/implementation/DistributionToDelegators.sol/DistributionToDelegators.json +1038 -0
  636. package/flare/artifacts/contracts/tokenPools/implementation/Escrow.sol/Escrow.json +769 -0
  637. package/flare/artifacts/contracts/tokenPools/implementation/FtsoRewardManager.sol/FtsoRewardManager.json +1412 -0
  638. package/flare/artifacts/contracts/tokenPools/implementation/GenericRewardManager.sol/GenericRewardManager.json +720 -0
  639. package/flare/artifacts/contracts/tokenPools/implementation/IncentivePool.sol/IncentivePool.json +927 -0
  640. package/flare/artifacts/contracts/tokenPools/implementation/IncentivePoolAllocation.sol/IncentivePoolAllocation.json +463 -0
  641. package/flare/artifacts/contracts/tokenPools/implementation/ValidatorRewardManager.sol/ValidatorRewardManager.json +741 -0
  642. package/flare/artifacts/contracts/tokenPools/interface/IIFtsoRewardManager.sol/IIFtsoRewardManager.json +962 -0
  643. package/flare/artifacts/contracts/tokenPools/interface/IIGenericRewardManager.sol/IIGenericRewardManager.json +413 -0
  644. package/flare/artifacts/contracts/tokenPools/interface/IIIncentivePoolAllocation.sol/IIIncentivePoolAllocation.json +49 -0
  645. package/flare/artifacts/contracts/tokenPools/interface/IIIncentivePoolPercentageProvider.sol/IIIncentivePoolPercentageProvider.json +24 -0
  646. package/flare/artifacts/contracts/tokenPools/interface/IIIncentivePoolReceiver.sol/IIIncentivePoolReceiver.json +57 -0
  647. package/flare/artifacts/contracts/tokenPools/interface/IIIncentivePoolSharingPercentageProvider.sol/IIIncentivePoolSharingPercentageProvider.json +36 -0
  648. package/flare/artifacts/contracts/tokenPools/interface/IITokenPool.sol/IITokenPool.json +34 -0
  649. package/flare/artifacts/contracts/tokenPools/lib/DataProviderFee.sol/DataProviderFee.json +10 -0
  650. package/flare/artifacts/contracts/tokenPools/lib/IncentivePoolAnnum.sol/IncentivePoolAnnum.json +10 -0
  651. package/flare/artifacts/contracts/tokenPools/lib/IncentivePoolAnnums.sol/IncentivePoolAnnums.json +10 -0
  652. package/flare/artifacts/contracts/tokenPools/lib/IncentivePoolRewardService.sol/IncentivePoolRewardService.json +30 -0
  653. package/flare/artifacts/contracts/tokenPools/lib/IncentivePoolRewardServices.sol/IncentivePoolRewardServices.json +49 -0
  654. package/flare/artifacts/contracts/userInterfaces/IClaimSetupManager.sol/IClaimSetupManager.json +665 -0
  655. package/flare/artifacts/contracts/userInterfaces/IDelegationAccount.sol/IDelegationAccount.json +144 -0
  656. package/flare/artifacts/contracts/userInterfaces/IDistributionToDelegators.sol/IDistributionToDelegators.json +258 -0
  657. package/flare/artifacts/contracts/userInterfaces/IFlareAssetRegistry.sol/IFlareAssetRegistry.json +241 -0
  658. package/flare/artifacts/contracts/userInterfaces/IFlareContractRegistry.sol/IFlareContractRegistry.json +105 -0
  659. package/flare/artifacts/contracts/userInterfaces/IFtso.sol/IFtso.json +475 -0
  660. package/flare/artifacts/contracts/userInterfaces/IFtsoManager.sol/IFtsoManager.json +376 -0
  661. package/flare/artifacts/contracts/userInterfaces/IFtsoRegistry.sol/IFtsoRegistry.json +445 -0
  662. package/flare/artifacts/contracts/userInterfaces/IFtsoRewardManager.sol/IFtsoRewardManager.json +702 -0
  663. package/flare/artifacts/contracts/userInterfaces/IGenericRewardManager.sol/IGenericRewardManager.json +248 -0
  664. package/flare/artifacts/contracts/userInterfaces/IGovernanceSettings.sol/IGovernanceSettings.json +69 -0
  665. package/flare/artifacts/contracts/userInterfaces/IGovernanceVotePower.sol/IGovernanceVotePower.json +117 -0
  666. package/flare/artifacts/contracts/userInterfaces/IGovernor.sol/IGovernor.json +484 -0
  667. package/flare/artifacts/contracts/userInterfaces/IPollingFtso.sol/IPollingFtso.json +639 -0
  668. package/flare/artifacts/contracts/userInterfaces/IPriceSubmitter.sol/IPriceSubmitter.json +221 -0
  669. package/flare/artifacts/contracts/userInterfaces/IVPContractEvents.sol/IVPContractEvents.json +73 -0
  670. package/flare/artifacts/contracts/userInterfaces/IVPToken.sol/IVPToken.json +700 -0
  671. package/flare/artifacts/contracts/userInterfaces/IValidatorRegistry.sol/IValidatorRegistry.json +136 -0
  672. package/flare/artifacts/contracts/userInterfaces/IVoterWhitelister.sol/IVoterWhitelister.json +199 -0
  673. package/flare/artifacts/contracts/userInterfaces/IWNat.sol/IWNat.json +62 -0
  674. package/flare/artifacts/contracts/utils/implementation/AddressSet.sol/AddressSet.json +10 -0
  675. package/flare/artifacts/contracts/utils/implementation/DateTimeLibrary.sol/BokkyPooBahsDateTimeLibrary.json +154 -0
  676. package/flare/artifacts/contracts/utils/implementation/FlareContractRegistry.sol/FlareContractRegistry.json +147 -0
  677. package/flare/artifacts/contracts/utils/implementation/FtsoRegistry.sol/FtsoRegistry.json +769 -0
  678. package/flare/artifacts/contracts/utils/implementation/FtsoRegistryProxy.sol/FtsoRegistryProxy.json +272 -0
  679. package/flare/artifacts/contracts/utils/implementation/FtsoV2Upgrader.sol/FtsoV2Upgrader.json +384 -0
  680. package/flare/artifacts/contracts/utils/implementation/FundDistributor.sol/FundDistributor.json +71 -0
  681. package/flare/artifacts/contracts/utils/implementation/GovernedAndFlareDaemonized.sol/GovernedAndFlareDaemonized.json +238 -0
  682. package/flare/artifacts/contracts/utils/implementation/ProxyGoverned.sol/ProxyGoverned.json +256 -0
  683. package/flare/artifacts/contracts/utils/implementation/RevertErrorTracking.sol/RevertErrorTracking.json +131 -0
  684. package/flare/artifacts/contracts/utils/implementation/SafePct.sol/SafePct.json +10 -0
  685. package/flare/artifacts/contracts/utils/implementation/ValidatorRegistry.sol/ValidatorRegistry.json +149 -0
  686. package/flare/artifacts/contracts/utils/implementation/VoterWhitelister.sol/VoterWhitelister.json +653 -0
  687. package/flare/artifacts/contracts/utils/interface/IIFtsoRegistry.sol/IIFtsoRegistry.json +477 -0
  688. package/flare/artifacts/contracts/utils/interface/IIRandomProvider.sol/IIRandomProvider.json +60 -0
  689. package/flare/artifacts/contracts/utils/interface/IIVoterWhitelister.sol/IIVoterWhitelister.json +308 -0
  690. package/flare/artifacts/contracts/utils/interface/IUpdateValidators.sol/IUpdateValidators.json +18 -0
  691. package/flare/deploys/contracts.json +252 -0
  692. package/package.json +22 -27
  693. package/songbird/README.md +7 -0
  694. package/songbird/artifacts/contracts/addressUpdater/implementation/AddressUpdatable.sol/AddressUpdatable.json +42 -0
  695. package/songbird/artifacts/contracts/addressUpdater/implementation/AddressUpdater.sol/AddressUpdater.json +381 -0
  696. package/songbird/artifacts/contracts/addressUpdater/interface/IIAddressUpdatable.sol/IIAddressUpdatable.json +29 -0
  697. package/songbird/artifacts/contracts/addressUpdater/interface/IIAddressUpdater.sol/IIAddressUpdater.json +105 -0
  698. package/songbird/artifacts/contracts/assetRegistry/implementation/FlareAssetRegistry.sol/FlareAssetRegistry.json +525 -0
  699. package/songbird/artifacts/contracts/assetRegistry/implementation/WNatRegistryProvider.sol/WNatRegistryProvider.json +113 -0
  700. package/songbird/artifacts/contracts/assetRegistry/interface/IIERC20WithMetadata.sol/IIERC20WithMetadata.json +233 -0
  701. package/songbird/artifacts/contracts/assetRegistry/interface/IIFlareAssetRegistry.sol/IIFlareAssetRegistry.json +316 -0
  702. package/songbird/artifacts/contracts/assetRegistry/interface/IIFlareAssetRegistryProvider.sol/IIFlareAssetRegistryProvider.json +66 -0
  703. package/songbird/artifacts/contracts/assetRegistry/lib/StandardAttributes.sol/StandardAttributes.json +10 -0
  704. package/songbird/artifacts/contracts/claiming/implementation/ClaimSetupManager.sol/ClaimSetupManager.json +1151 -0
  705. package/songbird/artifacts/contracts/claiming/implementation/CloneFactory.sol/CloneFactory.json +10 -0
  706. package/songbird/artifacts/contracts/claiming/implementation/DelegationAccount.sol/DelegationAccount.json +346 -0
  707. package/songbird/artifacts/contracts/claiming/interface/IIClaimSetupManager.sol/IIClaimSetupManager.json +795 -0
  708. package/songbird/artifacts/contracts/claiming/interface/IIDelegationAccount.sol/IIDelegationAccount.json +316 -0
  709. package/songbird/artifacts/contracts/ftso/implementation/Ftso.sol/Ftso.json +1104 -0
  710. package/songbird/artifacts/contracts/ftso/implementation/FtsoManager.sol/FtsoManager.json +1723 -0
  711. package/songbird/artifacts/contracts/ftso/interface/IIFtso.sol/IIFtso.json +953 -0
  712. package/songbird/artifacts/contracts/ftso/interface/IIFtsoManager.sol/IIFtsoManager.json +878 -0
  713. package/songbird/artifacts/contracts/ftso/interface/IIFtsoManagerV1.sol/IIFtsoManagerV1.json +102 -0
  714. package/songbird/artifacts/contracts/ftso/lib/FtsoEpoch.sol/FtsoEpoch.json +10 -0
  715. package/songbird/artifacts/contracts/ftso/lib/FtsoManagement.sol/FtsoManagement.json +43 -0
  716. package/songbird/artifacts/contracts/ftso/lib/FtsoManagerSettings.sol/FtsoManagerSettings.json +10 -0
  717. package/songbird/artifacts/contracts/ftso/lib/FtsoMedian.sol/FtsoMedian.json +10 -0
  718. package/songbird/artifacts/contracts/ftso/lib/FtsoVote.sol/FtsoVote.json +10 -0
  719. package/songbird/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockFtsoRegistry.json +624 -0
  720. package/songbird/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockPriceSubmitter.json +241 -0
  721. package/songbird/artifacts/contracts/ftso/priceProviderMockContracts/PriceProviderMockContracts.sol/MockVoterWhitelister.json +236 -0
  722. package/songbird/artifacts/contracts/ftso/priceProviderMockContracts/priceProviderMockFtso.sol/MockNpmFtso.json +1048 -0
  723. package/songbird/artifacts/contracts/genesis/implementation/FlareDaemon.sol/FlareDaemon.json +676 -0
  724. package/songbird/artifacts/contracts/genesis/implementation/GovernanceSettings.sol/GovernanceSettings.json +224 -0
  725. package/songbird/artifacts/contracts/genesis/implementation/PriceSubmitter.sol/PriceSubmitter.json +407 -0
  726. package/songbird/artifacts/contracts/genesis/implementation/StateConnector.sol/StateConnector.json +324 -0
  727. package/songbird/artifacts/contracts/genesis/interface/IFlareDaemonize.sol/IFlareDaemonize.json +37 -0
  728. package/songbird/artifacts/contracts/genesis/interface/IFtsoGenesis.sol/IFtsoGenesis.json +91 -0
  729. package/songbird/artifacts/contracts/genesis/interface/IFtsoManagerGenesis.sol/IFtsoManagerGenesis.json +24 -0
  730. package/songbird/artifacts/contracts/genesis/interface/IFtsoRegistryGenesis.sol/IFtsoRegistryGenesis.json +30 -0
  731. package/songbird/artifacts/contracts/genesis/interface/IIPriceSubmitter.sol/IIPriceSubmitter.json +285 -0
  732. package/songbird/artifacts/contracts/genesis/interface/IInflationGenesis.sol/IInflationGenesis.json +18 -0
  733. package/songbird/artifacts/contracts/governance/implementation/Governed.sol/Governed.json +126 -0
  734. package/songbird/artifacts/contracts/governance/implementation/GovernedAtGenesis.sol/GovernedAtGenesis.json +139 -0
  735. package/songbird/artifacts/contracts/governance/implementation/GovernedBase.sol/GovernedBase.json +115 -0
  736. package/songbird/artifacts/contracts/governance/implementation/GovernedBaseV2.sol/GovernedBaseV2.json +209 -0
  737. package/songbird/artifacts/contracts/governance/implementation/GovernedV2.sol/GovernedV2.json +220 -0
  738. package/songbird/artifacts/contracts/governance/implementation/Governor.sol/Governor.json +653 -0
  739. package/songbird/artifacts/contracts/governance/implementation/GovernorProposals.sol/GovernorProposals.json +24 -0
  740. package/songbird/artifacts/contracts/governance/implementation/GovernorProposer.sol/GovernorProposer.json +265 -0
  741. package/songbird/artifacts/contracts/governance/implementation/GovernorVotePower.sol/GovernorVotePower.json +24 -0
  742. package/songbird/artifacts/contracts/governance/implementation/GovernorVotes.sol/GovernorVotes.json +10 -0
  743. package/songbird/artifacts/contracts/governance/implementation/InflationAllocation.sol/InflationAllocation.json +351 -0
  744. package/songbird/artifacts/contracts/governance/implementation/PollingFoundation.sol/PollingFoundation.json +1065 -0
  745. package/songbird/artifacts/contracts/governance/implementation/PollingFtso.sol/PollingFtso.json +1187 -0
  746. package/songbird/artifacts/contracts/governance/interface/IIGovernorProposer.sol/IIGovernorProposer.json +30 -0
  747. package/songbird/artifacts/contracts/governance/interface/IIPollingFoundation.sol/IIPollingFoundation.json +640 -0
  748. package/songbird/artifacts/contracts/inflation/implementation/Inflation.sol/Inflation.json +879 -0
  749. package/songbird/artifacts/contracts/inflation/implementation/Supply.sol/Supply.json +403 -0
  750. package/songbird/artifacts/contracts/inflation/interface/IIInflationPercentageProvider.sol/IIInflationPercentageProvider.json +24 -0
  751. package/songbird/artifacts/contracts/inflation/interface/IIInflationReceiver.sol/IIInflationReceiver.json +44 -0
  752. package/songbird/artifacts/contracts/inflation/interface/IIInflationSharingPercentageProvider.sol/IIInflationSharingPercentageProvider.json +36 -0
  753. package/songbird/artifacts/contracts/inflation/interface/IISupply.sol/IISupply.json +88 -0
  754. package/songbird/artifacts/contracts/inflation/lib/InflationAnnum.sol/InflationAnnum.json +10 -0
  755. package/songbird/artifacts/contracts/inflation/lib/InflationAnnums.sol/InflationAnnums.json +10 -0
  756. package/songbird/artifacts/contracts/inflation/lib/RewardService.sol/RewardService.json +30 -0
  757. package/songbird/artifacts/contracts/inflation/lib/RewardServices.sol/RewardServices.json +49 -0
  758. package/songbird/artifacts/contracts/mockXAsset/interface/ICollateralizable.sol/ICollateralizable.json +234 -0
  759. package/songbird/artifacts/contracts/token/implementation/CheckPointable.sol/CheckPointable.json +129 -0
  760. package/songbird/artifacts/contracts/token/implementation/CleanupBlockNumberManager.sol/CleanupBlockNumberManager.json +389 -0
  761. package/songbird/artifacts/contracts/token/implementation/Delegatable.sol/Delegatable.json +222 -0
  762. package/songbird/artifacts/contracts/token/implementation/GovernanceVotePower.sol/GovernanceVotePower.json +324 -0
  763. package/songbird/artifacts/contracts/token/implementation/VPContract.sol/VPContract.json +774 -0
  764. package/songbird/artifacts/contracts/token/implementation/VPToken.sol/VPToken.json +1102 -0
  765. package/songbird/artifacts/contracts/token/implementation/WNat.sol/WNat.json +1195 -0
  766. package/songbird/artifacts/contracts/token/interface/IICleanable.sol/IICleanable.json +63 -0
  767. package/songbird/artifacts/contracts/token/interface/IIGovernanceVotePower.sol/IIGovernanceVotePower.json +252 -0
  768. package/songbird/artifacts/contracts/token/interface/IIVPContract.sol/IIVPContract.json +609 -0
  769. package/songbird/artifacts/contracts/token/interface/IIVPToken.sol/IIVPToken.json +790 -0
  770. package/songbird/artifacts/contracts/token/lib/CheckPointHistory.sol/CheckPointHistory.json +10 -0
  771. package/songbird/artifacts/contracts/token/lib/CheckPointHistoryCache.sol/CheckPointHistoryCache.json +10 -0
  772. package/songbird/artifacts/contracts/token/lib/CheckPointsByAddress.sol/CheckPointsByAddress.json +10 -0
  773. package/songbird/artifacts/contracts/token/lib/DelegateCheckPointHistory.sol/DelegateCheckPointHistory.json +10 -0
  774. package/songbird/artifacts/contracts/token/lib/DelegateCheckPointsByAddress.sol/DelegateCheckPointsByAddress.json +10 -0
  775. package/songbird/artifacts/contracts/token/lib/DelegationHistory.sol/DelegationHistory.json +24 -0
  776. package/songbird/artifacts/contracts/token/lib/ExplicitDelegation.sol/ExplicitDelegation.json +10 -0
  777. package/songbird/artifacts/contracts/token/lib/PercentageDelegation.sol/PercentageDelegation.json +24 -0
  778. package/songbird/artifacts/contracts/token/lib/VotePower.sol/VotePower.json +10 -0
  779. package/songbird/artifacts/contracts/token/lib/VotePowerCache.sol/VotePowerCache.json +10 -0
  780. package/songbird/artifacts/contracts/tokenPools/implementation/FtsoRewardManager.sol/FtsoRewardManager.json +1412 -0
  781. package/songbird/artifacts/contracts/tokenPools/interface/IIFtsoRewardManager.sol/IIFtsoRewardManager.json +949 -0
  782. package/songbird/artifacts/contracts/tokenPools/interface/IITokenPool.sol/IITokenPool.json +34 -0
  783. package/songbird/artifacts/contracts/tokenPools/lib/DataProviderFee.sol/DataProviderFee.json +10 -0
  784. package/songbird/artifacts/contracts/userInterfaces/IClaimSetupManager.sol/IClaimSetupManager.json +665 -0
  785. package/songbird/artifacts/contracts/userInterfaces/IDelegationAccount.sol/IDelegationAccount.json +144 -0
  786. package/songbird/artifacts/contracts/userInterfaces/IFlareAssetRegistry.sol/IFlareAssetRegistry.json +241 -0
  787. package/songbird/artifacts/contracts/userInterfaces/IFlareContractRegistry.sol/IFlareContractRegistry.json +105 -0
  788. package/songbird/artifacts/contracts/userInterfaces/IFtso.sol/IFtso.json +512 -0
  789. package/songbird/artifacts/contracts/userInterfaces/IFtsoManager.sol/IFtsoManager.json +376 -0
  790. package/songbird/artifacts/contracts/userInterfaces/IFtsoRegistry.sol/IFtsoRegistry.json +445 -0
  791. package/songbird/artifacts/contracts/userInterfaces/IFtsoRewardManager.sol/IFtsoRewardManager.json +702 -0
  792. package/songbird/artifacts/contracts/userInterfaces/IGovernanceSettings.sol/IGovernanceSettings.json +69 -0
  793. package/songbird/artifacts/contracts/userInterfaces/IGovernanceVotePower.sol/IGovernanceVotePower.json +117 -0
  794. package/songbird/artifacts/contracts/userInterfaces/IGovernor.sol/IGovernor.json +484 -0
  795. package/songbird/artifacts/contracts/userInterfaces/IPollingFtso.sol/IPollingFtso.json +639 -0
  796. package/songbird/artifacts/contracts/userInterfaces/IPriceSubmitter.sol/IPriceSubmitter.json +200 -0
  797. package/songbird/artifacts/contracts/userInterfaces/IVPContractEvents.sol/IVPContractEvents.json +73 -0
  798. package/songbird/artifacts/contracts/userInterfaces/IVPToken.sol/IVPToken.json +658 -0
  799. package/songbird/artifacts/contracts/userInterfaces/IVoterWhitelister.sol/IVoterWhitelister.json +199 -0
  800. package/songbird/artifacts/contracts/userInterfaces/IWNat.sol/IWNat.json +62 -0
  801. package/songbird/artifacts/contracts/utils/implementation/AddressSet.sol/AddressSet.json +10 -0
  802. package/songbird/artifacts/contracts/utils/implementation/DateTimeLibrary.sol/BokkyPooBahsDateTimeLibrary.json +154 -0
  803. package/songbird/artifacts/contracts/utils/implementation/FlareContractRegistry.sol/FlareContractRegistry.json +147 -0
  804. package/songbird/artifacts/contracts/utils/implementation/FtsoRegistry.sol/FtsoRegistry.json +769 -0
  805. package/songbird/artifacts/contracts/utils/implementation/FtsoRegistryProxy.sol/FtsoRegistryProxy.json +272 -0
  806. package/songbird/artifacts/contracts/utils/implementation/FtsoV2Upgrader.sol/FtsoV2Upgrader.json +440 -0
  807. package/songbird/artifacts/contracts/utils/implementation/GovernedAndFlareDaemonized.sol/GovernedAndFlareDaemonized.json +144 -0
  808. package/songbird/artifacts/contracts/utils/implementation/GovernedAndFlareDaemonizedV2.sol/GovernedAndFlareDaemonizedV2.json +238 -0
  809. package/songbird/artifacts/contracts/utils/implementation/ProxyGoverned.sol/ProxyGoverned.json +256 -0
  810. package/songbird/artifacts/contracts/utils/implementation/RevertErrorTracking.sol/RevertErrorTracking.json +131 -0
  811. package/songbird/artifacts/contracts/utils/implementation/SafePct.sol/SafePct.json +10 -0
  812. package/songbird/artifacts/contracts/utils/implementation/VoterWhitelister.sol/VoterWhitelister.json +653 -0
  813. package/songbird/artifacts/contracts/utils/interface/IIFtsoRegistry.sol/IIFtsoRegistry.json +477 -0
  814. package/songbird/artifacts/contracts/utils/interface/IIFtsoRegistryV1.sol/IIFtsoRegistryV1.json +120 -0
  815. package/songbird/artifacts/contracts/utils/interface/IIRandomProvider.sol/IIRandomProvider.json +60 -0
  816. package/songbird/artifacts/contracts/utils/interface/IIVoterWhitelister.sol/IIVoterWhitelister.json +308 -0
  817. package/songbird/artifacts/contracts/utils/interface/IUpdateValidators.sol/IUpdateValidators.json +18 -0
  818. package/songbird/deploys/contracts.json +202 -0
  819. package/dist/coston/abis.coston.d.ts +0 -4
  820. package/dist/coston/abis.coston.d.ts.map +0 -1
  821. package/dist/coston/abis.coston.js.map +0 -1
  822. package/dist/coston/artifacts/contracts/governance/implementation/InflationAllocation.sol/InflationAllocation.json +0 -351
  823. package/dist/coston/artifacts/contracts/inflation/interface/IIInflationPercentageProvider.sol/IIInflationPercentageProvider.json +0 -24
  824. package/dist/coston/artifacts/contracts/inflation/lib/InflationAnnum.sol/InflationAnnum.json +0 -10
  825. package/dist/coston/artifacts/contracts/inflation/lib/InflationAnnums.sol/InflationAnnums.json +0 -10
  826. package/dist/coston/artifacts/contracts/inflation/lib/RewardService.sol/RewardService.json +0 -30
  827. package/dist/coston/artifacts/contracts/tokenPools/implementation/Distribution.sol/Distribution.json +0 -414
  828. package/dist/coston/artifacts/contracts/tokenPools/interface/IIFtsoRewardManagerV2.sol/IIFtsoRewardManagerV2.json +0 -949
  829. package/dist/coston/deploys/contractAddresses.d.ts.map +0 -1
  830. package/dist/coston/deploys/contractAddresses.js.map +0 -1
  831. package/dist/coston2/abis.coston2.d.ts +0 -4
  832. package/dist/coston2/abis.coston2.d.ts.map +0 -1
  833. package/dist/coston2/abis.coston2.js.map +0 -1
  834. package/dist/coston2/deploys/contractAddresses.d.ts.map +0 -1
  835. package/dist/coston2/deploys/contractAddresses.js.map +0 -1
  836. package/dist/flare/abis.flare.d.ts +0 -4
  837. package/dist/flare/abis.flare.d.ts.map +0 -1
  838. package/dist/flare/abis.flare.js.map +0 -1
  839. package/dist/flare/deploys/contractAddresses.d.ts.map +0 -1
  840. package/dist/flare/deploys/contractAddresses.js.map +0 -1
  841. package/dist/package.json +0 -28
  842. package/dist/songbird/abis.songbird.d.ts +0 -4
  843. package/dist/songbird/abis.songbird.d.ts.map +0 -1
  844. package/dist/songbird/abis.songbird.js.map +0 -1
  845. package/dist/songbird/artifacts/contracts/tokenPools/implementation/Distribution.sol/Distribution.json +0 -414
  846. package/dist/songbird/artifacts/contracts/tokenPools/interface/IIFtsoRewardManagerV2.sol/IIFtsoRewardManagerV2.json +0 -949
  847. package/dist/songbird/deploys/contractAddresses.d.ts.map +0 -1
  848. package/dist/songbird/deploys/contractAddresses.js.map +0 -1
@@ -24,6 +24,11 @@
24
24
  "internalType": "uint256",
25
25
  "name": "_defaultMaxVotersForFtso",
26
26
  "type": "uint256"
27
+ },
28
+ {
29
+ "internalType": "contract IVoterWhitelister",
30
+ "name": "_oldVoterWhitelister",
31
+ "type": "address"
27
32
  }
28
33
  ],
29
34
  "stateMutability": "nonpayable",
@@ -118,6 +123,25 @@
118
123
  "name": "TimelockedGovernanceCallExecuted",
119
124
  "type": "event"
120
125
  },
126
+ {
127
+ "anonymous": false,
128
+ "inputs": [
129
+ {
130
+ "indexed": false,
131
+ "internalType": "address",
132
+ "name": "voter",
133
+ "type": "address"
134
+ },
135
+ {
136
+ "indexed": false,
137
+ "internalType": "uint256",
138
+ "name": "untilRewardEpoch",
139
+ "type": "uint256"
140
+ }
141
+ ],
142
+ "name": "VoterChilled",
143
+ "type": "event"
144
+ },
121
145
  {
122
146
  "anonymous": false,
123
147
  "inputs": [
@@ -182,6 +206,85 @@
182
206
  "stateMutability": "nonpayable",
183
207
  "type": "function"
184
208
  },
209
+ {
210
+ "inputs": [
211
+ {
212
+ "internalType": "address",
213
+ "name": "_voter",
214
+ "type": "address"
215
+ },
216
+ {
217
+ "internalType": "uint256",
218
+ "name": "_noOfRewardEpochs",
219
+ "type": "uint256"
220
+ },
221
+ {
222
+ "internalType": "uint256[]",
223
+ "name": "_ftsoIndices",
224
+ "type": "uint256[]"
225
+ }
226
+ ],
227
+ "name": "chillVoter",
228
+ "outputs": [
229
+ {
230
+ "internalType": "bool[]",
231
+ "name": "_removed",
232
+ "type": "bool[]"
233
+ },
234
+ {
235
+ "internalType": "uint256",
236
+ "name": "_untilRewardEpoch",
237
+ "type": "uint256"
238
+ }
239
+ ],
240
+ "stateMutability": "nonpayable",
241
+ "type": "function"
242
+ },
243
+ {
244
+ "inputs": [
245
+ {
246
+ "internalType": "address",
247
+ "name": "",
248
+ "type": "address"
249
+ }
250
+ ],
251
+ "name": "chilledUntilRewardEpoch",
252
+ "outputs": [
253
+ {
254
+ "internalType": "uint256",
255
+ "name": "",
256
+ "type": "uint256"
257
+ }
258
+ ],
259
+ "stateMutability": "view",
260
+ "type": "function"
261
+ },
262
+ {
263
+ "inputs": [],
264
+ "name": "copyMode",
265
+ "outputs": [
266
+ {
267
+ "internalType": "bool",
268
+ "name": "",
269
+ "type": "bool"
270
+ }
271
+ ],
272
+ "stateMutability": "view",
273
+ "type": "function"
274
+ },
275
+ {
276
+ "inputs": [
277
+ {
278
+ "internalType": "uint256",
279
+ "name": "_ftsoIndex",
280
+ "type": "uint256"
281
+ }
282
+ ],
283
+ "name": "copyWhitelist",
284
+ "outputs": [],
285
+ "stateMutability": "nonpayable",
286
+ "type": "function"
287
+ },
185
288
  {
186
289
  "inputs": [],
187
290
  "name": "defaultMaxVotersForFtso",
@@ -213,7 +316,7 @@
213
316
  "name": "ftsoManager",
214
317
  "outputs": [
215
318
  {
216
- "internalType": "address",
319
+ "internalType": "contract IFtsoManager",
217
320
  "name": "",
218
321
  "type": "address"
219
322
  }
@@ -343,6 +446,19 @@
343
446
  "stateMutability": "view",
344
447
  "type": "function"
345
448
  },
449
+ {
450
+ "inputs": [],
451
+ "name": "oldVoterWhitelister",
452
+ "outputs": [
453
+ {
454
+ "internalType": "contract IVoterWhitelister",
455
+ "name": "",
456
+ "type": "address"
457
+ }
458
+ ],
459
+ "stateMutability": "view",
460
+ "type": "function"
461
+ },
346
462
  {
347
463
  "inputs": [],
348
464
  "name": "priceSubmitter",
@@ -504,6 +620,13 @@
504
620
  "stateMutability": "view",
505
621
  "type": "function"
506
622
  },
623
+ {
624
+ "inputs": [],
625
+ "name": "turnOffCopyMode",
626
+ "outputs": [],
627
+ "stateMutability": "nonpayable",
628
+ "type": "function"
629
+ },
507
630
  {
508
631
  "inputs": [
509
632
  {
@@ -523,8 +646,8 @@
523
646
  "type": "function"
524
647
  }
525
648
  ],
526
- "bytecode": "0x60a06040523480156200001157600080fd5b50604051620032ed380380620032ed833981810160405260808110156200003757600080fd5b50805160208201516040830151606090930151919290918284806001600160a01b038116156200006c576200006c81620000e8565b506001600160a01b038116620000bc576040805162461bcd60e51b815260206004820152601060248201526f5f676f7665726e616e6365207a65726f60801b604482015290519081900360640190fd5b50620000c881620001ab565b5060609190911b6001600160601b03191660805260025550620001cf9050565b600054600160a01b900460ff161562000148576040805162461bcd60e51b815260206004820152601460248201527f696e697469616c6973656420213d2066616c7365000000000000000000000000604482015290519081900360640190fd5b60008054600160a01b60ff60a01b19909116176001600160a01b0319166001600160a01b03831690811790915560408051918252517f9789733827840833afc031fb2ef9ab6894271f77bad2085687cf4ae5c7bee4db916020908290030190a150565b7f714f205b2abd25bef1d06a1af944e38c113fe6160375c4e1d6d5cf28848e771955565b60805160601c6130f1620001fc60003980611a505280611c3152806123f852806126f452506130f16000f3fe608060405234801561001057600080fd5b50600436106101585760003560e01c806374e6310e116100c3578063b00c0b761161007c578063b00c0b76146104ba578063b06cbaf7146105dd578063d87361711461069c578063e17f212e146106b9578063f5a98383146106d5578063f937d6ad146106dd57610158565b806374e6310e146102de5780637ecfcfa31461038457806398dccfc2146103a75780639d6a890f146103c45780639dc950ab146103ea578063aa89dfd41461041657610158565b806347ed51b11161011557806347ed51b11461025e5780635267a15d146102785780635aa6e675146102805780635ff270791461028857806362354e03146102af57806367fc4029146102b757610158565b806309fcb4001461015d57806311a7aaaa146101ca5780632ee96140146101ee578063345705a41461020d57806338b5f8691461022a5780633de2cb1c14610232575b600080fd5b61017a6004803603602081101561017357600080fd5b50356106e5565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156101b657818101518382015260200161019e565b505050509050019250505060405180910390f35b6101d26107b0565b604080516001600160a01b039092168252519081900360200190f35b61020b6004803603602081101561020457600080fd5b50356107bf565b005b61020b6004803603602081101561022357600080fd5b5035610806565b6101d26108cf565b61020b6004803603604081101561024857600080fd5b506001600160a01b0381351690602001356108de565b610266610985565b60408051918252519081900360200190f35b6101d261098b565b6101d26109b0565b61020b6004803603602081101561029e57600080fd5b50356001600160e01b031916610a45565b6101d2610d9a565b61020b600480360360208110156102cd57600080fd5b50356001600160e01b031916610da5565b610305600480360360208110156102f457600080fd5b50356001600160e01b031916610e88565b6040518083815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610348578181015183820152602001610330565b50505050905090810190601f1680156103755780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b61020b6004803603604081101561039a57600080fd5b5080359060200135610f2e565b610266600480360360208110156103bd57600080fd5b5035611227565b61020b600480360360208110156103da57600080fd5b50356001600160a01b0316611239565b61020b6004803603604081101561040057600080fd5b506001600160a01b0381351690602001356112f2565b61017a6004803603602081101561042c57600080fd5b810190602081018135600160201b81111561044657600080fd5b82018360208201111561045857600080fd5b803590602001918460018302840111600160201b8311171561047957600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611503945050505050565b61020b600480360360408110156104d057600080fd5b810190602081018135600160201b8111156104ea57600080fd5b8201836020820111156104fc57600080fd5b803590602001918460208302840111600160201b8311171561051d57600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295949360208101935035915050600160201b81111561056c57600080fd5b82018360208201111561057e57600080fd5b803590602001918460208302840111600160201b8311171561059f57600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295506115f2945050505050565b610603600480360360208110156105f357600080fd5b50356001600160a01b0316611699565b604051808060200180602001838103835285818151815260200191508051906020019060200280838360005b8381101561064757818101518382015260200161062f565b50505050905001838103825284818151815260200191508051906020019060200280838360005b8381101561068657818101518382015260200161066e565b5050505090500194505050505060405180910390f35b61020b600480360360208110156106b257600080fd5b503561189d565b6106c1611984565b604080519115158252519081900360200190f35b61020b611994565b6101d2611a4e565b60008181526003602052604090205460609080610744576040805162461bcd60e51b8152602060048201526018602482015277119514d3c81a5b99195e081b9bdd081cdd5c1c1bdc9d195960421b604482015290519081900360640190fd5b600083815260046020908152604091829020805483518184028101840190945280845290918301828280156107a257602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610784575b50505050509150505b919050565b6006546001600160a01b031681565b600054600160b01b900460ff16806107e15750600054600160a81b900460ff16155b156107f8576107ee611a72565b6002819055610803565b610803600036611aa9565b50565b6006546001600160a01b03163314610859576040805162461bcd60e51b815260206004820152601160248201527037b7363c90333a39b79036b0b730b3b2b960791b604482015290519081900360640190fd5b600081815260036020526040902054156108ba576040805162461bcd60e51b815260206004820152601760248201527f77686974656c69737420616c7265616479206578697374000000000000000000604482015290519081900360640190fd5b60025460009182526003602052604090912055565b6005546001600160a01b031681565b6108e782611c2c565b1561092b576040805162461bcd60e51b815260206004820152600f60248201526e74727573746564206164647265737360881b604482015290519081900360640190fd5b60006109378383611da7565b905080610980576040805162461bcd60e51b8152602060048201526012602482015271766f746520706f77657220746f6f206c6f7760701b604482015290519081900360640190fd5b505050565b60025481565b7f714f205b2abd25bef1d06a1af944e38c113fe6160375c4e1d6d5cf28848e77195490565b60008054600160a81b900460ff166109d3576000546001600160a01b0316610a40565b60076001609c1b016001600160a01b031663732524946040518163ffffffff1660e01b815260040160206040518083038186803b158015610a1357600080fd5b505afa158015610a27573d6000803e3d6000fd5b505050506040513d6020811015610a3d57600080fd5b50515b905090565b60408051630debfda360e41b8152336004820152905160076001609c1b019163debfda30916024808301926020929190829003018186803b158015610a8957600080fd5b505afa158015610a9d573d6000803e3d6000fd5b505050506040513d6020811015610ab357600080fd5b5051610af6576040805162461bcd60e51b815260206004820152600d60248201526c37b7363c9032bc32b1baba37b960991b604482015290519081900360640190fd5b6001600160e01b0319811660009081526001602052604090208054610b62576040805162461bcd60e51b815260206004820152601a60248201527f74696d656c6f636b3a20696e76616c69642073656c6563746f72000000000000604482015290519081900360640190fd5b8054421015610bb8576040805162461bcd60e51b815260206004820152601960248201527f74696d656c6f636b3a206e6f7420616c6c6f7765642079657400000000000000604482015290519081900360640190fd5b6000816001018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610c525780601f10610c2757610100808354040283529160200191610c52565b820191906000526020600020905b815481529060010190602001808311610c3557829003601f168201915b5050506001600160e01b0319861660009081526001602081905260408220828155949550909250610c869150830182612f97565b50506000805460ff60b01b1916600160b01b178155604051825130918491819060208401908083835b60208310610cce5780518252601f199092019160209182019101610caf565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610d30576040519150601f19603f3d011682016040523d82523d6000602084013e610d35565b606091505b50506000805460ff60b01b19169055604080516001600160e01b03198716815242602082015281519293507fa7326b57fc9cfe267aaea5e7f0b01757154d265620a0585819416ee9ddd2c438929081900390910190a1610d9481612033565b50505050565b60076001609c1b0181565b610dad612050565b6001600160e01b03198116600090815260016020526040902054610e18576040805162461bcd60e51b815260206004820152601a60248201527f74696d656c6f636b3a20696e76616c69642073656c6563746f72000000000000604482015290519081900360640190fd5b604080516001600160e01b03198316815242602082015281517f7735b2391c38a81419c513e30ca578db7158eadd7101511b23e221c654d19cf8929181900390910190a16001600160e01b0319811660009081526001602081905260408220828155919061098090830182612f97565b600160208181526000928352604092839020805481840180548651600296821615610100026000190190911695909504601f81018590048502860185019096528585529094919392909190830182828015610f245780601f10610ef957610100808354040283529160200191610f24565b820191906000526020600020905b815481529060010190602001808311610f0757829003601f168201915b5050505050905082565b600054600160b01b900460ff1680610f505750600054600160a81b900460ff16155b1561121857610f5d611a72565b60008281526003602090815260408083208490556004909152902080548210610f865750611213565b6005546040805163d75f6d8160e01b81526004810186905290516000926001600160a01b03169163d75f6d81916024808301926020929190829003018186803b158015610fd257600080fd5b505afa158015610fe6573d6000803e3d6000fd5b505050506040513d6020811015610ffc57600080fd5b505182546040805160208381028201810190925282815292935060009261106592859287919083018282801561105b57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831161103d575b50505050506120af565b805190915084810360008167ffffffffffffffff8111801561108657600080fd5b506040519080825280602002602001820160405280156110b0578160200160208202803683370190505b50905060005b828110156112015760006110ca8686612322565b90508781815481106110d857fe5b9060005260206000200160009054906101000a90046001600160a01b031683838151811061110257fe5b60200260200101906001600160a01b031690816001600160a01b031681525050600185038110156111c45787600186038154811061113c57fe5b9060005260206000200160009054906101000a90046001600160a01b031688828154811061116657fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508560018603815181106111a357fe5b60200260200101518682815181106111b757fe5b6020026020010181815250505b878054806111ce57fe5b600082815260209020810160001990810180546001600160a01b03191690559081019091559490940193506001016110b6565b5061120c8189612386565b5050505050505b611223565b611223600036611aa9565b5050565b60036020526000908152604090205481565b600054600160a01b900460ff161561128f576040805162461bcd60e51b8152602060048201526014602482015273696e697469616c6973656420213d2066616c736560601b604482015290519081900360640190fd5b60008054600160a01b60ff60a01b19909116176001600160a01b0319166001600160a01b03831690811790915560408051918252517f9789733827840833afc031fb2ef9ab6894271f77bad2085687cf4ae5c7bee4db916020908290030190a150565b6112fb82611c2c565b611342576040805162461bcd60e51b81526020600482015260136024820152726e6f742074727573746564206164647265737360681b604482015290519081900360640190fd5b6000818152600460205260408120805490915b8181101561139b57846001600160a01b031683828154811061137357fe5b6000918252602090912001546001600160a01b031614156113935761139b565b600101611355565b8181106113ef576040805162461bcd60e51b815260206004820152601f60248201527f747275737465642061646472657373206e6f742077686974656c697374656400604482015290519081900360640190fd5b6040805160018082528183019092526000916020808301908036833701905050905083828154811061141d57fe5b600091825260208220015482516001600160a01b0390911691839161143e57fe5b60200260200101906001600160a01b031690816001600160a01b03168152505083600184038154811061146d57fe5b9060005260206000200160009054906101000a90046001600160a01b031684838154811061149757fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550838054806114cf57fe5b600082815260209020810160001990810180546001600160a01b03191690550190556114fb8186612386565b505050505050565b600554604051630e848da360e41b81526020600482018181528451602484015284516060946000946001600160a01b039091169363e848da3093889390928392604490910191908501908083838b5b8381101561156a578181015183820152602001611552565b50505050905090810190601f1680156115975780820380516001836020036101000a031916815260200191505b509250505060206040518083038186803b1580156115b457600080fd5b505afa1580156115c8573d6000803e3d6000fd5b505050506040513d60208110156115de57600080fd5b505190506115eb816106e5565b9392505050565b6115fa61098b565b6001600160a01b0316336001600160a01b031614611656576040805162461bcd60e51b815260206004820152601460248201527337b7363c9030b2323932b9b9903ab83230ba32b960611b604482015290519081900360640190fd5b61168f61168a83836040518060400160405280600e81526020016d20b2323932b9b9aab83230ba32b960911b8152506124b6565b6125e3565b6112238282612607565b6060806116a583611c2c565b156116e9576040805162461bcd60e51b815260206004820152600f60248201526e74727573746564206164647265737360881b604482015290519081900360640190fd5b600560009054906101000a90046001600160a01b03166001600160a01b031663798aac5b6040518163ffffffff1660e01b815260040160006040518083038186803b15801561173757600080fd5b505afa15801561174b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561177457600080fd5b8101908080516040519392919084600160201b82111561179357600080fd5b9083019060208201858111156117a857600080fd5b82518660208202830111600160201b821117156117c457600080fd5b82525081516020918201928201910280838360005b838110156117f15781810151838201526020016117d9565b5050505090500160405250505091506000825190508067ffffffffffffffff8111801561181d57600080fd5b50604051908082528060200260200182016040528015611847578160200160208202803683370190505b50915060005b81811015611896576118728585838151811061186557fe5b6020026020010151611da7565b83828151811061187e57fe5b9115156020928302919091019091015260010161184d565b5050915091565b6006546001600160a01b031633146118f0576040805162461bcd60e51b815260206004820152601160248201527037b7363c90333a39b79036b0b730b3b2b960791b604482015290519081900360640190fd5b600081815260046020908152604091829020805483518184028101840190945280845261195c939283018282801561195157602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611933575b505050505082612386565b600081815260046020526040812061197391612fdb565b600090815260036020526040812055565b600054600160a81b900460ff1681565b61199c612050565b600054600160a81b900460ff16156119fb576040805162461bcd60e51b815260206004820152601a60248201527f616c726561647920696e2070726f64756374696f6e206d6f6465000000000000604482015290519081900360640190fd5b60008054600161ff0160a01b031916600160a81b1790556040805160076001609c1b01815290517f83af113638b5422f9e977cebc0aaf0eaf2188eb9a8baae7f9d46c42b33a1560c9181900360200190a1565b7f000000000000000000000000000000000000000000000000000000000000000081565b600054600160b01b900460ff1615611a9f57333014611a8d57fe5b6000805460ff60b01b19169055611aa7565b611aa7612050565b565b611ab1612050565b600082359050600060076001609c1b016001600160a01b0316636221a54b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611af957600080fd5b505afa158015611b0d573d6000803e3d6000fd5b505050506040513d6020811015611b2357600080fd5b505160408051808201825242830180825282516020601f89018190048102820181019094528781529394509290918281019190889088908190840183828082843760009201829052509390945250506001600160e01b03198616815260016020818152604090922084518155848301518051919450611ba793928501920190612ff9565b509050507fed948300a3694aa01d4a6b258bfd664350193d770c0b51f8387277f6d83ea3b68382878760405180856001600160e01b0319168152602001848152602001806020018281038252848482818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a15050505050565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ffacb84e6040518163ffffffff1660e01b815260040160006040518083038186803b158015611c8857600080fd5b505afa158015611c9c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015611cc557600080fd5b8101908080516040519392919084600160201b821115611ce457600080fd5b908301906020820185811115611cf957600080fd5b82518660208202830111600160201b82111715611d1557600080fd5b82525081516020918201928201910280838360005b83811015611d42578181015183820152602001611d2a565b50505050905001604052505050905060005b8151811015611d9d57836001600160a01b0316828281518110611d7357fe5b60200260200101516001600160a01b03161415611d95576001925050506107ab565b600101611d54565b5060009392505050565b60008181526003602052604081205480611e03576040805162461bcd60e51b8152602060048201526018602482015277119514d3c81a5b99195e081b9bdd081cdd5c1c1bdc9d195960421b604482015290519081900360640190fd5b6000838152600460205260408120805490916001820167ffffffffffffffff81118015611e2f57600080fd5b50604051908082528060200260200182016040528015611e59578160200160208202803683370190505b50905060005b82811015611ed4576000848281548110611e7557fe5b6000918252602090912001546001600160a01b0390811691508916811415611ea6576001965050505050505061202d565b80838381518110611eb357fe5b6001600160a01b039092166020928302919091019091015250600101611e5f565b5086818381518110611ee257fe5b60200260200101906001600160a01b031690816001600160a01b03168152505083821015611f4c5782546001810184556000848152602090200180546001600160a01b0319166001600160a01b038916179055611f3f87876126ae565b600194505050505061202d565b6000611f588288612769565b905082811415611f705760009550505050505061202d565b60408051600180825281830190925260009160208083019080368337019050509050828281518110611f9e57fe5b602002602001015181600081518110611fb357fe5b60200260200101906001600160a01b031690816001600160a01b03168152505088858381548110611fe057fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055506120188189612386565b61202289896126ae565b600196505050505050505b92915050565b3d604051818101604052816000823e821561204c578181f35b8181fd5b6120586109b0565b6001600160a01b0316336001600160a01b031614611aa7576040805162461bcd60e51b815260206004820152600f60248201526e6f6e6c7920676f7665726e616e636560881b604482015290519081900360640190fd5b6060806060600080600080886001600160a01b0316638357d08c6040518163ffffffff1660e01b815260040160006040518083038186803b1580156120f357600080fd5b505afa158015612107573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405260c081101561213057600080fd5b8101908080516040519392919084600160201b82111561214f57600080fd5b90830190602082018581111561216457600080fd5b82518660208202830111600160201b8211171561218057600080fd5b82525081516020918201928201910280838360005b838110156121ad578181015183820152602001612195565b5050505090500160405260200180516040519392919084600160201b8211156121d557600080fd5b9083019060208201858111156121ea57600080fd5b82518660208202830111600160201b8211171561220657600080fd5b82525081516020918201928201910280838360005b8381101561223357818101518382015260200161221b565b5050505090500160405260200180519060200190929190805190602001909291908051906020019092919080519060200190929190505050809650819750829850839950849a50859b5050505050505060006122f58a6001600160a01b0316639edbf0076040518163ffffffff1660e01b815260040160206040518083038186803b1580156122c157600080fd5b505afa1580156122d5573d6000803e3d6000fd5b505050506040513d60208110156122eb57600080fd5b5051868b85612801565b905060006123068888878d8761287c565b90506123138282866129ef565b9b9a5050505050505050505050565b6000806000905060008460008151811061233857fe5b6020026020010151905060005b8481101561237c57600086828151811061235b57fe5b60200260200101519050828111612373578193508092505b50600101612345565b5090949350505050565b60005b82518110156123f5577f33359f2769756ca8d0da4683f25ee440744d6f18bfb166dbfb59315a8c62b0168382815181106123bf57fe5b60200260200101518360405180836001600160a01b031681526020018281526020019250505060405180910390a1600101612389565b507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166376794efb83836040518363ffffffff1660e01b81526004018080602001838152602001828103825284818151815260200191508051906020019060200280838360005b8381101561247c578181015183820152602001612464565b505050509050019350505050600060405180830381600087803b1580156124a257600080fd5b505af11580156114fb573d6000803e3d6000fd5b600080826040516020018080602001828103825283818151815260200191508051906020019080838360005b838110156124fa5781810151838201526020016124e2565b50505050905090810190601f1680156125275780820380516001836020036101000a031916815260200191505b50925050506040516020818303038152906040528051906020012090506000805b865181101561258f5786818151811061255d57fe5b60200260200101518314156125875785818151811061257857fe5b6020026020010151915061258f565b600101612548565b506001600160a01b0381166125da576040805162461bcd60e51b815260206004820152600c60248201526b61646472657373207a65726f60a01b604482015290519081900360640190fd5b95945050505050565b7f714f205b2abd25bef1d06a1af944e38c113fe6160375c4e1d6d5cf28848e771955565b61263682826040518060400160405280600c81526020016b4674736f526567697374727960a01b8152506124b6565b600560006101000a8154816001600160a01b0302191690836001600160a01b0316021790555061268a82826040518060400160405280600b81526020016a233a39b7a6b0b730b3b2b960a91b8152506124b6565b600680546001600160a01b0319166001600160a01b03929092169190911790555050565b604080516001600160a01b03841681526020810183905281517f66a8b13abe95391d1851f5bc319f3dde54ce8f2f40a5fe226aa3251d805832e3929181900390910190a17f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316639d986f9183836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050600060405180830381600087803b1580156124a257600080fd5b6005546040805163d75f6d8160e01b815260048101849052905160009283926001600160a01b039091169163d75f6d8191602480820192602092909190829003018186803b1580156127ba57600080fd5b505afa1580156127ce573d6000803e3d6000fd5b505050506040513d60208110156127e457600080fd5b5051905060006127f482866120af565b90506125da818251612322565b606061280e858484612b34565b90508361281a57612874565b60005b83518110156128725761285364e8d4a510008684848151811061283c57fe5b6020026020010151612d2c9092919063ffffffff16565b82828151811061285f57fe5b602090810291909101015260010161281d565b505b949350505050565b6060825167ffffffffffffffff8111801561289657600080fd5b506040519080825280602002602001820160405280156128c0578160200160208202803683370190505b50905060005b83518110156128f05760008282815181106128dd57fe5b60209081029190910101526001016128c6565b50836128fb576125da565b600061290f85670de0b6b3a7640000612e38565b905060005b87518110156129e457600088828151811061292b57fe5b6020026020010151905060006001600160a01b0316816001600160a01b0316146129db57600061295c828888612b34565b905060005b87518110156129d85760006129908b868151811061297b57fe5b60200260200101518785858151811061283c57fe5b90506129b8818884815181106129a257fe5b6020026020010151612e9190919063ffffffff16565b8783815181106129c457fe5b602090810291909101015250600101612961565b50505b50600101612914565b505095945050505050565b606060006129fc84612eeb565b90506000612a0986612eeb565b90506000808311612a1b576000612a1d565b845b90506000808311612a2f576000612a35565b81612710035b9050875167ffffffffffffffff81118015612a4f57600080fd5b50604051908082528060200260200182016040528015612a79578160200160208202803683370190505b50945060005b8851811015612b285760008215612ac657612ac38a8381518110612a9f57fe5b602002602001015164e8d4a5100002612710870285612d2c9092919063ffffffff16565b90505b60008415612b0457612b018a8481518110612add57fe5b602002602001015164e8d4a5100002612710890287612d2c9092919063ffffffff16565b90505b808201888481518110612b1357fe5b60209081029190910101525050600101612a7f565b50505050509392505050565b6060836001600160a01b031663e587497e84600186510381518110612b5557fe5b6020026020010151846040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b158015612ba457600080fd5b505af1158015612bb8573d6000803e3d6000fd5b505050506040513d6020811015612bce57600080fd5b5050604080516349e3c7e560e01b815260248101849052600481019182528451604482015284516001600160a01b038716926349e3c7e592879287929182916064909101906020868101910280838360005b83811015612c38578181015183820152602001612c20565b50505050905001935050505060006040518083038186803b158015612c5c57600080fd5b505afa158015612c70573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015612c9957600080fd5b8101908080516040519392919084600160201b821115612cb857600080fd5b908301906020820185811115612ccd57600080fd5b82518660208202830111600160201b82111715612ce957600080fd5b82525081516020918201928201910280838360005b83811015612d16578181015183820152602001612cfe565b5050505090500160405250505090509392505050565b6000808211612d75576040805162461bcd60e51b815260206004820152601060248201526f4469766973696f6e206279207a65726f60801b604482015290519081900360640190fd5b83612d82575060006115eb565b83830283858281612d8f57fe5b041415612da857828181612d9f57fe5b049150506115eb565b6000838681612db357fe5b0490506000848781612dc157fe5b0690506000858781612dcf57fe5b0490506000868881612ddd57fe5b069050612e2b612df788612df18685612e38565b90612f30565b612e25612e048686612e38565b612e25612e118987612e38565b612e258d612e1f8c8b612e38565b90612e38565b90612e91565b9998505050505050505050565b600082612e475750600061202d565b82820282848281612e5457fe5b04146115eb5760405162461bcd60e51b815260040180806020018281038252602181526020018061309b6021913960400191505060405180910390fd5b6000828201838110156115eb576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600080805b8351811015612f2957612f1f848281518110612f0857fe5b602002602001015183612e9190919063ffffffff16565b9150600101612ef0565b5092915050565b6000808211612f86576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b818381612f8f57fe5b049392505050565b50805460018160011615610100020316600290046000825580601f10612fbd5750610803565b601f0160209004906000526020600020908101906108039190613085565b50805460008255906000526020600020908101906108039190613085565b828054600181600116156101000203166002900490600052602060002090601f01602090048101928261302f5760008555613075565b82601f1061304857805160ff1916838001178555613075565b82800160010185558215613075579182015b8281111561307557825182559160200191906001019061305a565b50613081929150613085565b5090565b5b80821115613081576000815560010161308656fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a2646970667358221220f3e4f3bfcc5de804f195d417a4d5dc3ccdd108c3b5e54ba6c0887e2bc419139364736f6c63430007060033",
527
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101585760003560e01c806374e6310e116100c3578063b00c0b761161007c578063b00c0b76146104ba578063b06cbaf7146105dd578063d87361711461069c578063e17f212e146106b9578063f5a98383146106d5578063f937d6ad146106dd57610158565b806374e6310e146102de5780637ecfcfa31461038457806398dccfc2146103a75780639d6a890f146103c45780639dc950ab146103ea578063aa89dfd41461041657610158565b806347ed51b11161011557806347ed51b11461025e5780635267a15d146102785780635aa6e675146102805780635ff270791461028857806362354e03146102af57806367fc4029146102b757610158565b806309fcb4001461015d57806311a7aaaa146101ca5780632ee96140146101ee578063345705a41461020d57806338b5f8691461022a5780633de2cb1c14610232575b600080fd5b61017a6004803603602081101561017357600080fd5b50356106e5565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156101b657818101518382015260200161019e565b505050509050019250505060405180910390f35b6101d26107b0565b604080516001600160a01b039092168252519081900360200190f35b61020b6004803603602081101561020457600080fd5b50356107bf565b005b61020b6004803603602081101561022357600080fd5b5035610806565b6101d26108cf565b61020b6004803603604081101561024857600080fd5b506001600160a01b0381351690602001356108de565b610266610985565b60408051918252519081900360200190f35b6101d261098b565b6101d26109b0565b61020b6004803603602081101561029e57600080fd5b50356001600160e01b031916610a45565b6101d2610d9a565b61020b600480360360208110156102cd57600080fd5b50356001600160e01b031916610da5565b610305600480360360208110156102f457600080fd5b50356001600160e01b031916610e88565b6040518083815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610348578181015183820152602001610330565b50505050905090810190601f1680156103755780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b61020b6004803603604081101561039a57600080fd5b5080359060200135610f2e565b610266600480360360208110156103bd57600080fd5b5035611227565b61020b600480360360208110156103da57600080fd5b50356001600160a01b0316611239565b61020b6004803603604081101561040057600080fd5b506001600160a01b0381351690602001356112f2565b61017a6004803603602081101561042c57600080fd5b810190602081018135600160201b81111561044657600080fd5b82018360208201111561045857600080fd5b803590602001918460018302840111600160201b8311171561047957600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611503945050505050565b61020b600480360360408110156104d057600080fd5b810190602081018135600160201b8111156104ea57600080fd5b8201836020820111156104fc57600080fd5b803590602001918460208302840111600160201b8311171561051d57600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295949360208101935035915050600160201b81111561056c57600080fd5b82018360208201111561057e57600080fd5b803590602001918460208302840111600160201b8311171561059f57600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295506115f2945050505050565b610603600480360360208110156105f357600080fd5b50356001600160a01b0316611699565b604051808060200180602001838103835285818151815260200191508051906020019060200280838360005b8381101561064757818101518382015260200161062f565b50505050905001838103825284818151815260200191508051906020019060200280838360005b8381101561068657818101518382015260200161066e565b5050505090500194505050505060405180910390f35b61020b600480360360208110156106b257600080fd5b503561189d565b6106c1611984565b604080519115158252519081900360200190f35b61020b611994565b6101d2611a4e565b60008181526003602052604090205460609080610744576040805162461bcd60e51b8152602060048201526018602482015277119514d3c81a5b99195e081b9bdd081cdd5c1c1bdc9d195960421b604482015290519081900360640190fd5b600083815260046020908152604091829020805483518184028101840190945280845290918301828280156107a257602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610784575b50505050509150505b919050565b6006546001600160a01b031681565b600054600160b01b900460ff16806107e15750600054600160a81b900460ff16155b156107f8576107ee611a72565b6002819055610803565b610803600036611aa9565b50565b6006546001600160a01b03163314610859576040805162461bcd60e51b815260206004820152601160248201527037b7363c90333a39b79036b0b730b3b2b960791b604482015290519081900360640190fd5b600081815260036020526040902054156108ba576040805162461bcd60e51b815260206004820152601760248201527f77686974656c69737420616c7265616479206578697374000000000000000000604482015290519081900360640190fd5b60025460009182526003602052604090912055565b6005546001600160a01b031681565b6108e782611c2c565b1561092b576040805162461bcd60e51b815260206004820152600f60248201526e74727573746564206164647265737360881b604482015290519081900360640190fd5b60006109378383611da7565b905080610980576040805162461bcd60e51b8152602060048201526012602482015271766f746520706f77657220746f6f206c6f7760701b604482015290519081900360640190fd5b505050565b60025481565b7f714f205b2abd25bef1d06a1af944e38c113fe6160375c4e1d6d5cf28848e77195490565b60008054600160a81b900460ff166109d3576000546001600160a01b0316610a40565b60076001609c1b016001600160a01b031663732524946040518163ffffffff1660e01b815260040160206040518083038186803b158015610a1357600080fd5b505afa158015610a27573d6000803e3d6000fd5b505050506040513d6020811015610a3d57600080fd5b50515b905090565b60408051630debfda360e41b8152336004820152905160076001609c1b019163debfda30916024808301926020929190829003018186803b158015610a8957600080fd5b505afa158015610a9d573d6000803e3d6000fd5b505050506040513d6020811015610ab357600080fd5b5051610af6576040805162461bcd60e51b815260206004820152600d60248201526c37b7363c9032bc32b1baba37b960991b604482015290519081900360640190fd5b6001600160e01b0319811660009081526001602052604090208054610b62576040805162461bcd60e51b815260206004820152601a60248201527f74696d656c6f636b3a20696e76616c69642073656c6563746f72000000000000604482015290519081900360640190fd5b8054421015610bb8576040805162461bcd60e51b815260206004820152601960248201527f74696d656c6f636b3a206e6f7420616c6c6f7765642079657400000000000000604482015290519081900360640190fd5b6000816001018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610c525780601f10610c2757610100808354040283529160200191610c52565b820191906000526020600020905b815481529060010190602001808311610c3557829003601f168201915b5050506001600160e01b0319861660009081526001602081905260408220828155949550909250610c869150830182612f97565b50506000805460ff60b01b1916600160b01b178155604051825130918491819060208401908083835b60208310610cce5780518252601f199092019160209182019101610caf565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114610d30576040519150601f19603f3d011682016040523d82523d6000602084013e610d35565b606091505b50506000805460ff60b01b19169055604080516001600160e01b03198716815242602082015281519293507fa7326b57fc9cfe267aaea5e7f0b01757154d265620a0585819416ee9ddd2c438929081900390910190a1610d9481612033565b50505050565b60076001609c1b0181565b610dad612050565b6001600160e01b03198116600090815260016020526040902054610e18576040805162461bcd60e51b815260206004820152601a60248201527f74696d656c6f636b3a20696e76616c69642073656c6563746f72000000000000604482015290519081900360640190fd5b604080516001600160e01b03198316815242602082015281517f7735b2391c38a81419c513e30ca578db7158eadd7101511b23e221c654d19cf8929181900390910190a16001600160e01b0319811660009081526001602081905260408220828155919061098090830182612f97565b600160208181526000928352604092839020805481840180548651600296821615610100026000190190911695909504601f81018590048502860185019096528585529094919392909190830182828015610f245780601f10610ef957610100808354040283529160200191610f24565b820191906000526020600020905b815481529060010190602001808311610f0757829003601f168201915b5050505050905082565b600054600160b01b900460ff1680610f505750600054600160a81b900460ff16155b1561121857610f5d611a72565b60008281526003602090815260408083208490556004909152902080548210610f865750611213565b6005546040805163d75f6d8160e01b81526004810186905290516000926001600160a01b03169163d75f6d81916024808301926020929190829003018186803b158015610fd257600080fd5b505afa158015610fe6573d6000803e3d6000fd5b505050506040513d6020811015610ffc57600080fd5b505182546040805160208381028201810190925282815292935060009261106592859287919083018282801561105b57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831161103d575b50505050506120af565b805190915084810360008167ffffffffffffffff8111801561108657600080fd5b506040519080825280602002602001820160405280156110b0578160200160208202803683370190505b50905060005b828110156112015760006110ca8686612322565b90508781815481106110d857fe5b9060005260206000200160009054906101000a90046001600160a01b031683838151811061110257fe5b60200260200101906001600160a01b031690816001600160a01b031681525050600185038110156111c45787600186038154811061113c57fe5b9060005260206000200160009054906101000a90046001600160a01b031688828154811061116657fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508560018603815181106111a357fe5b60200260200101518682815181106111b757fe5b6020026020010181815250505b878054806111ce57fe5b600082815260209020810160001990810180546001600160a01b03191690559081019091559490940193506001016110b6565b5061120c8189612386565b5050505050505b611223565b611223600036611aa9565b5050565b60036020526000908152604090205481565b600054600160a01b900460ff161561128f576040805162461bcd60e51b8152602060048201526014602482015273696e697469616c6973656420213d2066616c736560601b604482015290519081900360640190fd5b60008054600160a01b60ff60a01b19909116176001600160a01b0319166001600160a01b03831690811790915560408051918252517f9789733827840833afc031fb2ef9ab6894271f77bad2085687cf4ae5c7bee4db916020908290030190a150565b6112fb82611c2c565b611342576040805162461bcd60e51b81526020600482015260136024820152726e6f742074727573746564206164647265737360681b604482015290519081900360640190fd5b6000818152600460205260408120805490915b8181101561139b57846001600160a01b031683828154811061137357fe5b6000918252602090912001546001600160a01b031614156113935761139b565b600101611355565b8181106113ef576040805162461bcd60e51b815260206004820152601f60248201527f747275737465642061646472657373206e6f742077686974656c697374656400604482015290519081900360640190fd5b6040805160018082528183019092526000916020808301908036833701905050905083828154811061141d57fe5b600091825260208220015482516001600160a01b0390911691839161143e57fe5b60200260200101906001600160a01b031690816001600160a01b03168152505083600184038154811061146d57fe5b9060005260206000200160009054906101000a90046001600160a01b031684838154811061149757fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550838054806114cf57fe5b600082815260209020810160001990810180546001600160a01b03191690550190556114fb8186612386565b505050505050565b600554604051630e848da360e41b81526020600482018181528451602484015284516060946000946001600160a01b039091169363e848da3093889390928392604490910191908501908083838b5b8381101561156a578181015183820152602001611552565b50505050905090810190601f1680156115975780820380516001836020036101000a031916815260200191505b509250505060206040518083038186803b1580156115b457600080fd5b505afa1580156115c8573d6000803e3d6000fd5b505050506040513d60208110156115de57600080fd5b505190506115eb816106e5565b9392505050565b6115fa61098b565b6001600160a01b0316336001600160a01b031614611656576040805162461bcd60e51b815260206004820152601460248201527337b7363c9030b2323932b9b9903ab83230ba32b960611b604482015290519081900360640190fd5b61168f61168a83836040518060400160405280600e81526020016d20b2323932b9b9aab83230ba32b960911b8152506124b6565b6125e3565b6112238282612607565b6060806116a583611c2c565b156116e9576040805162461bcd60e51b815260206004820152600f60248201526e74727573746564206164647265737360881b604482015290519081900360640190fd5b600560009054906101000a90046001600160a01b03166001600160a01b031663798aac5b6040518163ffffffff1660e01b815260040160006040518083038186803b15801561173757600080fd5b505afa15801561174b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561177457600080fd5b8101908080516040519392919084600160201b82111561179357600080fd5b9083019060208201858111156117a857600080fd5b82518660208202830111600160201b821117156117c457600080fd5b82525081516020918201928201910280838360005b838110156117f15781810151838201526020016117d9565b5050505090500160405250505091506000825190508067ffffffffffffffff8111801561181d57600080fd5b50604051908082528060200260200182016040528015611847578160200160208202803683370190505b50915060005b81811015611896576118728585838151811061186557fe5b6020026020010151611da7565b83828151811061187e57fe5b9115156020928302919091019091015260010161184d565b5050915091565b6006546001600160a01b031633146118f0576040805162461bcd60e51b815260206004820152601160248201527037b7363c90333a39b79036b0b730b3b2b960791b604482015290519081900360640190fd5b600081815260046020908152604091829020805483518184028101840190945280845261195c939283018282801561195157602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611933575b505050505082612386565b600081815260046020526040812061197391612fdb565b600090815260036020526040812055565b600054600160a81b900460ff1681565b61199c612050565b600054600160a81b900460ff16156119fb576040805162461bcd60e51b815260206004820152601a60248201527f616c726561647920696e2070726f64756374696f6e206d6f6465000000000000604482015290519081900360640190fd5b60008054600161ff0160a01b031916600160a81b1790556040805160076001609c1b01815290517f83af113638b5422f9e977cebc0aaf0eaf2188eb9a8baae7f9d46c42b33a1560c9181900360200190a1565b7f000000000000000000000000000000000000000000000000000000000000000081565b600054600160b01b900460ff1615611a9f57333014611a8d57fe5b6000805460ff60b01b19169055611aa7565b611aa7612050565b565b611ab1612050565b600082359050600060076001609c1b016001600160a01b0316636221a54b6040518163ffffffff1660e01b815260040160206040518083038186803b158015611af957600080fd5b505afa158015611b0d573d6000803e3d6000fd5b505050506040513d6020811015611b2357600080fd5b505160408051808201825242830180825282516020601f89018190048102820181019094528781529394509290918281019190889088908190840183828082843760009201829052509390945250506001600160e01b03198616815260016020818152604090922084518155848301518051919450611ba793928501920190612ff9565b509050507fed948300a3694aa01d4a6b258bfd664350193d770c0b51f8387277f6d83ea3b68382878760405180856001600160e01b0319168152602001848152602001806020018281038252848482818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a15050505050565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ffacb84e6040518163ffffffff1660e01b815260040160006040518083038186803b158015611c8857600080fd5b505afa158015611c9c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015611cc557600080fd5b8101908080516040519392919084600160201b821115611ce457600080fd5b908301906020820185811115611cf957600080fd5b82518660208202830111600160201b82111715611d1557600080fd5b82525081516020918201928201910280838360005b83811015611d42578181015183820152602001611d2a565b50505050905001604052505050905060005b8151811015611d9d57836001600160a01b0316828281518110611d7357fe5b60200260200101516001600160a01b03161415611d95576001925050506107ab565b600101611d54565b5060009392505050565b60008181526003602052604081205480611e03576040805162461bcd60e51b8152602060048201526018602482015277119514d3c81a5b99195e081b9bdd081cdd5c1c1bdc9d195960421b604482015290519081900360640190fd5b6000838152600460205260408120805490916001820167ffffffffffffffff81118015611e2f57600080fd5b50604051908082528060200260200182016040528015611e59578160200160208202803683370190505b50905060005b82811015611ed4576000848281548110611e7557fe5b6000918252602090912001546001600160a01b0390811691508916811415611ea6576001965050505050505061202d565b80838381518110611eb357fe5b6001600160a01b039092166020928302919091019091015250600101611e5f565b5086818381518110611ee257fe5b60200260200101906001600160a01b031690816001600160a01b03168152505083821015611f4c5782546001810184556000848152602090200180546001600160a01b0319166001600160a01b038916179055611f3f87876126ae565b600194505050505061202d565b6000611f588288612769565b905082811415611f705760009550505050505061202d565b60408051600180825281830190925260009160208083019080368337019050509050828281518110611f9e57fe5b602002602001015181600081518110611fb357fe5b60200260200101906001600160a01b031690816001600160a01b03168152505088858381548110611fe057fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055506120188189612386565b61202289896126ae565b600196505050505050505b92915050565b3d604051818101604052816000823e821561204c578181f35b8181fd5b6120586109b0565b6001600160a01b0316336001600160a01b031614611aa7576040805162461bcd60e51b815260206004820152600f60248201526e6f6e6c7920676f7665726e616e636560881b604482015290519081900360640190fd5b6060806060600080600080886001600160a01b0316638357d08c6040518163ffffffff1660e01b815260040160006040518083038186803b1580156120f357600080fd5b505afa158015612107573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405260c081101561213057600080fd5b8101908080516040519392919084600160201b82111561214f57600080fd5b90830190602082018581111561216457600080fd5b82518660208202830111600160201b8211171561218057600080fd5b82525081516020918201928201910280838360005b838110156121ad578181015183820152602001612195565b5050505090500160405260200180516040519392919084600160201b8211156121d557600080fd5b9083019060208201858111156121ea57600080fd5b82518660208202830111600160201b8211171561220657600080fd5b82525081516020918201928201910280838360005b8381101561223357818101518382015260200161221b565b5050505090500160405260200180519060200190929190805190602001909291908051906020019092919080519060200190929190505050809650819750829850839950849a50859b5050505050505060006122f58a6001600160a01b0316639edbf0076040518163ffffffff1660e01b815260040160206040518083038186803b1580156122c157600080fd5b505afa1580156122d5573d6000803e3d6000fd5b505050506040513d60208110156122eb57600080fd5b5051868b85612801565b905060006123068888878d8761287c565b90506123138282866129ef565b9b9a5050505050505050505050565b6000806000905060008460008151811061233857fe5b6020026020010151905060005b8481101561237c57600086828151811061235b57fe5b60200260200101519050828111612373578193508092505b50600101612345565b5090949350505050565b60005b82518110156123f5577f33359f2769756ca8d0da4683f25ee440744d6f18bfb166dbfb59315a8c62b0168382815181106123bf57fe5b60200260200101518360405180836001600160a01b031681526020018281526020019250505060405180910390a1600101612389565b507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166376794efb83836040518363ffffffff1660e01b81526004018080602001838152602001828103825284818151815260200191508051906020019060200280838360005b8381101561247c578181015183820152602001612464565b505050509050019350505050600060405180830381600087803b1580156124a257600080fd5b505af11580156114fb573d6000803e3d6000fd5b600080826040516020018080602001828103825283818151815260200191508051906020019080838360005b838110156124fa5781810151838201526020016124e2565b50505050905090810190601f1680156125275780820380516001836020036101000a031916815260200191505b50925050506040516020818303038152906040528051906020012090506000805b865181101561258f5786818151811061255d57fe5b60200260200101518314156125875785818151811061257857fe5b6020026020010151915061258f565b600101612548565b506001600160a01b0381166125da576040805162461bcd60e51b815260206004820152600c60248201526b61646472657373207a65726f60a01b604482015290519081900360640190fd5b95945050505050565b7f714f205b2abd25bef1d06a1af944e38c113fe6160375c4e1d6d5cf28848e771955565b61263682826040518060400160405280600c81526020016b4674736f526567697374727960a01b8152506124b6565b600560006101000a8154816001600160a01b0302191690836001600160a01b0316021790555061268a82826040518060400160405280600b81526020016a233a39b7a6b0b730b3b2b960a91b8152506124b6565b600680546001600160a01b0319166001600160a01b03929092169190911790555050565b604080516001600160a01b03841681526020810183905281517f66a8b13abe95391d1851f5bc319f3dde54ce8f2f40a5fe226aa3251d805832e3929181900390910190a17f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316639d986f9183836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050600060405180830381600087803b1580156124a257600080fd5b6005546040805163d75f6d8160e01b815260048101849052905160009283926001600160a01b039091169163d75f6d8191602480820192602092909190829003018186803b1580156127ba57600080fd5b505afa1580156127ce573d6000803e3d6000fd5b505050506040513d60208110156127e457600080fd5b5051905060006127f482866120af565b90506125da818251612322565b606061280e858484612b34565b90508361281a57612874565b60005b83518110156128725761285364e8d4a510008684848151811061283c57fe5b6020026020010151612d2c9092919063ffffffff16565b82828151811061285f57fe5b602090810291909101015260010161281d565b505b949350505050565b6060825167ffffffffffffffff8111801561289657600080fd5b506040519080825280602002602001820160405280156128c0578160200160208202803683370190505b50905060005b83518110156128f05760008282815181106128dd57fe5b60209081029190910101526001016128c6565b50836128fb576125da565b600061290f85670de0b6b3a7640000612e38565b905060005b87518110156129e457600088828151811061292b57fe5b6020026020010151905060006001600160a01b0316816001600160a01b0316146129db57600061295c828888612b34565b905060005b87518110156129d85760006129908b868151811061297b57fe5b60200260200101518785858151811061283c57fe5b90506129b8818884815181106129a257fe5b6020026020010151612e9190919063ffffffff16565b8783815181106129c457fe5b602090810291909101015250600101612961565b50505b50600101612914565b505095945050505050565b606060006129fc84612eeb565b90506000612a0986612eeb565b90506000808311612a1b576000612a1d565b845b90506000808311612a2f576000612a35565b81612710035b9050875167ffffffffffffffff81118015612a4f57600080fd5b50604051908082528060200260200182016040528015612a79578160200160208202803683370190505b50945060005b8851811015612b285760008215612ac657612ac38a8381518110612a9f57fe5b602002602001015164e8d4a5100002612710870285612d2c9092919063ffffffff16565b90505b60008415612b0457612b018a8481518110612add57fe5b602002602001015164e8d4a5100002612710890287612d2c9092919063ffffffff16565b90505b808201888481518110612b1357fe5b60209081029190910101525050600101612a7f565b50505050509392505050565b6060836001600160a01b031663e587497e84600186510381518110612b5557fe5b6020026020010151846040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b158015612ba457600080fd5b505af1158015612bb8573d6000803e3d6000fd5b505050506040513d6020811015612bce57600080fd5b5050604080516349e3c7e560e01b815260248101849052600481019182528451604482015284516001600160a01b038716926349e3c7e592879287929182916064909101906020868101910280838360005b83811015612c38578181015183820152602001612c20565b50505050905001935050505060006040518083038186803b158015612c5c57600080fd5b505afa158015612c70573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015612c9957600080fd5b8101908080516040519392919084600160201b821115612cb857600080fd5b908301906020820185811115612ccd57600080fd5b82518660208202830111600160201b82111715612ce957600080fd5b82525081516020918201928201910280838360005b83811015612d16578181015183820152602001612cfe565b5050505090500160405250505090509392505050565b6000808211612d75576040805162461bcd60e51b815260206004820152601060248201526f4469766973696f6e206279207a65726f60801b604482015290519081900360640190fd5b83612d82575060006115eb565b83830283858281612d8f57fe5b041415612da857828181612d9f57fe5b049150506115eb565b6000838681612db357fe5b0490506000848781612dc157fe5b0690506000858781612dcf57fe5b0490506000868881612ddd57fe5b069050612e2b612df788612df18685612e38565b90612f30565b612e25612e048686612e38565b612e25612e118987612e38565b612e258d612e1f8c8b612e38565b90612e38565b90612e91565b9998505050505050505050565b600082612e475750600061202d565b82820282848281612e5457fe5b04146115eb5760405162461bcd60e51b815260040180806020018281038252602181526020018061309b6021913960400191505060405180910390fd5b6000828201838110156115eb576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600080805b8351811015612f2957612f1f848281518110612f0857fe5b602002602001015183612e9190919063ffffffff16565b9150600101612ef0565b5092915050565b6000808211612f86576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b818381612f8f57fe5b049392505050565b50805460018160011615610100020316600290046000825580601f10612fbd5750610803565b601f0160209004906000526020600020908101906108039190613085565b50805460008255906000526020600020908101906108039190613085565b828054600181600116156101000203166002900490600052602060002090601f01602090048101928261302f5760008555613075565b82601f1061304857805160ff1916838001178555613075565b82800160010185558215613075579182015b8281111561307557825182559160200191906001019061305a565b50613081929150613085565b5090565b5b80821115613081576000815560010161308656fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a2646970667358221220f3e4f3bfcc5de804f195d417a4d5dc3ccdd108c3b5e54ba6c0887e2bc419139364736f6c63430007060033",
649
+ "bytecode": "0x60c06040523480156200001157600080fd5b506040516200402b3803806200402b833981810160405260a08110156200003757600080fd5b508051602082015160408301516060840151608090940151929391929091908385806001600160a01b038116156200007457620000748162000120565b506001600160a01b038116620000c4576040805162461bcd60e51b815260206004820152601060248201526f5f676f7665726e616e6365207a65726f60801b604482015290519081900360640190fd5b50620000d081620001e3565b50606092831b6001600160601b03199081166080526002929092559182901b1660a0526007805460ff60a01b19166001600160a01b039092161515600160a01b0291909117905550620002079050565b600054600160a01b900460ff161562000180576040805162461bcd60e51b815260206004820152601460248201527f696e697469616c6973656420213d2066616c7365000000000000000000000000604482015290519081900360640190fd5b60008054600160a01b60ff60a01b19909116176001600160a01b0319166001600160a01b03831690811790915560408051918252517f9789733827840833afc031fb2ef9ab6894271f77bad2085687cf4ae5c7bee4db916020908290030190a150565b7f714f205b2abd25bef1d06a1af944e38c113fe6160375c4e1d6d5cf28848e771955565b60805160601c60a05160601c613ddc6200024f600039806108ea5280611aa55280611b645280611f5652508061255252806125b052806130e052806133e45250613ddc6000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c806374e6310e11610104578063aa89dfd4116100a2578063d873617111610071578063d87361711461089e578063e17f212e146108bb578063f5a98383146108c3578063f937d6ad146108cb576101da565b8063aa89dfd414610610578063ab674b22146106b4578063b00c0b76146106bc578063b06cbaf7146107df576101da565b806398dccfc2116100de57806398dccfc2146105855780639d6a890f146105a25780639dc950ab146105c8578063a5eb9c60146105f4576101da565b806374e6310e1461049f5780637ecfcfa3146105455780638e15c88314610568576101da565b80633de2cb1c1161017c5780635aa6e6751161014b5780635aa6e675146104415780635ff270791461044957806362354e031461047057806367fc402914610478576101da565b80633de2cb1c146103cd57806346538074146103f957806347ed51b1146104315780635267a15d14610439576101da565b80632ee96140116101b85780632ee9614014610381578063345705a4146103a057806338b5f869146103bd5780633a65d7b6146103c5576101da565b806309fcb400146101df57806311a7aaaa1461024c5780632b4faebb14610270575b600080fd5b6101fc600480360360208110156101f557600080fd5b50356108d3565b60408051602080825283518183015283519192839290830191858101910280838360005b83811015610238578181015183820152602001610220565b505050509050019250505060405180910390f35b610254610ae2565b604080516001600160a01b039092168252519081900360200190f35b6103266004803603606081101561028657600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102b557600080fd5b8201836020820111156102c757600080fd5b803590602001918460208302840111600160201b831117156102e857600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550610af1945050505050565b6040518080602001838152602001828103825284818151815260200191508051906020019060200280838360005b8381101561036c578181015183820152602001610354565b50505050905001935050505060405180910390f35b61039e6004803603602081101561039757600080fd5b5035610d4c565b005b61039e600480360360208110156103b657600080fd5b5035610d93565b610254610ea7565b61039e610eb6565b61039e600480360360408110156103e357600080fd5b506001600160a01b038135169060200135610f1e565b61041f6004803603602081101561040f57600080fd5b50356001600160a01b03166110f4565b60408051918252519081900360200190f35b61041f611106565b61025461110c565b610254611131565b61039e6004803603602081101561045f57600080fd5b50356001600160e01b0319166111c6565b61025461151b565b61039e6004803603602081101561048e57600080fd5b50356001600160e01b031916611526565b6104c6600480360360208110156104b557600080fd5b50356001600160e01b03191661160e565b6040518083815260200180602001828103825283818151815260200191508051906020019080838360005b838110156105095781810151838201526020016104f1565b50505050905090810190601f1680156105365780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b61039e6004803603604081101561055b57600080fd5b50803590602001356116b4565b61039e6004803603602081101561057e57600080fd5b50356119f8565b61041f6004803603602081101561059b57600080fd5b5035611c94565b61039e600480360360208110156105b857600080fd5b50356001600160a01b0316611ca6565b61039e600480360360408110156105de57600080fd5b506001600160a01b038135169060200135611d5f565b6105fc611e55565b604080519115158252519081900360200190f35b6101fc6004803603602081101561062657600080fd5b810190602081018135600160201b81111561064057600080fd5b82018360208201111561065257600080fd5b803590602001918460018302840111600160201b8311171561067357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611e65945050505050565b610254611f54565b61039e600480360360408110156106d257600080fd5b810190602081018135600160201b8111156106ec57600080fd5b8201836020820111156106fe57600080fd5b803590602001918460208302840111600160201b8311171561071f57600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295949360208101935035915050600160201b81111561076e57600080fd5b82018360208201111561078057600080fd5b803590602001918460208302840111600160201b831117156107a157600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550611f78945050505050565b610805600480360360208110156107f557600080fd5b50356001600160a01b031661201f565b604051808060200180602001838103835285818151815260200191508051906020019060200280838360005b83811015610849578181015183820152602001610831565b50505050905001838103825284818151815260200191508051906020019060200280838360005b83811015610888578181015183820152602001610870565b5050505090500194505050505060405180910390f35b61039e600480360360208110156108b457600080fd5b5035612354565b6105fc612486565b61039e612496565b610254612550565b600754606090600160a01b900460ff1615610a1a577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166309fcb400836040518263ffffffff1660e01b81526004018082815260200191505060006040518083038186803b15801561094c57600080fd5b505afa158015610960573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561098957600080fd5b8101908080516040519392919084600160201b8211156109a857600080fd5b9083019060208201858111156109bd57600080fd5b82518660208202830111600160201b821117156109d957600080fd5b82525081516020918201928201910280838360005b83811015610a065781810151838201526020016109ee565b505050509050016040525050509050610add565b60008281526003602052604090205480610a76576040805162461bcd60e51b8152602060048201526018602482015277119514d3c81a5b99195e081b9bdd081cdd5c1c1bdc9d195960421b604482015290519081900360640190fd5b60008381526005602090815260409182902080548351818402810184019094528084529091830182828015610ad457602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610ab6575b50505050509150505b919050565b6007546001600160a01b031681565b600754606090600090600160a01b900460ff1615610b42576040805162461bcd60e51b8152602060048201526009602482015268636f7079206d6f646560b81b604482015290519081900360640190fd5b600054600160b01b900460ff1680610b645750600054600160a81b900460ff16155b15610d3957610b71612574565b610b7a856125ab565b15610bbe576040805162461bcd60e51b815260206004820152600f60248201526e74727573746564206164647265737360881b604482015290519081900360640190fd5b610c4284600760009054906101000a90046001600160a01b03166001600160a01b031663e7c830d46040518163ffffffff1660e01b815260040160206040518083038186803b158015610c1057600080fd5b505afa158015610c24573d6000803e3d6000fd5b505050506040513d6020811015610c3a57600080fd5b505190612726565b6001600160a01b0386166000818152600460209081526040918290208490558151928352820183905280519293507f0c2fcef22ab22997ed46cd27f7f0aa308600145401a7a141065d61c5d87341d292918290030190a182518067ffffffffffffffff81118015610cb257600080fd5b50604051908082528060200260200182016040528015610cdc578160200160208202803683370190505b5092508415610d335760005b81811015610d3157610d0d87868381518110610d0057fe5b6020026020010151612789565b848281518110610d1957fe5b91151560209283029190910190910152600101610ce8565b505b50610d44565b610d4460003661290e565b935093915050565b600054600160b01b900460ff1680610d6e5750600054600160a81b900460ff16155b15610d8557610d7b612574565b6002819055610d90565b610d9060003661290e565b50565b600754600160a01b900460ff1615610dde576040805162461bcd60e51b8152602060048201526009602482015268636f7079206d6f646560b81b604482015290519081900360640190fd5b6007546001600160a01b03163314610e31576040805162461bcd60e51b815260206004820152601160248201527037b7363c90333a39b79036b0b730b3b2b960791b604482015290519081900360640190fd5b60008181526003602052604090205415610e92576040805162461bcd60e51b815260206004820152601760248201527f77686974656c69737420616c7265616479206578697374000000000000000000604482015290519081900360640190fd5b60025460009182526003602052604090912055565b6006546001600160a01b031681565b610ebe612a91565b600754600160a01b900460ff16610f0f576040805162461bcd60e51b815260206004820152601060248201526f6e6f7420696e20636f7079206d6f646560801b604482015290519081900360640190fd5b6007805460ff60a01b19169055565b600754600160a01b900460ff1615610f69576040805162461bcd60e51b8152602060048201526009602482015268636f7079206d6f646560b81b604482015290519081900360640190fd5b6001600160a01b038216600090815260046020526040902054829080158061100a5750600760009054906101000a90046001600160a01b03166001600160a01b031663e7c830d46040518163ffffffff1660e01b815260040160206040518083038186803b158015610fda57600080fd5b505afa158015610fee573d6000803e3d6000fd5b505050506040513d602081101561100457600080fd5b50518111155b61104b576040805162461bcd60e51b815260206004820152600d60248201526c1d9bdd195c8818da1a5b1b1959609a1b604482015290519081900360640190fd5b611054846125ab565b15611098576040805162461bcd60e51b815260206004820152600f60248201526e74727573746564206164647265737360881b604482015290519081900360640190fd5b60006110a48585612af0565b9050806110ed576040805162461bcd60e51b8152602060048201526012602482015271766f746520706f77657220746f6f206c6f7760701b604482015290519081900360640190fd5b5050505050565b60046020526000908152604090205481565b60025481565b7f714f205b2abd25bef1d06a1af944e38c113fe6160375c4e1d6d5cf28848e77195490565b60008054600160a81b900460ff16611154576000546001600160a01b03166111c1565b60076001609c1b016001600160a01b031663732524946040518163ffffffff1660e01b815260040160206040518083038186803b15801561119457600080fd5b505afa1580156111a8573d6000803e3d6000fd5b505050506040513d60208110156111be57600080fd5b50515b905090565b60408051630debfda360e41b8152336004820152905160076001609c1b019163debfda30916024808301926020929190829003018186803b15801561120a57600080fd5b505afa15801561121e573d6000803e3d6000fd5b505050506040513d602081101561123457600080fd5b5051611277576040805162461bcd60e51b815260206004820152600d60248201526c37b7363c9032bc32b1baba37b960991b604482015290519081900360640190fd5b6001600160e01b03198116600090815260016020526040902080546112e3576040805162461bcd60e51b815260206004820152601a60248201527f74696d656c6f636b3a20696e76616c69642073656c6563746f72000000000000604482015290519081900360640190fd5b8054421015611339576040805162461bcd60e51b815260206004820152601960248201527f74696d656c6f636b3a206e6f7420616c6c6f7765642079657400000000000000604482015290519081900360640190fd5b6000816001018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156113d35780601f106113a8576101008083540402835291602001916113d3565b820191906000526020600020905b8154815290600101906020018083116113b657829003601f168201915b5050506001600160e01b03198616600090815260016020819052604082208281559495509092506114079150830182613c2d565b50506000805460ff60b01b1916600160b01b178155604051825130918491819060208401908083835b6020831061144f5780518252601f199092019160209182019101611430565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d80600081146114b1576040519150601f19603f3d011682016040523d82523d6000602084013e6114b6565b606091505b50506000805460ff60b01b19169055604080516001600160e01b03198716815242602082015281519293507fa7326b57fc9cfe267aaea5e7f0b01757154d265620a0585819416ee9ddd2c438929081900390910190a161151581612d7a565b50505050565b60076001609c1b0181565b61152e612a91565b6001600160e01b03198116600090815260016020526040902054611599576040805162461bcd60e51b815260206004820152601a60248201527f74696d656c6f636b3a20696e76616c69642073656c6563746f72000000000000604482015290519081900360640190fd5b604080516001600160e01b03198316815242602082015281517f7735b2391c38a81419c513e30ca578db7158eadd7101511b23e221c654d19cf8929181900390910190a16001600160e01b0319811660009081526001602081905260408220828155919061160990830182613c2d565b505050565b600160208181526000928352604092839020805481840180548651600296821615610100026000190190911695909504601f810185900485028601850190965285855290949193929091908301828280156116aa5780601f1061167f576101008083540402835291602001916116aa565b820191906000526020600020905b81548152906001019060200180831161168d57829003601f168201915b5050505050905082565b600754600160a01b900460ff16156116ff576040805162461bcd60e51b8152602060048201526009602482015268636f7079206d6f646560b81b604482015290519081900360640190fd5b600054600160b01b900460ff16806117215750600054600160a81b900460ff16155b156119e95761172e612574565b6000828152600360209081526040808320849055600590915290208054821061175757506119e4565b6006546040805163d75f6d8160e01b81526004810186905290516000926001600160a01b03169163d75f6d81916024808301926020929190829003018186803b1580156117a357600080fd5b505afa1580156117b7573d6000803e3d6000fd5b505050506040513d60208110156117cd57600080fd5b505182546040805160208381028201810190925282815292935060009261183692859287919083018282801561182c57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831161180e575b5050505050612d97565b805190915084810360008167ffffffffffffffff8111801561185757600080fd5b50604051908082528060200260200182016040528015611881578160200160208202803683370190505b50905060005b828110156119d257600061189b868661300a565b90508781815481106118a957fe5b9060005260206000200160009054906101000a90046001600160a01b03168383815181106118d357fe5b60200260200101906001600160a01b031690816001600160a01b031681525050600185038110156119955787600186038154811061190d57fe5b9060005260206000200160009054906101000a90046001600160a01b031688828154811061193757fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555085600186038151811061197457fe5b602002602001015186828151811061198857fe5b6020026020010181815250505b8780548061199f57fe5b600082815260209020810160001990810180546001600160a01b0319169055908101909155949094019350600101611887565b506119dd818961306e565b5050505050505b6119f4565b6119f460003661290e565b5050565b611a00612a91565b600754600160a01b900460ff16611a51576040805162461bcd60e51b815260206004820152601060248201526f6e6f7420696e20636f7079206d6f646560801b604482015290519081900360640190fd5b60008181526003602052604090205415611aa3576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e4818dbdc1a595960921b604482015290519081900360640190fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166398dccfc2826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015611b0757600080fd5b505afa158015611b1b573d6000803e3d6000fd5b505050506040513d6020811015611b3157600080fd5b505160008281526003602052604080822092909255815162027f2d60ea1b81526004810184905291516001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016926309fcb400926024808301939192829003018186803b158015611ba757600080fd5b505afa158015611bbb573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015611be457600080fd5b8101908080516040519392919084600160201b821115611c0357600080fd5b908301906020820185811115611c1857600080fd5b82518660208202830111600160201b82111715611c3457600080fd5b82525081516020918201928201910280838360005b83811015611c61578181015183820152602001611c49565b505050509050016040525050506005600083815260200190815260200160002090805190602001906119f4929190613c71565b60036020526000908152604090205481565b600054600160a01b900460ff1615611cfc576040805162461bcd60e51b8152602060048201526014602482015273696e697469616c6973656420213d2066616c736560601b604482015290519081900360640190fd5b60008054600160a01b60ff60a01b19909116176001600160a01b0319166001600160a01b03831690811790915560408051918252517f9789733827840833afc031fb2ef9ab6894271f77bad2085687cf4ae5c7bee4db916020908290030190a150565b600754600160a01b900460ff1615611daa576040805162461bcd60e51b8152602060048201526009602482015268636f7079206d6f646560b81b604482015290519081900360640190fd5b611db3826125ab565b611dfa576040805162461bcd60e51b81526020600482015260136024820152726e6f742074727573746564206164647265737360681b604482015290519081900360640190fd5b611e048282612789565b6119f4576040805162461bcd60e51b815260206004820152601f60248201527f747275737465642061646472657373206e6f742077686974656c697374656400604482015290519081900360640190fd5b600754600160a01b900460ff1681565b600654604051630e848da360e41b81526020600482018181528451602484015284516060946000946001600160a01b039091169363e848da3093889390928392604490910191908501908083838b5b83811015611ecc578181015183820152602001611eb4565b50505050905090810190601f168015611ef95780820380516001836020036101000a031916815260200191505b509250505060206040518083038186803b158015611f1657600080fd5b505afa158015611f2a573d6000803e3d6000fd5b505050506040513d6020811015611f4057600080fd5b50519050611f4d816108d3565b9392505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b611f8061110c565b6001600160a01b0316336001600160a01b031614611fdc576040805162461bcd60e51b815260206004820152601460248201527337b7363c9030b2323932b9b9903ab83230ba32b960611b604482015290519081900360640190fd5b61201561201083836040518060400160405280600e81526020016d20b2323932b9b9aab83230ba32b960911b8152506131a6565b6132d3565b6119f482826132f7565b6007546060908190600160a01b900460ff161561206f576040805162461bcd60e51b8152602060048201526009602482015268636f7079206d6f646560b81b604482015290519081900360640190fd5b6001600160a01b03831660009081526004602052604090205483908015806121105750600760009054906101000a90046001600160a01b03166001600160a01b031663e7c830d46040518163ffffffff1660e01b815260040160206040518083038186803b1580156120e057600080fd5b505afa1580156120f4573d6000803e3d6000fd5b505050506040513d602081101561210a57600080fd5b50518111155b612151576040805162461bcd60e51b815260206004820152600d60248201526c1d9bdd195c8818da1a5b1b1959609a1b604482015290519081900360640190fd5b61215a856125ab565b1561219e576040805162461bcd60e51b815260206004820152600f60248201526e74727573746564206164647265737360881b604482015290519081900360640190fd5b600660009054906101000a90046001600160a01b03166001600160a01b031663798aac5b6040518163ffffffff1660e01b815260040160006040518083038186803b1580156121ec57600080fd5b505afa158015612200573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561222957600080fd5b8101908080516040519392919084600160201b82111561224857600080fd5b90830190602082018581111561225d57600080fd5b82518660208202830111600160201b8211171561227957600080fd5b82525081516020918201928201910280838360005b838110156122a657818101518382015260200161228e565b5050505090500160405250505093506000845190508067ffffffffffffffff811180156122d257600080fd5b506040519080825280602002602001820160405280156122fc578160200160208202803683370190505b50935060005b8181101561234b576123278787838151811061231a57fe5b6020026020010151612af0565b85828151811061233357fe5b91151560209283029190910190910152600101612302565b50505050915091565b600754600160a01b900460ff161561239f576040805162461bcd60e51b8152602060048201526009602482015268636f7079206d6f646560b81b604482015290519081900360640190fd5b6007546001600160a01b031633146123f2576040805162461bcd60e51b815260206004820152601160248201527037b7363c90333a39b79036b0b730b3b2b960791b604482015290519081900360640190fd5b600081815260056020908152604091829020805483518184028101840190945280845261245e939283018282801561245357602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311612435575b50505050508261306e565b600081815260056020526040812061247591613cd6565b600090815260036020526040812055565b600054600160a81b900460ff1681565b61249e612a91565b600054600160a81b900460ff16156124fd576040805162461bcd60e51b815260206004820152601a60248201527f616c726561647920696e2070726f64756374696f6e206d6f6465000000000000604482015290519081900360640190fd5b60008054600161ff0160a01b031916600160a81b1790556040805160076001609c1b01815290517f83af113638b5422f9e977cebc0aaf0eaf2188eb9a8baae7f9d46c42b33a1560c9181900360200190a1565b7f000000000000000000000000000000000000000000000000000000000000000081565b600054600160b01b900460ff16156125a15733301461258f57fe5b6000805460ff60b01b191690556125a9565b6125a9612a91565b565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ffacb84e6040518163ffffffff1660e01b815260040160006040518083038186803b15801561260757600080fd5b505afa15801561261b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561264457600080fd5b8101908080516040519392919084600160201b82111561266357600080fd5b90830190602082018581111561267857600080fd5b82518660208202830111600160201b8211171561269457600080fd5b82525081516020918201928201910280838360005b838110156126c15781810151838201526020016126a9565b50505050905001604052505050905060005b815181101561271c57836001600160a01b03168282815181106126f257fe5b60200260200101516001600160a01b0316141561271457600192505050610add565b6001016126d3565b5060009392505050565b600082820183811015612780576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b90505b92915050565b60008181526005602052604081208054825b818110156127e157856001600160a01b03168382815481106127b957fe5b6000918252602090912001546001600160a01b031614156127d9576127e1565b60010161279b565b818114156127f55760009350505050612783565b6040805160018082528183019092526000916020808301908036833701905050905083828154811061282357fe5b600091825260208220015482516001600160a01b0390911691839161284457fe5b60200260200101906001600160a01b031690816001600160a01b03168152505083600184038154811061287357fe5b9060005260206000200160009054906101000a90046001600160a01b031684838154811061289d57fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550838054806128d557fe5b600082815260209020810160001990810180546001600160a01b0319169055019055612901818761306e565b5060019695505050505050565b612916612a91565b600082359050600060076001609c1b016001600160a01b0316636221a54b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561295e57600080fd5b505afa158015612972573d6000803e3d6000fd5b505050506040513d602081101561298857600080fd5b505160408051808201825242830180825282516020601f89018190048102820181019094528781529394509290918281019190889088908190840183828082843760009201829052509390945250506001600160e01b03198616815260016020818152604090922084518155848301518051919450612a0c93928501920190613cf4565b509050507fed948300a3694aa01d4a6b258bfd664350193d770c0b51f8387277f6d83ea3b68382878760405180856001600160e01b0319168152602001848152602001806020018281038252848482818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a15050505050565b612a99611131565b6001600160a01b0316336001600160a01b0316146125a9576040805162461bcd60e51b815260206004820152600f60248201526e6f6e6c7920676f7665726e616e636560881b604482015290519081900360640190fd5b60008181526003602052604081205480612b4c576040805162461bcd60e51b8152602060048201526018602482015277119514d3c81a5b99195e081b9bdd081cdd5c1c1bdc9d195960421b604482015290519081900360640190fd5b6000838152600560205260408120805490916001820167ffffffffffffffff81118015612b7857600080fd5b50604051908082528060200260200182016040528015612ba2578160200160208202803683370190505b50905060005b82811015612c1d576000848281548110612bbe57fe5b6000918252602090912001546001600160a01b0390811691508916811415612bef5760019650505050505050612783565b80838381518110612bfc57fe5b6001600160a01b039092166020928302919091019091015250600101612ba8565b5086818381518110612c2b57fe5b60200260200101906001600160a01b031690816001600160a01b03168152505083821015612c955782546001810184556000848152602090200180546001600160a01b0319166001600160a01b038916179055612c88878761339e565b6001945050505050612783565b6000612ca18288613459565b905082811415612cb957600095505050505050612783565b60408051600180825281830190925260009160208083019080368337019050509050828281518110612ce757fe5b602002602001015181600081518110612cfc57fe5b60200260200101906001600160a01b031690816001600160a01b03168152505088858381548110612d2957fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550612d61818961306e565b612d6b898961339e565b50600198975050505050505050565b3d604051818101604052816000823e8215612d93578181f35b8181fd5b6060806060600080600080886001600160a01b0316638357d08c6040518163ffffffff1660e01b815260040160006040518083038186803b158015612ddb57600080fd5b505afa158015612def573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405260c0811015612e1857600080fd5b8101908080516040519392919084600160201b821115612e3757600080fd5b908301906020820185811115612e4c57600080fd5b82518660208202830111600160201b82111715612e6857600080fd5b82525081516020918201928201910280838360005b83811015612e95578181015183820152602001612e7d565b5050505090500160405260200180516040519392919084600160201b821115612ebd57600080fd5b908301906020820185811115612ed257600080fd5b82518660208202830111600160201b82111715612eee57600080fd5b82525081516020918201928201910280838360005b83811015612f1b578181015183820152602001612f03565b5050505090500160405260200180519060200190929190805190602001909291908051906020019092919080519060200190929190505050809650819750829850839950849a50859b505050505050506000612fdd8a6001600160a01b0316639edbf0076040518163ffffffff1660e01b815260040160206040518083038186803b158015612fa957600080fd5b505afa158015612fbd573d6000803e3d6000fd5b505050506040513d6020811015612fd357600080fd5b5051868b856134f1565b90506000612fee8888878d8761356c565b9050612ffb8282866136df565b9b9a5050505050505050505050565b6000806000905060008460008151811061302057fe5b6020026020010151905060005b8481101561306457600086828151811061304357fe5b6020026020010151905082811161305b578193508092505b5060010161302d565b5090949350505050565b60005b82518110156130dd577f33359f2769756ca8d0da4683f25ee440744d6f18bfb166dbfb59315a8c62b0168382815181106130a757fe5b60200260200101518360405180836001600160a01b031681526020018281526020019250505060405180910390a1600101613071565b507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166376794efb83836040518363ffffffff1660e01b81526004018080602001838152602001828103825284818151815260200191508051906020019060200280838360005b8381101561316457818101518382015260200161314c565b505050509050019350505050600060405180830381600087803b15801561318a57600080fd5b505af115801561319e573d6000803e3d6000fd5b505050505050565b600080826040516020018080602001828103825283818151815260200191508051906020019080838360005b838110156131ea5781810151838201526020016131d2565b50505050905090810190601f1680156132175780820380516001836020036101000a031916815260200191505b50925050506040516020818303038152906040528051906020012090506000805b865181101561327f5786818151811061324d57fe5b60200260200101518314156132775785818151811061326857fe5b6020026020010151915061327f565b600101613238565b506001600160a01b0381166132ca576040805162461bcd60e51b815260206004820152600c60248201526b61646472657373207a65726f60a01b604482015290519081900360640190fd5b95945050505050565b7f714f205b2abd25bef1d06a1af944e38c113fe6160375c4e1d6d5cf28848e771955565b61332682826040518060400160405280600c81526020016b4674736f526567697374727960a01b8152506131a6565b600660006101000a8154816001600160a01b0302191690836001600160a01b0316021790555061337a82826040518060400160405280600b81526020016a233a39b7a6b0b730b3b2b960a91b8152506131a6565b600780546001600160a01b0319166001600160a01b03929092169190911790555050565b604080516001600160a01b03841681526020810183905281517f66a8b13abe95391d1851f5bc319f3dde54ce8f2f40a5fe226aa3251d805832e3929181900390910190a17f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316639d986f9183836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050600060405180830381600087803b15801561318a57600080fd5b6006546040805163d75f6d8160e01b815260048101849052905160009283926001600160a01b039091169163d75f6d8191602480820192602092909190829003018186803b1580156134aa57600080fd5b505afa1580156134be573d6000803e3d6000fd5b505050506040513d60208110156134d457600080fd5b5051905060006134e48286612d97565b90506132ca81825161300a565b60606134fe858484613824565b90508361350a57613564565b60005b83518110156135625761354364e8d4a510008684848151811061352c57fe5b6020026020010151613a1c9092919063ffffffff16565b82828151811061354f57fe5b602090810291909101015260010161350d565b505b949350505050565b6060825167ffffffffffffffff8111801561358657600080fd5b506040519080825280602002602001820160405280156135b0578160200160208202803683370190505b50905060005b83518110156135e05760008282815181106135cd57fe5b60209081029190910101526001016135b6565b50836135eb576132ca565b60006135ff85670de0b6b3a7640000613b28565b905060005b87518110156136d457600088828151811061361b57fe5b6020026020010151905060006001600160a01b0316816001600160a01b0316146136cb57600061364c828888613824565b905060005b87518110156136c85760006136808b868151811061366b57fe5b60200260200101518785858151811061352c57fe5b90506136a88188848151811061369257fe5b602002602001015161272690919063ffffffff16565b8783815181106136b457fe5b602090810291909101015250600101613651565b50505b50600101613604565b505095945050505050565b606060006136ec84613b81565b905060006136f986613b81565b9050600080831161370b57600061370d565b845b9050600080831161371f576000613725565b81612710035b9050875167ffffffffffffffff8111801561373f57600080fd5b50604051908082528060200260200182016040528015613769578160200160208202803683370190505b50945060005b885181101561381857600082156137b6576137b38a838151811061378f57fe5b602002602001015164e8d4a5100002612710870285613a1c9092919063ffffffff16565b90505b600084156137f4576137f18a84815181106137cd57fe5b602002602001015164e8d4a5100002612710890287613a1c9092919063ffffffff16565b90505b80820188848151811061380357fe5b6020908102919091010152505060010161376f565b50505050509392505050565b6060836001600160a01b031663e587497e8460018651038151811061384557fe5b6020026020010151846040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561389457600080fd5b505af11580156138a8573d6000803e3d6000fd5b505050506040513d60208110156138be57600080fd5b5050604080516349e3c7e560e01b815260248101849052600481019182528451604482015284516001600160a01b038716926349e3c7e592879287929182916064909101906020868101910280838360005b83811015613928578181015183820152602001613910565b50505050905001935050505060006040518083038186803b15801561394c57600080fd5b505afa158015613960573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561398957600080fd5b8101908080516040519392919084600160201b8211156139a857600080fd5b9083019060208201858111156139bd57600080fd5b82518660208202830111600160201b821117156139d957600080fd5b82525081516020918201928201910280838360005b83811015613a065781810151838201526020016139ee565b5050505090500160405250505090509392505050565b6000808211613a65576040805162461bcd60e51b815260206004820152601060248201526f4469766973696f6e206279207a65726f60801b604482015290519081900360640190fd5b83613a7257506000611f4d565b83830283858281613a7f57fe5b041415613a9857828181613a8f57fe5b04915050611f4d565b6000838681613aa357fe5b0490506000848781613ab157fe5b0690506000858781613abf57fe5b0490506000868881613acd57fe5b069050613b1b613ae788613ae18685613b28565b90613bc6565b613b15613af48686613b28565b613b15613b018987613b28565b613b158d613b0f8c8b613b28565b90613b28565b90612726565b9998505050505050505050565b600082613b3757506000612783565b82820282848281613b4457fe5b04146127805760405162461bcd60e51b8152600401808060200182810382526021815260200180613d866021913960400191505060405180910390fd5b600080805b8351811015613bbf57613bb5848281518110613b9e57fe5b60200260200101518361272690919063ffffffff16565b9150600101613b86565b5092915050565b6000808211613c1c576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b818381613c2557fe5b049392505050565b50805460018160011615610100020316600290046000825580601f10613c535750610d90565b601f016020900490600052602060002090810190610d909190613d70565b828054828255906000526020600020908101928215613cc6579160200282015b82811115613cc657825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190613c91565b50613cd2929150613d70565b5090565b5080546000825590600052602060002090810190610d909190613d70565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282613d2a5760008555613cc6565b82601f10613d4357805160ff1916838001178555613cc6565b82800160010185558215613cc6579182015b82811115613cc6578251825591602001919060010190613d55565b5b80821115613cd25760008155600101613d7156fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a2646970667358221220a1a7062ef7daa770cd0d6093664282523d2e781c068252a3c2cac49f9e9f217a64736f6c63430007060033",
650
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101da5760003560e01c806374e6310e11610104578063aa89dfd4116100a2578063d873617111610071578063d87361711461089e578063e17f212e146108bb578063f5a98383146108c3578063f937d6ad146108cb576101da565b8063aa89dfd414610610578063ab674b22146106b4578063b00c0b76146106bc578063b06cbaf7146107df576101da565b806398dccfc2116100de57806398dccfc2146105855780639d6a890f146105a25780639dc950ab146105c8578063a5eb9c60146105f4576101da565b806374e6310e1461049f5780637ecfcfa3146105455780638e15c88314610568576101da565b80633de2cb1c1161017c5780635aa6e6751161014b5780635aa6e675146104415780635ff270791461044957806362354e031461047057806367fc402914610478576101da565b80633de2cb1c146103cd57806346538074146103f957806347ed51b1146104315780635267a15d14610439576101da565b80632ee96140116101b85780632ee9614014610381578063345705a4146103a057806338b5f869146103bd5780633a65d7b6146103c5576101da565b806309fcb400146101df57806311a7aaaa1461024c5780632b4faebb14610270575b600080fd5b6101fc600480360360208110156101f557600080fd5b50356108d3565b60408051602080825283518183015283519192839290830191858101910280838360005b83811015610238578181015183820152602001610220565b505050509050019250505060405180910390f35b610254610ae2565b604080516001600160a01b039092168252519081900360200190f35b6103266004803603606081101561028657600080fd5b6001600160a01b0382351691602081013591810190606081016040820135600160201b8111156102b557600080fd5b8201836020820111156102c757600080fd5b803590602001918460208302840111600160201b831117156102e857600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550610af1945050505050565b6040518080602001838152602001828103825284818151815260200191508051906020019060200280838360005b8381101561036c578181015183820152602001610354565b50505050905001935050505060405180910390f35b61039e6004803603602081101561039757600080fd5b5035610d4c565b005b61039e600480360360208110156103b657600080fd5b5035610d93565b610254610ea7565b61039e610eb6565b61039e600480360360408110156103e357600080fd5b506001600160a01b038135169060200135610f1e565b61041f6004803603602081101561040f57600080fd5b50356001600160a01b03166110f4565b60408051918252519081900360200190f35b61041f611106565b61025461110c565b610254611131565b61039e6004803603602081101561045f57600080fd5b50356001600160e01b0319166111c6565b61025461151b565b61039e6004803603602081101561048e57600080fd5b50356001600160e01b031916611526565b6104c6600480360360208110156104b557600080fd5b50356001600160e01b03191661160e565b6040518083815260200180602001828103825283818151815260200191508051906020019080838360005b838110156105095781810151838201526020016104f1565b50505050905090810190601f1680156105365780820380516001836020036101000a031916815260200191505b50935050505060405180910390f35b61039e6004803603604081101561055b57600080fd5b50803590602001356116b4565b61039e6004803603602081101561057e57600080fd5b50356119f8565b61041f6004803603602081101561059b57600080fd5b5035611c94565b61039e600480360360208110156105b857600080fd5b50356001600160a01b0316611ca6565b61039e600480360360408110156105de57600080fd5b506001600160a01b038135169060200135611d5f565b6105fc611e55565b604080519115158252519081900360200190f35b6101fc6004803603602081101561062657600080fd5b810190602081018135600160201b81111561064057600080fd5b82018360208201111561065257600080fd5b803590602001918460018302840111600160201b8311171561067357600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550611e65945050505050565b610254611f54565b61039e600480360360408110156106d257600080fd5b810190602081018135600160201b8111156106ec57600080fd5b8201836020820111156106fe57600080fd5b803590602001918460208302840111600160201b8311171561071f57600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295949360208101935035915050600160201b81111561076e57600080fd5b82018360208201111561078057600080fd5b803590602001918460208302840111600160201b831117156107a157600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550611f78945050505050565b610805600480360360208110156107f557600080fd5b50356001600160a01b031661201f565b604051808060200180602001838103835285818151815260200191508051906020019060200280838360005b83811015610849578181015183820152602001610831565b50505050905001838103825284818151815260200191508051906020019060200280838360005b83811015610888578181015183820152602001610870565b5050505090500194505050505060405180910390f35b61039e600480360360208110156108b457600080fd5b5035612354565b6105fc612486565b61039e612496565b610254612550565b600754606090600160a01b900460ff1615610a1a577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166309fcb400836040518263ffffffff1660e01b81526004018082815260200191505060006040518083038186803b15801561094c57600080fd5b505afa158015610960573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561098957600080fd5b8101908080516040519392919084600160201b8211156109a857600080fd5b9083019060208201858111156109bd57600080fd5b82518660208202830111600160201b821117156109d957600080fd5b82525081516020918201928201910280838360005b83811015610a065781810151838201526020016109ee565b505050509050016040525050509050610add565b60008281526003602052604090205480610a76576040805162461bcd60e51b8152602060048201526018602482015277119514d3c81a5b99195e081b9bdd081cdd5c1c1bdc9d195960421b604482015290519081900360640190fd5b60008381526005602090815260409182902080548351818402810184019094528084529091830182828015610ad457602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610ab6575b50505050509150505b919050565b6007546001600160a01b031681565b600754606090600090600160a01b900460ff1615610b42576040805162461bcd60e51b8152602060048201526009602482015268636f7079206d6f646560b81b604482015290519081900360640190fd5b600054600160b01b900460ff1680610b645750600054600160a81b900460ff16155b15610d3957610b71612574565b610b7a856125ab565b15610bbe576040805162461bcd60e51b815260206004820152600f60248201526e74727573746564206164647265737360881b604482015290519081900360640190fd5b610c4284600760009054906101000a90046001600160a01b03166001600160a01b031663e7c830d46040518163ffffffff1660e01b815260040160206040518083038186803b158015610c1057600080fd5b505afa158015610c24573d6000803e3d6000fd5b505050506040513d6020811015610c3a57600080fd5b505190612726565b6001600160a01b0386166000818152600460209081526040918290208490558151928352820183905280519293507f0c2fcef22ab22997ed46cd27f7f0aa308600145401a7a141065d61c5d87341d292918290030190a182518067ffffffffffffffff81118015610cb257600080fd5b50604051908082528060200260200182016040528015610cdc578160200160208202803683370190505b5092508415610d335760005b81811015610d3157610d0d87868381518110610d0057fe5b6020026020010151612789565b848281518110610d1957fe5b91151560209283029190910190910152600101610ce8565b505b50610d44565b610d4460003661290e565b935093915050565b600054600160b01b900460ff1680610d6e5750600054600160a81b900460ff16155b15610d8557610d7b612574565b6002819055610d90565b610d9060003661290e565b50565b600754600160a01b900460ff1615610dde576040805162461bcd60e51b8152602060048201526009602482015268636f7079206d6f646560b81b604482015290519081900360640190fd5b6007546001600160a01b03163314610e31576040805162461bcd60e51b815260206004820152601160248201527037b7363c90333a39b79036b0b730b3b2b960791b604482015290519081900360640190fd5b60008181526003602052604090205415610e92576040805162461bcd60e51b815260206004820152601760248201527f77686974656c69737420616c7265616479206578697374000000000000000000604482015290519081900360640190fd5b60025460009182526003602052604090912055565b6006546001600160a01b031681565b610ebe612a91565b600754600160a01b900460ff16610f0f576040805162461bcd60e51b815260206004820152601060248201526f6e6f7420696e20636f7079206d6f646560801b604482015290519081900360640190fd5b6007805460ff60a01b19169055565b600754600160a01b900460ff1615610f69576040805162461bcd60e51b8152602060048201526009602482015268636f7079206d6f646560b81b604482015290519081900360640190fd5b6001600160a01b038216600090815260046020526040902054829080158061100a5750600760009054906101000a90046001600160a01b03166001600160a01b031663e7c830d46040518163ffffffff1660e01b815260040160206040518083038186803b158015610fda57600080fd5b505afa158015610fee573d6000803e3d6000fd5b505050506040513d602081101561100457600080fd5b50518111155b61104b576040805162461bcd60e51b815260206004820152600d60248201526c1d9bdd195c8818da1a5b1b1959609a1b604482015290519081900360640190fd5b611054846125ab565b15611098576040805162461bcd60e51b815260206004820152600f60248201526e74727573746564206164647265737360881b604482015290519081900360640190fd5b60006110a48585612af0565b9050806110ed576040805162461bcd60e51b8152602060048201526012602482015271766f746520706f77657220746f6f206c6f7760701b604482015290519081900360640190fd5b5050505050565b60046020526000908152604090205481565b60025481565b7f714f205b2abd25bef1d06a1af944e38c113fe6160375c4e1d6d5cf28848e77195490565b60008054600160a81b900460ff16611154576000546001600160a01b03166111c1565b60076001609c1b016001600160a01b031663732524946040518163ffffffff1660e01b815260040160206040518083038186803b15801561119457600080fd5b505afa1580156111a8573d6000803e3d6000fd5b505050506040513d60208110156111be57600080fd5b50515b905090565b60408051630debfda360e41b8152336004820152905160076001609c1b019163debfda30916024808301926020929190829003018186803b15801561120a57600080fd5b505afa15801561121e573d6000803e3d6000fd5b505050506040513d602081101561123457600080fd5b5051611277576040805162461bcd60e51b815260206004820152600d60248201526c37b7363c9032bc32b1baba37b960991b604482015290519081900360640190fd5b6001600160e01b03198116600090815260016020526040902080546112e3576040805162461bcd60e51b815260206004820152601a60248201527f74696d656c6f636b3a20696e76616c69642073656c6563746f72000000000000604482015290519081900360640190fd5b8054421015611339576040805162461bcd60e51b815260206004820152601960248201527f74696d656c6f636b3a206e6f7420616c6c6f7765642079657400000000000000604482015290519081900360640190fd5b6000816001018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156113d35780601f106113a8576101008083540402835291602001916113d3565b820191906000526020600020905b8154815290600101906020018083116113b657829003601f168201915b5050506001600160e01b03198616600090815260016020819052604082208281559495509092506114079150830182613c2d565b50506000805460ff60b01b1916600160b01b178155604051825130918491819060208401908083835b6020831061144f5780518252601f199092019160209182019101611430565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d80600081146114b1576040519150601f19603f3d011682016040523d82523d6000602084013e6114b6565b606091505b50506000805460ff60b01b19169055604080516001600160e01b03198716815242602082015281519293507fa7326b57fc9cfe267aaea5e7f0b01757154d265620a0585819416ee9ddd2c438929081900390910190a161151581612d7a565b50505050565b60076001609c1b0181565b61152e612a91565b6001600160e01b03198116600090815260016020526040902054611599576040805162461bcd60e51b815260206004820152601a60248201527f74696d656c6f636b3a20696e76616c69642073656c6563746f72000000000000604482015290519081900360640190fd5b604080516001600160e01b03198316815242602082015281517f7735b2391c38a81419c513e30ca578db7158eadd7101511b23e221c654d19cf8929181900390910190a16001600160e01b0319811660009081526001602081905260408220828155919061160990830182613c2d565b505050565b600160208181526000928352604092839020805481840180548651600296821615610100026000190190911695909504601f810185900485028601850190965285855290949193929091908301828280156116aa5780601f1061167f576101008083540402835291602001916116aa565b820191906000526020600020905b81548152906001019060200180831161168d57829003601f168201915b5050505050905082565b600754600160a01b900460ff16156116ff576040805162461bcd60e51b8152602060048201526009602482015268636f7079206d6f646560b81b604482015290519081900360640190fd5b600054600160b01b900460ff16806117215750600054600160a81b900460ff16155b156119e95761172e612574565b6000828152600360209081526040808320849055600590915290208054821061175757506119e4565b6006546040805163d75f6d8160e01b81526004810186905290516000926001600160a01b03169163d75f6d81916024808301926020929190829003018186803b1580156117a357600080fd5b505afa1580156117b7573d6000803e3d6000fd5b505050506040513d60208110156117cd57600080fd5b505182546040805160208381028201810190925282815292935060009261183692859287919083018282801561182c57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831161180e575b5050505050612d97565b805190915084810360008167ffffffffffffffff8111801561185757600080fd5b50604051908082528060200260200182016040528015611881578160200160208202803683370190505b50905060005b828110156119d257600061189b868661300a565b90508781815481106118a957fe5b9060005260206000200160009054906101000a90046001600160a01b03168383815181106118d357fe5b60200260200101906001600160a01b031690816001600160a01b031681525050600185038110156119955787600186038154811061190d57fe5b9060005260206000200160009054906101000a90046001600160a01b031688828154811061193757fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555085600186038151811061197457fe5b602002602001015186828151811061198857fe5b6020026020010181815250505b8780548061199f57fe5b600082815260209020810160001990810180546001600160a01b0319169055908101909155949094019350600101611887565b506119dd818961306e565b5050505050505b6119f4565b6119f460003661290e565b5050565b611a00612a91565b600754600160a01b900460ff16611a51576040805162461bcd60e51b815260206004820152601060248201526f6e6f7420696e20636f7079206d6f646560801b604482015290519081900360640190fd5b60008181526003602052604090205415611aa3576040805162461bcd60e51b815260206004820152600e60248201526d185b1c9958591e4818dbdc1a595960921b604482015290519081900360640190fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166398dccfc2826040518263ffffffff1660e01b81526004018082815260200191505060206040518083038186803b158015611b0757600080fd5b505afa158015611b1b573d6000803e3d6000fd5b505050506040513d6020811015611b3157600080fd5b505160008281526003602052604080822092909255815162027f2d60ea1b81526004810184905291516001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016926309fcb400926024808301939192829003018186803b158015611ba757600080fd5b505afa158015611bbb573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015611be457600080fd5b8101908080516040519392919084600160201b821115611c0357600080fd5b908301906020820185811115611c1857600080fd5b82518660208202830111600160201b82111715611c3457600080fd5b82525081516020918201928201910280838360005b83811015611c61578181015183820152602001611c49565b505050509050016040525050506005600083815260200190815260200160002090805190602001906119f4929190613c71565b60036020526000908152604090205481565b600054600160a01b900460ff1615611cfc576040805162461bcd60e51b8152602060048201526014602482015273696e697469616c6973656420213d2066616c736560601b604482015290519081900360640190fd5b60008054600160a01b60ff60a01b19909116176001600160a01b0319166001600160a01b03831690811790915560408051918252517f9789733827840833afc031fb2ef9ab6894271f77bad2085687cf4ae5c7bee4db916020908290030190a150565b600754600160a01b900460ff1615611daa576040805162461bcd60e51b8152602060048201526009602482015268636f7079206d6f646560b81b604482015290519081900360640190fd5b611db3826125ab565b611dfa576040805162461bcd60e51b81526020600482015260136024820152726e6f742074727573746564206164647265737360681b604482015290519081900360640190fd5b611e048282612789565b6119f4576040805162461bcd60e51b815260206004820152601f60248201527f747275737465642061646472657373206e6f742077686974656c697374656400604482015290519081900360640190fd5b600754600160a01b900460ff1681565b600654604051630e848da360e41b81526020600482018181528451602484015284516060946000946001600160a01b039091169363e848da3093889390928392604490910191908501908083838b5b83811015611ecc578181015183820152602001611eb4565b50505050905090810190601f168015611ef95780820380516001836020036101000a031916815260200191505b509250505060206040518083038186803b158015611f1657600080fd5b505afa158015611f2a573d6000803e3d6000fd5b505050506040513d6020811015611f4057600080fd5b50519050611f4d816108d3565b9392505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b611f8061110c565b6001600160a01b0316336001600160a01b031614611fdc576040805162461bcd60e51b815260206004820152601460248201527337b7363c9030b2323932b9b9903ab83230ba32b960611b604482015290519081900360640190fd5b61201561201083836040518060400160405280600e81526020016d20b2323932b9b9aab83230ba32b960911b8152506131a6565b6132d3565b6119f482826132f7565b6007546060908190600160a01b900460ff161561206f576040805162461bcd60e51b8152602060048201526009602482015268636f7079206d6f646560b81b604482015290519081900360640190fd5b6001600160a01b03831660009081526004602052604090205483908015806121105750600760009054906101000a90046001600160a01b03166001600160a01b031663e7c830d46040518163ffffffff1660e01b815260040160206040518083038186803b1580156120e057600080fd5b505afa1580156120f4573d6000803e3d6000fd5b505050506040513d602081101561210a57600080fd5b50518111155b612151576040805162461bcd60e51b815260206004820152600d60248201526c1d9bdd195c8818da1a5b1b1959609a1b604482015290519081900360640190fd5b61215a856125ab565b1561219e576040805162461bcd60e51b815260206004820152600f60248201526e74727573746564206164647265737360881b604482015290519081900360640190fd5b600660009054906101000a90046001600160a01b03166001600160a01b031663798aac5b6040518163ffffffff1660e01b815260040160006040518083038186803b1580156121ec57600080fd5b505afa158015612200573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561222957600080fd5b8101908080516040519392919084600160201b82111561224857600080fd5b90830190602082018581111561225d57600080fd5b82518660208202830111600160201b8211171561227957600080fd5b82525081516020918201928201910280838360005b838110156122a657818101518382015260200161228e565b5050505090500160405250505093506000845190508067ffffffffffffffff811180156122d257600080fd5b506040519080825280602002602001820160405280156122fc578160200160208202803683370190505b50935060005b8181101561234b576123278787838151811061231a57fe5b6020026020010151612af0565b85828151811061233357fe5b91151560209283029190910190910152600101612302565b50505050915091565b600754600160a01b900460ff161561239f576040805162461bcd60e51b8152602060048201526009602482015268636f7079206d6f646560b81b604482015290519081900360640190fd5b6007546001600160a01b031633146123f2576040805162461bcd60e51b815260206004820152601160248201527037b7363c90333a39b79036b0b730b3b2b960791b604482015290519081900360640190fd5b600081815260056020908152604091829020805483518184028101840190945280845261245e939283018282801561245357602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311612435575b50505050508261306e565b600081815260056020526040812061247591613cd6565b600090815260036020526040812055565b600054600160a81b900460ff1681565b61249e612a91565b600054600160a81b900460ff16156124fd576040805162461bcd60e51b815260206004820152601a60248201527f616c726561647920696e2070726f64756374696f6e206d6f6465000000000000604482015290519081900360640190fd5b60008054600161ff0160a01b031916600160a81b1790556040805160076001609c1b01815290517f83af113638b5422f9e977cebc0aaf0eaf2188eb9a8baae7f9d46c42b33a1560c9181900360200190a1565b7f000000000000000000000000000000000000000000000000000000000000000081565b600054600160b01b900460ff16156125a15733301461258f57fe5b6000805460ff60b01b191690556125a9565b6125a9612a91565b565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ffacb84e6040518163ffffffff1660e01b815260040160006040518083038186803b15801561260757600080fd5b505afa15801561261b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561264457600080fd5b8101908080516040519392919084600160201b82111561266357600080fd5b90830190602082018581111561267857600080fd5b82518660208202830111600160201b8211171561269457600080fd5b82525081516020918201928201910280838360005b838110156126c15781810151838201526020016126a9565b50505050905001604052505050905060005b815181101561271c57836001600160a01b03168282815181106126f257fe5b60200260200101516001600160a01b0316141561271457600192505050610add565b6001016126d3565b5060009392505050565b600082820183811015612780576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b90505b92915050565b60008181526005602052604081208054825b818110156127e157856001600160a01b03168382815481106127b957fe5b6000918252602090912001546001600160a01b031614156127d9576127e1565b60010161279b565b818114156127f55760009350505050612783565b6040805160018082528183019092526000916020808301908036833701905050905083828154811061282357fe5b600091825260208220015482516001600160a01b0390911691839161284457fe5b60200260200101906001600160a01b031690816001600160a01b03168152505083600184038154811061287357fe5b9060005260206000200160009054906101000a90046001600160a01b031684838154811061289d57fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550838054806128d557fe5b600082815260209020810160001990810180546001600160a01b0319169055019055612901818761306e565b5060019695505050505050565b612916612a91565b600082359050600060076001609c1b016001600160a01b0316636221a54b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561295e57600080fd5b505afa158015612972573d6000803e3d6000fd5b505050506040513d602081101561298857600080fd5b505160408051808201825242830180825282516020601f89018190048102820181019094528781529394509290918281019190889088908190840183828082843760009201829052509390945250506001600160e01b03198616815260016020818152604090922084518155848301518051919450612a0c93928501920190613cf4565b509050507fed948300a3694aa01d4a6b258bfd664350193d770c0b51f8387277f6d83ea3b68382878760405180856001600160e01b0319168152602001848152602001806020018281038252848482818152602001925080828437600083820152604051601f909101601f191690920182900397509095505050505050a15050505050565b612a99611131565b6001600160a01b0316336001600160a01b0316146125a9576040805162461bcd60e51b815260206004820152600f60248201526e6f6e6c7920676f7665726e616e636560881b604482015290519081900360640190fd5b60008181526003602052604081205480612b4c576040805162461bcd60e51b8152602060048201526018602482015277119514d3c81a5b99195e081b9bdd081cdd5c1c1bdc9d195960421b604482015290519081900360640190fd5b6000838152600560205260408120805490916001820167ffffffffffffffff81118015612b7857600080fd5b50604051908082528060200260200182016040528015612ba2578160200160208202803683370190505b50905060005b82811015612c1d576000848281548110612bbe57fe5b6000918252602090912001546001600160a01b0390811691508916811415612bef5760019650505050505050612783565b80838381518110612bfc57fe5b6001600160a01b039092166020928302919091019091015250600101612ba8565b5086818381518110612c2b57fe5b60200260200101906001600160a01b031690816001600160a01b03168152505083821015612c955782546001810184556000848152602090200180546001600160a01b0319166001600160a01b038916179055612c88878761339e565b6001945050505050612783565b6000612ca18288613459565b905082811415612cb957600095505050505050612783565b60408051600180825281830190925260009160208083019080368337019050509050828281518110612ce757fe5b602002602001015181600081518110612cfc57fe5b60200260200101906001600160a01b031690816001600160a01b03168152505088858381548110612d2957fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550612d61818961306e565b612d6b898961339e565b50600198975050505050505050565b3d604051818101604052816000823e8215612d93578181f35b8181fd5b6060806060600080600080886001600160a01b0316638357d08c6040518163ffffffff1660e01b815260040160006040518083038186803b158015612ddb57600080fd5b505afa158015612def573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405260c0811015612e1857600080fd5b8101908080516040519392919084600160201b821115612e3757600080fd5b908301906020820185811115612e4c57600080fd5b82518660208202830111600160201b82111715612e6857600080fd5b82525081516020918201928201910280838360005b83811015612e95578181015183820152602001612e7d565b5050505090500160405260200180516040519392919084600160201b821115612ebd57600080fd5b908301906020820185811115612ed257600080fd5b82518660208202830111600160201b82111715612eee57600080fd5b82525081516020918201928201910280838360005b83811015612f1b578181015183820152602001612f03565b5050505090500160405260200180519060200190929190805190602001909291908051906020019092919080519060200190929190505050809650819750829850839950849a50859b505050505050506000612fdd8a6001600160a01b0316639edbf0076040518163ffffffff1660e01b815260040160206040518083038186803b158015612fa957600080fd5b505afa158015612fbd573d6000803e3d6000fd5b505050506040513d6020811015612fd357600080fd5b5051868b856134f1565b90506000612fee8888878d8761356c565b9050612ffb8282866136df565b9b9a5050505050505050505050565b6000806000905060008460008151811061302057fe5b6020026020010151905060005b8481101561306457600086828151811061304357fe5b6020026020010151905082811161305b578193508092505b5060010161302d565b5090949350505050565b60005b82518110156130dd577f33359f2769756ca8d0da4683f25ee440744d6f18bfb166dbfb59315a8c62b0168382815181106130a757fe5b60200260200101518360405180836001600160a01b031681526020018281526020019250505060405180910390a1600101613071565b507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166376794efb83836040518363ffffffff1660e01b81526004018080602001838152602001828103825284818151815260200191508051906020019060200280838360005b8381101561316457818101518382015260200161314c565b505050509050019350505050600060405180830381600087803b15801561318a57600080fd5b505af115801561319e573d6000803e3d6000fd5b505050505050565b600080826040516020018080602001828103825283818151815260200191508051906020019080838360005b838110156131ea5781810151838201526020016131d2565b50505050905090810190601f1680156132175780820380516001836020036101000a031916815260200191505b50925050506040516020818303038152906040528051906020012090506000805b865181101561327f5786818151811061324d57fe5b60200260200101518314156132775785818151811061326857fe5b6020026020010151915061327f565b600101613238565b506001600160a01b0381166132ca576040805162461bcd60e51b815260206004820152600c60248201526b61646472657373207a65726f60a01b604482015290519081900360640190fd5b95945050505050565b7f714f205b2abd25bef1d06a1af944e38c113fe6160375c4e1d6d5cf28848e771955565b61332682826040518060400160405280600c81526020016b4674736f526567697374727960a01b8152506131a6565b600660006101000a8154816001600160a01b0302191690836001600160a01b0316021790555061337a82826040518060400160405280600b81526020016a233a39b7a6b0b730b3b2b960a91b8152506131a6565b600780546001600160a01b0319166001600160a01b03929092169190911790555050565b604080516001600160a01b03841681526020810183905281517f66a8b13abe95391d1851f5bc319f3dde54ce8f2f40a5fe226aa3251d805832e3929181900390910190a17f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316639d986f9183836040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050600060405180830381600087803b15801561318a57600080fd5b6006546040805163d75f6d8160e01b815260048101849052905160009283926001600160a01b039091169163d75f6d8191602480820192602092909190829003018186803b1580156134aa57600080fd5b505afa1580156134be573d6000803e3d6000fd5b505050506040513d60208110156134d457600080fd5b5051905060006134e48286612d97565b90506132ca81825161300a565b60606134fe858484613824565b90508361350a57613564565b60005b83518110156135625761354364e8d4a510008684848151811061352c57fe5b6020026020010151613a1c9092919063ffffffff16565b82828151811061354f57fe5b602090810291909101015260010161350d565b505b949350505050565b6060825167ffffffffffffffff8111801561358657600080fd5b506040519080825280602002602001820160405280156135b0578160200160208202803683370190505b50905060005b83518110156135e05760008282815181106135cd57fe5b60209081029190910101526001016135b6565b50836135eb576132ca565b60006135ff85670de0b6b3a7640000613b28565b905060005b87518110156136d457600088828151811061361b57fe5b6020026020010151905060006001600160a01b0316816001600160a01b0316146136cb57600061364c828888613824565b905060005b87518110156136c85760006136808b868151811061366b57fe5b60200260200101518785858151811061352c57fe5b90506136a88188848151811061369257fe5b602002602001015161272690919063ffffffff16565b8783815181106136b457fe5b602090810291909101015250600101613651565b50505b50600101613604565b505095945050505050565b606060006136ec84613b81565b905060006136f986613b81565b9050600080831161370b57600061370d565b845b9050600080831161371f576000613725565b81612710035b9050875167ffffffffffffffff8111801561373f57600080fd5b50604051908082528060200260200182016040528015613769578160200160208202803683370190505b50945060005b885181101561381857600082156137b6576137b38a838151811061378f57fe5b602002602001015164e8d4a5100002612710870285613a1c9092919063ffffffff16565b90505b600084156137f4576137f18a84815181106137cd57fe5b602002602001015164e8d4a5100002612710890287613a1c9092919063ffffffff16565b90505b80820188848151811061380357fe5b6020908102919091010152505060010161376f565b50505050509392505050565b6060836001600160a01b031663e587497e8460018651038151811061384557fe5b6020026020010151846040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050602060405180830381600087803b15801561389457600080fd5b505af11580156138a8573d6000803e3d6000fd5b505050506040513d60208110156138be57600080fd5b5050604080516349e3c7e560e01b815260248101849052600481019182528451604482015284516001600160a01b038716926349e3c7e592879287929182916064909101906020868101910280838360005b83811015613928578181015183820152602001613910565b50505050905001935050505060006040518083038186803b15801561394c57600080fd5b505afa158015613960573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052602081101561398957600080fd5b8101908080516040519392919084600160201b8211156139a857600080fd5b9083019060208201858111156139bd57600080fd5b82518660208202830111600160201b821117156139d957600080fd5b82525081516020918201928201910280838360005b83811015613a065781810151838201526020016139ee565b5050505090500160405250505090509392505050565b6000808211613a65576040805162461bcd60e51b815260206004820152601060248201526f4469766973696f6e206279207a65726f60801b604482015290519081900360640190fd5b83613a7257506000611f4d565b83830283858281613a7f57fe5b041415613a9857828181613a8f57fe5b04915050611f4d565b6000838681613aa357fe5b0490506000848781613ab157fe5b0690506000858781613abf57fe5b0490506000868881613acd57fe5b069050613b1b613ae788613ae18685613b28565b90613bc6565b613b15613af48686613b28565b613b15613b018987613b28565b613b158d613b0f8c8b613b28565b90613b28565b90612726565b9998505050505050505050565b600082613b3757506000612783565b82820282848281613b4457fe5b04146127805760405162461bcd60e51b8152600401808060200182810382526021815260200180613d866021913960400191505060405180910390fd5b600080805b8351811015613bbf57613bb5848281518110613b9e57fe5b60200260200101518361272690919063ffffffff16565b9150600101613b86565b5092915050565b6000808211613c1c576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b818381613c2557fe5b049392505050565b50805460018160011615610100020316600290046000825580601f10613c535750610d90565b601f016020900490600052602060002090810190610d909190613d70565b828054828255906000526020600020908101928215613cc6579160200282015b82811115613cc657825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190613c91565b50613cd2929150613d70565b5090565b5080546000825590600052602060002090810190610d909190613d70565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282613d2a5760008555613cc6565b82601f10613d4357805160ff1916838001178555613cc6565b82800160010185558215613cc6579182015b82811115613cc6578251825591602001919060010190613d55565b5b80821115613cd25760008155600101613d7156fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a2646970667358221220a1a7062ef7daa770cd0d6093664282523d2e781c068252a3c2cac49f9e9f217a64736f6c63430007060033",
528
651
  "linkReferences": {},
529
652
  "deployedLinkReferences": {}
530
653
  }
@@ -3,6 +3,25 @@
3
3
  "contractName": "IIVoterWhitelister",
4
4
  "sourceName": "contracts/utils/interface/IIVoterWhitelister.sol",
5
5
  "abi": [
6
+ {
7
+ "anonymous": false,
8
+ "inputs": [
9
+ {
10
+ "indexed": false,
11
+ "internalType": "address",
12
+ "name": "voter",
13
+ "type": "address"
14
+ },
15
+ {
16
+ "indexed": false,
17
+ "internalType": "uint256",
18
+ "name": "untilRewardEpoch",
19
+ "type": "uint256"
20
+ }
21
+ ],
22
+ "name": "VoterChilled",
23
+ "type": "event"
24
+ },
6
25
  {
7
26
  "anonymous": false,
8
27
  "inputs": [
@@ -54,6 +73,59 @@
54
73
  "stateMutability": "nonpayable",
55
74
  "type": "function"
56
75
  },
76
+ {
77
+ "inputs": [
78
+ {
79
+ "internalType": "address",
80
+ "name": "_voter",
81
+ "type": "address"
82
+ },
83
+ {
84
+ "internalType": "uint256",
85
+ "name": "_noOfRewardEpochs",
86
+ "type": "uint256"
87
+ },
88
+ {
89
+ "internalType": "uint256[]",
90
+ "name": "_ftsoIndices",
91
+ "type": "uint256[]"
92
+ }
93
+ ],
94
+ "name": "chillVoter",
95
+ "outputs": [
96
+ {
97
+ "internalType": "bool[]",
98
+ "name": "_removed",
99
+ "type": "bool[]"
100
+ },
101
+ {
102
+ "internalType": "uint256",
103
+ "name": "_untilRewardEpoch",
104
+ "type": "uint256"
105
+ }
106
+ ],
107
+ "stateMutability": "nonpayable",
108
+ "type": "function"
109
+ },
110
+ {
111
+ "inputs": [
112
+ {
113
+ "internalType": "address",
114
+ "name": "_voter",
115
+ "type": "address"
116
+ }
117
+ ],
118
+ "name": "chilledUntilRewardEpoch",
119
+ "outputs": [
120
+ {
121
+ "internalType": "uint256",
122
+ "name": "",
123
+ "type": "uint256"
124
+ }
125
+ ],
126
+ "stateMutability": "view",
127
+ "type": "function"
128
+ },
57
129
  {
58
130
  "inputs": [],
59
131
  "name": "defaultMaxVotersForFtso",
@@ -29,17 +29,25 @@ export declare const contractAddresses: {
29
29
  FtsoDoge: string;
30
30
  FtsoAda: string;
31
31
  FtsoAlgo: string;
32
- FtsoBch: string;
33
- FtsoDgb: string;
34
32
  FtsoBtc: string;
35
33
  FtsoEth: string;
36
34
  FtsoFil: string;
37
35
  FtsoWnat: string;
36
+ FtsoArb: string;
37
+ FtsoAvax: string;
38
+ FtsoBnb: string;
39
+ FtsoMatic: string;
40
+ FtsoSol: string;
41
+ FtsoUsdc: string;
42
+ FtsoUsdt: string;
43
+ FtsoXdc: string;
38
44
  FlareAssetRegistry: string;
45
+ WNatRegistryProvider: string;
39
46
  ValidatorRewardManager: string;
40
47
  PollingFoundation: string;
41
48
  ClaimSetupManager: string;
42
49
  DelegationAccount: string;
43
50
  FlareContractRegistry: string;
51
+ PollingFtso: string;
44
52
  };
45
- //# sourceMappingURL=contractAddresses.d.ts.map
53
+ //# sourceMappingURL=addresses.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addresses.d.ts","sourceRoot":"","sources":["../../../flare/deploys/addresses.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmD7B,CAAC"}
@@ -17,32 +17,40 @@ exports.contractAddresses = {
17
17
  CleanupBlockNumberManager: '0xB5cC96c7831Db2b446eA5BD1b006020DD32B6d3a',
18
18
  Escrow: '0x42A362eE27e239c17d97DA5765D052779AcfDC94',
19
19
  FtsoRegistry: '0x13DC2b5053857AE17a4f95aFF55530b267F3E040',
20
- VoterWhitelister: '0x0F45493e4C321b238e1fA242692BFFf3f30fBdfD',
20
+ VoterWhitelister: '0x072A199670fAD8883c7A92D108dFA56828EfCE87',
21
21
  DistributionToDelegators: '0x9c7A4C83842B29bB4A082b0E689CB9474BD938d0',
22
22
  IncentivePoolAllocation: '0xa071b43060DaA8eaA0d14DBE5Ea03ed18c9ed1d6',
23
23
  IncentivePool: '0xbcE1972De5d1598a948A36186eCeBFD4690F3a5C',
24
24
  ValidatorRegistry: '0x9907886ceF3DfDE3D679e1083fb0F610e9A527a0',
25
- FtsoManager: '0x2F5107461D1BF7D4D6d3b2b577621b2071343166',
25
+ FtsoManager: '0x2E99a4543F9ea708Cf8CCaC447515e61706D9DE9',
26
26
  WNat: '0x1D80c49BbBCd1C0911346656B529DF9E5c2F783d',
27
27
  CombinedNat: '0x1D80c49BbBCd1C0911346656B529DF9E5c2F783d',
28
28
  GovernanceVotePower: '0x47dD40deDCda8B4EFDEf5101999Af33B7cF787D7',
29
- FtsoXrp: '0x2d433f7dF375C62c7831bf01b770eC8746c8F44f',
30
- FtsoLtc: '0x9A9E3981B6e0F23D71caa9986D11967FB95209cA',
31
- FtsoXlm: '0xCc56e4d0B64d350Ad495BCa859d8E4375458Ed55',
32
- FtsoDoge: '0x0cBD1657bfaC82daf26caCABE3c18620403158eB',
33
- FtsoAda: '0x83D539d9eB43eACAcb40D5aDDE506Fd63A45cbFc',
34
- FtsoAlgo: '0x8801FC5664A0334b767b6E662736F9e7B9e26403',
35
- FtsoBch: '0x22701D23dD2AC004c017ECA81505143ce6aa6B13',
36
- FtsoDgb: '0xC79644093290AC7B700107a841562Cb1256b5e56',
37
- FtsoBtc: '0xF0255d0Cc1282000efaED2f0d747cf236D64D352',
38
- FtsoEth: '0xA0D8aF011D407930740A9a142c63eb880C472d6f',
39
- FtsoFil: '0xe48eFe08557BBcCD0b834913319fE1fb7E82d28E',
40
- FtsoWnat: '0x6d318B71b74cF249211C06b85F7eaa561fd9BB2D',
29
+ FtsoXrp: '0x8ABFc110d4174C8B9c582A6E4B5f2Da335aF4bA5',
30
+ FtsoLtc: '0x29c3fE708771E0f11b168f431A6152850DaB26ca',
31
+ FtsoXlm: '0x5f4E04c93b4746Cc65625dc590CeaDB0d4f8CFe2',
32
+ FtsoDoge: '0x0c72F588148a7b43E9232D1DeEED5b5bd00f8031',
33
+ FtsoAda: '0x84da7FAEc36b02Bd063f264FE676d0Cd4553705A',
34
+ FtsoAlgo: '0xAF7a37e5E57B97364a6D53Cc167C015559AbF0BB',
35
+ FtsoBtc: '0xe834543C53A11216a8434c545B7040A94217CB85',
36
+ FtsoEth: '0x1F31ba729A6A544DeEa2d405D98B066e3efE53FD',
37
+ FtsoFil: '0xdC250cB3b6fdfaA4cA69278F81f5fa23B0E85B3f',
38
+ FtsoWnat: '0x799efB666d14739F3A6aF0b702405A94bb7F96F7',
39
+ FtsoArb: '0x8060B3a3Cd9476193D82d5B753D8C47C6394b029',
40
+ FtsoAvax: '0xB4bfcfD2354986544F1BC6f886415881B0474B81',
41
+ FtsoBnb: '0x05f44eD2A881F196AcdE3dE088Bb1E01A82A5532',
42
+ FtsoMatic: '0x3cd52E135E8C78DF29192f9b4e4E67a7f1F29b4D',
43
+ FtsoSol: '0x4dDbF09Bd963B205695E39AE5623790A7213C862',
44
+ FtsoUsdc: '0x981978c6D5753667bfC1a1856d8119482B7ceBF5',
45
+ FtsoUsdt: '0xbeCbA3ae453278574304DCb405a7f54a6155E0C4',
46
+ FtsoXdc: '0x8689CC4324449148134d4218523590e167085d24',
41
47
  FlareAssetRegistry: '0x9a039B2677EDD9cbfAf65AF080b08749c6b59487',
48
+ WNatRegistryProvider: '0x2Ce1d8653BbCa3F636A63E35136f4e015f0b4647',
42
49
  ValidatorRewardManager: '0xc0CF3Aaf93bd978C5BC662564Aa73E331f2eC0B5',
43
50
  PollingFoundation: '0x258E20bdbb2d891521308d2af381B1BD962B67B5',
44
51
  ClaimSetupManager: '0xD56c0Ea37B848939B59e6F5Cda119b3fA473b5eB',
45
52
  DelegationAccount: '0x7fBc8623ac906bd3D636389b6D577E95B7D21Ef5',
46
53
  FlareContractRegistry: '0xaD67FE66660Fb8dFE9d6b1b4240d8650e30F6019',
54
+ PollingFtso: '0x461c4219d5fcAF0fEA304F57a4b0f8061f08064A',
47
55
  };
48
- //# sourceMappingURL=contractAddresses.js.map
56
+ //# sourceMappingURL=addresses.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addresses.js","sourceRoot":"","sources":["../../../flare/deploys/addresses.ts"],"names":[],"mappings":";;;AAAa,QAAA,iBAAiB,GAAG;IAC/B,cAAc,EAAE,4CAA4C;IAC5D,WAAW,EAAE,4CAA4C;IACzD,cAAc,EAAE,4CAA4C;IAC5D,oBAAoB,EAAE,4CAA4C;IAClE,qBAAqB,EAAE,4CAA4C;IACnE,cAAc,EAAE,4CAA4C;IAC5D,kBAAkB,EAAE,4CAA4C;IAChE,cAAc,EAAE,4CAA4C;IAC5D,mBAAmB,EAAE,4CAA4C;IACjE,SAAS,EAAE,4CAA4C;IACvD,MAAM,EAAE,4CAA4C;IACpD,iBAAiB,EAAE,4CAA4C;IAC/D,yBAAyB,EAAE,4CAA4C;IACvE,MAAM,EAAE,4CAA4C;IACpD,YAAY,EAAE,4CAA4C;IAC1D,gBAAgB,EAAE,4CAA4C;IAC9D,wBAAwB,EAAE,4CAA4C;IACtE,uBAAuB,EAAE,4CAA4C;IACrE,aAAa,EAAE,4CAA4C;IAC3D,iBAAiB,EAAE,4CAA4C;IAC/D,WAAW,EAAE,4CAA4C;IACzD,IAAI,EAAE,4CAA4C;IAClD,WAAW,EAAE,4CAA4C;IACzD,mBAAmB,EAAE,4CAA4C;IACjE,OAAO,EAAE,4CAA4C;IACrD,OAAO,EAAE,4CAA4C;IACrD,OAAO,EAAE,4CAA4C;IACrD,QAAQ,EAAE,4CAA4C;IACtD,OAAO,EAAE,4CAA4C;IACrD,QAAQ,EAAE,4CAA4C;IACtD,OAAO,EAAE,4CAA4C;IACrD,OAAO,EAAE,4CAA4C;IACrD,OAAO,EAAE,4CAA4C;IACrD,QAAQ,EAAE,4CAA4C;IACtD,OAAO,EAAE,4CAA4C;IACrD,QAAQ,EAAE,4CAA4C;IACtD,OAAO,EAAE,4CAA4C;IACrD,SAAS,EAAE,4CAA4C;IACvD,OAAO,EAAE,4CAA4C;IACrD,QAAQ,EAAE,4CAA4C;IACtD,QAAQ,EAAE,4CAA4C;IACtD,OAAO,EAAE,4CAA4C;IACrD,kBAAkB,EAAE,4CAA4C;IAChE,oBAAoB,EAAE,4CAA4C;IAClE,sBAAsB,EAAE,4CAA4C;IACpE,iBAAiB,EAAE,4CAA4C;IAC/D,iBAAiB,EAAE,4CAA4C;IAC/D,iBAAiB,EAAE,4CAA4C;IAC/D,qBAAqB,EAAE,4CAA4C;IACnE,WAAW,EAAE,4CAA4C;CAC1D,CAAC"}