@gooddollar/goodprotocol 2.0.32 → 2.0.34-beta.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 (566) hide show
  1. package/artifacts/abis/BuyFromReserveHelper.min.json +1 -0
  2. package/artifacts/abis/Faucet.min.json +1 -1
  3. package/artifacts/abis/GoodDollar2.min.json +1 -0
  4. package/artifacts/abis/ISuperToken.min.json +1 -1
  5. package/artifacts/abis/IdentityV3.min.json +1 -0
  6. package/artifacts/abis/SuperGoodDollar.min.json +1 -1
  7. package/artifacts/abis/SuperToken.min.json +1 -1
  8. package/artifacts/abis/SuperfluidFaucet.min.json +1 -1
  9. package/artifacts/abis/UBISchemeV2.min.json +1 -1
  10. package/artifacts/contracts/DAOStackInterfaces.sol/Avatar.dbg.json +1 -1
  11. package/artifacts/contracts/DAOStackInterfaces.sol/Controller.dbg.json +1 -1
  12. package/artifacts/contracts/DAOStackInterfaces.sol/GlobalConstraintInterface.dbg.json +1 -1
  13. package/artifacts/contracts/DAOStackInterfaces.sol/IntVoteInterface.dbg.json +1 -1
  14. package/artifacts/contracts/DAOStackInterfaces.sol/ReputationInterface.dbg.json +1 -1
  15. package/artifacts/contracts/DAOStackInterfaces.sol/SchemeRegistrar.dbg.json +1 -1
  16. package/artifacts/contracts/IQuoter.sol/IQuoterV2.dbg.json +4 -0
  17. package/artifacts/contracts/IQuoter.sol/IQuoterV2.json +211 -0
  18. package/artifacts/contracts/Interfaces.sol/AggregatorV3Interface.dbg.json +1 -1
  19. package/artifacts/contracts/Interfaces.sol/ERC20.dbg.json +1 -1
  20. package/artifacts/contracts/Interfaces.sol/IAaveIncentivesController.dbg.json +1 -1
  21. package/artifacts/contracts/Interfaces.sol/IAdminWallet.dbg.json +1 -1
  22. package/artifacts/contracts/Interfaces.sol/IDonationStaking.dbg.json +1 -1
  23. package/artifacts/contracts/Interfaces.sol/IERC2917.dbg.json +1 -1
  24. package/artifacts/contracts/Interfaces.sol/IFirstClaimPool.dbg.json +1 -1
  25. package/artifacts/contracts/Interfaces.sol/IGoodDollar.dbg.json +1 -1
  26. package/artifacts/contracts/Interfaces.sol/IGoodStaking.dbg.json +1 -1
  27. package/artifacts/contracts/Interfaces.sol/IHasRouter.dbg.json +1 -1
  28. package/artifacts/contracts/Interfaces.sol/IIdentity.dbg.json +1 -1
  29. package/artifacts/contracts/Interfaces.sol/IIdentityV2.dbg.json +1 -1
  30. package/artifacts/contracts/Interfaces.sol/ILendingPool.dbg.json +1 -1
  31. package/artifacts/contracts/Interfaces.sol/IMultichainRouter.dbg.json +1 -1
  32. package/artifacts/contracts/Interfaces.sol/INameService.dbg.json +1 -1
  33. package/artifacts/contracts/Interfaces.sol/IQuoterV2.dbg.json +1 -1
  34. package/artifacts/contracts/Interfaces.sol/ISwapRouter.dbg.json +1 -1
  35. package/artifacts/contracts/Interfaces.sol/IUBIScheme.dbg.json +1 -1
  36. package/artifacts/contracts/Interfaces.sol/ProxyAdmin.dbg.json +1 -1
  37. package/artifacts/contracts/Interfaces.sol/Reserve.dbg.json +1 -1
  38. package/artifacts/contracts/Interfaces.sol/Staking.dbg.json +1 -1
  39. package/artifacts/contracts/Interfaces.sol/Uniswap.dbg.json +1 -1
  40. package/artifacts/contracts/Interfaces.sol/UniswapFactory.dbg.json +1 -1
  41. package/artifacts/contracts/Interfaces.sol/UniswapPair.dbg.json +1 -1
  42. package/artifacts/contracts/Interfaces.sol/cERC20.dbg.json +1 -1
  43. package/artifacts/contracts/MentoInterfaces.sol/IBancorExchangeProvider.dbg.json +1 -1
  44. package/artifacts/contracts/MentoInterfaces.sol/IBroker.dbg.json +1 -1
  45. package/artifacts/contracts/MentoInterfaces.sol/IGoodDollarExchangeProvider.dbg.json +1 -1
  46. package/artifacts/contracts/MentoInterfaces.sol/IGoodDollarExpansionController.dbg.json +1 -1
  47. package/artifacts/contracts/MentoInterfaces.sol/IMentoReserve.dbg.json +1 -1
  48. package/artifacts/contracts/MentoInterfaces.sol/ITradingLimits.dbg.json +1 -1
  49. package/artifacts/contracts/fuseFaucet/Faucet.sol/Faucet.dbg.json +1 -1
  50. package/artifacts/contracts/fuseFaucet/Faucet.sol/Faucet.json +57 -2
  51. package/artifacts/contracts/fuseFaucet/FuseFaucet.sol/FuseFaucet.dbg.json +1 -1
  52. package/artifacts/contracts/fuseFaucet/FuseFaucet.sol/FuseFaucet.json +2 -2
  53. package/artifacts/contracts/fuseFaucet/FuseFaucetV2.sol/FuseFaucetV2.dbg.json +1 -1
  54. package/artifacts/contracts/fuseFaucet/FuseFaucetV2.sol/FuseFaucetV2.json +2 -2
  55. package/artifacts/contracts/fuseFaucet/SuperfluidFacuet.sol/SuperfluidFaucet.dbg.json +1 -1
  56. package/artifacts/contracts/fuseFaucet/SuperfluidFacuet.sol/SuperfluidFaucet.json +46 -28
  57. package/artifacts/contracts/governance/ClaimersDistribution.sol/ClaimersDistribution.dbg.json +1 -1
  58. package/artifacts/contracts/governance/ClaimersDistribution.sol/ClaimersDistribution.json +2 -2
  59. package/artifacts/contracts/governance/CompoundVotingMachine.sol/CompoundVotingMachine.dbg.json +1 -1
  60. package/artifacts/contracts/governance/CompoundVotingMachine.sol/CompoundVotingMachine.json +2 -2
  61. package/artifacts/contracts/governance/GReputation.sol/GReputation.dbg.json +1 -1
  62. package/artifacts/contracts/governance/GReputation.sol/GReputation.json +2 -2
  63. package/artifacts/contracts/governance/GoodDollarStaking.sol/GoodDollarStaking.dbg.json +1 -1
  64. package/artifacts/contracts/governance/GoodDollarStaking.sol/GoodDollarStaking.json +2 -2
  65. package/artifacts/contracts/governance/GoodDollarStaking.sol/IGovernanceStaking.dbg.json +1 -1
  66. package/artifacts/contracts/governance/GoodDollarStaking.sol/IStakingUpgrade.dbg.json +1 -1
  67. package/artifacts/contracts/governance/GoodDollarStaking.sol/RewardsMinter.dbg.json +1 -1
  68. package/artifacts/contracts/governance/GovernanceStaking.sol/GovernanceStaking.dbg.json +1 -1
  69. package/artifacts/contracts/governance/GovernanceStaking.sol/GovernanceStaking.json +2 -2
  70. package/artifacts/contracts/governance/MultiBaseGovernanceShareField.sol/MultiBaseGovernanceShareField.dbg.json +1 -1
  71. package/artifacts/contracts/governance/Reputation.sol/Reputation.dbg.json +1 -1
  72. package/artifacts/contracts/governance/Reputation.sol/Reputation.json +2 -2
  73. package/artifacts/contracts/governance/StakersDistribution.sol/StakersDistribution.dbg.json +1 -1
  74. package/artifacts/contracts/governance/StakersDistribution.sol/StakersDistribution.json +2 -2
  75. package/artifacts/contracts/identity/IdentityV2.sol/IdentityV2.dbg.json +1 -1
  76. package/artifacts/contracts/identity/IdentityV2.sol/IdentityV2.json +2 -2
  77. package/artifacts/contracts/identity/IdentityV3.sol/IdentityV3.dbg.json +4 -0
  78. package/artifacts/contracts/identity/IdentityV3.sol/IdentityV3.json +1089 -0
  79. package/artifacts/contracts/invite/InvitesFuseV2.sol/InvitesFuseV2.dbg.json +1 -1
  80. package/artifacts/contracts/invite/InvitesFuseV2.sol/InvitesFuseV2.json +2 -2
  81. package/artifacts/contracts/invite/InvitesV1.sol/InvitesV1.dbg.json +1 -1
  82. package/artifacts/contracts/invite/InvitesV1.sol/InvitesV1.json +2 -2
  83. package/artifacts/contracts/invite/InvitesV2.sol/InvitesV2.dbg.json +1 -1
  84. package/artifacts/contracts/invite/InvitesV2.sol/InvitesV2.json +2 -2
  85. package/artifacts/contracts/invite/OneTimeReward.sol/OneTimeReward.dbg.json +1 -1
  86. package/artifacts/contracts/invite/OneTimeReward.sol/OneTimeReward.json +2 -2
  87. package/artifacts/contracts/mocks/AaveMock.sol/AaveMock.dbg.json +1 -1
  88. package/artifacts/contracts/mocks/AaveMock.sol/AaveMock.json +2 -2
  89. package/artifacts/contracts/mocks/AaveUSDMockOracle.sol/AaveUSDMockOracle.dbg.json +1 -1
  90. package/artifacts/contracts/mocks/AaveUSDMockOracle.sol/AaveUSDMockOracle.json +2 -2
  91. package/artifacts/contracts/mocks/BatUSDMockOracle.sol/BatUSDMockOracle.dbg.json +1 -1
  92. package/artifacts/contracts/mocks/BatUSDMockOracle.sol/BatUSDMockOracle.json +2 -2
  93. package/artifacts/contracts/mocks/CeloDistributionHelperTest.sol/CeloDistributionHelperTest.dbg.json +1 -1
  94. package/artifacts/contracts/mocks/CeloDistributionHelperTest.sol/CeloDistributionHelperTest.json +2 -2
  95. package/artifacts/contracts/mocks/CeloDistributionHelperTest.sol/CeloDistributionHelperTestHelper.dbg.json +1 -1
  96. package/artifacts/contracts/mocks/CeloDistributionHelperTest.sol/CeloDistributionHelperTestHelper.json +2 -2
  97. package/artifacts/contracts/mocks/CompUsdMockOracle.sol/CompUSDMockOracle.dbg.json +1 -1
  98. package/artifacts/contracts/mocks/CompUsdMockOracle.sol/CompUSDMockOracle.json +2 -2
  99. package/artifacts/contracts/mocks/DAIMock.sol/DAIMock.dbg.json +1 -1
  100. package/artifacts/contracts/mocks/DAIMock.sol/DAIMock.json +2 -2
  101. package/artifacts/contracts/mocks/DaiEthPriceMockOracle.sol/DaiEthPriceMockOracle.dbg.json +1 -1
  102. package/artifacts/contracts/mocks/DaiEthPriceMockOracle.sol/DaiEthPriceMockOracle.json +2 -2
  103. package/artifacts/contracts/mocks/DecimalsMock.sol/DecimalsMock.dbg.json +1 -1
  104. package/artifacts/contracts/mocks/DecimalsMock.sol/DecimalsMock.json +2 -2
  105. package/artifacts/contracts/mocks/DistributionBridgeMock.sol/DistributionBridgeMock.dbg.json +1 -1
  106. package/artifacts/contracts/mocks/DistributionBridgeMock.sol/DistributionBridgeMock.json +2 -2
  107. package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTest.dbg.json +1 -1
  108. package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTest.json +2 -2
  109. package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTestHelper.dbg.json +1 -1
  110. package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTestHelper.json +2 -2
  111. package/artifacts/contracts/mocks/EthUSDMockOracle.sol/EthUSDMockOracle.dbg.json +1 -1
  112. package/artifacts/contracts/mocks/EthUSDMockOracle.sol/EthUSDMockOracle.json +2 -2
  113. package/artifacts/contracts/mocks/FeesFormularMock.sol/FeesFormulaMock.dbg.json +1 -1
  114. package/artifacts/contracts/mocks/FeesFormularMock.sol/FeesFormulaMock.json +2 -2
  115. package/artifacts/contracts/mocks/GasPriceMockOracle.sol/GasPriceMockOracle.dbg.json +1 -1
  116. package/artifacts/contracts/mocks/GasPriceMockOracle.sol/GasPriceMockOracle.json +2 -2
  117. package/artifacts/contracts/mocks/GoodCompoundStakingTest.sol/GoodCompoundStakingTest.dbg.json +1 -1
  118. package/artifacts/contracts/mocks/GoodCompoundStakingTest.sol/GoodCompoundStakingTest.json +2 -2
  119. package/artifacts/contracts/mocks/GoodDollarStakingMock.sol/GoodDollarStakingMock.dbg.json +1 -1
  120. package/artifacts/contracts/mocks/GoodDollarStakingMock.sol/GoodDollarStakingMock.json +2 -2
  121. package/artifacts/contracts/mocks/GoodFundManagerTest.sol/GoodFundManagerTest.dbg.json +1 -1
  122. package/artifacts/contracts/mocks/GoodFundManagerTest.sol/GoodFundManagerTest.json +2 -2
  123. package/artifacts/contracts/mocks/IdentityMock.sol/IdentityMock.dbg.json +1 -1
  124. package/artifacts/contracts/mocks/IdentityMock.sol/IdentityMock.json +2 -2
  125. package/artifacts/contracts/mocks/IncentiveControllerMock.sol/IncentiveControllerMock.dbg.json +1 -1
  126. package/artifacts/contracts/mocks/IncentiveControllerMock.sol/IncentiveControllerMock.json +2 -2
  127. package/artifacts/contracts/mocks/LendingPoolMock.sol/LendingPoolMock.dbg.json +1 -1
  128. package/artifacts/contracts/mocks/LendingPoolMock.sol/LendingPoolMock.json +2 -2
  129. package/artifacts/contracts/mocks/MultichainRouterMock.sol/IWrapper.dbg.json +1 -1
  130. package/artifacts/contracts/mocks/MultichainRouterMock.sol/MultichainRouterMock.dbg.json +1 -1
  131. package/artifacts/contracts/mocks/MultichainRouterMock.sol/MultichainRouterMock.json +2 -2
  132. package/artifacts/contracts/mocks/OverMintTester.sol/IGoodDollarStakingTest.dbg.json +1 -1
  133. package/artifacts/contracts/mocks/OverMintTester.sol/OverMintTester.dbg.json +1 -1
  134. package/artifacts/contracts/mocks/OverMintTester.sol/OverMintTester.json +2 -2
  135. package/artifacts/contracts/mocks/OverMintTesterRegularStake.sol/OverMintTesterRegularStake.dbg.json +1 -1
  136. package/artifacts/contracts/mocks/OverMintTesterRegularStake.sol/OverMintTesterRegularStake.json +2 -2
  137. package/artifacts/contracts/mocks/PayableMock.sol/PayableMock.dbg.json +1 -1
  138. package/artifacts/contracts/mocks/PayableMock.sol/PayableMock.json +2 -2
  139. package/artifacts/contracts/mocks/SixteenDecimalsTokenMock.sol/SixteenDecimalsTokenMock.dbg.json +1 -1
  140. package/artifacts/contracts/mocks/SixteenDecimalsTokenMock.sol/SixteenDecimalsTokenMock.json +2 -2
  141. package/artifacts/contracts/mocks/StakingMockFixedAPY.sol/StakingMockFixedAPY.dbg.json +1 -1
  142. package/artifacts/contracts/mocks/StakingMockFixedAPY.sol/StakingMockFixedAPY.json +2 -2
  143. package/artifacts/contracts/mocks/SwapHelperTest.sol/SwapHelperTest.dbg.json +1 -1
  144. package/artifacts/contracts/mocks/SwapHelperTest.sol/SwapHelperTest.json +2 -2
  145. package/artifacts/contracts/mocks/TwentyDecimalsTokenMock.sol/TwentyDecimalsTokenMock.dbg.json +1 -1
  146. package/artifacts/contracts/mocks/TwentyDecimalsTokenMock.sol/TwentyDecimalsTokenMock.json +2 -2
  147. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock.dbg.json +1 -1
  148. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock.json +2 -2
  149. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock2.dbg.json +1 -1
  150. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock2.json +2 -2
  151. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock3.dbg.json +1 -1
  152. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock3.json +2 -2
  153. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock4.dbg.json +1 -1
  154. package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock4.json +2 -2
  155. package/artifacts/contracts/mocks/UsdcMock.sol/USDCMock.dbg.json +1 -1
  156. package/artifacts/contracts/mocks/UsdcMock.sol/USDCMock.json +2 -2
  157. package/artifacts/contracts/mocks/cBATMock.sol/cBATMock.dbg.json +1 -1
  158. package/artifacts/contracts/mocks/cBATMock.sol/cBATMock.json +2 -2
  159. package/artifacts/contracts/mocks/cDAILowWorthMock.sol/cDAILowWorthMock.dbg.json +1 -1
  160. package/artifacts/contracts/mocks/cDAILowWorthMock.sol/cDAILowWorthMock.json +2 -2
  161. package/artifacts/contracts/mocks/cDAIMock.sol/cDAIMock.dbg.json +1 -1
  162. package/artifacts/contracts/mocks/cDAIMock.sol/cDAIMock.json +2 -2
  163. package/artifacts/contracts/mocks/cDAINonMintableMock.sol/cDAINonMintableMock.dbg.json +1 -1
  164. package/artifacts/contracts/mocks/cDAINonMintableMock.sol/cDAINonMintableMock.json +2 -2
  165. package/artifacts/contracts/mocks/cDecimalsMock.sol/cDecimalsMock.dbg.json +1 -1
  166. package/artifacts/contracts/mocks/cDecimalsMock.sol/cDecimalsMock.json +2 -2
  167. package/artifacts/contracts/mocks/cSDTMock.sol/cSDTMock.dbg.json +1 -1
  168. package/artifacts/contracts/mocks/cSDTMock.sol/cSDTMock.json +2 -2
  169. package/artifacts/contracts/mocks/cUSDCMock.sol/cUSDCMock.dbg.json +1 -1
  170. package/artifacts/contracts/mocks/cUSDCMock.sol/cUSDCMock.json +2 -2
  171. package/artifacts/contracts/reserve/CeloDistributionHelper.sol/CeloDistributionHelper.dbg.json +1 -1
  172. package/artifacts/contracts/reserve/CeloDistributionHelper.sol/CeloDistributionHelper.json +2 -2
  173. package/artifacts/contracts/reserve/DistributionHelper.sol/DistributionHelper.dbg.json +1 -1
  174. package/artifacts/contracts/reserve/DistributionHelper.sol/DistributionHelper.json +2 -2
  175. package/artifacts/contracts/reserve/ExchangeHelper.sol/ExchangeHelper.dbg.json +1 -1
  176. package/artifacts/contracts/reserve/ExchangeHelper.sol/ExchangeHelper.json +2 -2
  177. package/artifacts/contracts/reserve/GoodMarketMaker.sol/GoodMarketMaker.dbg.json +1 -1
  178. package/artifacts/contracts/reserve/GoodMarketMaker.sol/GoodMarketMaker.json +2 -2
  179. package/artifacts/contracts/reserve/GoodReserveCDai.sol/ContributionCalc.dbg.json +1 -1
  180. package/artifacts/contracts/reserve/GoodReserveCDai.sol/GoodReserveCDai.dbg.json +1 -1
  181. package/artifacts/contracts/reserve/GoodReserveCDai.sol/GoodReserveCDai.json +2 -2
  182. package/artifacts/contracts/staking/BaseShareField.sol/BaseShareField.dbg.json +1 -1
  183. package/artifacts/contracts/staking/BaseShareField.sol/BaseShareField.json +2 -2
  184. package/artifacts/contracts/staking/BaseShareFieldV2.sol/BaseShareFieldV2.dbg.json +1 -1
  185. package/artifacts/contracts/staking/BaseShareFieldV2.sol/BaseShareFieldV2.json +2 -2
  186. package/artifacts/contracts/staking/DonationsStaking.sol/DonationsStaking.dbg.json +1 -1
  187. package/artifacts/contracts/staking/DonationsStaking.sol/DonationsStaking.json +2 -2
  188. package/artifacts/contracts/staking/FuseStakingV3.sol/FuseStakingV3.dbg.json +1 -1
  189. package/artifacts/contracts/staking/FuseStakingV3.sol/FuseStakingV3.json +2 -2
  190. package/artifacts/contracts/staking/FuseStakingV3.sol/IConsensus.dbg.json +1 -1
  191. package/artifacts/contracts/staking/FuseStakingV3.sol/PegSwap.dbg.json +1 -1
  192. package/artifacts/contracts/staking/GoodFundManager.sol/GoodFundManager.dbg.json +1 -1
  193. package/artifacts/contracts/staking/GoodFundManager.sol/GoodFundManager.json +2 -2
  194. package/artifacts/contracts/staking/SimpleStaking.sol/SimpleStaking.dbg.json +1 -1
  195. package/artifacts/contracts/staking/SimpleStakingV2.sol/SimpleStakingV2.dbg.json +1 -1
  196. package/artifacts/contracts/staking/UniswapV2SwapHelper.sol/UniswapV2SwapHelper.dbg.json +1 -1
  197. package/artifacts/contracts/staking/UniswapV2SwapHelper.sol/UniswapV2SwapHelper.json +2 -2
  198. package/artifacts/contracts/staking/aave/AaveStakingFactory.sol/AaveStakingFactory.dbg.json +1 -1
  199. package/artifacts/contracts/staking/aave/AaveStakingFactory.sol/AaveStakingFactory.json +2 -2
  200. package/artifacts/contracts/staking/aave/GoodAaveStaking.sol/GoodAaveStaking.dbg.json +1 -1
  201. package/artifacts/contracts/staking/aave/GoodAaveStaking.sol/GoodAaveStaking.json +2 -2
  202. package/artifacts/contracts/staking/aave/GoodAaveStakingV2.sol/GoodAaveStakingV2.dbg.json +1 -1
  203. package/artifacts/contracts/staking/aave/GoodAaveStakingV2.sol/GoodAaveStakingV2.json +2 -2
  204. package/artifacts/contracts/staking/compound/CompoundStakingFactory.sol/CompoundStakingFactory.dbg.json +1 -1
  205. package/artifacts/contracts/staking/compound/CompoundStakingFactory.sol/CompoundStakingFactory.json +2 -2
  206. package/artifacts/contracts/staking/compound/GoodCompoundStaking.sol/GoodCompoundStaking.dbg.json +1 -1
  207. package/artifacts/contracts/staking/compound/GoodCompoundStaking.sol/GoodCompoundStaking.json +2 -2
  208. package/artifacts/contracts/staking/compound/GoodCompoundStakingV2.sol/GoodCompoundStakingV2.dbg.json +1 -1
  209. package/artifacts/contracts/staking/compound/GoodCompoundStakingV2.sol/GoodCompoundStakingV2.json +2 -2
  210. package/artifacts/contracts/staking/utils/Math64X64.sol/Math64x64.dbg.json +1 -1
  211. package/artifacts/contracts/staking/utils/Math64X64.sol/Math64x64.json +2 -2
  212. package/artifacts/contracts/staking/utils/StakingRewardsFixedAPY.sol/StakingRewardsFixedAPY.dbg.json +1 -1
  213. package/artifacts/contracts/token/ERC20PresetMinterPauserUpgradeable.sol/ERC20PresetMinterPauserUpgradeable.dbg.json +1 -1
  214. package/artifacts/contracts/token/ERC20PresetMinterPauserUpgradeable.sol/ERC20PresetMinterPauserUpgradeable.json +2 -2
  215. package/artifacts/contracts/token/ERC677.sol/ERC677.dbg.json +1 -1
  216. package/artifacts/contracts/token/ERC677.sol/ERC677Receiver.dbg.json +1 -1
  217. package/artifacts/contracts/token/GoodDollar.sol/GoodDollar.dbg.json +1 -1
  218. package/artifacts/contracts/token/GoodDollar.sol/GoodDollar.json +2 -2
  219. package/artifacts/contracts/token/GoodDollar2.sol/GoodDollar2.dbg.json +4 -0
  220. package/artifacts/contracts/token/GoodDollar2.sol/GoodDollar2.json +1206 -0
  221. package/artifacts/contracts/token/IFeesFormula.sol/IFeesFormula.dbg.json +1 -1
  222. package/artifacts/contracts/token/MultichainFeeFormula.sol/MultichainFeeFormula.dbg.json +1 -1
  223. package/artifacts/contracts/token/MultichainFeeFormula.sol/MultichainFeeFormula.json +2 -2
  224. package/artifacts/contracts/token/superfluid/ERC20Permit.sol/ERC20Permit.dbg.json +1 -1
  225. package/artifacts/contracts/token/superfluid/ERC20Permit.sol/SelfApprove.dbg.json +1 -1
  226. package/artifacts/contracts/token/superfluid/ISuperGoodDollar.sol/IGoodDollarCustom.dbg.json +1 -1
  227. package/artifacts/contracts/token/superfluid/ISuperGoodDollar.sol/ISuperGoodDollar.dbg.json +1 -1
  228. package/artifacts/contracts/token/superfluid/ISuperToken.sol/ISuperToken.dbg.json +1 -1
  229. package/artifacts/contracts/token/superfluid/ISuperToken.sol/ISuperToken.json +0 -52
  230. package/artifacts/contracts/token/superfluid/SuperGoodDollar.sol/SuperGoodDollar.dbg.json +1 -1
  231. package/artifacts/contracts/token/superfluid/SuperGoodDollar.sol/SuperGoodDollar.json +2 -74
  232. package/artifacts/contracts/token/superfluid/SuperToken.sol/SuperToken.dbg.json +1 -1
  233. package/artifacts/contracts/token/superfluid/SuperToken.sol/SuperToken.json +2 -54
  234. package/artifacts/contracts/token/superfluid/SuperfluidToken.sol/SuperfluidToken.dbg.json +1 -1
  235. package/artifacts/contracts/token/superfluid/UUPSProxiable.sol/UUPSProxiable.dbg.json +1 -1
  236. package/artifacts/contracts/token/superfluid/UUPSProxy.sol/Proxy.dbg.json +1 -1
  237. package/artifacts/contracts/token/superfluid/UUPSProxy.sol/UUPSProxy.dbg.json +1 -1
  238. package/artifacts/contracts/token/superfluid/UUPSProxy.sol/UUPSProxy.json +2 -2
  239. package/artifacts/contracts/token/superfluid/UUPSProxy.sol/UUPSUtils.dbg.json +1 -1
  240. package/artifacts/contracts/token/superfluid/UUPSProxy.sol/UUPSUtils.json +2 -2
  241. package/artifacts/contracts/ubi/UBIScheme.sol/UBIScheme.dbg.json +1 -1
  242. package/artifacts/contracts/ubi/UBIScheme.sol/UBIScheme.json +2 -2
  243. package/artifacts/contracts/ubi/UBISchemeV2.sol/UBISchemeV2.dbg.json +1 -1
  244. package/artifacts/contracts/ubi/UBISchemeV2.sol/UBISchemeV2.json +2 -7
  245. package/artifacts/contracts/utils/AdminWallet.sol/AdminWallet.dbg.json +1 -1
  246. package/artifacts/contracts/utils/AdminWallet.sol/AdminWallet.json +2 -2
  247. package/artifacts/contracts/utils/AdminWalletFuse.sol/AdminWalletFuse.dbg.json +1 -1
  248. package/artifacts/contracts/utils/AdminWalletFuse.sol/AdminWalletFuse.json +2 -2
  249. package/artifacts/contracts/utils/BancorFormula.sol/BancorFormula.dbg.json +1 -1
  250. package/artifacts/contracts/utils/BancorFormula.sol/BancorFormula.json +2 -2
  251. package/artifacts/contracts/utils/BulkProof.sol/BulkProof.dbg.json +1 -1
  252. package/artifacts/contracts/utils/BulkProof.sol/BulkProof.json +2 -2
  253. package/artifacts/contracts/utils/BulkWhitelist.sol/BulkWhitelist.dbg.json +1 -1
  254. package/artifacts/contracts/utils/BulkWhitelist.sol/BulkWhitelist.json +2 -2
  255. package/artifacts/contracts/utils/BuyAndBridgeHelper.sol/BuyAndBridgeHelper.dbg.json +1 -1
  256. package/artifacts/contracts/utils/BuyAndBridgeHelper.sol/BuyAndBridgeHelper.json +2 -2
  257. package/artifacts/contracts/utils/BuyFromReserveHelper.sol/BuyFromReserveHelper.dbg.json +4 -0
  258. package/artifacts/contracts/utils/BuyFromReserveHelper.sol/BuyFromReserveHelper.json +476 -0
  259. package/artifacts/contracts/utils/BuyGDClone.sol/BuyGDClone.dbg.json +1 -1
  260. package/artifacts/contracts/utils/BuyGDClone.sol/BuyGDClone.json +2 -2
  261. package/artifacts/contracts/utils/BuyGDClone.sol/BuyGDCloneFactory.dbg.json +1 -1
  262. package/artifacts/contracts/utils/BuyGDClone.sol/BuyGDCloneFactory.json +2 -2
  263. package/artifacts/contracts/utils/BuyGDClone.sol/DonateGDClone.dbg.json +1 -1
  264. package/artifacts/contracts/utils/BuyGDClone.sol/DonateGDClone.json +2 -2
  265. package/artifacts/contracts/utils/DAOContract.sol/DAOContract.dbg.json +1 -1
  266. package/artifacts/contracts/utils/DAOContract.sol/DAOContract.json +2 -2
  267. package/artifacts/contracts/utils/DAOUpgradeableContract.sol/DAOUpgradeableContract.dbg.json +1 -1
  268. package/artifacts/contracts/utils/DAOUpgradeableContract.sol/DAOUpgradeableContract.json +2 -2
  269. package/artifacts/contracts/utils/DSMath.sol/DSMath.dbg.json +1 -1
  270. package/artifacts/contracts/utils/DSMath.sol/DSMath.json +2 -2
  271. package/artifacts/contracts/utils/DataTypes.sol/DataTypes.dbg.json +1 -1
  272. package/artifacts/contracts/utils/DataTypes.sol/DataTypes.json +2 -2
  273. package/artifacts/contracts/utils/FuseOldBridgeKill.sol/EternalStorage.dbg.json +1 -1
  274. package/artifacts/contracts/utils/FuseOldBridgeKill.sol/EternalStorage.json +2 -2
  275. package/artifacts/contracts/utils/FuseOldBridgeKill.sol/FuseOldBridgeKill.dbg.json +1 -1
  276. package/artifacts/contracts/utils/FuseOldBridgeKill.sol/FuseOldBridgeKill.json +2 -2
  277. package/artifacts/contracts/utils/FuseOldBridgeKill.sol/IUpgradeabilityOwnerStorage.dbg.json +1 -1
  278. package/artifacts/contracts/utils/FuseOldBridgeKill.sol/Initializable.dbg.json +1 -1
  279. package/artifacts/contracts/utils/FuseOldBridgeKill.sol/Initializable.json +2 -2
  280. package/artifacts/contracts/utils/FuseOldBridgeKill.sol/Ownable.dbg.json +1 -1
  281. package/artifacts/contracts/utils/FuseOldBridgeKill.sol/Ownable.json +2 -2
  282. package/artifacts/contracts/utils/FuseOldBridgeKill.sol/Upgradeable.dbg.json +1 -1
  283. package/artifacts/contracts/utils/FuseOldBridgeKill.sol/Upgradeable.json +2 -2
  284. package/artifacts/contracts/utils/GDFaucet.sol/GDFaucet.dbg.json +1 -1
  285. package/artifacts/contracts/utils/GDFaucet.sol/GDFaucet.json +2 -2
  286. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/GoodDollarMintBurnWrapper.dbg.json +1 -1
  287. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/GoodDollarMintBurnWrapper.json +2 -2
  288. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/IRouter.dbg.json +1 -1
  289. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/PausableControl.dbg.json +1 -1
  290. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/TokenOperation.dbg.json +1 -1
  291. package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/TokenOperation.json +2 -2
  292. package/artifacts/contracts/utils/IdentityFix.sol/IdentityFix.dbg.json +1 -1
  293. package/artifacts/contracts/utils/IdentityFix.sol/IdentityFix.json +2 -2
  294. package/artifacts/contracts/utils/LastauthReduction.sol/LastauthReduction.dbg.json +1 -1
  295. package/artifacts/contracts/utils/LastauthReduction.sol/LastauthReduction.json +2 -2
  296. package/artifacts/contracts/utils/MultiCall.sol/Multicall.dbg.json +1 -1
  297. package/artifacts/contracts/utils/MultiCall.sol/Multicall.json +2 -2
  298. package/artifacts/contracts/utils/MultichainBridgeHelper.sol/MultichainBridgeHelper.dbg.json +1 -1
  299. package/artifacts/contracts/utils/MultichainBridgeHelper.sol/MultichainBridgeHelper.json +2 -2
  300. package/artifacts/contracts/utils/NameService.sol/NameService.dbg.json +1 -1
  301. package/artifacts/contracts/utils/NameService.sol/NameService.json +2 -2
  302. package/artifacts/contracts/utils/OneTimePayments.sol/OneTimePayments.dbg.json +1 -1
  303. package/artifacts/contracts/utils/OneTimePayments.sol/OneTimePayments.json +2 -2
  304. package/artifacts/contracts/utils/OneTimePaymentsV2.sol/OneTimePaymentsV2.dbg.json +1 -1
  305. package/artifacts/contracts/utils/OneTimePaymentsV2.sol/OneTimePaymentsV2.json +2 -2
  306. package/artifacts/contracts/utils/ProtoclUpgradeV4Mento.sol/MentoExchange.dbg.json +1 -1
  307. package/artifacts/contracts/utils/ProtoclUpgradeV4Mento.sol/ProtocolUpgradeV4Mento.dbg.json +1 -1
  308. package/artifacts/contracts/utils/ProtoclUpgradeV4Mento.sol/ProtocolUpgradeV4Mento.json +2 -2
  309. package/artifacts/contracts/utils/ProtocolUpgrade.sol/OldMarketMaker.dbg.json +1 -1
  310. package/artifacts/contracts/utils/ProtocolUpgrade.sol/ProtocolUpgrade.dbg.json +1 -1
  311. package/artifacts/contracts/utils/ProtocolUpgrade.sol/ProtocolUpgrade.json +2 -2
  312. package/artifacts/contracts/utils/ProtocolUpgradeFuse.sol/ProtocolUpgradeFuse.dbg.json +1 -1
  313. package/artifacts/contracts/utils/ProtocolUpgradeFuse.sol/ProtocolUpgradeFuse.json +2 -2
  314. package/artifacts/contracts/utils/ProtocolUpgradeFuseRecover.sol/ProtocolUpgradeFuseRecover.dbg.json +1 -1
  315. package/artifacts/contracts/utils/ProtocolUpgradeFuseRecover.sol/ProtocolUpgradeFuseRecover.json +2 -2
  316. package/artifacts/contracts/utils/ProtocolUpgradeRecover.sol/ProtocolUpgradeRecover.dbg.json +1 -1
  317. package/artifacts/contracts/utils/ProtocolUpgradeRecover.sol/ProtocolUpgradeRecover.json +2 -2
  318. package/artifacts/contracts/utils/ProxyFactory1967.sol/ERC1967Proxy.dbg.json +1 -1
  319. package/artifacts/contracts/utils/ProxyFactory1967.sol/ERC1967Proxy.json +2 -2
  320. package/artifacts/contracts/utils/ProxyFactory1967.sol/ProxyFactory1967.dbg.json +1 -1
  321. package/artifacts/contracts/utils/ProxyFactory1967.sol/ProxyFactory1967.json +2 -2
  322. package/artifacts/contracts/utils/ReputationTestHelper.sol/ReputationTestHelper.dbg.json +1 -1
  323. package/artifacts/contracts/utils/ReputationTestHelper.sol/ReputationTestHelper.json +2 -2
  324. package/artifacts/contracts/utils/ReserveRestore.sol/ReserveRestore.dbg.json +1 -1
  325. package/artifacts/contracts/utils/ReserveRestore.sol/ReserveRestore.json +2 -2
  326. package/contracts/IQuoter.sol +108 -0
  327. package/contracts/fuseFaucet/Faucet.sol +49 -37
  328. package/contracts/fuseFaucet/SuperfluidFacuet.sol +29 -8
  329. package/contracts/identity/IdentityV3.sol +534 -0
  330. package/contracts/token/ERC20PresetMinterPauserUpgradeable.sol +8 -9
  331. package/contracts/token/GoodDollar.sol +1 -1
  332. package/contracts/token/GoodDollar2.sol +13 -0
  333. package/contracts/token/superfluid/ISuperToken.sol +0 -19
  334. package/contracts/token/superfluid/SuperGoodDollar.sol +2 -21
  335. package/contracts/token/superfluid/SuperToken.sol +2 -2
  336. package/contracts/token/superfluid/SuperfluidToken.sol +66 -67
  337. package/contracts/ubi/UBISchemeV2.sol +12 -18
  338. package/contracts/utils/BuyFromReserveHelper.sol +129 -0
  339. package/dist/artifacts/contracts/identity/IdentityV2.sol/IdentityV2.json +2 -2
  340. package/dist/artifacts/contracts/token/superfluid/SuperGoodDollar.sol/SuperGoodDollar.json +177 -256
  341. package/dist/artifacts/contracts/token/superfluid/UUPSProxy.sol/UUPSProxy.json +2 -2
  342. package/dist/artifacts/contracts/utils/ProxyFactory1967.sol/ERC1967Proxy.json +2 -2
  343. package/dist/test-sdk/deploySuperGoodDollar.d.ts +1 -1
  344. package/dist/test-sdk/deploySuperGoodDollar.js +4 -8
  345. package/dist/test-sdk/index.js +1 -5
  346. package/hardhat.config.ts +37 -30
  347. package/package.json +3 -2
  348. package/releases/deploy-settings.json +5 -1
  349. package/releases/deployment.json +27 -1
  350. package/releases/olddao.json +1 -1
  351. package/scripts/analytics/activeGDStakers.ts +188 -0
  352. package/scripts/fv.ts +19 -1
  353. package/scripts/multichain-deploy/0_proxyFactory-deploy.ts +28 -5
  354. package/scripts/multichain-deploy/1_basicdao-deploy.ts +111 -73
  355. package/scripts/multichain-deploy/2_helpers-deploy.ts +13 -8
  356. package/scripts/multichain-deploy/4_ubi-deploy.ts +17 -19
  357. package/scripts/multichain-deploy/5_gov-deploy.ts +58 -26
  358. package/scripts/multichain-deploy/flattened/Avatar.sol +913 -0
  359. package/scripts/multichain-deploy/flattened/Controller.sol +1891 -0
  360. package/scripts/multichain-deploy/flattened/FeeFormula.sol +1290 -0
  361. package/scripts/multichain-deploy/fulldeploy.sh +17 -17
  362. package/scripts/multichain-deploy/helpers.ts +203 -70
  363. package/scripts/multichain-deploy/verify.ts +41 -0
  364. package/test/governance/ClaimersDistribution.test.ts +1 -1
  365. package/test/helpers.ts +59 -46
  366. package/test/identity/IdentityV2.test.ts +4 -1
  367. package/test/identity/IdentityV3.test.ts +449 -0
  368. package/test/invite/InvitesV2.test.ts +1 -1
  369. package/test/token/GoodDollar.test.ts +1 -1
  370. package/test/token/SuperGoodDollar.nohost.test.ts +383 -0
  371. package/test/token/SuperGoodDollar.test.ts +2 -10
  372. package/test/ubi/UBIScheme.e2e.test.ts +5 -5
  373. package/test/ubi/UBISchemeCycle.test.ts +69 -22
  374. package/test/ubi/UBISchemeV2.test.ts +636 -0
  375. package/test/utils/AdminWallet.test.ts +1 -1
  376. package/test/utils/ProxyFactory.test.ts +4 -1
  377. package/types/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.ts +108 -0
  378. package/types/@openzeppelin/contracts/proxy/ERC1967/index.ts +1 -0
  379. package/types/contracts/IQuoter.sol/IQuoterV2.ts +297 -0
  380. package/types/contracts/IQuoter.sol/index.ts +4 -0
  381. package/types/contracts/Interfaces.sol/AToken.ts +81 -0
  382. package/types/contracts/Interfaces.sol/IAaveIncentivesControllerV3.ts +156 -0
  383. package/types/contracts/Interfaces.sol/ILendingPoolV3.ts +254 -0
  384. package/types/contracts/fuseFaucet/Faucet.ts +109 -11
  385. package/types/contracts/fuseFaucet/SuperfluidBaseFacuet.sol/EthDistributor.ts +648 -0
  386. package/types/contracts/fuseFaucet/SuperfluidBaseFacuet.sol/EthDistributorUpgradeable.ts +843 -0
  387. package/types/contracts/fuseFaucet/SuperfluidBaseFacuet.sol/index.ts +4 -0
  388. package/types/contracts/fuseFaucet/SuperfluidFacuet.sol/SuperfluidFaucet.ts +79 -41
  389. package/types/contracts/identity/IdentityV3.ts +1899 -0
  390. package/types/contracts/identity/index.ts +1 -0
  391. package/types/contracts/index.ts +2 -0
  392. package/types/contracts/mocks/CeloDistributionHelperTest.sol/DistributionHelperTestHelper.ts +1252 -0
  393. package/types/contracts/reserve/GoodReserveADai.ts +2212 -0
  394. package/types/contracts/staking/aave/GoodAave3StakingV2.sol/GoodAaveStakingV2.ts +1808 -0
  395. package/types/contracts/staking/aave/GoodAave3StakingV2.sol/index.ts +4 -0
  396. package/types/contracts/token/GoodDollar18.ts +1871 -0
  397. package/types/contracts/token/GoodDollar2.ts +1871 -0
  398. package/types/contracts/token/index.ts +1 -0
  399. package/types/contracts/token/superfluid/ISuperToken.ts +0 -84
  400. package/types/contracts/token/superfluid/SuperGoodDollar.ts +12 -126
  401. package/types/contracts/token/superfluid/SuperToken.ts +0 -84
  402. package/types/contracts/ubi/UBISchemeV2.ts +3 -14
  403. package/types/contracts/utils/BuyFromReserveHelper.ts +699 -0
  404. package/types/contracts/utils/BuyGDClone.sol/IQuoterV2.ts +184 -0
  405. package/types/contracts/utils/BuyGDClone.sol/ISwapRouter.ts +306 -0
  406. package/types/contracts/utils/FuseOldBridgeKill.sol/BasicAMBErc677ToErc677.ts +108 -0
  407. package/types/contracts/utils/ProtocolUpgradeV4Mento.sol/MentoExchange.ts +81 -0
  408. package/types/contracts/utils/ProtocolUpgradeV4Mento.sol/ProtocolUpgradeV4Mento.ts +161 -0
  409. package/types/contracts/utils/ProtocolUpgradeV4Mento.sol/index.ts +5 -0
  410. package/types/contracts/utils/ReserveRestore.sol/MentoExchange.ts +81 -0
  411. package/types/contracts/utils/ReserveRestore.sol/ReserveRestore.ts +112 -0
  412. package/types/contracts/utils/ReserveRestore.sol/index.ts +5 -0
  413. package/types/contracts/utils/index.ts +1 -0
  414. package/types/factories/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy__factory.ts +146 -0
  415. package/types/factories/@openzeppelin/contracts/proxy/ERC1967/index.ts +1 -0
  416. package/types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.ts +1 -1
  417. package/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/ERC20Upgradeable__factory.ts +1 -1
  418. package/types/factories/@openzeppelin/contracts-upgradeable/token/ERC20/presets/ERC20PresetMinterPauserUpgradeable__factory.ts +1 -1
  419. package/types/factories/@superfluid-finance/ethereum-contracts/contracts/libs/EventsEmitter__factory.ts +1 -1
  420. package/types/factories/@superfluid-finance/ethereum-contracts/contracts/superfluid/ConstantInflowNFT__factory.ts +1 -1
  421. package/types/factories/@superfluid-finance/ethereum-contracts/contracts/superfluid/ConstantOutflowNFT__factory.ts +1 -1
  422. package/types/factories/contracts/IQuoter.sol/IQuoterV2__factory.ts +226 -0
  423. package/types/factories/contracts/IQuoter.sol/index.ts +4 -0
  424. package/types/factories/contracts/Interfaces.sol/AToken__factory.ts +36 -0
  425. package/types/factories/contracts/Interfaces.sol/IAaveIncentivesControllerV3__factory.ts +88 -0
  426. package/types/factories/contracts/Interfaces.sol/ILendingPoolV3__factory.ts +186 -0
  427. package/types/factories/contracts/fuseFaucet/Faucet__factory.ts +56 -1
  428. package/types/factories/contracts/fuseFaucet/FuseFaucetV2__factory.ts +1 -1
  429. package/types/factories/contracts/fuseFaucet/FuseFaucet__factory.ts +1 -1
  430. package/types/factories/contracts/fuseFaucet/SuperfluidBaseFacuet.sol/EthDistributorUpgradeable__factory.ts +572 -0
  431. package/types/factories/contracts/fuseFaucet/SuperfluidBaseFacuet.sol/EthDistributor__factory.ts +482 -0
  432. package/types/factories/contracts/fuseFaucet/SuperfluidBaseFacuet.sol/index.ts +4 -0
  433. package/types/factories/contracts/fuseFaucet/SuperfluidFacuet.sol/SuperfluidFaucet__factory.ts +45 -27
  434. package/types/factories/contracts/governance/ClaimersDistribution__factory.ts +1 -1
  435. package/types/factories/contracts/governance/CompoundVotingMachine__factory.ts +1 -1
  436. package/types/factories/contracts/governance/GReputation__factory.ts +1 -1
  437. package/types/factories/contracts/governance/GoodDollarStaking.sol/GoodDollarStaking__factory.ts +1 -1
  438. package/types/factories/contracts/governance/GovernanceStaking__factory.ts +1 -1
  439. package/types/factories/contracts/governance/Reputation__factory.ts +1 -1
  440. package/types/factories/contracts/governance/StakersDistribution__factory.ts +1 -1
  441. package/types/factories/contracts/identity/IdentityV2__factory.ts +1 -1
  442. package/types/factories/contracts/identity/IdentityV3__factory.ts +1140 -0
  443. package/types/factories/contracts/identity/index.ts +1 -0
  444. package/types/factories/contracts/index.ts +1 -0
  445. package/types/factories/contracts/invite/InvitesFuseV2__factory.ts +1 -1
  446. package/types/factories/contracts/invite/InvitesV1__factory.ts +1 -1
  447. package/types/factories/contracts/invite/InvitesV2__factory.ts +1 -1
  448. package/types/factories/contracts/invite/OneTimeReward__factory.ts +1 -1
  449. package/types/factories/contracts/mocks/AaveMock__factory.ts +1 -1
  450. package/types/factories/contracts/mocks/AaveUSDMockOracle__factory.ts +1 -1
  451. package/types/factories/contracts/mocks/BatUSDMockOracle__factory.ts +1 -1
  452. package/types/factories/contracts/mocks/CBATMock__factory.ts +1 -1
  453. package/types/factories/contracts/mocks/CDAILowWorthMock__factory.ts +1 -1
  454. package/types/factories/contracts/mocks/CDAIMock__factory.ts +1 -1
  455. package/types/factories/contracts/mocks/CDAINonMintableMock__factory.ts +1 -1
  456. package/types/factories/contracts/mocks/CDecimalsMock__factory.ts +1 -1
  457. package/types/factories/contracts/mocks/CSDTMock__factory.ts +1 -1
  458. package/types/factories/contracts/mocks/CUSDCMock__factory.ts +1 -1
  459. package/types/factories/contracts/mocks/CeloDistributionHelperTest.sol/CeloDistributionHelperTestHelper__factory.ts +1 -1
  460. package/types/factories/contracts/mocks/CeloDistributionHelperTest.sol/CeloDistributionHelperTest__factory.ts +1 -1
  461. package/types/factories/contracts/mocks/CeloDistributionHelperTest.sol/DistributionHelperTestHelper__factory.ts +929 -0
  462. package/types/factories/contracts/mocks/CompUsdMockOracle.sol/CompUSDMockOracle__factory.ts +1 -1
  463. package/types/factories/contracts/mocks/DAIMock__factory.ts +1 -1
  464. package/types/factories/contracts/mocks/DaiEthPriceMockOracle__factory.ts +1 -1
  465. package/types/factories/contracts/mocks/DecimalsMock__factory.ts +1 -1
  466. package/types/factories/contracts/mocks/DistributionBridgeMock__factory.ts +1 -1
  467. package/types/factories/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTestHelper__factory.ts +1 -1
  468. package/types/factories/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTest__factory.ts +1 -1
  469. package/types/factories/contracts/mocks/EthUSDMockOracle__factory.ts +1 -1
  470. package/types/factories/contracts/mocks/FeesFormularMock.sol/FeesFormulaMock__factory.ts +1 -1
  471. package/types/factories/contracts/mocks/GasPriceMockOracle__factory.ts +1 -1
  472. package/types/factories/contracts/mocks/GoodCompoundStakingTest__factory.ts +1 -1
  473. package/types/factories/contracts/mocks/GoodDollarStakingMock__factory.ts +1 -1
  474. package/types/factories/contracts/mocks/GoodFundManagerTest__factory.ts +1 -1
  475. package/types/factories/contracts/mocks/IdentityMock__factory.ts +1 -1
  476. package/types/factories/contracts/mocks/IncentiveControllerMock__factory.ts +1 -1
  477. package/types/factories/contracts/mocks/LendingPoolMock__factory.ts +1 -1
  478. package/types/factories/contracts/mocks/MultichainRouterMock.sol/MultichainRouterMock__factory.ts +1 -1
  479. package/types/factories/contracts/mocks/OverMintTester.sol/OverMintTester__factory.ts +1 -1
  480. package/types/factories/contracts/mocks/OverMintTesterRegularStake__factory.ts +1 -1
  481. package/types/factories/contracts/mocks/PayableMock__factory.ts +1 -1
  482. package/types/factories/contracts/mocks/SixteenDecimalsTokenMock__factory.ts +1 -1
  483. package/types/factories/contracts/mocks/StakingMockFixedAPY__factory.ts +1 -1
  484. package/types/factories/contracts/mocks/SwapHelperTest__factory.ts +1 -1
  485. package/types/factories/contracts/mocks/TwentyDecimalsTokenMock__factory.ts +1 -1
  486. package/types/factories/contracts/mocks/UpgradableMocks.sol/UpgradableMock2__factory.ts +1 -1
  487. package/types/factories/contracts/mocks/UpgradableMocks.sol/UpgradableMock3__factory.ts +1 -1
  488. package/types/factories/contracts/mocks/UpgradableMocks.sol/UpgradableMock4__factory.ts +1 -1
  489. package/types/factories/contracts/mocks/UpgradableMocks.sol/UpgradableMock__factory.ts +1 -1
  490. package/types/factories/contracts/mocks/UsdcMock.sol/USDCMock__factory.ts +1 -1
  491. package/types/factories/contracts/reserve/CeloDistributionHelper__factory.ts +1 -1
  492. package/types/factories/contracts/reserve/DistributionHelper__factory.ts +1 -1
  493. package/types/factories/contracts/reserve/ExchangeHelper__factory.ts +1 -1
  494. package/types/factories/contracts/reserve/GoodMarketMaker__factory.ts +1 -1
  495. package/types/factories/contracts/reserve/GoodReserveADai__factory.ts +1502 -0
  496. package/types/factories/contracts/reserve/GoodReserveCDai.sol/GoodReserveCDai__factory.ts +1 -1
  497. package/types/factories/contracts/staking/BaseShareFieldV2__factory.ts +1 -1
  498. package/types/factories/contracts/staking/BaseShareField__factory.ts +1 -1
  499. package/types/factories/contracts/staking/DonationsStaking__factory.ts +1 -1
  500. package/types/factories/contracts/staking/FuseStakingV3.sol/FuseStakingV3__factory.ts +1 -1
  501. package/types/factories/contracts/staking/GoodFundManager__factory.ts +1 -1
  502. package/types/factories/contracts/staking/UniswapV2SwapHelper__factory.ts +1 -1
  503. package/types/factories/contracts/staking/aave/AaveStakingFactory__factory.ts +1 -1
  504. package/types/factories/contracts/staking/aave/GoodAave3StakingV2.sol/GoodAaveStakingV2__factory.ts +1240 -0
  505. package/types/factories/contracts/staking/aave/GoodAave3StakingV2.sol/index.ts +4 -0
  506. package/types/factories/contracts/staking/aave/GoodAaveStakingV2__factory.ts +1 -1
  507. package/types/factories/contracts/staking/aave/GoodAaveStaking__factory.ts +1 -1
  508. package/types/factories/contracts/staking/compound/CompoundStakingFactory__factory.ts +1 -1
  509. package/types/factories/contracts/staking/compound/GoodCompoundStakingV2__factory.ts +1 -1
  510. package/types/factories/contracts/staking/compound/GoodCompoundStaking__factory.ts +1 -1
  511. package/types/factories/contracts/token/ERC20PresetMinterPauserUpgradeable__factory.ts +1 -1
  512. package/types/factories/contracts/token/GoodDollar18__factory.ts +1257 -0
  513. package/types/factories/contracts/token/GoodDollar2__factory.ts +1257 -0
  514. package/types/factories/contracts/token/GoodDollar__factory.ts +1 -1
  515. package/types/factories/contracts/token/MultichainFeeFormula__factory.ts +1 -1
  516. package/types/factories/contracts/token/index.ts +1 -0
  517. package/types/factories/contracts/token/superfluid/ISuperToken__factory.ts +0 -52
  518. package/types/factories/contracts/token/superfluid/SuperGoodDollar__factory.ts +1 -73
  519. package/types/factories/contracts/token/superfluid/SuperToken__factory.ts +1 -53
  520. package/types/factories/contracts/token/superfluid/UUPSProxy.sol/UUPSProxy__factory.ts +1 -1
  521. package/types/factories/contracts/ubi/UBISchemeV2__factory.ts +1 -6
  522. package/types/factories/contracts/ubi/UBIScheme__factory.ts +1 -1
  523. package/types/factories/contracts/utils/AdminWalletFuse__factory.ts +1 -1
  524. package/types/factories/contracts/utils/AdminWallet__factory.ts +1 -1
  525. package/types/factories/contracts/utils/BancorFormula__factory.ts +1 -1
  526. package/types/factories/contracts/utils/BulkWhitelist__factory.ts +1 -1
  527. package/types/factories/contracts/utils/BuyAndBridgeHelper__factory.ts +1 -1
  528. package/types/factories/contracts/utils/BuyFromReserveHelper__factory.ts +566 -0
  529. package/types/factories/contracts/utils/BuyGDClone.sol/BuyGDCloneFactory__factory.ts +1 -1
  530. package/types/factories/contracts/utils/BuyGDClone.sol/BuyGDClone__factory.ts +1 -1
  531. package/types/factories/contracts/utils/BuyGDClone.sol/DonateGDClone__factory.ts +1 -1
  532. package/types/factories/contracts/utils/BuyGDClone.sol/IQuoterV2__factory.ts +126 -0
  533. package/types/factories/contracts/utils/BuyGDClone.sol/ISwapRouter__factory.ts +220 -0
  534. package/types/factories/contracts/utils/DAOContract__factory.ts +1 -1
  535. package/types/factories/contracts/utils/DAOUpgradeableContract__factory.ts +1 -1
  536. package/types/factories/contracts/utils/FuseOldBridgeKill.sol/BasicAMBErc677ToErc677__factory.ts +86 -0
  537. package/types/factories/contracts/utils/FuseOldBridgeKill.sol/FuseOldBridgeKill__factory.ts +1 -1
  538. package/types/factories/contracts/utils/FuseOldBridgeKill.sol/Initializable__factory.ts +1 -1
  539. package/types/factories/contracts/utils/FuseOldBridgeKill.sol/Ownable__factory.ts +1 -1
  540. package/types/factories/contracts/utils/GDFaucet__factory.ts +1 -1
  541. package/types/factories/contracts/utils/GoodDollarMintBurnWrapper.sol/GoodDollarMintBurnWrapper__factory.ts +1 -1
  542. package/types/factories/contracts/utils/IdentityFix__factory.ts +1 -1
  543. package/types/factories/contracts/utils/LastauthReduction__factory.ts +1 -1
  544. package/types/factories/contracts/utils/MultiCall.sol/Multicall__factory.ts +1 -1
  545. package/types/factories/contracts/utils/MultichainBridgeHelper__factory.ts +1 -1
  546. package/types/factories/contracts/utils/NameService__factory.ts +1 -1
  547. package/types/factories/contracts/utils/OneTimePaymentsV2__factory.ts +1 -1
  548. package/types/factories/contracts/utils/OneTimePayments__factory.ts +1 -1
  549. package/types/factories/contracts/utils/ProtoclUpgradeV4Mento.sol/ProtocolUpgradeV4Mento__factory.ts +1 -1
  550. package/types/factories/contracts/utils/ProtocolUpgrade.sol/ProtocolUpgrade__factory.ts +1 -1
  551. package/types/factories/contracts/utils/ProtocolUpgradeFuseRecover__factory.ts +1 -1
  552. package/types/factories/contracts/utils/ProtocolUpgradeFuse__factory.ts +1 -1
  553. package/types/factories/contracts/utils/ProtocolUpgradeRecover__factory.ts +1 -1
  554. package/types/factories/contracts/utils/ProtocolUpgradeV4Mento.sol/MentoExchange__factory.ts +39 -0
  555. package/types/factories/contracts/utils/ProtocolUpgradeV4Mento.sol/ProtocolUpgradeV4Mento__factory.ts +152 -0
  556. package/types/factories/contracts/utils/ProtocolUpgradeV4Mento.sol/index.ts +5 -0
  557. package/types/factories/contracts/utils/ProxyFactory1967.sol/ERC1967Proxy__factory.ts +1 -1
  558. package/types/factories/contracts/utils/ProxyFactory1967.sol/ProxyFactory1967__factory.ts +1 -1
  559. package/types/factories/contracts/utils/ReputationTestHelper__factory.ts +1 -1
  560. package/types/factories/contracts/utils/ReserveRestore.sol/MentoExchange__factory.ts +39 -0
  561. package/types/factories/contracts/utils/ReserveRestore.sol/ReserveRestore__factory.ts +95 -0
  562. package/types/factories/contracts/utils/ReserveRestore.sol/index.ts +5 -0
  563. package/types/factories/contracts/utils/ReserveRestore__factory.ts +1 -1
  564. package/types/factories/contracts/utils/index.ts +1 -0
  565. package/types/hardhat.d.ts +45 -0
  566. package/types/index.ts +8 -2
@@ -0,0 +1,1206 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "GoodDollar2",
4
+ "sourceName": "contracts/token/GoodDollar2.sol",
5
+ "abi": [
6
+ {
7
+ "anonymous": false,
8
+ "inputs": [
9
+ {
10
+ "indexed": false,
11
+ "internalType": "address",
12
+ "name": "previousAdmin",
13
+ "type": "address"
14
+ },
15
+ {
16
+ "indexed": false,
17
+ "internalType": "address",
18
+ "name": "newAdmin",
19
+ "type": "address"
20
+ }
21
+ ],
22
+ "name": "AdminChanged",
23
+ "type": "event"
24
+ },
25
+ {
26
+ "anonymous": false,
27
+ "inputs": [
28
+ {
29
+ "indexed": true,
30
+ "internalType": "address",
31
+ "name": "owner",
32
+ "type": "address"
33
+ },
34
+ {
35
+ "indexed": true,
36
+ "internalType": "address",
37
+ "name": "spender",
38
+ "type": "address"
39
+ },
40
+ {
41
+ "indexed": false,
42
+ "internalType": "uint256",
43
+ "name": "value",
44
+ "type": "uint256"
45
+ }
46
+ ],
47
+ "name": "Approval",
48
+ "type": "event"
49
+ },
50
+ {
51
+ "anonymous": false,
52
+ "inputs": [
53
+ {
54
+ "indexed": true,
55
+ "internalType": "address",
56
+ "name": "beacon",
57
+ "type": "address"
58
+ }
59
+ ],
60
+ "name": "BeaconUpgraded",
61
+ "type": "event"
62
+ },
63
+ {
64
+ "anonymous": false,
65
+ "inputs": [
66
+ {
67
+ "indexed": false,
68
+ "internalType": "uint8",
69
+ "name": "version",
70
+ "type": "uint8"
71
+ }
72
+ ],
73
+ "name": "Initialized",
74
+ "type": "event"
75
+ },
76
+ {
77
+ "anonymous": false,
78
+ "inputs": [
79
+ {
80
+ "indexed": false,
81
+ "internalType": "address",
82
+ "name": "account",
83
+ "type": "address"
84
+ }
85
+ ],
86
+ "name": "Paused",
87
+ "type": "event"
88
+ },
89
+ {
90
+ "anonymous": false,
91
+ "inputs": [
92
+ {
93
+ "indexed": true,
94
+ "internalType": "bytes32",
95
+ "name": "role",
96
+ "type": "bytes32"
97
+ },
98
+ {
99
+ "indexed": true,
100
+ "internalType": "bytes32",
101
+ "name": "previousAdminRole",
102
+ "type": "bytes32"
103
+ },
104
+ {
105
+ "indexed": true,
106
+ "internalType": "bytes32",
107
+ "name": "newAdminRole",
108
+ "type": "bytes32"
109
+ }
110
+ ],
111
+ "name": "RoleAdminChanged",
112
+ "type": "event"
113
+ },
114
+ {
115
+ "anonymous": false,
116
+ "inputs": [
117
+ {
118
+ "indexed": true,
119
+ "internalType": "bytes32",
120
+ "name": "role",
121
+ "type": "bytes32"
122
+ },
123
+ {
124
+ "indexed": true,
125
+ "internalType": "address",
126
+ "name": "account",
127
+ "type": "address"
128
+ },
129
+ {
130
+ "indexed": true,
131
+ "internalType": "address",
132
+ "name": "sender",
133
+ "type": "address"
134
+ }
135
+ ],
136
+ "name": "RoleGranted",
137
+ "type": "event"
138
+ },
139
+ {
140
+ "anonymous": false,
141
+ "inputs": [
142
+ {
143
+ "indexed": true,
144
+ "internalType": "bytes32",
145
+ "name": "role",
146
+ "type": "bytes32"
147
+ },
148
+ {
149
+ "indexed": true,
150
+ "internalType": "address",
151
+ "name": "account",
152
+ "type": "address"
153
+ },
154
+ {
155
+ "indexed": true,
156
+ "internalType": "address",
157
+ "name": "sender",
158
+ "type": "address"
159
+ }
160
+ ],
161
+ "name": "RoleRevoked",
162
+ "type": "event"
163
+ },
164
+ {
165
+ "anonymous": false,
166
+ "inputs": [
167
+ {
168
+ "indexed": true,
169
+ "internalType": "address",
170
+ "name": "from",
171
+ "type": "address"
172
+ },
173
+ {
174
+ "indexed": true,
175
+ "internalType": "address",
176
+ "name": "to",
177
+ "type": "address"
178
+ },
179
+ {
180
+ "indexed": false,
181
+ "internalType": "uint256",
182
+ "name": "value",
183
+ "type": "uint256"
184
+ }
185
+ ],
186
+ "name": "Transfer",
187
+ "type": "event"
188
+ },
189
+ {
190
+ "anonymous": false,
191
+ "inputs": [
192
+ {
193
+ "indexed": true,
194
+ "internalType": "address",
195
+ "name": "from",
196
+ "type": "address"
197
+ },
198
+ {
199
+ "indexed": true,
200
+ "internalType": "address",
201
+ "name": "to",
202
+ "type": "address"
203
+ },
204
+ {
205
+ "indexed": false,
206
+ "internalType": "uint256",
207
+ "name": "value",
208
+ "type": "uint256"
209
+ },
210
+ {
211
+ "indexed": false,
212
+ "internalType": "bytes",
213
+ "name": "data",
214
+ "type": "bytes"
215
+ }
216
+ ],
217
+ "name": "Transfer",
218
+ "type": "event"
219
+ },
220
+ {
221
+ "anonymous": false,
222
+ "inputs": [
223
+ {
224
+ "indexed": false,
225
+ "internalType": "address",
226
+ "name": "account",
227
+ "type": "address"
228
+ }
229
+ ],
230
+ "name": "Unpaused",
231
+ "type": "event"
232
+ },
233
+ {
234
+ "anonymous": false,
235
+ "inputs": [
236
+ {
237
+ "indexed": true,
238
+ "internalType": "address",
239
+ "name": "implementation",
240
+ "type": "address"
241
+ }
242
+ ],
243
+ "name": "Upgraded",
244
+ "type": "event"
245
+ },
246
+ {
247
+ "inputs": [],
248
+ "name": "DEFAULT_ADMIN_ROLE",
249
+ "outputs": [
250
+ {
251
+ "internalType": "bytes32",
252
+ "name": "",
253
+ "type": "bytes32"
254
+ }
255
+ ],
256
+ "stateMutability": "view",
257
+ "type": "function"
258
+ },
259
+ {
260
+ "inputs": [],
261
+ "name": "DOMAIN_SEPARATOR",
262
+ "outputs": [
263
+ {
264
+ "internalType": "bytes32",
265
+ "name": "",
266
+ "type": "bytes32"
267
+ }
268
+ ],
269
+ "stateMutability": "view",
270
+ "type": "function"
271
+ },
272
+ {
273
+ "inputs": [],
274
+ "name": "MINTER_ROLE",
275
+ "outputs": [
276
+ {
277
+ "internalType": "bytes32",
278
+ "name": "",
279
+ "type": "bytes32"
280
+ }
281
+ ],
282
+ "stateMutability": "view",
283
+ "type": "function"
284
+ },
285
+ {
286
+ "inputs": [],
287
+ "name": "PAUSER_ROLE",
288
+ "outputs": [
289
+ {
290
+ "internalType": "bytes32",
291
+ "name": "",
292
+ "type": "bytes32"
293
+ }
294
+ ],
295
+ "stateMutability": "view",
296
+ "type": "function"
297
+ },
298
+ {
299
+ "inputs": [
300
+ {
301
+ "internalType": "address",
302
+ "name": "_minter",
303
+ "type": "address"
304
+ }
305
+ ],
306
+ "name": "addMinter",
307
+ "outputs": [],
308
+ "stateMutability": "nonpayable",
309
+ "type": "function"
310
+ },
311
+ {
312
+ "inputs": [
313
+ {
314
+ "internalType": "address",
315
+ "name": "_pauser",
316
+ "type": "address"
317
+ }
318
+ ],
319
+ "name": "addPauser",
320
+ "outputs": [],
321
+ "stateMutability": "nonpayable",
322
+ "type": "function"
323
+ },
324
+ {
325
+ "inputs": [
326
+ {
327
+ "internalType": "address",
328
+ "name": "owner",
329
+ "type": "address"
330
+ },
331
+ {
332
+ "internalType": "address",
333
+ "name": "spender",
334
+ "type": "address"
335
+ }
336
+ ],
337
+ "name": "allowance",
338
+ "outputs": [
339
+ {
340
+ "internalType": "uint256",
341
+ "name": "",
342
+ "type": "uint256"
343
+ }
344
+ ],
345
+ "stateMutability": "view",
346
+ "type": "function"
347
+ },
348
+ {
349
+ "inputs": [
350
+ {
351
+ "internalType": "address",
352
+ "name": "spender",
353
+ "type": "address"
354
+ },
355
+ {
356
+ "internalType": "uint256",
357
+ "name": "amount",
358
+ "type": "uint256"
359
+ }
360
+ ],
361
+ "name": "approve",
362
+ "outputs": [
363
+ {
364
+ "internalType": "bool",
365
+ "name": "",
366
+ "type": "bool"
367
+ }
368
+ ],
369
+ "stateMutability": "nonpayable",
370
+ "type": "function"
371
+ },
372
+ {
373
+ "inputs": [
374
+ {
375
+ "internalType": "address",
376
+ "name": "account",
377
+ "type": "address"
378
+ }
379
+ ],
380
+ "name": "balanceOf",
381
+ "outputs": [
382
+ {
383
+ "internalType": "uint256",
384
+ "name": "",
385
+ "type": "uint256"
386
+ }
387
+ ],
388
+ "stateMutability": "view",
389
+ "type": "function"
390
+ },
391
+ {
392
+ "inputs": [
393
+ {
394
+ "internalType": "uint256",
395
+ "name": "amount",
396
+ "type": "uint256"
397
+ }
398
+ ],
399
+ "name": "burn",
400
+ "outputs": [],
401
+ "stateMutability": "nonpayable",
402
+ "type": "function"
403
+ },
404
+ {
405
+ "inputs": [
406
+ {
407
+ "internalType": "address",
408
+ "name": "account",
409
+ "type": "address"
410
+ },
411
+ {
412
+ "internalType": "uint256",
413
+ "name": "amount",
414
+ "type": "uint256"
415
+ }
416
+ ],
417
+ "name": "burnFrom",
418
+ "outputs": [],
419
+ "stateMutability": "nonpayable",
420
+ "type": "function"
421
+ },
422
+ {
423
+ "inputs": [],
424
+ "name": "cap",
425
+ "outputs": [
426
+ {
427
+ "internalType": "uint256",
428
+ "name": "",
429
+ "type": "uint256"
430
+ }
431
+ ],
432
+ "stateMutability": "view",
433
+ "type": "function"
434
+ },
435
+ {
436
+ "inputs": [],
437
+ "name": "decimals",
438
+ "outputs": [
439
+ {
440
+ "internalType": "uint8",
441
+ "name": "",
442
+ "type": "uint8"
443
+ }
444
+ ],
445
+ "stateMutability": "view",
446
+ "type": "function"
447
+ },
448
+ {
449
+ "inputs": [
450
+ {
451
+ "internalType": "address",
452
+ "name": "spender",
453
+ "type": "address"
454
+ },
455
+ {
456
+ "internalType": "uint256",
457
+ "name": "subtractedValue",
458
+ "type": "uint256"
459
+ }
460
+ ],
461
+ "name": "decreaseAllowance",
462
+ "outputs": [
463
+ {
464
+ "internalType": "bool",
465
+ "name": "",
466
+ "type": "bool"
467
+ }
468
+ ],
469
+ "stateMutability": "nonpayable",
470
+ "type": "function"
471
+ },
472
+ {
473
+ "inputs": [],
474
+ "name": "feeRecipient",
475
+ "outputs": [
476
+ {
477
+ "internalType": "address",
478
+ "name": "",
479
+ "type": "address"
480
+ }
481
+ ],
482
+ "stateMutability": "view",
483
+ "type": "function"
484
+ },
485
+ {
486
+ "inputs": [],
487
+ "name": "formula",
488
+ "outputs": [
489
+ {
490
+ "internalType": "contract IFeesFormula",
491
+ "name": "",
492
+ "type": "address"
493
+ }
494
+ ],
495
+ "stateMutability": "view",
496
+ "type": "function"
497
+ },
498
+ {
499
+ "inputs": [
500
+ {
501
+ "internalType": "uint256",
502
+ "name": "value",
503
+ "type": "uint256"
504
+ },
505
+ {
506
+ "internalType": "address",
507
+ "name": "sender",
508
+ "type": "address"
509
+ },
510
+ {
511
+ "internalType": "address",
512
+ "name": "recipient",
513
+ "type": "address"
514
+ }
515
+ ],
516
+ "name": "getFees",
517
+ "outputs": [
518
+ {
519
+ "internalType": "uint256",
520
+ "name": "fee",
521
+ "type": "uint256"
522
+ },
523
+ {
524
+ "internalType": "bool",
525
+ "name": "senderPays",
526
+ "type": "bool"
527
+ }
528
+ ],
529
+ "stateMutability": "view",
530
+ "type": "function"
531
+ },
532
+ {
533
+ "inputs": [
534
+ {
535
+ "internalType": "uint256",
536
+ "name": "value",
537
+ "type": "uint256"
538
+ }
539
+ ],
540
+ "name": "getFees",
541
+ "outputs": [
542
+ {
543
+ "internalType": "uint256",
544
+ "name": "fee",
545
+ "type": "uint256"
546
+ },
547
+ {
548
+ "internalType": "bool",
549
+ "name": "senderPays",
550
+ "type": "bool"
551
+ }
552
+ ],
553
+ "stateMutability": "view",
554
+ "type": "function"
555
+ },
556
+ {
557
+ "inputs": [
558
+ {
559
+ "internalType": "bytes32",
560
+ "name": "role",
561
+ "type": "bytes32"
562
+ }
563
+ ],
564
+ "name": "getRoleAdmin",
565
+ "outputs": [
566
+ {
567
+ "internalType": "bytes32",
568
+ "name": "",
569
+ "type": "bytes32"
570
+ }
571
+ ],
572
+ "stateMutability": "view",
573
+ "type": "function"
574
+ },
575
+ {
576
+ "inputs": [
577
+ {
578
+ "internalType": "bytes32",
579
+ "name": "role",
580
+ "type": "bytes32"
581
+ },
582
+ {
583
+ "internalType": "uint256",
584
+ "name": "index",
585
+ "type": "uint256"
586
+ }
587
+ ],
588
+ "name": "getRoleMember",
589
+ "outputs": [
590
+ {
591
+ "internalType": "address",
592
+ "name": "",
593
+ "type": "address"
594
+ }
595
+ ],
596
+ "stateMutability": "view",
597
+ "type": "function"
598
+ },
599
+ {
600
+ "inputs": [
601
+ {
602
+ "internalType": "bytes32",
603
+ "name": "role",
604
+ "type": "bytes32"
605
+ }
606
+ ],
607
+ "name": "getRoleMemberCount",
608
+ "outputs": [
609
+ {
610
+ "internalType": "uint256",
611
+ "name": "",
612
+ "type": "uint256"
613
+ }
614
+ ],
615
+ "stateMutability": "view",
616
+ "type": "function"
617
+ },
618
+ {
619
+ "inputs": [
620
+ {
621
+ "internalType": "bytes32",
622
+ "name": "role",
623
+ "type": "bytes32"
624
+ },
625
+ {
626
+ "internalType": "address",
627
+ "name": "account",
628
+ "type": "address"
629
+ }
630
+ ],
631
+ "name": "grantRole",
632
+ "outputs": [],
633
+ "stateMutability": "nonpayable",
634
+ "type": "function"
635
+ },
636
+ {
637
+ "inputs": [
638
+ {
639
+ "internalType": "bytes32",
640
+ "name": "role",
641
+ "type": "bytes32"
642
+ },
643
+ {
644
+ "internalType": "address",
645
+ "name": "account",
646
+ "type": "address"
647
+ }
648
+ ],
649
+ "name": "hasRole",
650
+ "outputs": [
651
+ {
652
+ "internalType": "bool",
653
+ "name": "",
654
+ "type": "bool"
655
+ }
656
+ ],
657
+ "stateMutability": "view",
658
+ "type": "function"
659
+ },
660
+ {
661
+ "inputs": [],
662
+ "name": "identity",
663
+ "outputs": [
664
+ {
665
+ "internalType": "contract IIdentity",
666
+ "name": "",
667
+ "type": "address"
668
+ }
669
+ ],
670
+ "stateMutability": "view",
671
+ "type": "function"
672
+ },
673
+ {
674
+ "inputs": [
675
+ {
676
+ "internalType": "address",
677
+ "name": "spender",
678
+ "type": "address"
679
+ },
680
+ {
681
+ "internalType": "uint256",
682
+ "name": "addedValue",
683
+ "type": "uint256"
684
+ }
685
+ ],
686
+ "name": "increaseAllowance",
687
+ "outputs": [
688
+ {
689
+ "internalType": "bool",
690
+ "name": "",
691
+ "type": "bool"
692
+ }
693
+ ],
694
+ "stateMutability": "nonpayable",
695
+ "type": "function"
696
+ },
697
+ {
698
+ "inputs": [
699
+ {
700
+ "internalType": "string",
701
+ "name": "name",
702
+ "type": "string"
703
+ },
704
+ {
705
+ "internalType": "string",
706
+ "name": "symbol",
707
+ "type": "string"
708
+ }
709
+ ],
710
+ "name": "initialize",
711
+ "outputs": [],
712
+ "stateMutability": "nonpayable",
713
+ "type": "function"
714
+ },
715
+ {
716
+ "inputs": [
717
+ {
718
+ "internalType": "string",
719
+ "name": "_name",
720
+ "type": "string"
721
+ },
722
+ {
723
+ "internalType": "string",
724
+ "name": "_symbol",
725
+ "type": "string"
726
+ },
727
+ {
728
+ "internalType": "uint256",
729
+ "name": "_cap",
730
+ "type": "uint256"
731
+ },
732
+ {
733
+ "internalType": "contract IFeesFormula",
734
+ "name": "_formula",
735
+ "type": "address"
736
+ },
737
+ {
738
+ "internalType": "contract IIdentity",
739
+ "name": "_identity",
740
+ "type": "address"
741
+ },
742
+ {
743
+ "internalType": "address",
744
+ "name": "_feeRecipient",
745
+ "type": "address"
746
+ },
747
+ {
748
+ "internalType": "address",
749
+ "name": "_owner",
750
+ "type": "address"
751
+ }
752
+ ],
753
+ "name": "initialize",
754
+ "outputs": [],
755
+ "stateMutability": "nonpayable",
756
+ "type": "function"
757
+ },
758
+ {
759
+ "inputs": [
760
+ {
761
+ "internalType": "address",
762
+ "name": "_minter",
763
+ "type": "address"
764
+ }
765
+ ],
766
+ "name": "isMinter",
767
+ "outputs": [
768
+ {
769
+ "internalType": "bool",
770
+ "name": "",
771
+ "type": "bool"
772
+ }
773
+ ],
774
+ "stateMutability": "view",
775
+ "type": "function"
776
+ },
777
+ {
778
+ "inputs": [
779
+ {
780
+ "internalType": "address",
781
+ "name": "_pauser",
782
+ "type": "address"
783
+ }
784
+ ],
785
+ "name": "isPauser",
786
+ "outputs": [
787
+ {
788
+ "internalType": "bool",
789
+ "name": "",
790
+ "type": "bool"
791
+ }
792
+ ],
793
+ "stateMutability": "view",
794
+ "type": "function"
795
+ },
796
+ {
797
+ "inputs": [
798
+ {
799
+ "internalType": "address",
800
+ "name": "to",
801
+ "type": "address"
802
+ },
803
+ {
804
+ "internalType": "uint256",
805
+ "name": "value",
806
+ "type": "uint256"
807
+ }
808
+ ],
809
+ "name": "mint",
810
+ "outputs": [
811
+ {
812
+ "internalType": "bool",
813
+ "name": "",
814
+ "type": "bool"
815
+ }
816
+ ],
817
+ "stateMutability": "nonpayable",
818
+ "type": "function"
819
+ },
820
+ {
821
+ "inputs": [],
822
+ "name": "name",
823
+ "outputs": [
824
+ {
825
+ "internalType": "string",
826
+ "name": "",
827
+ "type": "string"
828
+ }
829
+ ],
830
+ "stateMutability": "view",
831
+ "type": "function"
832
+ },
833
+ {
834
+ "inputs": [
835
+ {
836
+ "internalType": "address",
837
+ "name": "owner",
838
+ "type": "address"
839
+ }
840
+ ],
841
+ "name": "nonces",
842
+ "outputs": [
843
+ {
844
+ "internalType": "uint256",
845
+ "name": "",
846
+ "type": "uint256"
847
+ }
848
+ ],
849
+ "stateMutability": "view",
850
+ "type": "function"
851
+ },
852
+ {
853
+ "inputs": [],
854
+ "name": "owner",
855
+ "outputs": [
856
+ {
857
+ "internalType": "address",
858
+ "name": "",
859
+ "type": "address"
860
+ }
861
+ ],
862
+ "stateMutability": "view",
863
+ "type": "function"
864
+ },
865
+ {
866
+ "inputs": [],
867
+ "name": "pause",
868
+ "outputs": [],
869
+ "stateMutability": "nonpayable",
870
+ "type": "function"
871
+ },
872
+ {
873
+ "inputs": [],
874
+ "name": "paused",
875
+ "outputs": [
876
+ {
877
+ "internalType": "bool",
878
+ "name": "",
879
+ "type": "bool"
880
+ }
881
+ ],
882
+ "stateMutability": "view",
883
+ "type": "function"
884
+ },
885
+ {
886
+ "inputs": [
887
+ {
888
+ "internalType": "address",
889
+ "name": "owner",
890
+ "type": "address"
891
+ },
892
+ {
893
+ "internalType": "address",
894
+ "name": "spender",
895
+ "type": "address"
896
+ },
897
+ {
898
+ "internalType": "uint256",
899
+ "name": "value",
900
+ "type": "uint256"
901
+ },
902
+ {
903
+ "internalType": "uint256",
904
+ "name": "deadline",
905
+ "type": "uint256"
906
+ },
907
+ {
908
+ "internalType": "uint8",
909
+ "name": "v",
910
+ "type": "uint8"
911
+ },
912
+ {
913
+ "internalType": "bytes32",
914
+ "name": "r",
915
+ "type": "bytes32"
916
+ },
917
+ {
918
+ "internalType": "bytes32",
919
+ "name": "s",
920
+ "type": "bytes32"
921
+ }
922
+ ],
923
+ "name": "permit",
924
+ "outputs": [],
925
+ "stateMutability": "nonpayable",
926
+ "type": "function"
927
+ },
928
+ {
929
+ "inputs": [],
930
+ "name": "proxiableUUID",
931
+ "outputs": [
932
+ {
933
+ "internalType": "bytes32",
934
+ "name": "",
935
+ "type": "bytes32"
936
+ }
937
+ ],
938
+ "stateMutability": "view",
939
+ "type": "function"
940
+ },
941
+ {
942
+ "inputs": [],
943
+ "name": "renounceMinter",
944
+ "outputs": [],
945
+ "stateMutability": "nonpayable",
946
+ "type": "function"
947
+ },
948
+ {
949
+ "inputs": [
950
+ {
951
+ "internalType": "bytes32",
952
+ "name": "role",
953
+ "type": "bytes32"
954
+ },
955
+ {
956
+ "internalType": "address",
957
+ "name": "account",
958
+ "type": "address"
959
+ }
960
+ ],
961
+ "name": "renounceRole",
962
+ "outputs": [],
963
+ "stateMutability": "nonpayable",
964
+ "type": "function"
965
+ },
966
+ {
967
+ "inputs": [
968
+ {
969
+ "internalType": "bytes32",
970
+ "name": "role",
971
+ "type": "bytes32"
972
+ },
973
+ {
974
+ "internalType": "address",
975
+ "name": "account",
976
+ "type": "address"
977
+ }
978
+ ],
979
+ "name": "revokeRole",
980
+ "outputs": [],
981
+ "stateMutability": "nonpayable",
982
+ "type": "function"
983
+ },
984
+ {
985
+ "inputs": [
986
+ {
987
+ "internalType": "address",
988
+ "name": "_feeRecipient",
989
+ "type": "address"
990
+ }
991
+ ],
992
+ "name": "setFeeRecipient",
993
+ "outputs": [],
994
+ "stateMutability": "nonpayable",
995
+ "type": "function"
996
+ },
997
+ {
998
+ "inputs": [
999
+ {
1000
+ "internalType": "contract IFeesFormula",
1001
+ "name": "_formula",
1002
+ "type": "address"
1003
+ }
1004
+ ],
1005
+ "name": "setFormula",
1006
+ "outputs": [],
1007
+ "stateMutability": "nonpayable",
1008
+ "type": "function"
1009
+ },
1010
+ {
1011
+ "inputs": [
1012
+ {
1013
+ "internalType": "contract IIdentityV2",
1014
+ "name": "_identity",
1015
+ "type": "address"
1016
+ }
1017
+ ],
1018
+ "name": "setIdentity",
1019
+ "outputs": [],
1020
+ "stateMutability": "nonpayable",
1021
+ "type": "function"
1022
+ },
1023
+ {
1024
+ "inputs": [
1025
+ {
1026
+ "internalType": "bytes4",
1027
+ "name": "interfaceId",
1028
+ "type": "bytes4"
1029
+ }
1030
+ ],
1031
+ "name": "supportsInterface",
1032
+ "outputs": [
1033
+ {
1034
+ "internalType": "bool",
1035
+ "name": "",
1036
+ "type": "bool"
1037
+ }
1038
+ ],
1039
+ "stateMutability": "view",
1040
+ "type": "function"
1041
+ },
1042
+ {
1043
+ "inputs": [],
1044
+ "name": "symbol",
1045
+ "outputs": [
1046
+ {
1047
+ "internalType": "string",
1048
+ "name": "",
1049
+ "type": "string"
1050
+ }
1051
+ ],
1052
+ "stateMutability": "view",
1053
+ "type": "function"
1054
+ },
1055
+ {
1056
+ "inputs": [],
1057
+ "name": "totalSupply",
1058
+ "outputs": [
1059
+ {
1060
+ "internalType": "uint256",
1061
+ "name": "",
1062
+ "type": "uint256"
1063
+ }
1064
+ ],
1065
+ "stateMutability": "view",
1066
+ "type": "function"
1067
+ },
1068
+ {
1069
+ "inputs": [
1070
+ {
1071
+ "internalType": "address",
1072
+ "name": "to",
1073
+ "type": "address"
1074
+ },
1075
+ {
1076
+ "internalType": "uint256",
1077
+ "name": "value",
1078
+ "type": "uint256"
1079
+ }
1080
+ ],
1081
+ "name": "transfer",
1082
+ "outputs": [
1083
+ {
1084
+ "internalType": "bool",
1085
+ "name": "",
1086
+ "type": "bool"
1087
+ }
1088
+ ],
1089
+ "stateMutability": "nonpayable",
1090
+ "type": "function"
1091
+ },
1092
+ {
1093
+ "inputs": [
1094
+ {
1095
+ "internalType": "address",
1096
+ "name": "to",
1097
+ "type": "address"
1098
+ },
1099
+ {
1100
+ "internalType": "uint256",
1101
+ "name": "value",
1102
+ "type": "uint256"
1103
+ },
1104
+ {
1105
+ "internalType": "bytes",
1106
+ "name": "data",
1107
+ "type": "bytes"
1108
+ }
1109
+ ],
1110
+ "name": "transferAndCall",
1111
+ "outputs": [
1112
+ {
1113
+ "internalType": "bool",
1114
+ "name": "",
1115
+ "type": "bool"
1116
+ }
1117
+ ],
1118
+ "stateMutability": "nonpayable",
1119
+ "type": "function"
1120
+ },
1121
+ {
1122
+ "inputs": [
1123
+ {
1124
+ "internalType": "address",
1125
+ "name": "from",
1126
+ "type": "address"
1127
+ },
1128
+ {
1129
+ "internalType": "address",
1130
+ "name": "to",
1131
+ "type": "address"
1132
+ },
1133
+ {
1134
+ "internalType": "uint256",
1135
+ "name": "value",
1136
+ "type": "uint256"
1137
+ }
1138
+ ],
1139
+ "name": "transferFrom",
1140
+ "outputs": [
1141
+ {
1142
+ "internalType": "bool",
1143
+ "name": "",
1144
+ "type": "bool"
1145
+ }
1146
+ ],
1147
+ "stateMutability": "nonpayable",
1148
+ "type": "function"
1149
+ },
1150
+ {
1151
+ "inputs": [
1152
+ {
1153
+ "internalType": "address",
1154
+ "name": "_owner",
1155
+ "type": "address"
1156
+ }
1157
+ ],
1158
+ "name": "transferOwnership",
1159
+ "outputs": [],
1160
+ "stateMutability": "nonpayable",
1161
+ "type": "function"
1162
+ },
1163
+ {
1164
+ "inputs": [],
1165
+ "name": "unpause",
1166
+ "outputs": [],
1167
+ "stateMutability": "nonpayable",
1168
+ "type": "function"
1169
+ },
1170
+ {
1171
+ "inputs": [
1172
+ {
1173
+ "internalType": "address",
1174
+ "name": "newImplementation",
1175
+ "type": "address"
1176
+ }
1177
+ ],
1178
+ "name": "upgradeTo",
1179
+ "outputs": [],
1180
+ "stateMutability": "nonpayable",
1181
+ "type": "function"
1182
+ },
1183
+ {
1184
+ "inputs": [
1185
+ {
1186
+ "internalType": "address",
1187
+ "name": "newImplementation",
1188
+ "type": "address"
1189
+ },
1190
+ {
1191
+ "internalType": "bytes",
1192
+ "name": "data",
1193
+ "type": "bytes"
1194
+ }
1195
+ ],
1196
+ "name": "upgradeToAndCall",
1197
+ "outputs": [],
1198
+ "stateMutability": "payable",
1199
+ "type": "function"
1200
+ }
1201
+ ],
1202
+ "bytecode": "0x60a06040523060805234801561001457600080fd5b506080516139cb61004c60003960008181610a9601528181610ad601528181610ef701528181610f370152610faf01526139cb6000f3fe60806040526004361061025a5760003560e01c806301ffc9a71461025f57806306fdde0314610294578063095ea7b3146102b657806318160ddd146102d657806323b872dd146102f6578063248a9ca3146103165780632c159a1a146103365780632f2ff15d14610364578063313ce56714610386578063355274ea146103a25780633644e515146103b957806336568abe146103ce5780633659cfe6146103ee57806339364fd71461040e57806339509351146104435780633f4ba83a146104635780634000aea01461047857806340c10f191461049857806342966c68146104b857806346904840146104d857806346fbf68e146104f95780634b75f54f146105195780634cd88b761461053a5780634f1ef2861461055a57806352d1902d1461056d5780635c975abb146105825780635d5bf1781461059b57806370a08231146105bb57806379cc6790146105db5780637ecebe00146105fb57806382dc1ec41461061b5780638456cb591461063b5780638da5cb5b146106505780639010d07c1461066557806391d148541461068557806395d89b41146106a5578063983b2d56146106ba57806398650275146106da578063a217fddf146106ef578063a457c2d714610704578063a9059cbb14610724578063aa271e1a14610744578063ca15c87314610764578063d505accf14610784578063d5391393146107a4578063d547741f146107c6578063d5a06d4c146107e6578063dd62ed3e14610806578063dea7f11214610826578063e63ab1e914610846578063e74b981b14610868578063ecc06c7614610888578063f2fde38b146108a8575b600080fd5b34801561026b57600080fd5b5061027f61027a366004612ebb565b6108c8565b60405190151581526020015b60405180910390f35b3480156102a057600080fd5b506102a96108f3565b60405161028b9190612f35565b3480156102c257600080fd5b5061027f6102d1366004612f5d565b610986565b3480156102e257600080fd5b5061012f545b60405190815260200161028b565b34801561030257600080fd5b5061027f610311366004612f89565b61099e565b34801561032257600080fd5b506102e8610331366004612fca565b6109c4565b34801561034257600080fd5b5061029054610357906001600160a01b031681565b60405161028b9190612fe3565b34801561037057600080fd5b5061038461037f366004612ff7565b6109d9565b005b34801561039257600080fd5b506040516002815260200161028b565b3480156103ae57600080fd5b506102e86102915481565b3480156103c557600080fd5b506102e86109fa565b3480156103da57600080fd5b506103846103e9366004612ff7565b610a09565b3480156103fa57600080fd5b50610384610409366004613027565b610a8c565b34801561041a57600080fd5b5061042e610429366004613044565b610b54565b6040805192835290151560208301520161028b565b34801561044f57600080fd5b5061027f61045e366004612f5d565b610bda565b34801561046f57600080fd5b50610384610bfc565b34801561048457600080fd5b5061027f610493366004613086565b610c7a565b3480156104a457600080fd5b5061027f6104b3366004612f5d565b610d80565b3480156104c457600080fd5b506103846104d3366004612fca565b610e07565b3480156104e457600080fd5b5061028e54610357906001600160a01b031681565b34801561050557600080fd5b5061027f610514366004613027565b610e11565b34801561052557600080fd5b5061028f54610357906001600160a01b031681565b34801561054657600080fd5b506103846105553660046131b9565b610e2b565b61038461056836600461321c565b610eed565b34801561057957600080fd5b506102e8610fa2565b34801561058e57600080fd5b506101f85460ff1661027f565b3480156105a757600080fd5b506103846105b6366004613027565b611050565b3480156105c757600080fd5b506102e86105d6366004613027565b61109a565b3480156105e757600080fd5b506103846105f6366004612f5d565b6110b6565b34801561060757600080fd5b506102e8610616366004613027565b6110cb565b34801561062757600080fd5b50610384610636366004613027565b6110ea565b34801561064757600080fd5b50610384611102565b34801561065c57600080fd5b5061035761117c565b34801561067157600080fd5b50610357610680366004613275565b611184565b34801561069157600080fd5b5061027f6106a0366004612ff7565b61119c565b3480156106b157600080fd5b506102a96111c7565b3480156106c657600080fd5b506103846106d5366004613027565b6111d7565b3480156106e657600080fd5b506103846111ef565b3480156106fb57600080fd5b506102e8600081565b34801561071057600080fd5b5061027f61071f366004612f5d565b611207565b34801561073057600080fd5b5061027f61073f366004612f5d565b61128d565b34801561075057600080fd5b5061027f61075f366004613027565b6112af565b34801561077057600080fd5b506102e861077f366004612fca565b6112c9565b34801561079057600080fd5b5061038461079f366004613297565b6112e0565b3480156107b057600080fd5b506102e860008051602061395683398151915281565b3480156107d257600080fd5b506103846107e1366004612ff7565b611444565b3480156107f257600080fd5b5061042e610801366004612fca565b611460565b34801561081257600080fd5b506102e861082136600461330e565b6114e3565b34801561083257600080fd5b5061038461084136600461333c565b61150f565b34801561085257600080fd5b506102e860008051602061390f83398151915281565b34801561087457600080fd5b50610384610883366004613027565b611675565b34801561089457600080fd5b506103846108a3366004613027565b6116bf565b3480156108b457600080fd5b506103846108c3366004613027565b611709565b60006001600160e01b03198216635a05180f60e01b14806108ed57506108ed82611746565b92915050565b60606101308054610903906133f5565b80601f016020809104026020016040519081016040528092919081815260200182805461092f906133f5565b801561097c5780601f106109515761010080835404028352916020019161097c565b820191906000526020600020905b81548152906001019060200180831161095f57829003601f168201915b5050505050905090565b60003361099481858561177b565b5060019392505050565b6000806109ac8585856118a0565b90506109b9858583611a13565b9150505b9392505050565b600090815260c9602052604090206001015490565b6109e2826109c4565b6109eb81611a2c565b6109f58383611a36565b505050565b6000610a04611a58565b905090565b6001600160a01b0381163314610a7e5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a888282611ad5565b5050565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003610ad45760405162461bcd60e51b8152600401610a7590613429565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610b06611af7565b6001600160a01b031614610b2c5760405162461bcd60e51b8152600401610a7590613463565b610b3581611b13565b60408051600080825260208201909252610b5191839190611b3a565b50565b61028f54604051631eed540360e11b815260009182916001600160a01b0390911690633ddaa80690610b8e9088908890889060040161349d565b6040805180830381865afa158015610baa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bce91906134d1565b91509150935093915050565b600033610994818585610bed83836114e3565b610bf79190613513565b61177b565b610c1460008051602061390f8339815191523361119c565b610c705760405162461bcd60e51b8152602060048201526039602482015260008051602061388f83398151915260448201527876652070617573657220726f6c6520746f20756e706175736560381b6064820152608401610a75565b610c78611ca5565b565b600080610c883387876118a0565b90506000610c968783611cf2565b9050866001600160a01b0316336001600160a01b03167fe19260aff97b920c7df27010903aeb9c8d2be5d310a2c67824cf3f15396e4c16848888604051610cdf93929190613526565b60405180910390a3863b15610d7657610d2f878387878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d0092505050565b610d765760405162461bcd60e51b815260206004820152601860248201527710dbdb9d1c9858dd0819985b1b189858dac819985a5b195960421b6044820152606401610a75565b9695505050505050565b6102915460009015610dfd576102915482610d9b61012f5490565b610da59190613513565b1115610dfd5760405162461bcd60e51b815260206004820152602160248201527f43616e6e6f7420696e63726561736520737570706c79206265796f6e642063616044820152600760fc1b6064820152608401610a75565b6109bd8383611dbf565b610b513382611e45565b60006108ed60008051602061390f8339815191528361119c565b600054610100900460ff1615808015610e4b5750600054600160ff909116105b80610e6c5750610e5a30611f76565b158015610e6c575060005460ff166001145b610e885760405162461bcd60e51b8152600401610a759061355c565b6000805460ff191660011790558015610eab576000805461ff0019166101001790555b610eb58383611f85565b80156109f5576000805461ff0019169055604051600181526000805160206138ef8339815191529060200160405180910390a1505050565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003610f355760405162461bcd60e51b8152600401610a7590613429565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610f67611af7565b6001600160a01b031614610f8d5760405162461bcd60e51b8152600401610a7590613463565b610f9682611b13565b610a8882826001611b3a565b6000306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461103d5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401610a75565b506000805160206138cf83398151915290565b61105b60003361119c565b6110775760405162461bcd60e51b8152600401610a75906135aa565b61029080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0316600090815261012d602052604090205490565b6110c1823383612001565b610a888282611e45565b6001600160a01b038116600090815261019360205260408120546108ed565b610b5160008051602061390f833981519152826109d9565b61111a60008051602061390f8339815191523361119c565b6111745760405162461bcd60e51b8152602060048201526037602482015260008051602061388f83398151915260448201527676652070617573657220726f6c6520746f20706175736560481b6064820152608401610a75565b610c7861207b565b6000610a0481805b600082815260fb602052604081206109bd90836120b9565b600091825260c9602090815260408084206001600160a01b0393909316845291905290205460ff1690565b60606101318054610903906133f5565b610b51600080516020613956833981519152826109d9565b610c7860008051602061395683398151915233610a09565b6000338161121582866114e3565b9050838110156112755760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610a75565b611282828686840361177b565b506001949350505050565b60008061129b3385856118a0565b90506112a78482611cf2565b949350505050565b60006108ed6000805160206139568339815191528361119c565b600081815260fb602052604081206108ed906120c5565b834211156113305760405162461bcd60e51b815260206004820152601d60248201527f45524332305065726d69743a206578706972656420646561646c696e650000006044820152606401610a75565b60007f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c988888861135f8c6120cf565b6040805160208101969096526001600160a01b0394851690860152929091166060840152608083015260a082015260c0810186905260e00160405160208183030381529060405280519060200120905060006113ba826120f8565b905060006113ca82878787612146565b9050896001600160a01b0316816001600160a01b03161461142d5760405162461bcd60e51b815260206004820152601e60248201527f45524332305065726d69743a20696e76616c6964207369676e617475726500006044820152606401610a75565b6114388a8a8a61177b565b50505050505050505050565b61144d826109c4565b61145681611a2c565b6109f58383611ad5565b61028f54604051631eed540360e11b815260009182916001600160a01b0390911690633ddaa8069061149a9086908590819060040161349d565b6040805180830381865afa1580156114b6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114da91906134d1565b91509150915091565b6001600160a01b03918216600090815261012e6020908152604080832093909416825291909152205490565b600054610100900460ff161580801561152f5750600054600160ff909116105b80611550575061153e30611f76565b158015611550575060005460ff166001145b61156c5760405162461bcd60e51b8152600401610a759061355c565b6000805460ff19166001179055801561158f576000805461ff0019166101001790555b6115998888611f85565b61028e80546001600160a01b038086166001600160a01b031992831617909255610290805487841690831617905561028f8054928816929091169190911790556102918690556115e63390565b6001600160a01b0316826001600160a01b0316146116375761160782611709565b61161f60008051602061395683398151915233610a09565b61163760008051602061390f83398151915233610a09565b801561166b576000805461ff0019169055604051600181526000805160206138ef8339815191529060200160405180910390a15b5050505050505050565b61168060003361119c565b61169c5760405162461bcd60e51b8152600401610a75906135aa565b61028e80546001600160a01b0319166001600160a01b0392909216919091179055565b6116ca60003361119c565b6116e65760405162461bcd60e51b8152600401610a75906135aa565b61028f80546001600160a01b0319166001600160a01b0392909216919091179055565b61171460003361119c565b6117305760405162461bcd60e51b8152600401610a75906135aa565b61173b6000826109d9565b610b51600033610a09565b60006001600160e01b03198216637965db0b60e01b14806108ed57506301ffc9a760e01b6001600160e01b03198316146108ed565b6001600160a01b0383166117dd5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610a75565b6001600160a01b03821661183e5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610a75565b6001600160a01b03838116600081815261012e602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60008060006118b0848787610b54565b9150915060008211801561193357506102905460405163639e625760e11b81526001600160a01b039091169063c73cc4ae906118f0903390600401612fe3565b602060405180830381865afa15801561190d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061193191906135cd565b155b15611a095780158061195657506119498661109a565b6119538386613513565b11155b6119a25760405162461bcd60e51b815260206004820181905260248201527f4e6f7420656e6f7567682062616c616e636520746f20706179205458206665656044820152606401610a75565b336001600160a01b038716036119cf5761028e546119c9906001600160a01b031683611cf2565b506119ea565b61028e546119e89087906001600160a01b031684611a13565b505b806119fe576119f982856135e8565b611a00565b835b925050506109bd565b5091949350505050565b600033611a21858285612001565b61128285858561216e565b610b518133612314565b611a40828261236d565b600082815260fb602052604090206109f590826123f3565b6000610a047f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f611a8861015f5490565b610160546040805160208101859052908101839052606081018290524660808201523060a082015260009060c0016040516020818303038152906040528051906020012090509392505050565b611adf8282612408565b600082815260fb602052604090206109f5908261246f565b6000805160206138cf833981519152546001600160a01b031690565b611b1e60003361119c565b610b515760405162461bcd60e51b8152600401610a75906135aa565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615611b6d576109f583612484565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015611bc7575060408051601f3d908101601f19168201909252611bc4918101906135fb565b60015b611c2a5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610a75565b6000805160206138cf8339815191528114611c995760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610a75565b506109f583838361251e565b611cad612543565b6101f8805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b604051611ce89190612fe3565b60405180910390a1565b60003361099481858561216e565b604051635260769b60e11b815260009084906001600160a01b0382169063a4c0ed3690611d3590339088908890600401613614565b6020604051808303816000875af1158015611d54573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d7891906135cd565b6112825760405162461bcd60e51b815260206004820152601860248201527710dbdb9d1c9858dd0811985b1b189858dac819985a5b195960421b6044820152606401610a75565b6000611dd96000805160206139568339815191523361119c565b611e325760405162461bcd60e51b8152602060048201526036602482015260008051602061388f8339815191526044820152751d99481b5a5b9d195c881c9bdb19481d1bc81b5a5b9d60521b6064820152608401610a75565b611e3c838361258d565b50600192915050565b6001600160a01b038216611ea55760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608401610a75565b611eb18260008361264a565b6001600160a01b038216600090815261012d602052604090205481811015611f265760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608401610a75565b6001600160a01b038316600081815261012d60209081526040808320868603905561012f8054879003905551858152919291600080516020613976833981519152910160405180910390a3505050565b6001600160a01b03163b151590565b600054610100900460ff16611fac5760405162461bcd60e51b8152600401610a759061363b565b611fb4612655565b611fbc612655565b611fc4612655565b611fcc612655565b611fd6828261267c565b611fde612655565b611fe66126be565b611fee612655565b611ff882826126f2565b610a8882612754565b600061200d84846114e3565b9050600019811461207557818110156120685760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610a75565b612075848484840361177b565b50505050565b61208361277b565b6101f8805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258611cdb3390565b60006109bd83836127c2565b60006108ed825490565b6001600160a01b0381166000908152610193602052604090208054600181018255905b50919050565b60006108ed612105611a58565b8360405161190160f01b6020820152602281018390526042810182905260009060620160405160208183030381529060405280519060200120905092915050565b6000806000612157878787876127ec565b91509150612164816128a6565b5095945050505050565b6001600160a01b0383166121d25760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610a75565b6001600160a01b0382166122345760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610a75565b61223f83838361264a565b6001600160a01b038316600090815261012d6020526040902054818110156122b85760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610a75565b6001600160a01b03808516600081815261012d60205260408082208686039055928616808252908390208054860190559151600080516020613976833981519152906123079086815260200190565b60405180910390a3612075565b61231e828261119c565b610a885761232b816129eb565b6123368360206129fd565b604051602001612347929190613686565b60408051601f198184030181529082905262461bcd60e51b8252610a7591600401612f35565b612377828261119c565b610a8857600082815260c9602090815260408083206001600160a01b03851684529091529020805460ff191660011790556123af3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60006109bd836001600160a01b038416612b98565b612412828261119c565b15610a8857600082815260c9602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60006109bd836001600160a01b038416612be7565b61248d81611f76565b6124ef5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610a75565b6000805160206138cf83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b61252783612cda565b6000825111806125345750805b156109f5576120758383612d1a565b6101f85460ff16610c785760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152606401610a75565b6001600160a01b0382166125e35760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610a75565b6125ef6000838361264a565b8061012f60008282546126029190613513565b90915550506001600160a01b038216600081815261012d6020908152604080832080548601905551848152600080516020613976833981519152910160405180910390a35050565b6109f5838383612e0c565b600054610100900460ff16610c785760405162461bcd60e51b8152600401610a759061363b565b600054610100900460ff166126a35760405162461bcd60e51b8152600401610a759061363b565b6101306126b08382613743565b506101316109f58282613743565b600054610100900460ff166126e55760405162461bcd60e51b8152600401610a759061363b565b6101f8805460ff19169055565b600054610100900460ff166127195760405162461bcd60e51b8152600401610a759061363b565b612724600033612e73565b61273c60008051602061395683398151915233612e73565b610a8860008051602061390f83398151915233612e73565b600054610100900460ff16610b515760405162461bcd60e51b8152600401610a759061363b565b6101f85460ff1615610c785760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152606401610a75565b60008260000182815481106127d9576127d9613802565b9060005260206000200154905092915050565b6000806fa2a8918ca85bafe22016d0b997e4df60600160ff1b03831115612819575060009050600361289d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa15801561286d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166128965760006001925092505061289d565b9150600090505b94509492505050565b60008160048111156128ba576128ba613818565b036128c25750565b60018160048111156128d6576128d6613818565b0361291e5760405162461bcd60e51b815260206004820152601860248201527745434453413a20696e76616c6964207369676e617475726560401b6044820152606401610a75565b600281600481111561293257612932613818565b0361297f5760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610a75565b600381600481111561299357612993613818565b03610b515760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610a75565b60606108ed6001600160a01b03831660145b60606000612a0c83600261382e565b612a17906002613513565b6001600160401b03811115612a2e57612a2e61310e565b6040519080825280601f01601f191660200182016040528015612a58576020820181803683370190505b509050600360fc1b81600081518110612a7357612a73613802565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110612aa257612aa2613802565b60200101906001600160f81b031916908160001a9053506000612ac684600261382e565b612ad1906001613513565b90505b6001811115612b49576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110612b0557612b05613802565b1a60f81b828281518110612b1b57612b1b613802565b60200101906001600160f81b031916908160001a90535060049490941c93612b4281613845565b9050612ad4565b5083156109bd5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a75565b6000818152600183016020526040812054612bdf575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556108ed565b5060006108ed565b60008181526001830160205260408120548015612cd0576000612c0b6001836135e8565b8554909150600090612c1f906001906135e8565b9050818114612c84576000866000018281548110612c3f57612c3f613802565b9060005260206000200154905080876000018481548110612c6257612c62613802565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080612c9557612c9561385c565b6001900381819060005260206000200160009055905585600101600086815260200190815260200160002060009055600193505050506108ed565b60009150506108ed565b612ce381612484565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060612d2583611f76565b612d805760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610a75565b600080846001600160a01b031684604051612d9b9190613872565b600060405180830381855af49150503d8060008114612dd6576040519150601f19603f3d011682016040523d82523d6000602084013e612ddb565b606091505b5091509150612e03828260405180606001604052806027815260200161392f60279139612e7d565b95945050505050565b6101f85460ff16156109f55760405162461bcd60e51b815260206004820152602a60248201527f45524332305061757361626c653a20746f6b656e207472616e736665722077686044820152691a5b19481c185d5cd95960b21b6064820152608401610a75565b610a888282611a36565b60608315612e8c5750816109bd565b6109bd8383815115612ea15781518083602001fd5b8060405162461bcd60e51b8152600401610a759190612f35565b600060208284031215612ecd57600080fd5b81356001600160e01b0319811681146109bd57600080fd5b60005b83811015612f00578181015183820152602001612ee8565b50506000910152565b60008151808452612f21816020860160208601612ee5565b601f01601f19169290920160200192915050565b6020815260006109bd6020830184612f09565b6001600160a01b0381168114610b5157600080fd5b60008060408385031215612f7057600080fd5b8235612f7b81612f48565b946020939093013593505050565b600080600060608486031215612f9e57600080fd5b8335612fa981612f48565b92506020840135612fb981612f48565b929592945050506040919091013590565b600060208284031215612fdc57600080fd5b5035919050565b6001600160a01b0391909116815260200190565b6000806040838503121561300a57600080fd5b82359150602083013561301c81612f48565b809150509250929050565b60006020828403121561303957600080fd5b81356109bd81612f48565b60008060006060848603121561305957600080fd5b83359250602084013561306b81612f48565b9150604084013561307b81612f48565b809150509250925092565b6000806000806060858703121561309c57600080fd5b84356130a781612f48565b93506020850135925060408501356001600160401b03808211156130ca57600080fd5b818701915087601f8301126130de57600080fd5b8135818111156130ed57600080fd5b8860208285010111156130ff57600080fd5b95989497505060200194505050565b634e487b7160e01b600052604160045260246000fd5b60006001600160401b038084111561313e5761313e61310e565b604051601f8501601f19908116603f011681019082821181831017156131665761316661310e565b8160405280935085815286868601111561317f57600080fd5b858560208301376000602087830101525050509392505050565b600082601f8301126131aa57600080fd5b6109bd83833560208501613124565b600080604083850312156131cc57600080fd5b82356001600160401b03808211156131e357600080fd5b6131ef86838701613199565b9350602085013591508082111561320557600080fd5b5061321285828601613199565b9150509250929050565b6000806040838503121561322f57600080fd5b823561323a81612f48565b915060208301356001600160401b0381111561325557600080fd5b8301601f8101851361326657600080fd5b61321285823560208401613124565b6000806040838503121561328857600080fd5b50508035926020909101359150565b600080600080600080600060e0888a0312156132b257600080fd5b87356132bd81612f48565b965060208801356132cd81612f48565b95506040880135945060608801359350608088013560ff811681146132f157600080fd5b9699959850939692959460a0840135945060c09093013592915050565b6000806040838503121561332157600080fd5b823561332c81612f48565b9150602083013561301c81612f48565b600080600080600080600060e0888a03121561335757600080fd5b87356001600160401b038082111561336e57600080fd5b61337a8b838c01613199565b985060208a013591508082111561339057600080fd5b5061339d8a828b01613199565b9650506040880135945060608801356133b581612f48565b935060808801356133c581612f48565b925060a08801356133d581612f48565b915060c08801356133e581612f48565b8091505092959891949750929550565b600181811c9082168061340957607f821691505b6020821081036120f257634e487b7160e01b600052602260045260246000fd5b6020808252602c908201526000805160206138af83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206138af83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b9283526001600160a01b03918216602084015216604082015260600190565b805180151581146134cc57600080fd5b919050565b600080604083850312156134e457600080fd5b825191506134f4602084016134bc565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b808201808211156108ed576108ed6134fd565b83815260406020820152816040820152818360608301376000818301606090810191909152601f909201601f1916010192915050565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b6020808252600990820152683737ba1037bbb732b960b91b604082015260600190565b6000602082840312156135df57600080fd5b6109bd826134bc565b818103818111156108ed576108ed6134fd565b60006020828403121561360d57600080fd5b5051919050565b60018060a01b0384168152826020820152606060408201526000612e036060830184612f09565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b8152600083516136b8816017850160208801612ee5565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516136e9816028840160208801612ee5565b01602801949350505050565b601f8211156109f557600081815260208120601f850160051c8101602086101561371c5750805b601f850160051c820191505b8181101561373b57828155600101613728565b505050505050565b81516001600160401b0381111561375c5761375c61310e565b6137708161376a84546133f5565b846136f5565b602080601f8311600181146137a5576000841561378d5750858301515b600019600386901b1c1916600185901b17855561373b565b600085815260208120601f198616915b828110156137d4578886015182559484019460019091019084016137b5565b50858210156137f25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052602160045260246000fd5b80820281158282048414176108ed576108ed6134fd565b600081613854576138546134fd565b506000190190565b634e487b7160e01b600052603160045260246000fd5b60008251613884818460208701612ee5565b919091019291505056fe45524332305072657365744d696e7465725061757365723a206d75737420686146756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249865d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c65649f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa26469706673582212201690eab5366829efc9d4100e47b131210a8adbfa821fffd18cbb76936dc273b064736f6c63430008130033",
1203
+ "deployedBytecode": "0x60806040526004361061025a5760003560e01c806301ffc9a71461025f57806306fdde0314610294578063095ea7b3146102b657806318160ddd146102d657806323b872dd146102f6578063248a9ca3146103165780632c159a1a146103365780632f2ff15d14610364578063313ce56714610386578063355274ea146103a25780633644e515146103b957806336568abe146103ce5780633659cfe6146103ee57806339364fd71461040e57806339509351146104435780633f4ba83a146104635780634000aea01461047857806340c10f191461049857806342966c68146104b857806346904840146104d857806346fbf68e146104f95780634b75f54f146105195780634cd88b761461053a5780634f1ef2861461055a57806352d1902d1461056d5780635c975abb146105825780635d5bf1781461059b57806370a08231146105bb57806379cc6790146105db5780637ecebe00146105fb57806382dc1ec41461061b5780638456cb591461063b5780638da5cb5b146106505780639010d07c1461066557806391d148541461068557806395d89b41146106a5578063983b2d56146106ba57806398650275146106da578063a217fddf146106ef578063a457c2d714610704578063a9059cbb14610724578063aa271e1a14610744578063ca15c87314610764578063d505accf14610784578063d5391393146107a4578063d547741f146107c6578063d5a06d4c146107e6578063dd62ed3e14610806578063dea7f11214610826578063e63ab1e914610846578063e74b981b14610868578063ecc06c7614610888578063f2fde38b146108a8575b600080fd5b34801561026b57600080fd5b5061027f61027a366004612ebb565b6108c8565b60405190151581526020015b60405180910390f35b3480156102a057600080fd5b506102a96108f3565b60405161028b9190612f35565b3480156102c257600080fd5b5061027f6102d1366004612f5d565b610986565b3480156102e257600080fd5b5061012f545b60405190815260200161028b565b34801561030257600080fd5b5061027f610311366004612f89565b61099e565b34801561032257600080fd5b506102e8610331366004612fca565b6109c4565b34801561034257600080fd5b5061029054610357906001600160a01b031681565b60405161028b9190612fe3565b34801561037057600080fd5b5061038461037f366004612ff7565b6109d9565b005b34801561039257600080fd5b506040516002815260200161028b565b3480156103ae57600080fd5b506102e86102915481565b3480156103c557600080fd5b506102e86109fa565b3480156103da57600080fd5b506103846103e9366004612ff7565b610a09565b3480156103fa57600080fd5b50610384610409366004613027565b610a8c565b34801561041a57600080fd5b5061042e610429366004613044565b610b54565b6040805192835290151560208301520161028b565b34801561044f57600080fd5b5061027f61045e366004612f5d565b610bda565b34801561046f57600080fd5b50610384610bfc565b34801561048457600080fd5b5061027f610493366004613086565b610c7a565b3480156104a457600080fd5b5061027f6104b3366004612f5d565b610d80565b3480156104c457600080fd5b506103846104d3366004612fca565b610e07565b3480156104e457600080fd5b5061028e54610357906001600160a01b031681565b34801561050557600080fd5b5061027f610514366004613027565b610e11565b34801561052557600080fd5b5061028f54610357906001600160a01b031681565b34801561054657600080fd5b506103846105553660046131b9565b610e2b565b61038461056836600461321c565b610eed565b34801561057957600080fd5b506102e8610fa2565b34801561058e57600080fd5b506101f85460ff1661027f565b3480156105a757600080fd5b506103846105b6366004613027565b611050565b3480156105c757600080fd5b506102e86105d6366004613027565b61109a565b3480156105e757600080fd5b506103846105f6366004612f5d565b6110b6565b34801561060757600080fd5b506102e8610616366004613027565b6110cb565b34801561062757600080fd5b50610384610636366004613027565b6110ea565b34801561064757600080fd5b50610384611102565b34801561065c57600080fd5b5061035761117c565b34801561067157600080fd5b50610357610680366004613275565b611184565b34801561069157600080fd5b5061027f6106a0366004612ff7565b61119c565b3480156106b157600080fd5b506102a96111c7565b3480156106c657600080fd5b506103846106d5366004613027565b6111d7565b3480156106e657600080fd5b506103846111ef565b3480156106fb57600080fd5b506102e8600081565b34801561071057600080fd5b5061027f61071f366004612f5d565b611207565b34801561073057600080fd5b5061027f61073f366004612f5d565b61128d565b34801561075057600080fd5b5061027f61075f366004613027565b6112af565b34801561077057600080fd5b506102e861077f366004612fca565b6112c9565b34801561079057600080fd5b5061038461079f366004613297565b6112e0565b3480156107b057600080fd5b506102e860008051602061395683398151915281565b3480156107d257600080fd5b506103846107e1366004612ff7565b611444565b3480156107f257600080fd5b5061042e610801366004612fca565b611460565b34801561081257600080fd5b506102e861082136600461330e565b6114e3565b34801561083257600080fd5b5061038461084136600461333c565b61150f565b34801561085257600080fd5b506102e860008051602061390f83398151915281565b34801561087457600080fd5b50610384610883366004613027565b611675565b34801561089457600080fd5b506103846108a3366004613027565b6116bf565b3480156108b457600080fd5b506103846108c3366004613027565b611709565b60006001600160e01b03198216635a05180f60e01b14806108ed57506108ed82611746565b92915050565b60606101308054610903906133f5565b80601f016020809104026020016040519081016040528092919081815260200182805461092f906133f5565b801561097c5780601f106109515761010080835404028352916020019161097c565b820191906000526020600020905b81548152906001019060200180831161095f57829003601f168201915b5050505050905090565b60003361099481858561177b565b5060019392505050565b6000806109ac8585856118a0565b90506109b9858583611a13565b9150505b9392505050565b600090815260c9602052604090206001015490565b6109e2826109c4565b6109eb81611a2c565b6109f58383611a36565b505050565b6000610a04611a58565b905090565b6001600160a01b0381163314610a7e5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610a888282611ad5565b5050565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003610ad45760405162461bcd60e51b8152600401610a7590613429565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610b06611af7565b6001600160a01b031614610b2c5760405162461bcd60e51b8152600401610a7590613463565b610b3581611b13565b60408051600080825260208201909252610b5191839190611b3a565b50565b61028f54604051631eed540360e11b815260009182916001600160a01b0390911690633ddaa80690610b8e9088908890889060040161349d565b6040805180830381865afa158015610baa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bce91906134d1565b91509150935093915050565b600033610994818585610bed83836114e3565b610bf79190613513565b61177b565b610c1460008051602061390f8339815191523361119c565b610c705760405162461bcd60e51b8152602060048201526039602482015260008051602061388f83398151915260448201527876652070617573657220726f6c6520746f20756e706175736560381b6064820152608401610a75565b610c78611ca5565b565b600080610c883387876118a0565b90506000610c968783611cf2565b9050866001600160a01b0316336001600160a01b03167fe19260aff97b920c7df27010903aeb9c8d2be5d310a2c67824cf3f15396e4c16848888604051610cdf93929190613526565b60405180910390a3863b15610d7657610d2f878387878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d0092505050565b610d765760405162461bcd60e51b815260206004820152601860248201527710dbdb9d1c9858dd0819985b1b189858dac819985a5b195960421b6044820152606401610a75565b9695505050505050565b6102915460009015610dfd576102915482610d9b61012f5490565b610da59190613513565b1115610dfd5760405162461bcd60e51b815260206004820152602160248201527f43616e6e6f7420696e63726561736520737570706c79206265796f6e642063616044820152600760fc1b6064820152608401610a75565b6109bd8383611dbf565b610b513382611e45565b60006108ed60008051602061390f8339815191528361119c565b600054610100900460ff1615808015610e4b5750600054600160ff909116105b80610e6c5750610e5a30611f76565b158015610e6c575060005460ff166001145b610e885760405162461bcd60e51b8152600401610a759061355c565b6000805460ff191660011790558015610eab576000805461ff0019166101001790555b610eb58383611f85565b80156109f5576000805461ff0019169055604051600181526000805160206138ef8339815191529060200160405180910390a1505050565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003610f355760405162461bcd60e51b8152600401610a7590613429565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610f67611af7565b6001600160a01b031614610f8d5760405162461bcd60e51b8152600401610a7590613463565b610f9682611b13565b610a8882826001611b3a565b6000306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461103d5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401610a75565b506000805160206138cf83398151915290565b61105b60003361119c565b6110775760405162461bcd60e51b8152600401610a75906135aa565b61029080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0316600090815261012d602052604090205490565b6110c1823383612001565b610a888282611e45565b6001600160a01b038116600090815261019360205260408120546108ed565b610b5160008051602061390f833981519152826109d9565b61111a60008051602061390f8339815191523361119c565b6111745760405162461bcd60e51b8152602060048201526037602482015260008051602061388f83398151915260448201527676652070617573657220726f6c6520746f20706175736560481b6064820152608401610a75565b610c7861207b565b6000610a0481805b600082815260fb602052604081206109bd90836120b9565b600091825260c9602090815260408084206001600160a01b0393909316845291905290205460ff1690565b60606101318054610903906133f5565b610b51600080516020613956833981519152826109d9565b610c7860008051602061395683398151915233610a09565b6000338161121582866114e3565b9050838110156112755760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610a75565b611282828686840361177b565b506001949350505050565b60008061129b3385856118a0565b90506112a78482611cf2565b949350505050565b60006108ed6000805160206139568339815191528361119c565b600081815260fb602052604081206108ed906120c5565b834211156113305760405162461bcd60e51b815260206004820152601d60248201527f45524332305065726d69743a206578706972656420646561646c696e650000006044820152606401610a75565b60007f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c988888861135f8c6120cf565b6040805160208101969096526001600160a01b0394851690860152929091166060840152608083015260a082015260c0810186905260e00160405160208183030381529060405280519060200120905060006113ba826120f8565b905060006113ca82878787612146565b9050896001600160a01b0316816001600160a01b03161461142d5760405162461bcd60e51b815260206004820152601e60248201527f45524332305065726d69743a20696e76616c6964207369676e617475726500006044820152606401610a75565b6114388a8a8a61177b565b50505050505050505050565b61144d826109c4565b61145681611a2c565b6109f58383611ad5565b61028f54604051631eed540360e11b815260009182916001600160a01b0390911690633ddaa8069061149a9086908590819060040161349d565b6040805180830381865afa1580156114b6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114da91906134d1565b91509150915091565b6001600160a01b03918216600090815261012e6020908152604080832093909416825291909152205490565b600054610100900460ff161580801561152f5750600054600160ff909116105b80611550575061153e30611f76565b158015611550575060005460ff166001145b61156c5760405162461bcd60e51b8152600401610a759061355c565b6000805460ff19166001179055801561158f576000805461ff0019166101001790555b6115998888611f85565b61028e80546001600160a01b038086166001600160a01b031992831617909255610290805487841690831617905561028f8054928816929091169190911790556102918690556115e63390565b6001600160a01b0316826001600160a01b0316146116375761160782611709565b61161f60008051602061395683398151915233610a09565b61163760008051602061390f83398151915233610a09565b801561166b576000805461ff0019169055604051600181526000805160206138ef8339815191529060200160405180910390a15b5050505050505050565b61168060003361119c565b61169c5760405162461bcd60e51b8152600401610a75906135aa565b61028e80546001600160a01b0319166001600160a01b0392909216919091179055565b6116ca60003361119c565b6116e65760405162461bcd60e51b8152600401610a75906135aa565b61028f80546001600160a01b0319166001600160a01b0392909216919091179055565b61171460003361119c565b6117305760405162461bcd60e51b8152600401610a75906135aa565b61173b6000826109d9565b610b51600033610a09565b60006001600160e01b03198216637965db0b60e01b14806108ed57506301ffc9a760e01b6001600160e01b03198316146108ed565b6001600160a01b0383166117dd5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610a75565b6001600160a01b03821661183e5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610a75565b6001600160a01b03838116600081815261012e602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60008060006118b0848787610b54565b9150915060008211801561193357506102905460405163639e625760e11b81526001600160a01b039091169063c73cc4ae906118f0903390600401612fe3565b602060405180830381865afa15801561190d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061193191906135cd565b155b15611a095780158061195657506119498661109a565b6119538386613513565b11155b6119a25760405162461bcd60e51b815260206004820181905260248201527f4e6f7420656e6f7567682062616c616e636520746f20706179205458206665656044820152606401610a75565b336001600160a01b038716036119cf5761028e546119c9906001600160a01b031683611cf2565b506119ea565b61028e546119e89087906001600160a01b031684611a13565b505b806119fe576119f982856135e8565b611a00565b835b925050506109bd565b5091949350505050565b600033611a21858285612001565b61128285858561216e565b610b518133612314565b611a40828261236d565b600082815260fb602052604090206109f590826123f3565b6000610a047f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f611a8861015f5490565b610160546040805160208101859052908101839052606081018290524660808201523060a082015260009060c0016040516020818303038152906040528051906020012090509392505050565b611adf8282612408565b600082815260fb602052604090206109f5908261246f565b6000805160206138cf833981519152546001600160a01b031690565b611b1e60003361119c565b610b515760405162461bcd60e51b8152600401610a75906135aa565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615611b6d576109f583612484565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015611bc7575060408051601f3d908101601f19168201909252611bc4918101906135fb565b60015b611c2a5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610a75565b6000805160206138cf8339815191528114611c995760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610a75565b506109f583838361251e565b611cad612543565b6101f8805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b604051611ce89190612fe3565b60405180910390a1565b60003361099481858561216e565b604051635260769b60e11b815260009084906001600160a01b0382169063a4c0ed3690611d3590339088908890600401613614565b6020604051808303816000875af1158015611d54573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d7891906135cd565b6112825760405162461bcd60e51b815260206004820152601860248201527710dbdb9d1c9858dd0811985b1b189858dac819985a5b195960421b6044820152606401610a75565b6000611dd96000805160206139568339815191523361119c565b611e325760405162461bcd60e51b8152602060048201526036602482015260008051602061388f8339815191526044820152751d99481b5a5b9d195c881c9bdb19481d1bc81b5a5b9d60521b6064820152608401610a75565b611e3c838361258d565b50600192915050565b6001600160a01b038216611ea55760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608401610a75565b611eb18260008361264a565b6001600160a01b038216600090815261012d602052604090205481811015611f265760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608401610a75565b6001600160a01b038316600081815261012d60209081526040808320868603905561012f8054879003905551858152919291600080516020613976833981519152910160405180910390a3505050565b6001600160a01b03163b151590565b600054610100900460ff16611fac5760405162461bcd60e51b8152600401610a759061363b565b611fb4612655565b611fbc612655565b611fc4612655565b611fcc612655565b611fd6828261267c565b611fde612655565b611fe66126be565b611fee612655565b611ff882826126f2565b610a8882612754565b600061200d84846114e3565b9050600019811461207557818110156120685760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610a75565b612075848484840361177b565b50505050565b61208361277b565b6101f8805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258611cdb3390565b60006109bd83836127c2565b60006108ed825490565b6001600160a01b0381166000908152610193602052604090208054600181018255905b50919050565b60006108ed612105611a58565b8360405161190160f01b6020820152602281018390526042810182905260009060620160405160208183030381529060405280519060200120905092915050565b6000806000612157878787876127ec565b91509150612164816128a6565b5095945050505050565b6001600160a01b0383166121d25760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610a75565b6001600160a01b0382166122345760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610a75565b61223f83838361264a565b6001600160a01b038316600090815261012d6020526040902054818110156122b85760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610a75565b6001600160a01b03808516600081815261012d60205260408082208686039055928616808252908390208054860190559151600080516020613976833981519152906123079086815260200190565b60405180910390a3612075565b61231e828261119c565b610a885761232b816129eb565b6123368360206129fd565b604051602001612347929190613686565b60408051601f198184030181529082905262461bcd60e51b8252610a7591600401612f35565b612377828261119c565b610a8857600082815260c9602090815260408083206001600160a01b03851684529091529020805460ff191660011790556123af3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60006109bd836001600160a01b038416612b98565b612412828261119c565b15610a8857600082815260c9602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60006109bd836001600160a01b038416612be7565b61248d81611f76565b6124ef5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610a75565b6000805160206138cf83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b61252783612cda565b6000825111806125345750805b156109f5576120758383612d1a565b6101f85460ff16610c785760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152606401610a75565b6001600160a01b0382166125e35760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610a75565b6125ef6000838361264a565b8061012f60008282546126029190613513565b90915550506001600160a01b038216600081815261012d6020908152604080832080548601905551848152600080516020613976833981519152910160405180910390a35050565b6109f5838383612e0c565b600054610100900460ff16610c785760405162461bcd60e51b8152600401610a759061363b565b600054610100900460ff166126a35760405162461bcd60e51b8152600401610a759061363b565b6101306126b08382613743565b506101316109f58282613743565b600054610100900460ff166126e55760405162461bcd60e51b8152600401610a759061363b565b6101f8805460ff19169055565b600054610100900460ff166127195760405162461bcd60e51b8152600401610a759061363b565b612724600033612e73565b61273c60008051602061395683398151915233612e73565b610a8860008051602061390f83398151915233612e73565b600054610100900460ff16610b515760405162461bcd60e51b8152600401610a759061363b565b6101f85460ff1615610c785760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152606401610a75565b60008260000182815481106127d9576127d9613802565b9060005260206000200154905092915050565b6000806fa2a8918ca85bafe22016d0b997e4df60600160ff1b03831115612819575060009050600361289d565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa15801561286d573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166128965760006001925092505061289d565b9150600090505b94509492505050565b60008160048111156128ba576128ba613818565b036128c25750565b60018160048111156128d6576128d6613818565b0361291e5760405162461bcd60e51b815260206004820152601860248201527745434453413a20696e76616c6964207369676e617475726560401b6044820152606401610a75565b600281600481111561293257612932613818565b0361297f5760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610a75565b600381600481111561299357612993613818565b03610b515760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610a75565b60606108ed6001600160a01b03831660145b60606000612a0c83600261382e565b612a17906002613513565b6001600160401b03811115612a2e57612a2e61310e565b6040519080825280601f01601f191660200182016040528015612a58576020820181803683370190505b509050600360fc1b81600081518110612a7357612a73613802565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110612aa257612aa2613802565b60200101906001600160f81b031916908160001a9053506000612ac684600261382e565b612ad1906001613513565b90505b6001811115612b49576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110612b0557612b05613802565b1a60f81b828281518110612b1b57612b1b613802565b60200101906001600160f81b031916908160001a90535060049490941c93612b4281613845565b9050612ad4565b5083156109bd5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a75565b6000818152600183016020526040812054612bdf575081546001818101845560008481526020808220909301849055845484825282860190935260409020919091556108ed565b5060006108ed565b60008181526001830160205260408120548015612cd0576000612c0b6001836135e8565b8554909150600090612c1f906001906135e8565b9050818114612c84576000866000018281548110612c3f57612c3f613802565b9060005260206000200154905080876000018481548110612c6257612c62613802565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080612c9557612c9561385c565b6001900381819060005260206000200160009055905585600101600086815260200190815260200160002060009055600193505050506108ed565b60009150506108ed565b612ce381612484565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060612d2583611f76565b612d805760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610a75565b600080846001600160a01b031684604051612d9b9190613872565b600060405180830381855af49150503d8060008114612dd6576040519150601f19603f3d011682016040523d82523d6000602084013e612ddb565b606091505b5091509150612e03828260405180606001604052806027815260200161392f60279139612e7d565b95945050505050565b6101f85460ff16156109f55760405162461bcd60e51b815260206004820152602a60248201527f45524332305061757361626c653a20746f6b656e207472616e736665722077686044820152691a5b19481c185d5cd95960b21b6064820152608401610a75565b610a888282611a36565b60608315612e8c5750816109bd565b6109bd8383815115612ea15781518083602001fd5b8060405162461bcd60e51b8152600401610a759190612f35565b600060208284031215612ecd57600080fd5b81356001600160e01b0319811681146109bd57600080fd5b60005b83811015612f00578181015183820152602001612ee8565b50506000910152565b60008151808452612f21816020860160208601612ee5565b601f01601f19169290920160200192915050565b6020815260006109bd6020830184612f09565b6001600160a01b0381168114610b5157600080fd5b60008060408385031215612f7057600080fd5b8235612f7b81612f48565b946020939093013593505050565b600080600060608486031215612f9e57600080fd5b8335612fa981612f48565b92506020840135612fb981612f48565b929592945050506040919091013590565b600060208284031215612fdc57600080fd5b5035919050565b6001600160a01b0391909116815260200190565b6000806040838503121561300a57600080fd5b82359150602083013561301c81612f48565b809150509250929050565b60006020828403121561303957600080fd5b81356109bd81612f48565b60008060006060848603121561305957600080fd5b83359250602084013561306b81612f48565b9150604084013561307b81612f48565b809150509250925092565b6000806000806060858703121561309c57600080fd5b84356130a781612f48565b93506020850135925060408501356001600160401b03808211156130ca57600080fd5b818701915087601f8301126130de57600080fd5b8135818111156130ed57600080fd5b8860208285010111156130ff57600080fd5b95989497505060200194505050565b634e487b7160e01b600052604160045260246000fd5b60006001600160401b038084111561313e5761313e61310e565b604051601f8501601f19908116603f011681019082821181831017156131665761316661310e565b8160405280935085815286868601111561317f57600080fd5b858560208301376000602087830101525050509392505050565b600082601f8301126131aa57600080fd5b6109bd83833560208501613124565b600080604083850312156131cc57600080fd5b82356001600160401b03808211156131e357600080fd5b6131ef86838701613199565b9350602085013591508082111561320557600080fd5b5061321285828601613199565b9150509250929050565b6000806040838503121561322f57600080fd5b823561323a81612f48565b915060208301356001600160401b0381111561325557600080fd5b8301601f8101851361326657600080fd5b61321285823560208401613124565b6000806040838503121561328857600080fd5b50508035926020909101359150565b600080600080600080600060e0888a0312156132b257600080fd5b87356132bd81612f48565b965060208801356132cd81612f48565b95506040880135945060608801359350608088013560ff811681146132f157600080fd5b9699959850939692959460a0840135945060c09093013592915050565b6000806040838503121561332157600080fd5b823561332c81612f48565b9150602083013561301c81612f48565b600080600080600080600060e0888a03121561335757600080fd5b87356001600160401b038082111561336e57600080fd5b61337a8b838c01613199565b985060208a013591508082111561339057600080fd5b5061339d8a828b01613199565b9650506040880135945060608801356133b581612f48565b935060808801356133c581612f48565b925060a08801356133d581612f48565b915060c08801356133e581612f48565b8091505092959891949750929550565b600181811c9082168061340957607f821691505b6020821081036120f257634e487b7160e01b600052602260045260246000fd5b6020808252602c908201526000805160206138af83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206138af83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b9283526001600160a01b03918216602084015216604082015260600190565b805180151581146134cc57600080fd5b919050565b600080604083850312156134e457600080fd5b825191506134f4602084016134bc565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b808201808211156108ed576108ed6134fd565b83815260406020820152816040820152818360608301376000818301606090810191909152601f909201601f1916010192915050565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b6020808252600990820152683737ba1037bbb732b960b91b604082015260600190565b6000602082840312156135df57600080fd5b6109bd826134bc565b818103818111156108ed576108ed6134fd565b60006020828403121561360d57600080fd5b5051919050565b60018060a01b0384168152826020820152606060408201526000612e036060830184612f09565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b8152600083516136b8816017850160208801612ee5565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516136e9816028840160208801612ee5565b01602801949350505050565b601f8211156109f557600081815260208120601f850160051c8101602086101561371c5750805b601f850160051c820191505b8181101561373b57828155600101613728565b505050505050565b81516001600160401b0381111561375c5761375c61310e565b6137708161376a84546133f5565b846136f5565b602080601f8311600181146137a5576000841561378d5750858301515b600019600386901b1c1916600185901b17855561373b565b600085815260208120601f198616915b828110156137d4578886015182559484019460019091019084016137b5565b50858210156137f25787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052602160045260246000fd5b80820281158282048414176108ed576108ed6134fd565b600081613854576138546134fd565b506000190190565b634e487b7160e01b600052603160045260246000fd5b60008251613884818460208701612ee5565b919091019291505056fe45524332305072657365744d696e7465725061757365723a206d75737420686146756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249865d7a28e3265b37a6474929f336521b332c1681b933f6cb9f3376673440d862a416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c65649f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa26469706673582212201690eab5366829efc9d4100e47b131210a8adbfa821fffd18cbb76936dc273b064736f6c63430008130033",
1204
+ "linkReferences": {},
1205
+ "deployedLinkReferences": {}
1206
+ }