@gooddollar/goodprotocol 1.0.29-beta.3 → 1.0.29-beta.5
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.
- package/artifacts/abis/ERC20PresetMinterPauserUpgradeable.min.json +1 -0
- package/artifacts/abis/ERC677.min.json +1 -0
- package/artifacts/abis/ERC677Receiver.min.json +1 -0
- package/artifacts/abis/GoodDollar.min.json +1 -0
- package/artifacts/abis/IFeesFormula.min.json +1 -0
- package/artifacts/abis/IIdentity.min.json +1 -1
- package/artifacts/abis/IIdentityV2.min.json +1 -1
- package/artifacts/abis/IdentityV2.min.json +1 -1
- package/artifacts/abis/InvitesV2.min.json +1 -1
- package/artifacts/contracts/DAOStackInterfaces.sol/Avatar.dbg.json +1 -1
- package/artifacts/contracts/DAOStackInterfaces.sol/Controller.dbg.json +1 -1
- package/artifacts/contracts/DAOStackInterfaces.sol/GlobalConstraintInterface.dbg.json +1 -1
- package/artifacts/contracts/DAOStackInterfaces.sol/IntVoteInterface.dbg.json +1 -1
- package/artifacts/contracts/DAOStackInterfaces.sol/ReputationInterface.dbg.json +1 -1
- package/artifacts/contracts/DAOStackInterfaces.sol/SchemeRegistrar.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/AggregatorV3Interface.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/ERC20.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/IAaveIncentivesController.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/IAdminWallet.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/IDonationStaking.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/IERC2917.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/IFirstClaimPool.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/IGoodDollar.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/IGoodStaking.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/IHasRouter.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/IIdentity.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/IIdentity.json +19 -0
- package/artifacts/contracts/Interfaces.sol/IIdentityV2.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/IIdentityV2.json +19 -0
- package/artifacts/contracts/Interfaces.sol/ILendingPool.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/IMultichainRouter.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/INameService.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/IUBIScheme.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/ProxyAdmin.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/Reserve.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/Staking.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/Uniswap.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/UniswapFactory.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/UniswapPair.dbg.json +1 -1
- package/artifacts/contracts/Interfaces.sol/cERC20.dbg.json +1 -1
- package/artifacts/contracts/fuseFaucet/Faucet.sol/Faucet.dbg.json +1 -1
- package/artifacts/contracts/fuseFaucet/Faucet.sol/Faucet.json +2 -2
- package/artifacts/contracts/fuseFaucet/FuseFaucet.sol/FuseFaucet.dbg.json +1 -1
- package/artifacts/contracts/fuseFaucet/FuseFaucet.sol/FuseFaucet.json +2 -2
- package/artifacts/contracts/governance/ClaimersDistribution.sol/ClaimersDistribution.dbg.json +1 -1
- package/artifacts/contracts/governance/ClaimersDistribution.sol/ClaimersDistribution.json +2 -2
- package/artifacts/contracts/governance/CompoundVotingMachine.sol/CompoundVotingMachine.dbg.json +1 -1
- package/artifacts/contracts/governance/CompoundVotingMachine.sol/CompoundVotingMachine.json +2 -2
- package/artifacts/contracts/governance/GReputation.sol/GReputation.dbg.json +1 -1
- package/artifacts/contracts/governance/GReputation.sol/GReputation.json +2 -2
- package/artifacts/contracts/governance/GoodDollarStaking.sol/GoodDollarStaking.dbg.json +1 -1
- package/artifacts/contracts/governance/GoodDollarStaking.sol/GoodDollarStaking.json +2 -2
- package/artifacts/contracts/governance/GoodDollarStaking.sol/IGovernanceStaking.dbg.json +1 -1
- package/artifacts/contracts/governance/GoodDollarStaking.sol/RewardsMinter.dbg.json +1 -1
- package/artifacts/contracts/governance/GovernanceStaking.sol/GovernanceStaking.dbg.json +1 -1
- package/artifacts/contracts/governance/GovernanceStaking.sol/GovernanceStaking.json +2 -2
- package/artifacts/contracts/governance/MultiBaseGovernanceShareField.sol/MultiBaseGovernanceShareField.dbg.json +1 -1
- package/artifacts/contracts/governance/Reputation.sol/Reputation.dbg.json +1 -1
- package/artifacts/contracts/governance/Reputation.sol/Reputation.json +2 -2
- package/artifacts/contracts/governance/StakersDistribution.sol/StakersDistribution.dbg.json +1 -1
- package/artifacts/contracts/governance/StakersDistribution.sol/StakersDistribution.json +2 -2
- package/artifacts/contracts/identity/IdentityV2.sol/IdentityV2.dbg.json +1 -1
- package/artifacts/contracts/identity/IdentityV2.sol/IdentityV2.json +33 -2
- package/artifacts/contracts/invite/InvitesV1.sol/InvitesV1.dbg.json +1 -1
- package/artifacts/contracts/invite/InvitesV1.sol/InvitesV1.json +2 -2
- package/artifacts/contracts/invite/InvitesV2.sol/InvitesV2.dbg.json +1 -1
- package/artifacts/contracts/invite/InvitesV2.sol/InvitesV2.json +38 -10
- package/artifacts/contracts/mocks/AaveMock.sol/AaveMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/DAIMock.sol/DAIMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/DecimalsMock.sol/DecimalsMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/DistributionBridgeMock.sol/DistributionBridgeMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/DistributionBridgeMock.sol/DistributionBridgeMock.json +2 -2
- package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTest.dbg.json +1 -1
- package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTest.json +2 -2
- package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTestHelper.dbg.json +1 -1
- package/artifacts/contracts/mocks/DistributionHelperTest.sol/DistributionHelperTestHelper.json +2 -2
- package/artifacts/contracts/mocks/GoodCompoundStakingTest.sol/GoodCompoundStakingTest.dbg.json +1 -1
- package/artifacts/contracts/mocks/GoodCompoundStakingTest.sol/GoodCompoundStakingTest.json +2 -2
- package/artifacts/contracts/mocks/GoodDollarStakingMock.sol/GoodDollarStakingMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/GoodDollarStakingMock.sol/GoodDollarStakingMock.json +2 -2
- package/artifacts/contracts/mocks/GoodFundManagerTest.sol/GoodFundManagerTest.dbg.json +1 -1
- package/artifacts/contracts/mocks/GoodFundManagerTest.sol/GoodFundManagerTest.json +2 -2
- package/artifacts/contracts/mocks/IncentiveControllerMock.sol/IncentiveControllerMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/LendingPoolMock.sol/LendingPoolMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/MultichainRouterMock.sol/IWrapper.dbg.json +1 -1
- package/artifacts/contracts/mocks/MultichainRouterMock.sol/MultichainRouterMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/MultichainRouterMock.sol/MultichainRouterMock.json +2 -2
- package/artifacts/contracts/mocks/OverMintTester.sol/IGoodDollarStakingTest.dbg.json +1 -1
- package/artifacts/contracts/mocks/OverMintTester.sol/OverMintTester.dbg.json +1 -1
- package/artifacts/contracts/mocks/OverMintTester.sol/OverMintTester.json +2 -2
- package/artifacts/contracts/mocks/OverMintTesterRegularStake.sol/OverMintTesterRegularStake.dbg.json +1 -1
- package/artifacts/contracts/mocks/OverMintTesterRegularStake.sol/OverMintTesterRegularStake.json +2 -2
- package/artifacts/contracts/mocks/SixteenDecimalsTokenMock.sol/SixteenDecimalsTokenMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/StakingMockFixedAPY.sol/StakingMockFixedAPY.dbg.json +1 -1
- package/artifacts/contracts/mocks/SwapHelperTest.sol/SwapHelperTest.dbg.json +1 -1
- package/artifacts/contracts/mocks/SwapHelperTest.sol/SwapHelperTest.json +2 -2
- package/artifacts/contracts/mocks/TwentyDecimalsTokenMock.sol/TwentyDecimalsTokenMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock.json +2 -2
- package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock2.dbg.json +1 -1
- package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock2.json +2 -2
- package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock3.dbg.json +1 -1
- package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock3.json +2 -2
- package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock4.dbg.json +1 -1
- package/artifacts/contracts/mocks/UpgradableMocks.sol/UpgradableMock4.json +2 -2
- package/artifacts/contracts/mocks/UsdcMock.sol/USDCMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/cBATMock.sol/cBATMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/cDAILowWorthMock.sol/cDAILowWorthMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/cDAIMock.sol/cDAIMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/cDAINonMintableMock.sol/cDAINonMintableMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/cDecimalsMock.sol/cDecimalsMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/cSDTMock.sol/cSDTMock.dbg.json +1 -1
- package/artifacts/contracts/mocks/cUSDCMock.sol/cUSDCMock.dbg.json +1 -1
- package/artifacts/contracts/reserve/DistributionHelper.sol/DistributionHelper.dbg.json +1 -1
- package/artifacts/contracts/reserve/DistributionHelper.sol/DistributionHelper.json +2 -2
- package/artifacts/contracts/reserve/ExchangeHelper.sol/ExchangeHelper.dbg.json +1 -1
- package/artifacts/contracts/reserve/ExchangeHelper.sol/ExchangeHelper.json +2 -2
- package/artifacts/contracts/reserve/GoodMarketMaker.sol/GoodMarketMaker.dbg.json +1 -1
- package/artifacts/contracts/reserve/GoodMarketMaker.sol/GoodMarketMaker.json +2 -2
- package/artifacts/contracts/reserve/GoodReserveCDai.sol/ContributionCalc.dbg.json +1 -1
- package/artifacts/contracts/reserve/GoodReserveCDai.sol/GoodReserveCDai.dbg.json +1 -1
- package/artifacts/contracts/reserve/GoodReserveCDai.sol/GoodReserveCDai.json +2 -2
- package/artifacts/contracts/staking/BaseShareField.sol/BaseShareField.dbg.json +1 -1
- package/artifacts/contracts/staking/BaseShareField.sol/BaseShareField.json +2 -2
- package/artifacts/contracts/staking/BaseShareFieldV2.sol/BaseShareFieldV2.dbg.json +1 -1
- package/artifacts/contracts/staking/BaseShareFieldV2.sol/BaseShareFieldV2.json +2 -2
- package/artifacts/contracts/staking/DonationsStaking.sol/DonationsStaking.dbg.json +1 -1
- package/artifacts/contracts/staking/DonationsStaking.sol/DonationsStaking.json +2 -2
- package/artifacts/contracts/staking/FuseStakingV3.sol/FuseStakingV3.dbg.json +1 -1
- package/artifacts/contracts/staking/FuseStakingV3.sol/FuseStakingV3.json +2 -2
- package/artifacts/contracts/staking/FuseStakingV3.sol/IConsensus.dbg.json +1 -1
- package/artifacts/contracts/staking/FuseStakingV3.sol/PegSwap.dbg.json +1 -1
- package/artifacts/contracts/staking/GoodFundManager.sol/GoodFundManager.dbg.json +1 -1
- package/artifacts/contracts/staking/GoodFundManager.sol/GoodFundManager.json +2 -2
- package/artifacts/contracts/staking/SimpleStaking.sol/SimpleStaking.dbg.json +1 -1
- package/artifacts/contracts/staking/SimpleStakingV2.sol/SimpleStakingV2.dbg.json +1 -1
- package/artifacts/contracts/staking/UniswapV2SwapHelper.sol/UniswapV2SwapHelper.dbg.json +1 -1
- package/artifacts/contracts/staking/UniswapV2SwapHelper.sol/UniswapV2SwapHelper.json +2 -2
- package/artifacts/contracts/staking/aave/AaveStakingFactory.sol/AaveStakingFactory.dbg.json +1 -1
- package/artifacts/contracts/staking/aave/AaveStakingFactory.sol/AaveStakingFactory.json +2 -2
- package/artifacts/contracts/staking/aave/GoodAaveStaking.sol/GoodAaveStaking.dbg.json +1 -1
- package/artifacts/contracts/staking/aave/GoodAaveStaking.sol/GoodAaveStaking.json +2 -2
- package/artifacts/contracts/staking/aave/GoodAaveStakingV2.sol/GoodAaveStakingV2.dbg.json +1 -1
- package/artifacts/contracts/staking/aave/GoodAaveStakingV2.sol/GoodAaveStakingV2.json +2 -2
- package/artifacts/contracts/staking/compound/CompoundStakingFactory.sol/CompoundStakingFactory.dbg.json +1 -1
- package/artifacts/contracts/staking/compound/CompoundStakingFactory.sol/CompoundStakingFactory.json +2 -2
- package/artifacts/contracts/staking/compound/GoodCompoundStaking.sol/GoodCompoundStaking.dbg.json +1 -1
- package/artifacts/contracts/staking/compound/GoodCompoundStaking.sol/GoodCompoundStaking.json +2 -2
- package/artifacts/contracts/staking/compound/GoodCompoundStakingV2.sol/GoodCompoundStakingV2.dbg.json +1 -1
- package/artifacts/contracts/staking/compound/GoodCompoundStakingV2.sol/GoodCompoundStakingV2.json +2 -2
- package/artifacts/contracts/staking/utils/Math64X64.sol/Math64x64.dbg.json +1 -1
- package/artifacts/contracts/staking/utils/StakingRewardsFixedAPY.sol/StakingRewardsFixedAPY.dbg.json +1 -1
- package/artifacts/contracts/token/ERC20PresetMinterPauserUpgradeable.sol/ERC20PresetMinterPauserUpgradeable.dbg.json +4 -0
- package/artifacts/contracts/token/ERC20PresetMinterPauserUpgradeable.sol/ERC20PresetMinterPauserUpgradeable.json +755 -0
- package/artifacts/contracts/token/ERC677.sol/ERC677.dbg.json +4 -0
- package/artifacts/contracts/token/ERC677.sol/ERC677.json +66 -0
- package/artifacts/contracts/token/ERC677.sol/ERC677Receiver.dbg.json +4 -0
- package/artifacts/contracts/token/ERC677.sol/ERC677Receiver.json +40 -0
- package/artifacts/contracts/token/FeesFormula.sol/IFeesFormula.dbg.json +4 -0
- package/artifacts/contracts/token/FeesFormula.sol/IFeesFormula.json +45 -0
- package/artifacts/contracts/token/GoodDollar.sol/GoodDollar.dbg.json +4 -0
- package/artifacts/contracts/token/GoodDollar.sol/GoodDollar.json +1180 -0
- package/artifacts/contracts/ubi/UBIScheme.sol/UBIScheme.dbg.json +1 -1
- package/artifacts/contracts/ubi/UBIScheme.sol/UBIScheme.json +2 -2
- package/artifacts/contracts/utils/AdminWallet.sol/AdminWallet.dbg.json +1 -1
- package/artifacts/contracts/utils/AdminWallet.sol/AdminWallet.json +2 -2
- package/artifacts/contracts/utils/BancorFormula.sol/BancorFormula.dbg.json +1 -1
- package/artifacts/contracts/utils/BulkProof.sol/BulkProof.dbg.json +1 -1
- package/artifacts/contracts/utils/BulkProof.sol/BulkProof.json +2 -2
- package/artifacts/contracts/utils/DAOContract.sol/DAOContract.dbg.json +1 -1
- package/artifacts/contracts/utils/DAOContract.sol/DAOContract.json +2 -2
- package/artifacts/contracts/utils/DAOUpgradeableContract.sol/DAOUpgradeableContract.dbg.json +1 -1
- package/artifacts/contracts/utils/DAOUpgradeableContract.sol/DAOUpgradeableContract.json +2 -2
- package/artifacts/contracts/utils/DSMath.sol/DSMath.dbg.json +1 -1
- package/artifacts/contracts/utils/DataTypes.sol/DataTypes.dbg.json +1 -1
- package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/GoodDollarMintBurnWrapper.dbg.json +1 -1
- package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/GoodDollarMintBurnWrapper.json +2 -2
- package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/IRouter.dbg.json +1 -1
- package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/PausableControl.dbg.json +1 -1
- package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/TokenOperation.dbg.json +1 -1
- package/artifacts/contracts/utils/GoodDollarMintBurnWrapper.sol/TokenOperation.json +2 -2
- package/artifacts/contracts/utils/MultichainBridgeHelper.sol/MultichainBridgeHelper.dbg.json +1 -1
- package/artifacts/contracts/utils/MultichainBridgeHelper.sol/MultichainBridgeHelper.json +2 -2
- package/artifacts/contracts/utils/NameService.sol/NameService.dbg.json +1 -1
- package/artifacts/contracts/utils/ProtocolUpgrade.sol/OldMarketMaker.dbg.json +1 -1
- package/artifacts/contracts/utils/ProtocolUpgrade.sol/ProtocolUpgrade.dbg.json +1 -1
- package/artifacts/contracts/utils/ProtocolUpgrade.sol/ProtocolUpgrade.json +2 -2
- package/artifacts/contracts/utils/ProtocolUpgradeFuse.sol/ProtocolUpgradeFuse.dbg.json +1 -1
- package/artifacts/contracts/utils/ProtocolUpgradeFuse.sol/ProtocolUpgradeFuse.json +2 -2
- package/artifacts/contracts/utils/ProtocolUpgradeFuseRecover.sol/ProtocolUpgradeFuseRecover.dbg.json +1 -1
- package/artifacts/contracts/utils/ProtocolUpgradeFuseRecover.sol/ProtocolUpgradeFuseRecover.json +2 -2
- package/artifacts/contracts/utils/ProtocolUpgradeRecover.sol/ProtocolUpgradeRecover.dbg.json +1 -1
- package/artifacts/contracts/utils/ProtocolUpgradeRecover.sol/ProtocolUpgradeRecover.json +2 -2
- package/artifacts/contracts/utils/ProxyFactory1967.sol/ERC1967Proxy.dbg.json +1 -1
- package/artifacts/contracts/utils/ProxyFactory1967.sol/ProxyFactory1967.dbg.json +1 -1
- package/artifacts/contracts/utils/ReputationTestHelper.sol/ReputationTestHelper.dbg.json +1 -1
- package/artifacts/contracts/utils/ReputationTestHelper.sol/ReputationTestHelper.json +2 -2
- package/contracts/Interfaces.sol +2 -0
- package/contracts/fuseFaucet/Faucet.sol +5 -3
- package/contracts/fuseFaucet/FuseFaucet.sol +1 -2
- package/contracts/governance/GReputation.sol +24 -10
- package/contracts/identity/IdentityV2.sol +79 -28
- package/contracts/invite/InvitesV1.sol +5 -24
- package/contracts/invite/InvitesV2.sol +8 -15
- package/contracts/mocks/UpgradableMocks.sol +5 -3
- package/contracts/token/ERC20PresetMinterPauserUpgradeable.sol +140 -0
- package/contracts/token/ERC677.sol +74 -0
- package/contracts/token/FeesFormula.sol +10 -0
- package/contracts/token/GoodDollar.sol +234 -0
- package/hardhat.config.ts +5 -5
- package/package.json +3 -2
- package/releases/deployment.json +9 -5
- package/scripts/multichain-deploy/1_basicdao-deploy.ts +45 -28
- package/scripts/multichain-deploy/2_helpers-deploy.ts +1 -7
- package/scripts/multichain-deploy/verifyEtherscan.ts +33 -5
- package/test/faucet/Faucet.test.ts +184 -0
- package/test/{FuseFaucet.test.ts → faucet/FuseFaucet.test.ts} +4 -3
- package/test/governance/ClaimersDistribution.test.ts +3 -2
- package/test/governance/CompoundVotingMachine.castvote.test.ts +3 -2
- package/test/governance/CompoundVotingMachine.crossblockchain.ts +3 -2
- package/test/governance/CompoundVotingMachine.daoscheme.ts +3 -2
- package/test/governance/CompoundVotingMachine.delegate.test.ts +3 -2
- package/test/governance/CompoundVotingMachine.guardian.test.ts +3 -2
- package/test/governance/CompoundVotingMachine.propose.test.ts +3 -2
- package/test/governance/CompoundVotingMachine.state.test.ts +3 -2
- package/test/governance/GReputation.test.ts +22 -14
- package/test/governance/GoodDollarStaking.gd.test.ts +2 -1
- package/test/governance/GoodDollarStaking.good.test.ts +2 -1
- package/test/governance/GovernanceStaking.test.ts +4 -3
- package/test/governance/Reputation.test.ts +2 -1
- package/test/governance/StakersDistribution.test.ts +26 -12
- package/test/helpers.ts +61 -29
- package/test/identity/IdentityV2.test.ts +481 -0
- package/test/{InvitesV1.test.ts → invite/InvitesV1.test.ts} +4 -3
- package/test/invite/InvitesV2.test.ts +355 -0
- package/test/reserve/DistributionHelper.test.ts +2 -1
- package/test/reserve/GoodMarketMaker.test.ts +15 -8
- package/test/reserve/GoodReserveCDai.cap.test.ts +8 -1
- package/test/reserve/GoodReserveCDai.distribution.test.ts +2 -1
- package/test/reserve/GoodReserveCDai.gdx.test.ts +2 -1
- package/test/reserve/GoodReserveCDai.pause.test.ts +2 -1
- package/test/reserve/GoodReserveCDai.test.ts +11 -28
- package/test/reserve/GoodReserveCDai.uniswap.test.ts +20 -18
- package/test/staking/CompoundStakingFactory.test.ts +8 -4
- package/test/staking/DifferentStakingTokens.test.ts +3 -2
- package/test/staking/DonationsStaking.test.ts +33 -24
- package/test/staking/FuseStaking.test.ts +2 -2
- package/test/staking/GoodAaveStakingFactory.test.ts +36 -30
- package/test/staking/SimpleDAIStaking.test.ts +12 -16
- package/test/staking/StakingRewards.test.ts +22 -18
- package/test/staking/StakingRewardsFixedAPY.test.ts +2 -1
- package/test/staking/SwapHelper.test.ts +20 -17
- package/test/staking/UsdcAaveStaking.test.ts +36 -33
- package/test/token/GoodDollar.test.ts +277 -0
- package/test/ubi/UBIScheme.e2e.test.ts +4 -3
- package/test/ubi/UBIScheme.test.ts +3 -2
- package/test/ubi/UBISchemeCycle.test.ts +2 -1
- package/test/utils/AdminWallet.test.ts +2 -1
- package/test/utils/DAOUpgradeableContract.test.ts +3 -2
- package/test/utils/GoodDollarMintBurnWrapper.test.ts +2 -1
- package/test/utils/NameService.test.ts +37 -21
- package/test/utils/ProtocolUpgrade.test.ts +1 -0
- package/test/utils/ProxyFactory.test.ts +1 -0
- package/types/ERC20PermitUpgradeable.ts +522 -0
- package/types/ERC20PresetMinterPauserUpgradeable.ts +105 -1
- package/types/ERC677.ts +131 -0
- package/types/ERC677Receiver.ts +115 -0
- package/types/GoodDollar.ts +1705 -0
- package/types/IERC20PermitUpgradeable.ts +176 -0
- package/types/IFeesFormula.ts +111 -0
- package/types/IIdentity.ts +31 -0
- package/types/IIdentityV2.ts +31 -0
- package/types/IdentityV2.ts +69 -5
- package/types/InvitesV2.ts +61 -7
- package/types/factories/AaveStakingFactory__factory.ts +1 -1
- package/types/factories/AdminWallet__factory.ts +1 -1
- package/types/factories/BaseShareFieldV2__factory.ts +1 -1
- package/types/factories/BaseShareField__factory.ts +1 -1
- package/types/factories/ClaimersDistribution__factory.ts +1 -1
- package/types/factories/CompoundStakingFactory__factory.ts +1 -1
- package/types/factories/CompoundVotingMachine__factory.ts +1 -1
- package/types/factories/DAOContract__factory.ts +1 -1
- package/types/factories/DAOUpgradeableContract__factory.ts +1 -1
- package/types/factories/DistributionBridgeMock__factory.ts +1 -1
- package/types/factories/DistributionHelperTestHelper__factory.ts +1 -1
- package/types/factories/DistributionHelperTest__factory.ts +1 -1
- package/types/factories/DistributionHelper__factory.ts +1 -1
- package/types/factories/DonationsStaking__factory.ts +1 -1
- package/types/factories/ERC20PermitUpgradeable__factory.ts +375 -0
- package/types/factories/ERC20PresetMinterPauserUpgradeable__factory.ts +83 -2
- package/types/factories/ERC677Receiver__factory.ts +55 -0
- package/types/factories/ERC677__factory.ts +75 -0
- package/types/factories/ExchangeHelper__factory.ts +1 -1
- package/types/factories/Faucet__factory.ts +1 -1
- package/types/factories/FuseFaucet__factory.ts +1 -1
- package/types/factories/FuseStakingV3__factory.ts +1 -1
- package/types/factories/GReputation__factory.ts +1 -1
- package/types/factories/GoodAaveStakingV2__factory.ts +1 -1
- package/types/factories/GoodAaveStaking__factory.ts +1 -1
- package/types/factories/GoodCompoundStakingTest__factory.ts +1 -1
- package/types/factories/GoodCompoundStakingV2__factory.ts +1 -1
- package/types/factories/GoodCompoundStaking__factory.ts +1 -1
- package/types/factories/GoodDollarMintBurnWrapper__factory.ts +1 -1
- package/types/factories/GoodDollarStakingMock__factory.ts +1 -1
- package/types/factories/GoodDollarStaking__factory.ts +1 -1
- package/types/factories/GoodDollar__factory.ts +1228 -0
- package/types/factories/GoodFundManagerTest__factory.ts +1 -1
- package/types/factories/GoodFundManager__factory.ts +1 -1
- package/types/factories/GoodMarketMaker__factory.ts +1 -1
- package/types/factories/GoodReserveCDai__factory.ts +1 -1
- package/types/factories/GovernanceStaking__factory.ts +1 -1
- package/types/factories/IERC20PermitUpgradeable__factory.ts +105 -0
- package/types/factories/IFeesFormula__factory.ts +57 -0
- package/types/factories/IIdentityV2__factory.ts +19 -0
- package/types/factories/IIdentity__factory.ts +19 -0
- package/types/factories/IdentityV2__factory.ts +32 -1
- package/types/factories/InvitesV1__factory.ts +1 -1
- package/types/factories/InvitesV2__factory.ts +37 -9
- package/types/factories/MultichainBridgeHelper__factory.ts +1 -1
- package/types/factories/MultichainRouterMock__factory.ts +1 -1
- package/types/factories/OverMintTesterRegularStake__factory.ts +1 -1
- package/types/factories/OverMintTester__factory.ts +1 -1
- package/types/factories/ProtocolUpgradeFuseRecover__factory.ts +1 -1
- package/types/factories/ProtocolUpgradeFuse__factory.ts +1 -1
- package/types/factories/ProtocolUpgradeRecover__factory.ts +1 -1
- package/types/factories/ProtocolUpgrade__factory.ts +1 -1
- package/types/factories/ReputationTestHelper__factory.ts +1 -1
- package/types/factories/Reputation__factory.ts +1 -1
- package/types/factories/StakersDistribution__factory.ts +1 -1
- package/types/factories/SwapHelperTest__factory.ts +1 -1
- package/types/factories/UBIScheme__factory.ts +1 -1
- package/types/factories/UniswapV2SwapHelper__factory.ts +1 -1
- package/types/factories/UpgradableMock2__factory.ts +1 -1
- package/types/factories/UpgradableMock3__factory.ts +1 -1
- package/types/factories/UpgradableMock4__factory.ts +1 -1
- package/types/factories/UpgradableMock__factory.ts +1 -1
- package/types/hardhat.d.ts +63 -0
- package/types/index.ts +12 -0
- package/yarn.lock +11 -29
|
@@ -1328,8 +1328,8 @@
|
|
|
1328
1328
|
"type": "function"
|
|
1329
1329
|
}
|
|
1330
1330
|
],
|
|
1331
|
-
"bytecode": "0x60806040523480156200001157600080fd5b5060405162004dbb38038062004dbb833981016040819052620000349162000a15565b604080518082018252600a815269472420536176696e677360b01b6020808301918252835180850190945260048452631cdd91c960e21b90840152815191929162000082916003916200093c565b508051620000989060049060208401906200093c565b50506001607355506074805460ff19169055603c63ffffffff82161115620001065760405162461bcd60e51b815260206004820152601c60248201527f6d61782074776f206d6f6e74687320756e74696c207570677261646500000000604482015260640160405180910390fd5b620001118362000242565b6200011c8462000297565b607b80546001600160801b0319166001600160801b03841617905560408054905163bf40fac160e01b815260206004820152600a60248201526923a7a7a22227a62620a960b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b1580156200019657600080fd5b505afa158015620001ab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001d1919062000a7e565b607a80546001600160a01b03929092166001600160a01b0319909216919091179055306000908152600a6020526040812055607b80546001600160801b03428116600160801b029116179055607c805463ffffffff90921663ffffffff199092169190911790555062000b2d915050565b6200024c620002bf565b62000274816001600160801b0316670de0b6b3a7640000620002e960201b62001af81760201c565b607980546001600160801b0319166001600160801b039290921691909117905550565b604080546001600160a01b0319166001600160a01b038316179055620002bc6200032d565b50565b620002c96200047a565b607755607580546001600160801b031916436001600160801b0316179055565b600081620002f657600080fd5b600062000304848462000507565b905060016001607f1b036001600160801b03821611156200032457600080fd5b90505b92915050565b60408054905163bf40fac160e01b815260206004820152600a60248201526921a7a72a2927a62622a960b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b1580156200038c57600080fd5b505afa158015620003a1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003c7919062000a7e565b603e80546001600160a01b0319166001600160a01b0392909216918217905560408051632d77bef360e11b81529051635aef7de691600480820192602092909190829003018186803b1580156200041d57600080fd5b505afa15801562000432573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000458919062000a7e565b603f80546001600160a01b0319166001600160a01b0392909216919091179055565b60775460009015806200049757506075546001600160801b031643145b15620004a4575060775490565b607554600090620004dd90620004c4906001600160801b03164362000a9e565b607954600f0b9062000682602090811b62001b3617901c565b90506200050160756002015482600f0b620008cf60201b62001d4f1790919060201c565b91505090565b6000816200051457600080fd5b60006001600160c01b038411620005445782604085901b816200053b576200053b62000ac4565b0490506200066d565b60c084811c64010000000081106200055e576020918201911c5b62010000811062000571576010918201911c5b610100811062000583576008918201911c5b6010811062000594576004918201911c5b60048110620005a5576002918201911c5b60028110620005b5576001820191505b60bf820360018603901c6001018260ff0387901b81620005d957620005d962000ac4565b0492506001600160801b03831115620005f157600080fd5b608085901c83026001600160801b038616840260c088901c604089901b828110156200061e576001820391505b608084901b9290038281101562000636576001820391505b829003608084901c82146200064f576200064f62000ada565b88818162000661576200066162000ac4565b04870196505050505050505b6001600160801b038111156200032457600080fd5b600080600084600f0b1280156200069c5750826001166001145b905060008085600f0b12620006b25784620006b7565b846000035b6001600160801b03169050600160801b6801000000000000000082116200075957603f82901b91505b841562000750576001851615620006f7578102607f1c5b908002607f1c9060028516156200070e578102607f1c5b908002607f1c90600485161562000725578102607f1c5b908002607f1c9060088516156200073c578102607f1c5b60049490941c93908002607f1c90620006e0565b60401c62000885565b603f6c010000000000000000000000008310156200077d5760209290921b91601f19015b600160701b831015620007965760109290921b91600f19015b600160781b831015620007af5760089290921b91600719015b6001607c1b831015620007c85760049290921b91600319015b6001607e1b831015620007e15760029290921b91600119015b6001607f1b831015620007fa5760019290921b91600019015b60005b86156200086d57604082106200081257600080fd5b60018716156200083a57918302607f1c918101600160801b8311156200083a57600192831c92015b928002607f1c9260019190911b90600160801b84106200086057600193841c9391909101905b600187901c9650620007fd565b604081106200087b57600080fd5b6040039190911c90505b60008362000894578162000899565b816000035b905060016001607f1b03198112801590620008bb575060016001607f1b038113155b620008c557600080fd5b9695505050505050565b600081620008e05750600062000327565b600083600f0b1215620008f257600080fd5b600f83900b6001600160801b038316810260401c90608084901c026001600160c01b038111156200092257600080fd5b60401b81198111156200093457600080fd5b019392505050565b8280546200094a9062000af0565b90600052602060002090601f0160209004810192826200096e5760008555620009b9565b82601f106200098957805160ff1916838001178555620009b9565b82800160010185558215620009b9579182015b82811115620009b95782518255916020019190600101906200099c565b50620009c7929150620009cb565b5090565b5b80821115620009c75760008155600101620009cc565b6001600160a01b0381168114620002bc57600080fd5b80516001600160801b038116811462000a1057600080fd5b919050565b6000806000806080858703121562000a2c57600080fd5b845162000a3981620009e2565b935062000a4960208601620009f8565b925062000a5960408601620009f8565b9150606085015163ffffffff8116811462000a7357600080fd5b939692955090935050565b60006020828403121562000a9157600080fd5b81516200032481620009e2565b60008282101562000abf57634e487b7160e01b600052601160045260246000fd5b500390565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052600160045260246000fd5b600181811c9082168062000b0557607f821691505b6020821081141562000b2757634e487b7160e01b600052602260045260246000fd5b50919050565b61427e8062000b3d6000396000f3fe608060405234801561001057600080fd5b50600436106102a85760003560e01c80628cc262146102ad57806306fdde03146102d3578063095ea7b3146102e85780630c1cd7f31461030b57806318160ddd146103285780631b3c90a81461033057806320f902ae1461033a578063213b329e1461035f57806322022a291461036757806322dec37b1461036f57806323b872dd1461038f57806325d5971f146103a25780632e42a896146103b5578063313ce5671461043a57806331903da11461044957806336de95f614610469578063395093511461047c578063399080ec1461048f5780633d9a12cc146104a25780633e6326fc146104b55780634162169f146104d557806347b3e7e8146104e85780634f1db7f614610508578063576ce9fd1461051b5780635aef7de61461052e5780635c975abb146105415780635fc5e0201461054c5780636eb629841461056857806370a082311461057b578063777d66411461058e5780637bcbb9ff146105ae578063846141b3146105c157806387269729146105e157806395d89b41146105e9578063a457c2d7146105f1578063a4c0ed3614610604578063a694fc3a14610617578063a9059cbb1461062a578063aa3258211461063d578063aaf5eb681461054c578063aba78c1614610650578063b20b9979146106a4578063b811540e146106b7578063b86543ba146106ca578063bf8e9b6e146106dd578063c6710629146106e5578063c7b8981c146106f8578063ceb8b01c14610700578063cf09e0d014610708578063d55ec69714610722578063d80528ae1461072a578063d853365f14610789578063dd62ed3e14610792578063e087788e146107a5578063e1758bd8146107b8578063ebe91644146107c0578063f5eb42dc146108a1578063fc0c546a146108b4578063fea6f4f5146108c7575b600080fd5b6102c06102bb366004613b5b565b6108da565b6040519081526020015b60405180910390f35b6102db61094c565b6040516102ca9190613bd0565b6102fb6102f6366004613be3565b6109de565b60405190151581526020016102ca565b6103136109f8565b604080519283526020830191909152016102ca565b6002546102c0565b610338610a29565b005b607c5461034a9063ffffffff1681565b60405163ffffffff90911681526020016102ca565b6102c0610b6e565b6102c0610b97565b6102c061037d366004613b5b565b60076020526000908152604090205481565b6102fb61039d366004613c0f565b610ba7565b6103136103b0366004613c50565b610bcb565b6104076103c3366004613c69565b600b602090815260009283526040808420909152908252902080546001909101546001600160801b0380831692600160801b90819004821692808316929190041684565b604080516001600160801b03958616815293851660208501529184169183019190915290911660608201526080016102ca565b604051601281526020016102ca565b6102c0610457366004613b5b565b60086020526000908152604090205481565b6102c0610477366004613b5b565b610de0565b6102fb61048a366004613be3565b610e11565b61031361049d366004613b5b565b610e50565b6102c06104b0366004613ca2565b610e66565b6040546104c8906001600160a01b031681565b6040516102ca9190613cec565b603e546104c8906001600160a01b031681565b6102c06104f6366004613b5b565b600a6020526000908152604090205481565b610313610516366004613c69565b610f5a565b6102c0610529366004613b5b565b610f9d565b603f546104c8906001600160a01b031681565b60745460ff166102fb565b61055b670de0b6b3a764000081565b6040516102ca9190613d00565b610338610576366004613c50565b610fc1565b6102c0610589366004613b5b565b610ff8565b60795461059b90600f0b81565b604051600f9190910b81526020016102ca565b6102c06105bc366004613b5b565b611013565b6102c06105cf366004613b5b565b60096020526000908152604090205481565b6102c061102e565b6102db61108d565b6102fb6105ff366004613be3565b61109c565b6102fb610612366004613d14565b61112e565b610338610625366004613c50565b611189565b6102fb610638366004613be3565b61128f565b6102c061064b366004613b5b565b61129d565b61068461065e366004613b5b565b6078602052600090815260409020546001600160801b0380821691600160801b90041682565b604080516001600160801b039384168152929091166020830152016102ca565b6103386106b2366004613db3565b6112b9565b6102c06106c5366004613c50565b61132f565b607b5461055b906001600160801b031681565b61031361136d565b6103136106f3366004613b5b565b611408565b61031361142a565b6102c061144f565b607b5461055b90600160801b90046001600160801b031681565b610338611493565b607554607654607754610754926001600160801b0380821693600160801b90920481169291169084565b6040516102ca94939291906001600160801b039485168152928416602084015292166040820152606081019190915260800190565b61055b61271081565b6102c06107a0366004613c69565b6119c9565b6103386107b3366004613db3565b6119f4565b6104c8611a1e565b61085e6107ce366004613b5b565b60408051608081018252600080825260208201819052918101829052606081019190915250306000908152600b602090815260408083206001600160a01b0394909416835292815290829020825160808101845281546001600160801b038082168352600160801b9182900481169483019490945260019092015480841694820194909452920416606082015290565b6040516102ca919081516001600160801b039081168252602080840151821690830152604080840151821690830152606092830151169181019190915260800190565b6102c06108af366004613b5b565b611ab5565b607a546104c8906001600160a01b031681565b6103386108d5366004613ddc565b611ac0565b6000806108e683611ab5565b905060006108f261102e565b905060006108ff85610f9d565b905081811161090e5780610910565b815b9050670de0b6b3a76400006109258483613e27565b61092f8585613e27565b6109399190613e46565b6109439190613e73565b95945050505050565b60606003805461095b90613e87565b80601f016020809104026020016040519081016040528092919081815260200182805461098790613e87565b80156109d45780601f106109a9576101008083540402835291602001916109d4565b820191906000526020600020905b8154815290600101906020018083116109b757829003601f168201915b5050505050905090565b6000336109ec818585611db7565b60019150505b92915050565b306000908152600a6020526040812054607954909190610a2390600f0b670de0b6b3a7640000611d4f565b90509091565b60408054905163bf40fac160e01b815260206004820152600a60248201526921a7a72a2927a62622a960b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b158015610a8757600080fd5b505afa158015610a9b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610abf9190613ec2565b603e80546001600160a01b0319166001600160a01b0392909216918217905560408051632d77bef360e11b81529051635aef7de691600480820192602092909190829003018186803b158015610b1457600080fd5b505afa158015610b28573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b4c9190613ec2565b603f80546001600160a01b0319166001600160a01b0392909216919091179055565b607b54600090610b8990600c906001600160801b0316613edf565b6001600160801b0316905090565b6000610ba260025490565b905090565b600033610bb5858285611edb565b610bc0858585611f55565b506001949350505050565b60008060026073541415610c265760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064015b60405180910390fd5b6002607355600080610c3733611ab5565b90508415610c6657610c49338661204d565b93509150610c5b3033876000436123fe565b50610c66338661249b565b610c6f336125d7565b935060008315610c8657610c8333856128da565b90505b6000610c9133611ab5565b610c9b9084613e46565b90508315610d6e57607a5460405163a9059cbb60e01b81526001600160a01b039091169063a9059cbb90610cd59033908890600401613f05565b602060405180830381600087803b158015610cef57600080fd5b505af1158015610d03573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d279190613f1e565b610d6e5760405162461bcd60e51b81526020600482015260186024820152771dda5d1a191c985dc81d1c985b9cd9995c8819985a5b195960421b6044820152606401610c1d565b337fb4445b5ca5d925c0bf5fb70a192f888574bff35d4da72ff1c5dae14df544310c82610d9b8588613f3b565b60408051928352602083019190915281018a9052606081018990526080810188905260a0810185905260c00160405180910390a2505050506001607381905550915091565b6000670de0b6b3a7640000610df483611ab5565b610dfd84610f9d565b610e079190613e27565b6109f29190613e73565b3360008181526001602090815260408083206001600160a01b03871684529091528120549091906109ec9082908690610e4b908790613f3b565b611db7565b600080610e5d3084610f5a565b91509150915091565b6001600160a01b038085166000818152600b602090815260408083209486168352938152838220845160808101865281546001600160801b038082168352600160801b91829004811683860152600190930154808416838901520490911660608201529282526005905291822054829015610f50576000610ee8888888612af7565b91505082604001516001600160801b0316915082602001516001600160801b0316676765c793fa10079d601b1b8285600001516001600160801b0316610f2e9190613e27565b610f389190613e73565b610f429190613e46565b610f4c9083613f3b565b9150505b9695505050505050565b6001600160a01b039182166000818152600b60209081526040808320949095168252928352838120549181526005909252919020546001600160801b0390911691565b6001600160a01b03166000908152607860205260409020546001600160801b031690565b610fc9612bef565b610fd33082612cc3565b604051818152600080516020614209833981519152906020015b60405180910390a150565b6001600160a01b031660009081526020819052604090205490565b6001600160a01b031660009081526006602052604090205490565b600080611039612d01565b9050611043610b97565b1561108457670de0b6b3a7640000611059610b97565b6110639190613e27565b611075670de0b6b3a764000083613e27565b61107f9190613e73565b611087565b60005b91505090565b60606004805461095b90613e87565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909190838110156111215760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610c1d565b610bc08286868403611db7565b607a546000906001600160a01b0316331461117f5760405162461bcd60e51b81526020600482015260116024820152703ab739bab83837b93a32b2103a37b5b2b760791b6044820152606401610c1d565b610bc08585612d67565b607a546040516323b872dd60e01b8152336004820152306024820152604481018390526001600160a01b03909116906323b872dd90606401602060405180830381600087803b1580156111db57600080fd5b505af11580156111ef573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112139190613f1e565b6112825760405162461bcd60e51b815260206004820152603a60248201527f7472616e7366657246726f6d206661696c65642c206d616b652073757265207960448201527937ba9030b8383937bb32b2103a37b5b2b7103a3930b739b332b960311b6064820152608401610c1d565b61128c3382612d67565b50565b6000336109ec818585611f55565b6000670de0b6b3a76400006112b183611ab5565b610dfd61102e565b6112c1612bef565b6112ca81612e03565b607954607b54612ee0916112f6916112ee91600f0b906001600160801b0316611b36565b612710611d4f565b1061130057600080fd5b7f5e47ff33a7f14c29b3d9d622df796f19d1af1adf178ff7e266844cc8362457c081604051610fed9190613d00565b60006109f261133c61102e565b612710611351670de0b6b3a764000086613e27565b61135b9190613e27565b6113659190613e73565b612710612e49565b60008061137930611013565b915061138460025490565b1561140157670de0b6b3a764000061139b60025490565b6113a59190613e27565b607554670de0b6b3a7640000906113cd908290600160801b90046001600160801b0316613f53565b6001600160801b03166113de612d01565b6113e89190613e46565b6113f29190613e27565b6113fc9190613e73565b610a23565b5090600090565b6000806114183060004386610e66565b9150611423836108da565b9050915091565b600080600061143b6106c5336108da565b905061144681610bcb565b92509250509091565b60755460009061147890670de0b6b3a764000090600160801b90046001600160801b0316613f53565b6001600160801b0316611489612d01565b610ba29190613e46565b607c546114a99063ffffffff1662015180613f82565b607b546114cc9163ffffffff1690600160801b90046001600160801b0316613fa5565b6001600160801b0316421180156115635750603e54603f54604051639be2faed60e01b81523060048201526001600160a01b039182166024820152911690639be2faed9060440160206040518083038186803b15801561152b57600080fd5b505afa15801561153f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115639190613f1e565b6115ac5760405162461bcd60e51b815260206004820152601a6024820152796e6f7420646561646c696e65206f72206e6f7420736368656d6560301b6044820152606401610c1d565b6115c03066d3c21bcecceda160191b612cc3565b60405166d3c21bcecceda160191b81526000805160206142098339815191529060200160405180910390a160408054905163bf40fac160e01b81526000916001600160a01b03169063bf40fac19061161a90600401613fef565b60206040518083038186803b15801561163257600080fd5b505afa158015611646573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061166a9190613ec2565b905060006001600160a01b0382161561181657816001600160a01b031663c7b8981c6040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156116b857600080fd5b505af11580156116cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116f09190614001565b50603e54604051600060248201526001600160a01b039091169063d1b7089a90849060440160408051601f198184030181529181526020820180516001600160e01b03166363b13cd160e11b179052603f54905160e085901b6001600160e01b03191681526117709392916001600160a01b03169060009060040161401a565b600060405180830381600087803b15801561178a57600080fd5b505af115801561179e573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526117c69190810190614064565b509050806118165760405162461bcd60e51b815260206004820181905260248201527f63616c6c696e67207365744d6f6e74686c7952657761726473206661696c65646044820152606401610c1d565b603e546040805490516001600160a01b039283169263d1b7089a921690611841903090602401614126565b60408051601f198184030181529181526020820180516001600160e01b0316639b2ea4bd60e01b179052603f54905160e085901b6001600160e01b031916815261189c9392916001600160a01b03169060009060040161401a565b600060405180830381600087803b1580156118b657600080fd5b505af11580156118ca573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526118f29190810190614064565b5090508061193e5760405162461bcd60e51b815260206004820152601960248201527818d85b1b1a5b99c81cd95d1059191c995cdcc819985a5b1959603a1b6044820152606401610c1d565b603e54603f54604051636c525b1360e01b81526001600160a01b0392831692636c525b139261197292911690600401613cec565b602060405180830381600087803b15801561198c57600080fd5b505af11580156119a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119c49190613f1e565b505050565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6119fc612bef565b607b80546001600160801b0319166001600160801b0392909216919091179055565b60408054905163bf40fac160e01b815260206004820152600a60248201526923a7a7a22227a62620a960b11b60448201526000916001600160a01b03169063bf40fac19060640160206040518083038186803b158015611a7d57600080fd5b505afa158015611a91573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ba29190613ec2565b60006109f282610ff8565b611ac8612e6c565b611ad0612bef565b8115611ae357611ade612e94565b611aeb565b611aeb612f03565b611af4816112b9565b5050565b600081611b0457600080fd5b6000611b108484612f7d565b905060016001607f1b036001600160801b0382161115611b2f57600080fd5b9392505050565b600080600084600f0b128015611b4f5750826001166001145b905060008085600f0b12611b635784611b68565b846000035b6001600160801b03169050600160801b600160401b8211611bfd57603f82901b91505b8415611bf5576001851615611ba0578102607f1c5b908002607f1c906002851615611bb6578102607f1c5b908002607f1c906004851615611bcc578102607f1c5b908002607f1c906008851615611be2578102607f1c5b60049490941c93908002607f1c90611b8b565b60401c611d13565b603f600160601b831015611c175760209290921b91601f19015b600160701b831015611c2f5760109290921b91600f19015b600160781b831015611c475760089290921b91600719015b6001607c1b831015611c5f5760049290921b91600319015b6001607e1b831015611c775760029290921b91600119015b6001607f1b831015611c8f5760019290921b91600019015b60005b8615611cfc5760408210611ca557600080fd5b6001871615611ccb57918302607f1c918101600160801b831115611ccb57600192831c92015b928002607f1c9260019190911b90600160801b8410611cf057600193841c9391909101905b600187901c9650611c92565b60408110611d0957600080fd5b6040039190911c90505b600083611d205781611d25565b816000035b905060016001607f1b03198112801590611d46575060016001607f1b038113155b610f5057600080fd5b600081611d5e575060006109f2565b600083600f0b1215611d6f57600080fd5b600f83900b6001600160801b038316810260401c90608084901c026001600160c01b03811115611d9e57600080fd5b60401b8119811115611daf57600080fd5b019392505050565b6001600160a01b038316611e195760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610c1d565b6001600160a01b038216611e7a5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610c1d565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000611ee784846119c9565b90506000198114611f4f5781811015611f425760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610c1d565b611f4f8484848403611db7565b50505050565b611f633084836000436123fe565b50611f723083836000436130de565b506000611f7e83610ff8565b9050611f8a8282613f3b565b6001600160a01b038516600090815260786020526040902054611fb79084906001600160801b0316613e27565b6001600160a01b038516600090815260786020526040902054611fe49084906001600160801b0316613e27565b611fee9190613f3b565b611ff89190613e73565b6001600160a01b038416600090815260786020526040902080546001600160801b0319166001600160801b0392909216919091179055612037846125d7565b50612041836125d7565b50611f4f848484613151565b600080612058612e6c565b600061206385611ab5565b90506000841180156120755750808411155b6120ae5760405162461bcd60e51b815260206004820152600a6024820152696e6f2062616c616e636560b01b6044820152606401610c1d565b6000670de0b6b3a7640000856120c261102e565b6120cc9190613e27565b6120d69190613e73565b905060006120e3876108da565b9050818110156120f357806120f5565b815b935083821161210557600061210f565b61210f8483613e46565b607554909550600160801b90046001600160801b03168511156121715760755460009061214c90600160801b90046001600160801b031687613e46565b90506121588186613f3b565b607554600160801b90046001600160801b031696509450505b600082116121c15760405162461bcd60e51b815260206004820152601f60248201527f6d696e207368617265732077697468647261772076616c75653a2031206764006044820152606401610c1d565b6121d3670de0b6b3a764000083613e27565b607780546000906121e5908490613e46565b90915550506075805486919060109061220f908490600160801b90046001600160801b0316614152565b92506101000a8154816001600160801b0302191690836001600160801b0316021790555083607560010160008282829054906101000a90046001600160801b031661225a9190613fa5565b82546101009290920a6001600160801b038181021990931691831602179091556001600160a01b0389166000908152607860205260409020805487935090916010916122af918591600160801b900416613fa5565b92506101000a8154816001600160801b0302191690836001600160801b031602179055506000866122de610b97565b6122e89190613e46565b90506000811561232957612304670de0b6b3a764000083613e27565b60775461231a90670de0b6b3a764000090613e27565b6123249190613e73565b61232c565b60005b9050600087118061233c57508286145b80612345575081155b15612380576001600160a01b038916600090815260786020526040902080546001600160801b0319166001600160801b0383161790556123f2565b61238a8886613e46565b670de0b6b3a764000061239d8886613e46565b6123a79190613e27565b6123b19190613e73565b6123bb9082613e46565b6001600160a01b038a16600090815260786020526040902080546001600160801b0319166001600160801b03929092169190911790555b50505050509250929050565b600061240b86848461330d565b6001600160a01b038087166000908152600b6020908152604080832093891683529290522054612452908790879061244d9088906001600160801b0316613e46565b613388565b6001600160a01b038616600090815260056020526040902054612476908590613e46565b6001600160a01b03871660009081526005602052604090205550600195945050505050565b6001600160a01b0382166124fb5760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608401610c1d565b6001600160a01b0382166000908152602081905260409020548181101561256f5760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608401610c1d565b6001600160a01b038316600090815260208190526040812083830390556002805484929061259e908490613e46565b90915550506040518281526000906001600160a01b038516906000805160206142298339815191529060200160405180910390a3505050565b60408054905163bf40fac160e01b815260009130916001600160a01b039091169063bf40fac19061260a90600401613fef565b60206040518083038186803b15801561262257600080fd5b505afa158015612636573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061265a9190613ec2565b6001600160a01b03161480612787575060408054905163bf40fac160e01b81526001600160a01b039091169063bf40fac1906126989060040161417a565b60206040518083038186803b1580156126b057600080fd5b505afa1580156126c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126e89190613ec2565b604051632474521560e21b81527f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660048201523060248201526001600160a01b0391909116906391d148549060440160206040518083038186803b15801561274f57600080fd5b505afa158015612763573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127879190613f1e565b156128d5576127993083600043613504565b905080156128d55760408054905163bf40fac160e01b81526001600160a01b039091169063bf40fac1906127cf9060040161417a565b60206040518083038186803b1580156127e757600080fd5b505afa1580156127fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061281f9190613ec2565b6001600160a01b03166340c10f1983836040518363ffffffff1660e01b815260040161284c929190613f05565b602060405180830381600087803b15801561286657600080fd5b505af115801561287a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061289e9190614001565b5060405181815233907f43848d0574703c28d68ae8958e0571521618f60c4bcacfb094cff2156eaae0f19060200160405180910390a25b919050565b60408054905163bf40fac160e01b815260009182916001600160a01b039091169063bf40fac19061290d9060040161419e565b60206040518083038186803b15801561292557600080fd5b505afa158015612939573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061295d9190613ec2565b90506001600160a01b03811615612a735760408054905163bf40fac160e01b81526001600160a01b039091169063bf40fac19061299c9060040161419e565b60206040518083038186803b1580156129b457600080fd5b505afa1580156129c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129ec9190613ec2565b6001600160a01b03166317eebf2185856040518363ffffffff1660e01b8152600401612a19929190613f05565b602060405180830381600087803b158015612a3357600080fd5b505af1925050508015612a63575060408051601f3d908101601f19168201909252612a6091810190614001565b60015b612a705760009150612a73565b91505b82821015612af0576000612a9085612a8b8587613e46565b613639565b9050612aa03086836000436130de565b50612aab8582613852565b60408051858152602081018590526001600160a01b038716917ebf1ad6dc928dba623a6fa0f94a5a7066d3a4ea1fba064b71e9afe629b6fa1f910160405180910390a2505b5092915050565b6001600160a01b038316600090815260066020908152604080832054600990925290912054908382108015612b2c5750834310155b612b365781612b38565b835b91506000834311612b495743612b4b565b835b905084811080612b5b5750838310155b15612b665750612be7565b6000612b728483613e46565b6001600160a01b0388166000908152600a602052604081205491925090612b999083613e27565b6001600160a01b038916600090815260056020526040902054909150612bca82676765c793fa10079d601b1b613e27565b612bd49190613e73565b612bde9085613f3b565b93508294505050505b935093915050565b603e5460408051632d77bef360e11b8152905133926001600160a01b031691635aef7de6916004808301926020929190829003018186803b158015612c3357600080fd5b505afa158015612c47573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c6b9190613ec2565b6001600160a01b031614612cc15760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206176617461722063616e2063616c6c2074686973206d6574686f646044820152606401610c1d565b565b612ccf8260004361330d565b612cd7610b6e565b612ce19082613e73565b6001600160a01b039092166000908152600a602052604090209190915550565b6077546000901580612d1d57506075546001600160801b031643145b15612d29575060775490565b607554600090612d5290612d46906001600160801b031643613e46565b607954600f0b90611b36565b60775490915061108790600f83900b90611d4f565b60745460ff1615612d8a5760405162461bcd60e51b8152600401610c1d906141c8565b6000612d96838361391f565b9050612da28382613852565b612db03084836000436130de565b50612dba836125d7565b50826001600160a01b03167f9e71bc8eea02a63969f509818f2dafb9254532904319f9dbda79b67bd34a5f3d83604051612df691815260200190565b60405180910390a2505050565b612e0b612e6c565b612e26816001600160801b0316670de0b6b3a7640000611af8565b607980546001600160801b0319166001600160801b039290921691909117905550565b6000816001612e588286613f3b565b612e629190613e46565b611b2f9190613e73565b612e74612d01565b607755607580546001600160801b031916436001600160801b0316179055565b60745460ff1615612eb75760405162461bcd60e51b8152600401610c1d906141c8565b6074805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612eec3390565b604051612ef99190613cec565b60405180910390a1565b60745460ff16612f4c5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152606401610c1d565b6074805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33612eec565b600081612f8957600080fd5b60006001600160c01b038411612fb45782604085901b81612fac57612fac613e5d565b0490506130ca565b60c084811c600160201b8110612fcc576020918201911c5b620100008110612fde576010918201911c5b6101008110612fef576008918201911c5b60108110612fff576004918201911c5b6004811061300f576002918201911c5b6002811061301e576001820191505b60bf820360018603901c6001018260ff0387901b8161303f5761303f613e5d565b0492506001600160801b0383111561305657600080fd5b608085901c83026001600160801b038616840260c088901c604089901b82811015613082576001820391505b608084901b92900382811015613099576001820391505b829003608084901c82146130af576130af6141f2565b8881816130be576130be613e5d565b04870196505050505050505b6001600160801b03811115611b2f57600080fd5b60006130eb86848461330d565b6001600160a01b038087166000908152600b602090815260408083209389168352929052205461312d908790879061244d9088906001600160801b0316613f3b565b6001600160a01b038616600090815260056020526040902054612476908590613f3b565b6001600160a01b0383166131b55760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610c1d565b6001600160a01b0382166132175760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610c1d565b6001600160a01b0383166000908152602081905260409020548181101561328f5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610c1d565b6001600160a01b038085166000908152602081905260408082208585039055918516815290812080548492906132c6908490613f3b565b92505081905550826001600160a01b0316846001600160a01b03166000805160206142298339815191528460405161330091815260200190565b60405180910390a3611f4f565b6001600160a01b0383166000908152600560205260409020546133485750506001600160a01b03166000908152600960205260409020439055565b600080613356858585612af7565b6001600160a01b0390961660009081526006602090815260408083209890985560099052959095209490945550505050565b6001600160a01b038084166000908152600b6020908152604080832093861683529290522080546001600160801b0316156134945780546001600160a01b03851660009081526006602052604081205490916001600160801b03600160801b8204811692676765c793fa10079d601b1b926134039216613e27565b61340d9190613e73565b6134179190613e46565b60018301549091506134339082906001600160801b0316613fa5565b6001830180546001600160801b0319166001600160801b03929092169190911790556001600160a01b038516600090815260086020526040902054613479908290613f3b565b6001600160a01b038616600090815260086020526040902055505b80546001600160801b0319166001600160801b0383161781556001600160a01b038416600090815260066020526040902054676765c793fa10079d601b1b906134dd9084613e27565b6134e79190613e73565b81546001600160801b03918216600160801b029116179055505050565b600061351185848461330d565b6001600160a01b038086166000908152600b602090815260408083209388168352929052205461354d90869086906001600160801b0316613388565b6001600160a01b038581166000908152600b6020908152604080832093881683529290522060010180546001600160801b03808216928392909160109161359d918591600160801b900416613fa5565b82546101009290920a6001600160801b038181021990931691831602179091556001600160a01b038881166000818152600b60209081526040808320948c16835293815283822060010180546001600160801b03191690559181526007909152205461360d925090831690613f3b565b6001600160a01b0387166000908152600760205260409020556001600160801b03169050949350505050565b600081613648575060006109f2565b6000613652610b97565b116136685761366361271083613e27565b61368c565b61367061102e565b613682670de0b6b3a764000084613e27565b61368c9190613e73565b6076805491925083916000906136ac9084906001600160801b0316614152565b92506101000a8154816001600160801b0302191690836001600160801b03160217905550670de0b6b3a76400006001600160801b0316826136ed9190613e27565b607780546000906136ff908490613f3b565b90915550506001600160a01b0383166000908152607860205260409020805483919060109061373f908490600160801b90046001600160801b0316614152565b82546101009290920a6001600160801b038181021990931691831602179091556001600160a01b038516600090815260786020526040902054161590506109f25760008161378c85611ab5565b6137969190613f3b565b6137a8670de0b6b3a764000085613e27565b6137b29190613e73565b6001600160a01b0385166000908152607860205260409020549091506001600160801b0316811015613810576001600160a01b03841660009081526078602052604090205461380b9082906001600160801b0316613e46565b613813565b60005b6001600160a01b038516600090815260786020526040902080546001600160801b03929092166001600160801b03199092169190911790555092915050565b6001600160a01b0382166138a85760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610c1d565b80600260008282546138ba9190613f3b565b90915550506001600160a01b038216600090815260208190526040812080548392906138e7908490613f3b565b90915550506040518181526001600160a01b038316906000906000805160206142298339815191529060200160405180910390a35050565b6000613929612e6c565b6000821161396a5760405162461bcd60e51b815260206004820152600e60248201526d043616e6e6f74207374616b6520360941b6044820152606401610c1d565b6000613974610b97565b1161398a5761398561271083613e27565b6139ae565b61399261102e565b6139a4670de0b6b3a764000084613e27565b6139ae9190613e73565b9050600081116139fa5760405162461bcd60e51b81526020600482015260176024820152766d696e207374616b65203120736861726520707269636560481b6044820152606401610c1d565b613a0383611ab5565b15613a7c5780613a1284611ab5565b613a1c9190613f3b565b613a2461102e565b613a2e9083613e27565b6001600160a01b0385166000908152607860205260409020546001600160801b0316613a5986611ab5565b613a639190613e27565b613a6d9190613f3b565b613a779190613e73565b613a99565b80613a8f670de0b6b3a764000084613e27565b613a999190613e73565b6001600160a01b038416600090815260786020526040902080546001600160801b0319166001600160801b03928316179055607580548492601091613ae7918591600160801b900416613fa5565b92506101000a8154816001600160801b0302191690836001600160801b03160217905550670de0b6b3a76400006001600160801b031682613b289190613e27565b60778054600090613b3a908490613f3b565b90915550909392505050565b6001600160a01b038116811461128c57600080fd5b600060208284031215613b6d57600080fd5b8135611b2f81613b46565b60005b83811015613b93578181015183820152602001613b7b565b83811115611f4f5750506000910152565b60008151808452613bbc816020860160208601613b78565b601f01601f19169290920160200192915050565b602081526000611b2f6020830184613ba4565b60008060408385031215613bf657600080fd5b8235613c0181613b46565b946020939093013593505050565b600080600060608486031215613c2457600080fd5b8335613c2f81613b46565b92506020840135613c3f81613b46565b929592945050506040919091013590565b600060208284031215613c6257600080fd5b5035919050565b60008060408385031215613c7c57600080fd5b8235613c8781613b46565b91506020830135613c9781613b46565b809150509250929050565b60008060008060808587031215613cb857600080fd5b8435613cc381613b46565b935060208501359250604085013591506060850135613ce181613b46565b939692955090935050565b6001600160a01b0391909116815260200190565b6001600160801b0391909116815260200190565b60008060008060608587031215613d2a57600080fd5b8435613d3581613b46565b93506020850135925060408501356001600160401b0380821115613d5857600080fd5b818701915087601f830112613d6c57600080fd5b813581811115613d7b57600080fd5b886020828501011115613d8d57600080fd5b95989497505060200194505050565b80356001600160801b03811681146128d557600080fd5b600060208284031215613dc557600080fd5b611b2f82613d9c565b801515811461128c57600080fd5b60008060408385031215613def57600080fd5b8235613dfa81613dce565b9150613e0860208401613d9c565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b6000816000190483118215151615613e4157613e41613e11565b500290565b600082821015613e5857613e58613e11565b500390565b634e487b7160e01b600052601260045260246000fd5b600082613e8257613e82613e5d565b500490565b600181811c90821680613e9b57607f821691505b60208210811415613ebc57634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215613ed457600080fd5b8151611b2f81613b46565b60006001600160801b0383811680613ef957613ef9613e5d565b92169190910492915050565b6001600160a01b03929092168252602082015260400190565b600060208284031215613f3057600080fd5b8151611b2f81613dce565b60008219821115613f4e57613f4e613e11565b500190565b60006001600160801b0382811684821681151582840482111615613f7957613f79613e11565b02949350505050565b600063ffffffff80831681851681830481118215151615613f7957613f79613e11565b60006001600160801b03828116848216808303821115613fc757613fc7613e11565b01949350505050565b600c81526b4744414f5f5354414b494e4760a01b602082015260400190565b6020815260006109f260208301613fd0565b60006020828403121561401357600080fd5b5051919050565b600060018060a01b0380871683526080602084015261403c6080840187613ba4565b94166040830152506060015292915050565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561407757600080fd5b825161408281613dce565b60208401519092506001600160401b038082111561409f57600080fd5b818501915085601f8301126140b357600080fd5b8151818111156140c5576140c561404e565b604051601f8201601f19908116603f011681019083821181831017156140ed576140ed61404e565b8160405282815288602084870101111561410657600080fd5b614117836020830160208801613b78565b80955050505050509250929050565b60408152600061413860408301613fd0565b6001600160a01b0393909316602092909201919091525090565b60006001600160801b038381169083168181101561417257614172613e11565b039392505050565b6020808252600a90820152692922a82aaa20aa24a7a760b11b604082015260600190565b60208082526010908201526f26a4a72a212aa9272faba920a82822a960811b604082015260600190565b60208082526010908201526f14185d5cd8589b194e881c185d5cd95960821b604082015260600190565b634e487b7160e01b600052600160045260246000fdfe1bda1e84e6af3f7391d288a491b734032ae9ea89ad3ebbc213d352456ab51a2bddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220beb2c6b9a45fa82e42e7ed918701cb5d74959067ebd0b3c36b0eb6d2ec1a4dba64736f6c63430008080033",
|
|
1332
|
-
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106102a85760003560e01c80628cc262146102ad57806306fdde03146102d3578063095ea7b3146102e85780630c1cd7f31461030b57806318160ddd146103285780631b3c90a81461033057806320f902ae1461033a578063213b329e1461035f57806322022a291461036757806322dec37b1461036f57806323b872dd1461038f57806325d5971f146103a25780632e42a896146103b5578063313ce5671461043a57806331903da11461044957806336de95f614610469578063395093511461047c578063399080ec1461048f5780633d9a12cc146104a25780633e6326fc146104b55780634162169f146104d557806347b3e7e8146104e85780634f1db7f614610508578063576ce9fd1461051b5780635aef7de61461052e5780635c975abb146105415780635fc5e0201461054c5780636eb629841461056857806370a082311461057b578063777d66411461058e5780637bcbb9ff146105ae578063846141b3146105c157806387269729146105e157806395d89b41146105e9578063a457c2d7146105f1578063a4c0ed3614610604578063a694fc3a14610617578063a9059cbb1461062a578063aa3258211461063d578063aaf5eb681461054c578063aba78c1614610650578063b20b9979146106a4578063b811540e146106b7578063b86543ba146106ca578063bf8e9b6e146106dd578063c6710629146106e5578063c7b8981c146106f8578063ceb8b01c14610700578063cf09e0d014610708578063d55ec69714610722578063d80528ae1461072a578063d853365f14610789578063dd62ed3e14610792578063e087788e146107a5578063e1758bd8146107b8578063ebe91644146107c0578063f5eb42dc146108a1578063fc0c546a146108b4578063fea6f4f5146108c7575b600080fd5b6102c06102bb366004613b5b565b6108da565b6040519081526020015b60405180910390f35b6102db61094c565b6040516102ca9190613bd0565b6102fb6102f6366004613be3565b6109de565b60405190151581526020016102ca565b6103136109f8565b604080519283526020830191909152016102ca565b6002546102c0565b610338610a29565b005b607c5461034a9063ffffffff1681565b60405163ffffffff90911681526020016102ca565b6102c0610b6e565b6102c0610b97565b6102c061037d366004613b5b565b60076020526000908152604090205481565b6102fb61039d366004613c0f565b610ba7565b6103136103b0366004613c50565b610bcb565b6104076103c3366004613c69565b600b602090815260009283526040808420909152908252902080546001909101546001600160801b0380831692600160801b90819004821692808316929190041684565b604080516001600160801b03958616815293851660208501529184169183019190915290911660608201526080016102ca565b604051601281526020016102ca565b6102c0610457366004613b5b565b60086020526000908152604090205481565b6102c0610477366004613b5b565b610de0565b6102fb61048a366004613be3565b610e11565b61031361049d366004613b5b565b610e50565b6102c06104b0366004613ca2565b610e66565b6040546104c8906001600160a01b031681565b6040516102ca9190613cec565b603e546104c8906001600160a01b031681565b6102c06104f6366004613b5b565b600a6020526000908152604090205481565b610313610516366004613c69565b610f5a565b6102c0610529366004613b5b565b610f9d565b603f546104c8906001600160a01b031681565b60745460ff166102fb565b61055b670de0b6b3a764000081565b6040516102ca9190613d00565b610338610576366004613c50565b610fc1565b6102c0610589366004613b5b565b610ff8565b60795461059b90600f0b81565b604051600f9190910b81526020016102ca565b6102c06105bc366004613b5b565b611013565b6102c06105cf366004613b5b565b60096020526000908152604090205481565b6102c061102e565b6102db61108d565b6102fb6105ff366004613be3565b61109c565b6102fb610612366004613d14565b61112e565b610338610625366004613c50565b611189565b6102fb610638366004613be3565b61128f565b6102c061064b366004613b5b565b61129d565b61068461065e366004613b5b565b6078602052600090815260409020546001600160801b0380821691600160801b90041682565b604080516001600160801b039384168152929091166020830152016102ca565b6103386106b2366004613db3565b6112b9565b6102c06106c5366004613c50565b61132f565b607b5461055b906001600160801b031681565b61031361136d565b6103136106f3366004613b5b565b611408565b61031361142a565b6102c061144f565b607b5461055b90600160801b90046001600160801b031681565b610338611493565b607554607654607754610754926001600160801b0380821693600160801b90920481169291169084565b6040516102ca94939291906001600160801b039485168152928416602084015292166040820152606081019190915260800190565b61055b61271081565b6102c06107a0366004613c69565b6119c9565b6103386107b3366004613db3565b6119f4565b6104c8611a1e565b61085e6107ce366004613b5b565b60408051608081018252600080825260208201819052918101829052606081019190915250306000908152600b602090815260408083206001600160a01b0394909416835292815290829020825160808101845281546001600160801b038082168352600160801b9182900481169483019490945260019092015480841694820194909452920416606082015290565b6040516102ca919081516001600160801b039081168252602080840151821690830152604080840151821690830152606092830151169181019190915260800190565b6102c06108af366004613b5b565b611ab5565b607a546104c8906001600160a01b031681565b6103386108d5366004613ddc565b611ac0565b6000806108e683611ab5565b905060006108f261102e565b905060006108ff85610f9d565b905081811161090e5780610910565b815b9050670de0b6b3a76400006109258483613e27565b61092f8585613e27565b6109399190613e46565b6109439190613e73565b95945050505050565b60606003805461095b90613e87565b80601f016020809104026020016040519081016040528092919081815260200182805461098790613e87565b80156109d45780601f106109a9576101008083540402835291602001916109d4565b820191906000526020600020905b8154815290600101906020018083116109b757829003601f168201915b5050505050905090565b6000336109ec818585611db7565b60019150505b92915050565b306000908152600a6020526040812054607954909190610a2390600f0b670de0b6b3a7640000611d4f565b90509091565b60408054905163bf40fac160e01b815260206004820152600a60248201526921a7a72a2927a62622a960b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b158015610a8757600080fd5b505afa158015610a9b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610abf9190613ec2565b603e80546001600160a01b0319166001600160a01b0392909216918217905560408051632d77bef360e11b81529051635aef7de691600480820192602092909190829003018186803b158015610b1457600080fd5b505afa158015610b28573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b4c9190613ec2565b603f80546001600160a01b0319166001600160a01b0392909216919091179055565b607b54600090610b8990600c906001600160801b0316613edf565b6001600160801b0316905090565b6000610ba260025490565b905090565b600033610bb5858285611edb565b610bc0858585611f55565b506001949350505050565b60008060026073541415610c265760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064015b60405180910390fd5b6002607355600080610c3733611ab5565b90508415610c6657610c49338661204d565b93509150610c5b3033876000436123fe565b50610c66338661249b565b610c6f336125d7565b935060008315610c8657610c8333856128da565b90505b6000610c9133611ab5565b610c9b9084613e46565b90508315610d6e57607a5460405163a9059cbb60e01b81526001600160a01b039091169063a9059cbb90610cd59033908890600401613f05565b602060405180830381600087803b158015610cef57600080fd5b505af1158015610d03573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d279190613f1e565b610d6e5760405162461bcd60e51b81526020600482015260186024820152771dda5d1a191c985dc81d1c985b9cd9995c8819985a5b195960421b6044820152606401610c1d565b337fb4445b5ca5d925c0bf5fb70a192f888574bff35d4da72ff1c5dae14df544310c82610d9b8588613f3b565b60408051928352602083019190915281018a9052606081018990526080810188905260a0810185905260c00160405180910390a2505050506001607381905550915091565b6000670de0b6b3a7640000610df483611ab5565b610dfd84610f9d565b610e079190613e27565b6109f29190613e73565b3360008181526001602090815260408083206001600160a01b03871684529091528120549091906109ec9082908690610e4b908790613f3b565b611db7565b600080610e5d3084610f5a565b91509150915091565b6001600160a01b038085166000818152600b602090815260408083209486168352938152838220845160808101865281546001600160801b038082168352600160801b91829004811683860152600190930154808416838901520490911660608201529282526005905291822054829015610f50576000610ee8888888612af7565b91505082604001516001600160801b0316915082602001516001600160801b0316676765c793fa10079d601b1b8285600001516001600160801b0316610f2e9190613e27565b610f389190613e73565b610f429190613e46565b610f4c9083613f3b565b9150505b9695505050505050565b6001600160a01b039182166000818152600b60209081526040808320949095168252928352838120549181526005909252919020546001600160801b0390911691565b6001600160a01b03166000908152607860205260409020546001600160801b031690565b610fc9612bef565b610fd33082612cc3565b604051818152600080516020614209833981519152906020015b60405180910390a150565b6001600160a01b031660009081526020819052604090205490565b6001600160a01b031660009081526006602052604090205490565b600080611039612d01565b9050611043610b97565b1561108457670de0b6b3a7640000611059610b97565b6110639190613e27565b611075670de0b6b3a764000083613e27565b61107f9190613e73565b611087565b60005b91505090565b60606004805461095b90613e87565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909190838110156111215760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610c1d565b610bc08286868403611db7565b607a546000906001600160a01b0316331461117f5760405162461bcd60e51b81526020600482015260116024820152703ab739bab83837b93a32b2103a37b5b2b760791b6044820152606401610c1d565b610bc08585612d67565b607a546040516323b872dd60e01b8152336004820152306024820152604481018390526001600160a01b03909116906323b872dd90606401602060405180830381600087803b1580156111db57600080fd5b505af11580156111ef573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112139190613f1e565b6112825760405162461bcd60e51b815260206004820152603a60248201527f7472616e7366657246726f6d206661696c65642c206d616b652073757265207960448201527937ba9030b8383937bb32b2103a37b5b2b7103a3930b739b332b960311b6064820152608401610c1d565b61128c3382612d67565b50565b6000336109ec818585611f55565b6000670de0b6b3a76400006112b183611ab5565b610dfd61102e565b6112c1612bef565b6112ca81612e03565b607954607b54612ee0916112f6916112ee91600f0b906001600160801b0316611b36565b612710611d4f565b1061130057600080fd5b7f5e47ff33a7f14c29b3d9d622df796f19d1af1adf178ff7e266844cc8362457c081604051610fed9190613d00565b60006109f261133c61102e565b612710611351670de0b6b3a764000086613e27565b61135b9190613e27565b6113659190613e73565b612710612e49565b60008061137930611013565b915061138460025490565b1561140157670de0b6b3a764000061139b60025490565b6113a59190613e27565b607554670de0b6b3a7640000906113cd908290600160801b90046001600160801b0316613f53565b6001600160801b03166113de612d01565b6113e89190613e46565b6113f29190613e27565b6113fc9190613e73565b610a23565b5090600090565b6000806114183060004386610e66565b9150611423836108da565b9050915091565b600080600061143b6106c5336108da565b905061144681610bcb565b92509250509091565b60755460009061147890670de0b6b3a764000090600160801b90046001600160801b0316613f53565b6001600160801b0316611489612d01565b610ba29190613e46565b607c546114a99063ffffffff1662015180613f82565b607b546114cc9163ffffffff1690600160801b90046001600160801b0316613fa5565b6001600160801b0316421180156115635750603e54603f54604051639be2faed60e01b81523060048201526001600160a01b039182166024820152911690639be2faed9060440160206040518083038186803b15801561152b57600080fd5b505afa15801561153f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115639190613f1e565b6115ac5760405162461bcd60e51b815260206004820152601a6024820152796e6f7420646561646c696e65206f72206e6f7420736368656d6560301b6044820152606401610c1d565b6115c03066d3c21bcecceda160191b612cc3565b60405166d3c21bcecceda160191b81526000805160206142098339815191529060200160405180910390a160408054905163bf40fac160e01b81526000916001600160a01b03169063bf40fac19061161a90600401613fef565b60206040518083038186803b15801561163257600080fd5b505afa158015611646573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061166a9190613ec2565b905060006001600160a01b0382161561181657816001600160a01b031663c7b8981c6040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156116b857600080fd5b505af11580156116cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116f09190614001565b50603e54604051600060248201526001600160a01b039091169063d1b7089a90849060440160408051601f198184030181529181526020820180516001600160e01b03166363b13cd160e11b179052603f54905160e085901b6001600160e01b03191681526117709392916001600160a01b03169060009060040161401a565b600060405180830381600087803b15801561178a57600080fd5b505af115801561179e573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526117c69190810190614064565b509050806118165760405162461bcd60e51b815260206004820181905260248201527f63616c6c696e67207365744d6f6e74686c7952657761726473206661696c65646044820152606401610c1d565b603e546040805490516001600160a01b039283169263d1b7089a921690611841903090602401614126565b60408051601f198184030181529181526020820180516001600160e01b0316639b2ea4bd60e01b179052603f54905160e085901b6001600160e01b031916815261189c9392916001600160a01b03169060009060040161401a565b600060405180830381600087803b1580156118b657600080fd5b505af11580156118ca573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526118f29190810190614064565b5090508061193e5760405162461bcd60e51b815260206004820152601960248201527818d85b1b1a5b99c81cd95d1059191c995cdcc819985a5b1959603a1b6044820152606401610c1d565b603e54603f54604051636c525b1360e01b81526001600160a01b0392831692636c525b139261197292911690600401613cec565b602060405180830381600087803b15801561198c57600080fd5b505af11580156119a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119c49190613f1e565b505050565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6119fc612bef565b607b80546001600160801b0319166001600160801b0392909216919091179055565b60408054905163bf40fac160e01b815260206004820152600a60248201526923a7a7a22227a62620a960b11b60448201526000916001600160a01b03169063bf40fac19060640160206040518083038186803b158015611a7d57600080fd5b505afa158015611a91573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ba29190613ec2565b60006109f282610ff8565b611ac8612e6c565b611ad0612bef565b8115611ae357611ade612e94565b611aeb565b611aeb612f03565b611af4816112b9565b5050565b600081611b0457600080fd5b6000611b108484612f7d565b905060016001607f1b036001600160801b0382161115611b2f57600080fd5b9392505050565b600080600084600f0b128015611b4f5750826001166001145b905060008085600f0b12611b635784611b68565b846000035b6001600160801b03169050600160801b600160401b8211611bfd57603f82901b91505b8415611bf5576001851615611ba0578102607f1c5b908002607f1c906002851615611bb6578102607f1c5b908002607f1c906004851615611bcc578102607f1c5b908002607f1c906008851615611be2578102607f1c5b60049490941c93908002607f1c90611b8b565b60401c611d13565b603f600160601b831015611c175760209290921b91601f19015b600160701b831015611c2f5760109290921b91600f19015b600160781b831015611c475760089290921b91600719015b6001607c1b831015611c5f5760049290921b91600319015b6001607e1b831015611c775760029290921b91600119015b6001607f1b831015611c8f5760019290921b91600019015b60005b8615611cfc5760408210611ca557600080fd5b6001871615611ccb57918302607f1c918101600160801b831115611ccb57600192831c92015b928002607f1c9260019190911b90600160801b8410611cf057600193841c9391909101905b600187901c9650611c92565b60408110611d0957600080fd5b6040039190911c90505b600083611d205781611d25565b816000035b905060016001607f1b03198112801590611d46575060016001607f1b038113155b610f5057600080fd5b600081611d5e575060006109f2565b600083600f0b1215611d6f57600080fd5b600f83900b6001600160801b038316810260401c90608084901c026001600160c01b03811115611d9e57600080fd5b60401b8119811115611daf57600080fd5b019392505050565b6001600160a01b038316611e195760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610c1d565b6001600160a01b038216611e7a5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610c1d565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000611ee784846119c9565b90506000198114611f4f5781811015611f425760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610c1d565b611f4f8484848403611db7565b50505050565b611f633084836000436123fe565b50611f723083836000436130de565b506000611f7e83610ff8565b9050611f8a8282613f3b565b6001600160a01b038516600090815260786020526040902054611fb79084906001600160801b0316613e27565b6001600160a01b038516600090815260786020526040902054611fe49084906001600160801b0316613e27565b611fee9190613f3b565b611ff89190613e73565b6001600160a01b038416600090815260786020526040902080546001600160801b0319166001600160801b0392909216919091179055612037846125d7565b50612041836125d7565b50611f4f848484613151565b600080612058612e6c565b600061206385611ab5565b90506000841180156120755750808411155b6120ae5760405162461bcd60e51b815260206004820152600a6024820152696e6f2062616c616e636560b01b6044820152606401610c1d565b6000670de0b6b3a7640000856120c261102e565b6120cc9190613e27565b6120d69190613e73565b905060006120e3876108da565b9050818110156120f357806120f5565b815b935083821161210557600061210f565b61210f8483613e46565b607554909550600160801b90046001600160801b03168511156121715760755460009061214c90600160801b90046001600160801b031687613e46565b90506121588186613f3b565b607554600160801b90046001600160801b031696509450505b600082116121c15760405162461bcd60e51b815260206004820152601f60248201527f6d696e207368617265732077697468647261772076616c75653a2031206764006044820152606401610c1d565b6121d3670de0b6b3a764000083613e27565b607780546000906121e5908490613e46565b90915550506075805486919060109061220f908490600160801b90046001600160801b0316614152565b92506101000a8154816001600160801b0302191690836001600160801b0316021790555083607560010160008282829054906101000a90046001600160801b031661225a9190613fa5565b82546101009290920a6001600160801b038181021990931691831602179091556001600160a01b0389166000908152607860205260409020805487935090916010916122af918591600160801b900416613fa5565b92506101000a8154816001600160801b0302191690836001600160801b031602179055506000866122de610b97565b6122e89190613e46565b90506000811561232957612304670de0b6b3a764000083613e27565b60775461231a90670de0b6b3a764000090613e27565b6123249190613e73565b61232c565b60005b9050600087118061233c57508286145b80612345575081155b15612380576001600160a01b038916600090815260786020526040902080546001600160801b0319166001600160801b0383161790556123f2565b61238a8886613e46565b670de0b6b3a764000061239d8886613e46565b6123a79190613e27565b6123b19190613e73565b6123bb9082613e46565b6001600160a01b038a16600090815260786020526040902080546001600160801b0319166001600160801b03929092169190911790555b50505050509250929050565b600061240b86848461330d565b6001600160a01b038087166000908152600b6020908152604080832093891683529290522054612452908790879061244d9088906001600160801b0316613e46565b613388565b6001600160a01b038616600090815260056020526040902054612476908590613e46565b6001600160a01b03871660009081526005602052604090205550600195945050505050565b6001600160a01b0382166124fb5760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608401610c1d565b6001600160a01b0382166000908152602081905260409020548181101561256f5760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608401610c1d565b6001600160a01b038316600090815260208190526040812083830390556002805484929061259e908490613e46565b90915550506040518281526000906001600160a01b038516906000805160206142298339815191529060200160405180910390a3505050565b60408054905163bf40fac160e01b815260009130916001600160a01b039091169063bf40fac19061260a90600401613fef565b60206040518083038186803b15801561262257600080fd5b505afa158015612636573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061265a9190613ec2565b6001600160a01b03161480612787575060408054905163bf40fac160e01b81526001600160a01b039091169063bf40fac1906126989060040161417a565b60206040518083038186803b1580156126b057600080fd5b505afa1580156126c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126e89190613ec2565b604051632474521560e21b81527f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660048201523060248201526001600160a01b0391909116906391d148549060440160206040518083038186803b15801561274f57600080fd5b505afa158015612763573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127879190613f1e565b156128d5576127993083600043613504565b905080156128d55760408054905163bf40fac160e01b81526001600160a01b039091169063bf40fac1906127cf9060040161417a565b60206040518083038186803b1580156127e757600080fd5b505afa1580156127fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061281f9190613ec2565b6001600160a01b03166340c10f1983836040518363ffffffff1660e01b815260040161284c929190613f05565b602060405180830381600087803b15801561286657600080fd5b505af115801561287a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061289e9190614001565b5060405181815233907f43848d0574703c28d68ae8958e0571521618f60c4bcacfb094cff2156eaae0f19060200160405180910390a25b919050565b60408054905163bf40fac160e01b815260009182916001600160a01b039091169063bf40fac19061290d9060040161419e565b60206040518083038186803b15801561292557600080fd5b505afa158015612939573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061295d9190613ec2565b90506001600160a01b03811615612a735760408054905163bf40fac160e01b81526001600160a01b039091169063bf40fac19061299c9060040161419e565b60206040518083038186803b1580156129b457600080fd5b505afa1580156129c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129ec9190613ec2565b6001600160a01b03166317eebf2185856040518363ffffffff1660e01b8152600401612a19929190613f05565b602060405180830381600087803b158015612a3357600080fd5b505af1925050508015612a63575060408051601f3d908101601f19168201909252612a6091810190614001565b60015b612a705760009150612a73565b91505b82821015612af0576000612a9085612a8b8587613e46565b613639565b9050612aa03086836000436130de565b50612aab8582613852565b60408051858152602081018590526001600160a01b038716917ebf1ad6dc928dba623a6fa0f94a5a7066d3a4ea1fba064b71e9afe629b6fa1f910160405180910390a2505b5092915050565b6001600160a01b038316600090815260066020908152604080832054600990925290912054908382108015612b2c5750834310155b612b365781612b38565b835b91506000834311612b495743612b4b565b835b905084811080612b5b5750838310155b15612b665750612be7565b6000612b728483613e46565b6001600160a01b0388166000908152600a602052604081205491925090612b999083613e27565b6001600160a01b038916600090815260056020526040902054909150612bca82676765c793fa10079d601b1b613e27565b612bd49190613e73565b612bde9085613f3b565b93508294505050505b935093915050565b603e5460408051632d77bef360e11b8152905133926001600160a01b031691635aef7de6916004808301926020929190829003018186803b158015612c3357600080fd5b505afa158015612c47573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c6b9190613ec2565b6001600160a01b031614612cc15760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206176617461722063616e2063616c6c2074686973206d6574686f646044820152606401610c1d565b565b612ccf8260004361330d565b612cd7610b6e565b612ce19082613e73565b6001600160a01b039092166000908152600a602052604090209190915550565b6077546000901580612d1d57506075546001600160801b031643145b15612d29575060775490565b607554600090612d5290612d46906001600160801b031643613e46565b607954600f0b90611b36565b60775490915061108790600f83900b90611d4f565b60745460ff1615612d8a5760405162461bcd60e51b8152600401610c1d906141c8565b6000612d96838361391f565b9050612da28382613852565b612db03084836000436130de565b50612dba836125d7565b50826001600160a01b03167f9e71bc8eea02a63969f509818f2dafb9254532904319f9dbda79b67bd34a5f3d83604051612df691815260200190565b60405180910390a2505050565b612e0b612e6c565b612e26816001600160801b0316670de0b6b3a7640000611af8565b607980546001600160801b0319166001600160801b039290921691909117905550565b6000816001612e588286613f3b565b612e629190613e46565b611b2f9190613e73565b612e74612d01565b607755607580546001600160801b031916436001600160801b0316179055565b60745460ff1615612eb75760405162461bcd60e51b8152600401610c1d906141c8565b6074805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612eec3390565b604051612ef99190613cec565b60405180910390a1565b60745460ff16612f4c5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152606401610c1d565b6074805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33612eec565b600081612f8957600080fd5b60006001600160c01b038411612fb45782604085901b81612fac57612fac613e5d565b0490506130ca565b60c084811c600160201b8110612fcc576020918201911c5b620100008110612fde576010918201911c5b6101008110612fef576008918201911c5b60108110612fff576004918201911c5b6004811061300f576002918201911c5b6002811061301e576001820191505b60bf820360018603901c6001018260ff0387901b8161303f5761303f613e5d565b0492506001600160801b0383111561305657600080fd5b608085901c83026001600160801b038616840260c088901c604089901b82811015613082576001820391505b608084901b92900382811015613099576001820391505b829003608084901c82146130af576130af6141f2565b8881816130be576130be613e5d565b04870196505050505050505b6001600160801b03811115611b2f57600080fd5b60006130eb86848461330d565b6001600160a01b038087166000908152600b602090815260408083209389168352929052205461312d908790879061244d9088906001600160801b0316613f3b565b6001600160a01b038616600090815260056020526040902054612476908590613f3b565b6001600160a01b0383166131b55760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610c1d565b6001600160a01b0382166132175760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610c1d565b6001600160a01b0383166000908152602081905260409020548181101561328f5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610c1d565b6001600160a01b038085166000908152602081905260408082208585039055918516815290812080548492906132c6908490613f3b565b92505081905550826001600160a01b0316846001600160a01b03166000805160206142298339815191528460405161330091815260200190565b60405180910390a3611f4f565b6001600160a01b0383166000908152600560205260409020546133485750506001600160a01b03166000908152600960205260409020439055565b600080613356858585612af7565b6001600160a01b0390961660009081526006602090815260408083209890985560099052959095209490945550505050565b6001600160a01b038084166000908152600b6020908152604080832093861683529290522080546001600160801b0316156134945780546001600160a01b03851660009081526006602052604081205490916001600160801b03600160801b8204811692676765c793fa10079d601b1b926134039216613e27565b61340d9190613e73565b6134179190613e46565b60018301549091506134339082906001600160801b0316613fa5565b6001830180546001600160801b0319166001600160801b03929092169190911790556001600160a01b038516600090815260086020526040902054613479908290613f3b565b6001600160a01b038616600090815260086020526040902055505b80546001600160801b0319166001600160801b0383161781556001600160a01b038416600090815260066020526040902054676765c793fa10079d601b1b906134dd9084613e27565b6134e79190613e73565b81546001600160801b03918216600160801b029116179055505050565b600061351185848461330d565b6001600160a01b038086166000908152600b602090815260408083209388168352929052205461354d90869086906001600160801b0316613388565b6001600160a01b038581166000908152600b6020908152604080832093881683529290522060010180546001600160801b03808216928392909160109161359d918591600160801b900416613fa5565b82546101009290920a6001600160801b038181021990931691831602179091556001600160a01b038881166000818152600b60209081526040808320948c16835293815283822060010180546001600160801b03191690559181526007909152205461360d925090831690613f3b565b6001600160a01b0387166000908152600760205260409020556001600160801b03169050949350505050565b600081613648575060006109f2565b6000613652610b97565b116136685761366361271083613e27565b61368c565b61367061102e565b613682670de0b6b3a764000084613e27565b61368c9190613e73565b6076805491925083916000906136ac9084906001600160801b0316614152565b92506101000a8154816001600160801b0302191690836001600160801b03160217905550670de0b6b3a76400006001600160801b0316826136ed9190613e27565b607780546000906136ff908490613f3b565b90915550506001600160a01b0383166000908152607860205260409020805483919060109061373f908490600160801b90046001600160801b0316614152565b82546101009290920a6001600160801b038181021990931691831602179091556001600160a01b038516600090815260786020526040902054161590506109f25760008161378c85611ab5565b6137969190613f3b565b6137a8670de0b6b3a764000085613e27565b6137b29190613e73565b6001600160a01b0385166000908152607860205260409020549091506001600160801b0316811015613810576001600160a01b03841660009081526078602052604090205461380b9082906001600160801b0316613e46565b613813565b60005b6001600160a01b038516600090815260786020526040902080546001600160801b03929092166001600160801b03199092169190911790555092915050565b6001600160a01b0382166138a85760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610c1d565b80600260008282546138ba9190613f3b565b90915550506001600160a01b038216600090815260208190526040812080548392906138e7908490613f3b565b90915550506040518181526001600160a01b038316906000906000805160206142298339815191529060200160405180910390a35050565b6000613929612e6c565b6000821161396a5760405162461bcd60e51b815260206004820152600e60248201526d043616e6e6f74207374616b6520360941b6044820152606401610c1d565b6000613974610b97565b1161398a5761398561271083613e27565b6139ae565b61399261102e565b6139a4670de0b6b3a764000084613e27565b6139ae9190613e73565b9050600081116139fa5760405162461bcd60e51b81526020600482015260176024820152766d696e207374616b65203120736861726520707269636560481b6044820152606401610c1d565b613a0383611ab5565b15613a7c5780613a1284611ab5565b613a1c9190613f3b565b613a2461102e565b613a2e9083613e27565b6001600160a01b0385166000908152607860205260409020546001600160801b0316613a5986611ab5565b613a639190613e27565b613a6d9190613f3b565b613a779190613e73565b613a99565b80613a8f670de0b6b3a764000084613e27565b613a999190613e73565b6001600160a01b038416600090815260786020526040902080546001600160801b0319166001600160801b03928316179055607580548492601091613ae7918591600160801b900416613fa5565b92506101000a8154816001600160801b0302191690836001600160801b03160217905550670de0b6b3a76400006001600160801b031682613b289190613e27565b60778054600090613b3a908490613f3b565b90915550909392505050565b6001600160a01b038116811461128c57600080fd5b600060208284031215613b6d57600080fd5b8135611b2f81613b46565b60005b83811015613b93578181015183820152602001613b7b565b83811115611f4f5750506000910152565b60008151808452613bbc816020860160208601613b78565b601f01601f19169290920160200192915050565b602081526000611b2f6020830184613ba4565b60008060408385031215613bf657600080fd5b8235613c0181613b46565b946020939093013593505050565b600080600060608486031215613c2457600080fd5b8335613c2f81613b46565b92506020840135613c3f81613b46565b929592945050506040919091013590565b600060208284031215613c6257600080fd5b5035919050565b60008060408385031215613c7c57600080fd5b8235613c8781613b46565b91506020830135613c9781613b46565b809150509250929050565b60008060008060808587031215613cb857600080fd5b8435613cc381613b46565b935060208501359250604085013591506060850135613ce181613b46565b939692955090935050565b6001600160a01b0391909116815260200190565b6001600160801b0391909116815260200190565b60008060008060608587031215613d2a57600080fd5b8435613d3581613b46565b93506020850135925060408501356001600160401b0380821115613d5857600080fd5b818701915087601f830112613d6c57600080fd5b813581811115613d7b57600080fd5b886020828501011115613d8d57600080fd5b95989497505060200194505050565b80356001600160801b03811681146128d557600080fd5b600060208284031215613dc557600080fd5b611b2f82613d9c565b801515811461128c57600080fd5b60008060408385031215613def57600080fd5b8235613dfa81613dce565b9150613e0860208401613d9c565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b6000816000190483118215151615613e4157613e41613e11565b500290565b600082821015613e5857613e58613e11565b500390565b634e487b7160e01b600052601260045260246000fd5b600082613e8257613e82613e5d565b500490565b600181811c90821680613e9b57607f821691505b60208210811415613ebc57634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215613ed457600080fd5b8151611b2f81613b46565b60006001600160801b0383811680613ef957613ef9613e5d565b92169190910492915050565b6001600160a01b03929092168252602082015260400190565b600060208284031215613f3057600080fd5b8151611b2f81613dce565b60008219821115613f4e57613f4e613e11565b500190565b60006001600160801b0382811684821681151582840482111615613f7957613f79613e11565b02949350505050565b600063ffffffff80831681851681830481118215151615613f7957613f79613e11565b60006001600160801b03828116848216808303821115613fc757613fc7613e11565b01949350505050565b600c81526b4744414f5f5354414b494e4760a01b602082015260400190565b6020815260006109f260208301613fd0565b60006020828403121561401357600080fd5b5051919050565b600060018060a01b0380871683526080602084015261403c6080840187613ba4565b94166040830152506060015292915050565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561407757600080fd5b825161408281613dce565b60208401519092506001600160401b038082111561409f57600080fd5b818501915085601f8301126140b357600080fd5b8151818111156140c5576140c561404e565b604051601f8201601f19908116603f011681019083821181831017156140ed576140ed61404e565b8160405282815288602084870101111561410657600080fd5b614117836020830160208801613b78565b80955050505050509250929050565b60408152600061413860408301613fd0565b6001600160a01b0393909316602092909201919091525090565b60006001600160801b038381169083168181101561417257614172613e11565b039392505050565b6020808252600a90820152692922a82aaa20aa24a7a760b11b604082015260600190565b60208082526010908201526f26a4a72a212aa9272faba920a82822a960811b604082015260600190565b60208082526010908201526f14185d5cd8589b194e881c185d5cd95960821b604082015260600190565b634e487b7160e01b600052600160045260246000fdfe1bda1e84e6af3f7391d288a491b734032ae9ea89ad3ebbc213d352456ab51a2bddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220beb2c6b9a45fa82e42e7ed918701cb5d74959067ebd0b3c36b0eb6d2ec1a4dba64736f6c63430008080033",
|
|
1331
|
+
"bytecode": "0x60806040523480156200001157600080fd5b5060405162004dbb38038062004dbb833981016040819052620000349162000a15565b604080518082018252600a815269472420536176696e677360b01b6020808301918252835180850190945260048452631cdd91c960e21b90840152815191929162000082916003916200093c565b508051620000989060049060208401906200093c565b50506001607355506074805460ff19169055603c63ffffffff82161115620001065760405162461bcd60e51b815260206004820152601c60248201527f6d61782074776f206d6f6e74687320756e74696c207570677261646500000000604482015260640160405180910390fd5b620001118362000242565b6200011c8462000297565b607b80546001600160801b0319166001600160801b03841617905560408054905163bf40fac160e01b815260206004820152600a60248201526923a7a7a22227a62620a960b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b1580156200019657600080fd5b505afa158015620001ab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001d1919062000a7e565b607a80546001600160a01b03929092166001600160a01b0319909216919091179055306000908152600a6020526040812055607b80546001600160801b03428116600160801b029116179055607c805463ffffffff90921663ffffffff199092169190911790555062000b2d915050565b6200024c620002bf565b62000274816001600160801b0316670de0b6b3a7640000620002e960201b62001af81760201c565b607980546001600160801b0319166001600160801b039290921691909117905550565b604080546001600160a01b0319166001600160a01b038316179055620002bc6200032d565b50565b620002c96200047a565b607755607580546001600160801b031916436001600160801b0316179055565b600081620002f657600080fd5b600062000304848462000507565b905060016001607f1b036001600160801b03821611156200032457600080fd5b90505b92915050565b60408054905163bf40fac160e01b815260206004820152600a60248201526921a7a72a2927a62622a960b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b1580156200038c57600080fd5b505afa158015620003a1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003c7919062000a7e565b603e80546001600160a01b0319166001600160a01b0392909216918217905560408051632d77bef360e11b81529051635aef7de691600480820192602092909190829003018186803b1580156200041d57600080fd5b505afa15801562000432573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000458919062000a7e565b603f80546001600160a01b0319166001600160a01b0392909216919091179055565b60775460009015806200049757506075546001600160801b031643145b15620004a4575060775490565b607554600090620004dd90620004c4906001600160801b03164362000a9e565b607954600f0b9062000682602090811b62001b3617901c565b90506200050160756002015482600f0b620008cf60201b62001d4f1790919060201c565b91505090565b6000816200051457600080fd5b60006001600160c01b038411620005445782604085901b816200053b576200053b62000ac4565b0490506200066d565b60c084811c64010000000081106200055e576020918201911c5b62010000811062000571576010918201911c5b610100811062000583576008918201911c5b6010811062000594576004918201911c5b60048110620005a5576002918201911c5b60028110620005b5576001820191505b60bf820360018603901c6001018260ff0387901b81620005d957620005d962000ac4565b0492506001600160801b03831115620005f157600080fd5b608085901c83026001600160801b038616840260c088901c604089901b828110156200061e576001820391505b608084901b9290038281101562000636576001820391505b829003608084901c82146200064f576200064f62000ada565b88818162000661576200066162000ac4565b04870196505050505050505b6001600160801b038111156200032457600080fd5b600080600084600f0b1280156200069c5750826001166001145b905060008085600f0b12620006b25784620006b7565b846000035b6001600160801b03169050600160801b6801000000000000000082116200075957603f82901b91505b841562000750576001851615620006f7578102607f1c5b908002607f1c9060028516156200070e578102607f1c5b908002607f1c90600485161562000725578102607f1c5b908002607f1c9060088516156200073c578102607f1c5b60049490941c93908002607f1c90620006e0565b60401c62000885565b603f6c010000000000000000000000008310156200077d5760209290921b91601f19015b600160701b831015620007965760109290921b91600f19015b600160781b831015620007af5760089290921b91600719015b6001607c1b831015620007c85760049290921b91600319015b6001607e1b831015620007e15760029290921b91600119015b6001607f1b831015620007fa5760019290921b91600019015b60005b86156200086d57604082106200081257600080fd5b60018716156200083a57918302607f1c918101600160801b8311156200083a57600192831c92015b928002607f1c9260019190911b90600160801b84106200086057600193841c9391909101905b600187901c9650620007fd565b604081106200087b57600080fd5b6040039190911c90505b60008362000894578162000899565b816000035b905060016001607f1b03198112801590620008bb575060016001607f1b038113155b620008c557600080fd5b9695505050505050565b600081620008e05750600062000327565b600083600f0b1215620008f257600080fd5b600f83900b6001600160801b038316810260401c90608084901c026001600160c01b038111156200092257600080fd5b60401b81198111156200093457600080fd5b019392505050565b8280546200094a9062000af0565b90600052602060002090601f0160209004810192826200096e5760008555620009b9565b82601f106200098957805160ff1916838001178555620009b9565b82800160010185558215620009b9579182015b82811115620009b95782518255916020019190600101906200099c565b50620009c7929150620009cb565b5090565b5b80821115620009c75760008155600101620009cc565b6001600160a01b0381168114620002bc57600080fd5b80516001600160801b038116811462000a1057600080fd5b919050565b6000806000806080858703121562000a2c57600080fd5b845162000a3981620009e2565b935062000a4960208601620009f8565b925062000a5960408601620009f8565b9150606085015163ffffffff8116811462000a7357600080fd5b939692955090935050565b60006020828403121562000a9157600080fd5b81516200032481620009e2565b60008282101562000abf57634e487b7160e01b600052601160045260246000fd5b500390565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052600160045260246000fd5b600181811c9082168062000b0557607f821691505b6020821081141562000b2757634e487b7160e01b600052602260045260246000fd5b50919050565b61427e8062000b3d6000396000f3fe608060405234801561001057600080fd5b50600436106102a85760003560e01c80628cc262146102ad57806306fdde03146102d3578063095ea7b3146102e85780630c1cd7f31461030b57806318160ddd146103285780631b3c90a81461033057806320f902ae1461033a578063213b329e1461035f57806322022a291461036757806322dec37b1461036f57806323b872dd1461038f57806325d5971f146103a25780632e42a896146103b5578063313ce5671461043a57806331903da11461044957806336de95f614610469578063395093511461047c578063399080ec1461048f5780633d9a12cc146104a25780633e6326fc146104b55780634162169f146104d557806347b3e7e8146104e85780634f1db7f614610508578063576ce9fd1461051b5780635aef7de61461052e5780635c975abb146105415780635fc5e0201461054c5780636eb629841461056857806370a082311461057b578063777d66411461058e5780637bcbb9ff146105ae578063846141b3146105c157806387269729146105e157806395d89b41146105e9578063a457c2d7146105f1578063a4c0ed3614610604578063a694fc3a14610617578063a9059cbb1461062a578063aa3258211461063d578063aaf5eb681461054c578063aba78c1614610650578063b20b9979146106a4578063b811540e146106b7578063b86543ba146106ca578063bf8e9b6e146106dd578063c6710629146106e5578063c7b8981c146106f8578063ceb8b01c14610700578063cf09e0d014610708578063d55ec69714610722578063d80528ae1461072a578063d853365f14610789578063dd62ed3e14610792578063e087788e146107a5578063e1758bd8146107b8578063ebe91644146107c0578063f5eb42dc146108a1578063fc0c546a146108b4578063fea6f4f5146108c7575b600080fd5b6102c06102bb366004613b5b565b6108da565b6040519081526020015b60405180910390f35b6102db61094c565b6040516102ca9190613bd0565b6102fb6102f6366004613be3565b6109de565b60405190151581526020016102ca565b6103136109f8565b604080519283526020830191909152016102ca565b6002546102c0565b610338610a29565b005b607c5461034a9063ffffffff1681565b60405163ffffffff90911681526020016102ca565b6102c0610b6e565b6102c0610b97565b6102c061037d366004613b5b565b60076020526000908152604090205481565b6102fb61039d366004613c0f565b610ba7565b6103136103b0366004613c50565b610bcb565b6104076103c3366004613c69565b600b602090815260009283526040808420909152908252902080546001909101546001600160801b0380831692600160801b90819004821692808316929190041684565b604080516001600160801b03958616815293851660208501529184169183019190915290911660608201526080016102ca565b604051601281526020016102ca565b6102c0610457366004613b5b565b60086020526000908152604090205481565b6102c0610477366004613b5b565b610de0565b6102fb61048a366004613be3565b610e11565b61031361049d366004613b5b565b610e50565b6102c06104b0366004613ca2565b610e66565b6040546104c8906001600160a01b031681565b6040516102ca9190613cec565b603e546104c8906001600160a01b031681565b6102c06104f6366004613b5b565b600a6020526000908152604090205481565b610313610516366004613c69565b610f5a565b6102c0610529366004613b5b565b610f9d565b603f546104c8906001600160a01b031681565b60745460ff166102fb565b61055b670de0b6b3a764000081565b6040516102ca9190613d00565b610338610576366004613c50565b610fc1565b6102c0610589366004613b5b565b610ff8565b60795461059b90600f0b81565b604051600f9190910b81526020016102ca565b6102c06105bc366004613b5b565b611013565b6102c06105cf366004613b5b565b60096020526000908152604090205481565b6102c061102e565b6102db61108d565b6102fb6105ff366004613be3565b61109c565b6102fb610612366004613d14565b61112e565b610338610625366004613c50565b611189565b6102fb610638366004613be3565b61128f565b6102c061064b366004613b5b565b61129d565b61068461065e366004613b5b565b6078602052600090815260409020546001600160801b0380821691600160801b90041682565b604080516001600160801b039384168152929091166020830152016102ca565b6103386106b2366004613db3565b6112b9565b6102c06106c5366004613c50565b61132f565b607b5461055b906001600160801b031681565b61031361136d565b6103136106f3366004613b5b565b611408565b61031361142a565b6102c061144f565b607b5461055b90600160801b90046001600160801b031681565b610338611493565b607554607654607754610754926001600160801b0380821693600160801b90920481169291169084565b6040516102ca94939291906001600160801b039485168152928416602084015292166040820152606081019190915260800190565b61055b61271081565b6102c06107a0366004613c69565b6119c9565b6103386107b3366004613db3565b6119f4565b6104c8611a1e565b61085e6107ce366004613b5b565b60408051608081018252600080825260208201819052918101829052606081019190915250306000908152600b602090815260408083206001600160a01b0394909416835292815290829020825160808101845281546001600160801b038082168352600160801b9182900481169483019490945260019092015480841694820194909452920416606082015290565b6040516102ca919081516001600160801b039081168252602080840151821690830152604080840151821690830152606092830151169181019190915260800190565b6102c06108af366004613b5b565b611ab5565b607a546104c8906001600160a01b031681565b6103386108d5366004613ddc565b611ac0565b6000806108e683611ab5565b905060006108f261102e565b905060006108ff85610f9d565b905081811161090e5780610910565b815b9050670de0b6b3a76400006109258483613e27565b61092f8585613e27565b6109399190613e46565b6109439190613e73565b95945050505050565b60606003805461095b90613e87565b80601f016020809104026020016040519081016040528092919081815260200182805461098790613e87565b80156109d45780601f106109a9576101008083540402835291602001916109d4565b820191906000526020600020905b8154815290600101906020018083116109b757829003601f168201915b5050505050905090565b6000336109ec818585611db7565b60019150505b92915050565b306000908152600a6020526040812054607954909190610a2390600f0b670de0b6b3a7640000611d4f565b90509091565b60408054905163bf40fac160e01b815260206004820152600a60248201526921a7a72a2927a62622a960b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b158015610a8757600080fd5b505afa158015610a9b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610abf9190613ec2565b603e80546001600160a01b0319166001600160a01b0392909216918217905560408051632d77bef360e11b81529051635aef7de691600480820192602092909190829003018186803b158015610b1457600080fd5b505afa158015610b28573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b4c9190613ec2565b603f80546001600160a01b0319166001600160a01b0392909216919091179055565b607b54600090610b8990600c906001600160801b0316613edf565b6001600160801b0316905090565b6000610ba260025490565b905090565b600033610bb5858285611edb565b610bc0858585611f55565b506001949350505050565b60008060026073541415610c265760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064015b60405180910390fd5b6002607355600080610c3733611ab5565b90508415610c6657610c49338661204d565b93509150610c5b3033876000436123fe565b50610c66338661249b565b610c6f336125d7565b935060008315610c8657610c8333856128da565b90505b6000610c9133611ab5565b610c9b9084613e46565b90508315610d6e57607a5460405163a9059cbb60e01b81526001600160a01b039091169063a9059cbb90610cd59033908890600401613f05565b602060405180830381600087803b158015610cef57600080fd5b505af1158015610d03573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d279190613f1e565b610d6e5760405162461bcd60e51b81526020600482015260186024820152771dda5d1a191c985dc81d1c985b9cd9995c8819985a5b195960421b6044820152606401610c1d565b337fb4445b5ca5d925c0bf5fb70a192f888574bff35d4da72ff1c5dae14df544310c82610d9b8588613f3b565b60408051928352602083019190915281018a9052606081018990526080810188905260a0810185905260c00160405180910390a2505050506001607381905550915091565b6000670de0b6b3a7640000610df483611ab5565b610dfd84610f9d565b610e079190613e27565b6109f29190613e73565b3360008181526001602090815260408083206001600160a01b03871684529091528120549091906109ec9082908690610e4b908790613f3b565b611db7565b600080610e5d3084610f5a565b91509150915091565b6001600160a01b038085166000818152600b602090815260408083209486168352938152838220845160808101865281546001600160801b038082168352600160801b91829004811683860152600190930154808416838901520490911660608201529282526005905291822054829015610f50576000610ee8888888612af7565b91505082604001516001600160801b0316915082602001516001600160801b0316676765c793fa10079d601b1b8285600001516001600160801b0316610f2e9190613e27565b610f389190613e73565b610f429190613e46565b610f4c9083613f3b565b9150505b9695505050505050565b6001600160a01b039182166000818152600b60209081526040808320949095168252928352838120549181526005909252919020546001600160801b0390911691565b6001600160a01b03166000908152607860205260409020546001600160801b031690565b610fc9612bef565b610fd33082612cc3565b604051818152600080516020614209833981519152906020015b60405180910390a150565b6001600160a01b031660009081526020819052604090205490565b6001600160a01b031660009081526006602052604090205490565b600080611039612d01565b9050611043610b97565b1561108457670de0b6b3a7640000611059610b97565b6110639190613e27565b611075670de0b6b3a764000083613e27565b61107f9190613e73565b611087565b60005b91505090565b60606004805461095b90613e87565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909190838110156111215760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610c1d565b610bc08286868403611db7565b607a546000906001600160a01b0316331461117f5760405162461bcd60e51b81526020600482015260116024820152703ab739bab83837b93a32b2103a37b5b2b760791b6044820152606401610c1d565b610bc08585612d67565b607a546040516323b872dd60e01b8152336004820152306024820152604481018390526001600160a01b03909116906323b872dd90606401602060405180830381600087803b1580156111db57600080fd5b505af11580156111ef573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112139190613f1e565b6112825760405162461bcd60e51b815260206004820152603a60248201527f7472616e7366657246726f6d206661696c65642c206d616b652073757265207960448201527937ba9030b8383937bb32b2103a37b5b2b7103a3930b739b332b960311b6064820152608401610c1d565b61128c3382612d67565b50565b6000336109ec818585611f55565b6000670de0b6b3a76400006112b183611ab5565b610dfd61102e565b6112c1612bef565b6112ca81612e03565b607954607b54612ee0916112f6916112ee91600f0b906001600160801b0316611b36565b612710611d4f565b1061130057600080fd5b7f5e47ff33a7f14c29b3d9d622df796f19d1af1adf178ff7e266844cc8362457c081604051610fed9190613d00565b60006109f261133c61102e565b612710611351670de0b6b3a764000086613e27565b61135b9190613e27565b6113659190613e73565b612710612e49565b60008061137930611013565b915061138460025490565b1561140157670de0b6b3a764000061139b60025490565b6113a59190613e27565b607554670de0b6b3a7640000906113cd908290600160801b90046001600160801b0316613f53565b6001600160801b03166113de612d01565b6113e89190613e46565b6113f29190613e27565b6113fc9190613e73565b610a23565b5090600090565b6000806114183060004386610e66565b9150611423836108da565b9050915091565b600080600061143b6106c5336108da565b905061144681610bcb565b92509250509091565b60755460009061147890670de0b6b3a764000090600160801b90046001600160801b0316613f53565b6001600160801b0316611489612d01565b610ba29190613e46565b607c546114a99063ffffffff1662015180613f82565b607b546114cc9163ffffffff1690600160801b90046001600160801b0316613fa5565b6001600160801b0316421180156115635750603e54603f54604051639be2faed60e01b81523060048201526001600160a01b039182166024820152911690639be2faed9060440160206040518083038186803b15801561152b57600080fd5b505afa15801561153f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115639190613f1e565b6115ac5760405162461bcd60e51b815260206004820152601a6024820152796e6f7420646561646c696e65206f72206e6f7420736368656d6560301b6044820152606401610c1d565b6115c03066d3c21bcecceda160191b612cc3565b60405166d3c21bcecceda160191b81526000805160206142098339815191529060200160405180910390a160408054905163bf40fac160e01b81526000916001600160a01b03169063bf40fac19061161a90600401613fef565b60206040518083038186803b15801561163257600080fd5b505afa158015611646573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061166a9190613ec2565b905060006001600160a01b0382161561181657816001600160a01b031663c7b8981c6040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156116b857600080fd5b505af11580156116cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116f09190614001565b50603e54604051600060248201526001600160a01b039091169063d1b7089a90849060440160408051601f198184030181529181526020820180516001600160e01b03166363b13cd160e11b179052603f54905160e085901b6001600160e01b03191681526117709392916001600160a01b03169060009060040161401a565b600060405180830381600087803b15801561178a57600080fd5b505af115801561179e573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526117c69190810190614064565b509050806118165760405162461bcd60e51b815260206004820181905260248201527f63616c6c696e67207365744d6f6e74686c7952657761726473206661696c65646044820152606401610c1d565b603e546040805490516001600160a01b039283169263d1b7089a921690611841903090602401614126565b60408051601f198184030181529181526020820180516001600160e01b0316639b2ea4bd60e01b179052603f54905160e085901b6001600160e01b031916815261189c9392916001600160a01b03169060009060040161401a565b600060405180830381600087803b1580156118b657600080fd5b505af11580156118ca573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526118f29190810190614064565b5090508061193e5760405162461bcd60e51b815260206004820152601960248201527818d85b1b1a5b99c81cd95d1059191c995cdcc819985a5b1959603a1b6044820152606401610c1d565b603e54603f54604051636c525b1360e01b81526001600160a01b0392831692636c525b139261197292911690600401613cec565b602060405180830381600087803b15801561198c57600080fd5b505af11580156119a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119c49190613f1e565b505050565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6119fc612bef565b607b80546001600160801b0319166001600160801b0392909216919091179055565b60408054905163bf40fac160e01b815260206004820152600a60248201526923a7a7a22227a62620a960b11b60448201526000916001600160a01b03169063bf40fac19060640160206040518083038186803b158015611a7d57600080fd5b505afa158015611a91573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ba29190613ec2565b60006109f282610ff8565b611ac8612e6c565b611ad0612bef565b8115611ae357611ade612e94565b611aeb565b611aeb612f03565b611af4816112b9565b5050565b600081611b0457600080fd5b6000611b108484612f7d565b905060016001607f1b036001600160801b0382161115611b2f57600080fd5b9392505050565b600080600084600f0b128015611b4f5750826001166001145b905060008085600f0b12611b635784611b68565b846000035b6001600160801b03169050600160801b600160401b8211611bfd57603f82901b91505b8415611bf5576001851615611ba0578102607f1c5b908002607f1c906002851615611bb6578102607f1c5b908002607f1c906004851615611bcc578102607f1c5b908002607f1c906008851615611be2578102607f1c5b60049490941c93908002607f1c90611b8b565b60401c611d13565b603f600160601b831015611c175760209290921b91601f19015b600160701b831015611c2f5760109290921b91600f19015b600160781b831015611c475760089290921b91600719015b6001607c1b831015611c5f5760049290921b91600319015b6001607e1b831015611c775760029290921b91600119015b6001607f1b831015611c8f5760019290921b91600019015b60005b8615611cfc5760408210611ca557600080fd5b6001871615611ccb57918302607f1c918101600160801b831115611ccb57600192831c92015b928002607f1c9260019190911b90600160801b8410611cf057600193841c9391909101905b600187901c9650611c92565b60408110611d0957600080fd5b6040039190911c90505b600083611d205781611d25565b816000035b905060016001607f1b03198112801590611d46575060016001607f1b038113155b610f5057600080fd5b600081611d5e575060006109f2565b600083600f0b1215611d6f57600080fd5b600f83900b6001600160801b038316810260401c90608084901c026001600160c01b03811115611d9e57600080fd5b60401b8119811115611daf57600080fd5b019392505050565b6001600160a01b038316611e195760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610c1d565b6001600160a01b038216611e7a5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610c1d565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000611ee784846119c9565b90506000198114611f4f5781811015611f425760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610c1d565b611f4f8484848403611db7565b50505050565b611f633084836000436123fe565b50611f723083836000436130de565b506000611f7e83610ff8565b9050611f8a8282613f3b565b6001600160a01b038516600090815260786020526040902054611fb79084906001600160801b0316613e27565b6001600160a01b038516600090815260786020526040902054611fe49084906001600160801b0316613e27565b611fee9190613f3b565b611ff89190613e73565b6001600160a01b038416600090815260786020526040902080546001600160801b0319166001600160801b0392909216919091179055612037846125d7565b50612041836125d7565b50611f4f848484613151565b600080612058612e6c565b600061206385611ab5565b90506000841180156120755750808411155b6120ae5760405162461bcd60e51b815260206004820152600a6024820152696e6f2062616c616e636560b01b6044820152606401610c1d565b6000670de0b6b3a7640000856120c261102e565b6120cc9190613e27565b6120d69190613e73565b905060006120e3876108da565b9050818110156120f357806120f5565b815b935083821161210557600061210f565b61210f8483613e46565b607554909550600160801b90046001600160801b03168511156121715760755460009061214c90600160801b90046001600160801b031687613e46565b90506121588186613f3b565b607554600160801b90046001600160801b031696509450505b600082116121c15760405162461bcd60e51b815260206004820152601f60248201527f6d696e207368617265732077697468647261772076616c75653a2031206764006044820152606401610c1d565b6121d3670de0b6b3a764000083613e27565b607780546000906121e5908490613e46565b90915550506075805486919060109061220f908490600160801b90046001600160801b0316614152565b92506101000a8154816001600160801b0302191690836001600160801b0316021790555083607560010160008282829054906101000a90046001600160801b031661225a9190613fa5565b82546101009290920a6001600160801b038181021990931691831602179091556001600160a01b0389166000908152607860205260409020805487935090916010916122af918591600160801b900416613fa5565b92506101000a8154816001600160801b0302191690836001600160801b031602179055506000866122de610b97565b6122e89190613e46565b90506000811561232957612304670de0b6b3a764000083613e27565b60775461231a90670de0b6b3a764000090613e27565b6123249190613e73565b61232c565b60005b9050600087118061233c57508286145b80612345575081155b15612380576001600160a01b038916600090815260786020526040902080546001600160801b0319166001600160801b0383161790556123f2565b61238a8886613e46565b670de0b6b3a764000061239d8886613e46565b6123a79190613e27565b6123b19190613e73565b6123bb9082613e46565b6001600160a01b038a16600090815260786020526040902080546001600160801b0319166001600160801b03929092169190911790555b50505050509250929050565b600061240b86848461330d565b6001600160a01b038087166000908152600b6020908152604080832093891683529290522054612452908790879061244d9088906001600160801b0316613e46565b613388565b6001600160a01b038616600090815260056020526040902054612476908590613e46565b6001600160a01b03871660009081526005602052604090205550600195945050505050565b6001600160a01b0382166124fb5760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608401610c1d565b6001600160a01b0382166000908152602081905260409020548181101561256f5760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608401610c1d565b6001600160a01b038316600090815260208190526040812083830390556002805484929061259e908490613e46565b90915550506040518281526000906001600160a01b038516906000805160206142298339815191529060200160405180910390a3505050565b60408054905163bf40fac160e01b815260009130916001600160a01b039091169063bf40fac19061260a90600401613fef565b60206040518083038186803b15801561262257600080fd5b505afa158015612636573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061265a9190613ec2565b6001600160a01b03161480612787575060408054905163bf40fac160e01b81526001600160a01b039091169063bf40fac1906126989060040161417a565b60206040518083038186803b1580156126b057600080fd5b505afa1580156126c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126e89190613ec2565b604051632474521560e21b81527f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660048201523060248201526001600160a01b0391909116906391d148549060440160206040518083038186803b15801561274f57600080fd5b505afa158015612763573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127879190613f1e565b156128d5576127993083600043613504565b905080156128d55760408054905163bf40fac160e01b81526001600160a01b039091169063bf40fac1906127cf9060040161417a565b60206040518083038186803b1580156127e757600080fd5b505afa1580156127fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061281f9190613ec2565b6001600160a01b03166340c10f1983836040518363ffffffff1660e01b815260040161284c929190613f05565b602060405180830381600087803b15801561286657600080fd5b505af115801561287a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061289e9190614001565b5060405181815233907f43848d0574703c28d68ae8958e0571521618f60c4bcacfb094cff2156eaae0f19060200160405180910390a25b919050565b60408054905163bf40fac160e01b815260009182916001600160a01b039091169063bf40fac19061290d9060040161419e565b60206040518083038186803b15801561292557600080fd5b505afa158015612939573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061295d9190613ec2565b90506001600160a01b03811615612a735760408054905163bf40fac160e01b81526001600160a01b039091169063bf40fac19061299c9060040161419e565b60206040518083038186803b1580156129b457600080fd5b505afa1580156129c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129ec9190613ec2565b6001600160a01b03166317eebf2185856040518363ffffffff1660e01b8152600401612a19929190613f05565b602060405180830381600087803b158015612a3357600080fd5b505af1925050508015612a63575060408051601f3d908101601f19168201909252612a6091810190614001565b60015b612a705760009150612a73565b91505b82821015612af0576000612a9085612a8b8587613e46565b613639565b9050612aa03086836000436130de565b50612aab8582613852565b60408051858152602081018590526001600160a01b038716917ebf1ad6dc928dba623a6fa0f94a5a7066d3a4ea1fba064b71e9afe629b6fa1f910160405180910390a2505b5092915050565b6001600160a01b038316600090815260066020908152604080832054600990925290912054908382108015612b2c5750834310155b612b365781612b38565b835b91506000834311612b495743612b4b565b835b905084811080612b5b5750838310155b15612b665750612be7565b6000612b728483613e46565b6001600160a01b0388166000908152600a602052604081205491925090612b999083613e27565b6001600160a01b038916600090815260056020526040902054909150612bca82676765c793fa10079d601b1b613e27565b612bd49190613e73565b612bde9085613f3b565b93508294505050505b935093915050565b603e5460408051632d77bef360e11b8152905133926001600160a01b031691635aef7de6916004808301926020929190829003018186803b158015612c3357600080fd5b505afa158015612c47573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c6b9190613ec2565b6001600160a01b031614612cc15760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206176617461722063616e2063616c6c2074686973206d6574686f646044820152606401610c1d565b565b612ccf8260004361330d565b612cd7610b6e565b612ce19082613e73565b6001600160a01b039092166000908152600a602052604090209190915550565b6077546000901580612d1d57506075546001600160801b031643145b15612d29575060775490565b607554600090612d5290612d46906001600160801b031643613e46565b607954600f0b90611b36565b60775490915061108790600f83900b90611d4f565b60745460ff1615612d8a5760405162461bcd60e51b8152600401610c1d906141c8565b6000612d96838361391f565b9050612da28382613852565b612db03084836000436130de565b50612dba836125d7565b50826001600160a01b03167f9e71bc8eea02a63969f509818f2dafb9254532904319f9dbda79b67bd34a5f3d83604051612df691815260200190565b60405180910390a2505050565b612e0b612e6c565b612e26816001600160801b0316670de0b6b3a7640000611af8565b607980546001600160801b0319166001600160801b039290921691909117905550565b6000816001612e588286613f3b565b612e629190613e46565b611b2f9190613e73565b612e74612d01565b607755607580546001600160801b031916436001600160801b0316179055565b60745460ff1615612eb75760405162461bcd60e51b8152600401610c1d906141c8565b6074805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612eec3390565b604051612ef99190613cec565b60405180910390a1565b60745460ff16612f4c5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152606401610c1d565b6074805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33612eec565b600081612f8957600080fd5b60006001600160c01b038411612fb45782604085901b81612fac57612fac613e5d565b0490506130ca565b60c084811c600160201b8110612fcc576020918201911c5b620100008110612fde576010918201911c5b6101008110612fef576008918201911c5b60108110612fff576004918201911c5b6004811061300f576002918201911c5b6002811061301e576001820191505b60bf820360018603901c6001018260ff0387901b8161303f5761303f613e5d565b0492506001600160801b0383111561305657600080fd5b608085901c83026001600160801b038616840260c088901c604089901b82811015613082576001820391505b608084901b92900382811015613099576001820391505b829003608084901c82146130af576130af6141f2565b8881816130be576130be613e5d565b04870196505050505050505b6001600160801b03811115611b2f57600080fd5b60006130eb86848461330d565b6001600160a01b038087166000908152600b602090815260408083209389168352929052205461312d908790879061244d9088906001600160801b0316613f3b565b6001600160a01b038616600090815260056020526040902054612476908590613f3b565b6001600160a01b0383166131b55760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610c1d565b6001600160a01b0382166132175760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610c1d565b6001600160a01b0383166000908152602081905260409020548181101561328f5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610c1d565b6001600160a01b038085166000908152602081905260408082208585039055918516815290812080548492906132c6908490613f3b565b92505081905550826001600160a01b0316846001600160a01b03166000805160206142298339815191528460405161330091815260200190565b60405180910390a3611f4f565b6001600160a01b0383166000908152600560205260409020546133485750506001600160a01b03166000908152600960205260409020439055565b600080613356858585612af7565b6001600160a01b0390961660009081526006602090815260408083209890985560099052959095209490945550505050565b6001600160a01b038084166000908152600b6020908152604080832093861683529290522080546001600160801b0316156134945780546001600160a01b03851660009081526006602052604081205490916001600160801b03600160801b8204811692676765c793fa10079d601b1b926134039216613e27565b61340d9190613e73565b6134179190613e46565b60018301549091506134339082906001600160801b0316613fa5565b6001830180546001600160801b0319166001600160801b03929092169190911790556001600160a01b038516600090815260086020526040902054613479908290613f3b565b6001600160a01b038616600090815260086020526040902055505b80546001600160801b0319166001600160801b0383161781556001600160a01b038416600090815260066020526040902054676765c793fa10079d601b1b906134dd9084613e27565b6134e79190613e73565b81546001600160801b03918216600160801b029116179055505050565b600061351185848461330d565b6001600160a01b038086166000908152600b602090815260408083209388168352929052205461354d90869086906001600160801b0316613388565b6001600160a01b038581166000908152600b6020908152604080832093881683529290522060010180546001600160801b03808216928392909160109161359d918591600160801b900416613fa5565b82546101009290920a6001600160801b038181021990931691831602179091556001600160a01b038881166000818152600b60209081526040808320948c16835293815283822060010180546001600160801b03191690559181526007909152205461360d925090831690613f3b565b6001600160a01b0387166000908152600760205260409020556001600160801b03169050949350505050565b600081613648575060006109f2565b6000613652610b97565b116136685761366361271083613e27565b61368c565b61367061102e565b613682670de0b6b3a764000084613e27565b61368c9190613e73565b6076805491925083916000906136ac9084906001600160801b0316614152565b92506101000a8154816001600160801b0302191690836001600160801b03160217905550670de0b6b3a76400006001600160801b0316826136ed9190613e27565b607780546000906136ff908490613f3b565b90915550506001600160a01b0383166000908152607860205260409020805483919060109061373f908490600160801b90046001600160801b0316614152565b82546101009290920a6001600160801b038181021990931691831602179091556001600160a01b038516600090815260786020526040902054161590506109f25760008161378c85611ab5565b6137969190613f3b565b6137a8670de0b6b3a764000085613e27565b6137b29190613e73565b6001600160a01b0385166000908152607860205260409020549091506001600160801b0316811015613810576001600160a01b03841660009081526078602052604090205461380b9082906001600160801b0316613e46565b613813565b60005b6001600160a01b038516600090815260786020526040902080546001600160801b03929092166001600160801b03199092169190911790555092915050565b6001600160a01b0382166138a85760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610c1d565b80600260008282546138ba9190613f3b565b90915550506001600160a01b038216600090815260208190526040812080548392906138e7908490613f3b565b90915550506040518181526001600160a01b038316906000906000805160206142298339815191529060200160405180910390a35050565b6000613929612e6c565b6000821161396a5760405162461bcd60e51b815260206004820152600e60248201526d043616e6e6f74207374616b6520360941b6044820152606401610c1d565b6000613974610b97565b1161398a5761398561271083613e27565b6139ae565b61399261102e565b6139a4670de0b6b3a764000084613e27565b6139ae9190613e73565b9050600081116139fa5760405162461bcd60e51b81526020600482015260176024820152766d696e207374616b65203120736861726520707269636560481b6044820152606401610c1d565b613a0383611ab5565b15613a7c5780613a1284611ab5565b613a1c9190613f3b565b613a2461102e565b613a2e9083613e27565b6001600160a01b0385166000908152607860205260409020546001600160801b0316613a5986611ab5565b613a639190613e27565b613a6d9190613f3b565b613a779190613e73565b613a99565b80613a8f670de0b6b3a764000084613e27565b613a999190613e73565b6001600160a01b038416600090815260786020526040902080546001600160801b0319166001600160801b03928316179055607580548492601091613ae7918591600160801b900416613fa5565b92506101000a8154816001600160801b0302191690836001600160801b03160217905550670de0b6b3a76400006001600160801b031682613b289190613e27565b60778054600090613b3a908490613f3b565b90915550909392505050565b6001600160a01b038116811461128c57600080fd5b600060208284031215613b6d57600080fd5b8135611b2f81613b46565b60005b83811015613b93578181015183820152602001613b7b565b83811115611f4f5750506000910152565b60008151808452613bbc816020860160208601613b78565b601f01601f19169290920160200192915050565b602081526000611b2f6020830184613ba4565b60008060408385031215613bf657600080fd5b8235613c0181613b46565b946020939093013593505050565b600080600060608486031215613c2457600080fd5b8335613c2f81613b46565b92506020840135613c3f81613b46565b929592945050506040919091013590565b600060208284031215613c6257600080fd5b5035919050565b60008060408385031215613c7c57600080fd5b8235613c8781613b46565b91506020830135613c9781613b46565b809150509250929050565b60008060008060808587031215613cb857600080fd5b8435613cc381613b46565b935060208501359250604085013591506060850135613ce181613b46565b939692955090935050565b6001600160a01b0391909116815260200190565b6001600160801b0391909116815260200190565b60008060008060608587031215613d2a57600080fd5b8435613d3581613b46565b93506020850135925060408501356001600160401b0380821115613d5857600080fd5b818701915087601f830112613d6c57600080fd5b813581811115613d7b57600080fd5b886020828501011115613d8d57600080fd5b95989497505060200194505050565b80356001600160801b03811681146128d557600080fd5b600060208284031215613dc557600080fd5b611b2f82613d9c565b801515811461128c57600080fd5b60008060408385031215613def57600080fd5b8235613dfa81613dce565b9150613e0860208401613d9c565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b6000816000190483118215151615613e4157613e41613e11565b500290565b600082821015613e5857613e58613e11565b500390565b634e487b7160e01b600052601260045260246000fd5b600082613e8257613e82613e5d565b500490565b600181811c90821680613e9b57607f821691505b60208210811415613ebc57634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215613ed457600080fd5b8151611b2f81613b46565b60006001600160801b0383811680613ef957613ef9613e5d565b92169190910492915050565b6001600160a01b03929092168252602082015260400190565b600060208284031215613f3057600080fd5b8151611b2f81613dce565b60008219821115613f4e57613f4e613e11565b500190565b60006001600160801b0382811684821681151582840482111615613f7957613f79613e11565b02949350505050565b600063ffffffff80831681851681830481118215151615613f7957613f79613e11565b60006001600160801b03828116848216808303821115613fc757613fc7613e11565b01949350505050565b600c81526b4744414f5f5354414b494e4760a01b602082015260400190565b6020815260006109f260208301613fd0565b60006020828403121561401357600080fd5b5051919050565b600060018060a01b0380871683526080602084015261403c6080840187613ba4565b94166040830152506060015292915050565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561407757600080fd5b825161408281613dce565b60208401519092506001600160401b038082111561409f57600080fd5b818501915085601f8301126140b357600080fd5b8151818111156140c5576140c561404e565b604051601f8201601f19908116603f011681019083821181831017156140ed576140ed61404e565b8160405282815288602084870101111561410657600080fd5b614117836020830160208801613b78565b80955050505050509250929050565b60408152600061413860408301613fd0565b6001600160a01b0393909316602092909201919091525090565b60006001600160801b038381169083168181101561417257614172613e11565b039392505050565b6020808252600a90820152692922a82aaa20aa24a7a760b11b604082015260600190565b60208082526010908201526f26a4a72a212aa9272faba920a82822a960811b604082015260600190565b60208082526010908201526f14185d5cd8589b194e881c185d5cd95960821b604082015260600190565b634e487b7160e01b600052600160045260246000fdfe1bda1e84e6af3f7391d288a491b734032ae9ea89ad3ebbc213d352456ab51a2bddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa264697066735822122043dd84c9f07ef89636c59485ecb578c1a293f81c80d238f06cfe1dc15df878cd64736f6c63430008080033",
|
|
1332
|
+
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106102a85760003560e01c80628cc262146102ad57806306fdde03146102d3578063095ea7b3146102e85780630c1cd7f31461030b57806318160ddd146103285780631b3c90a81461033057806320f902ae1461033a578063213b329e1461035f57806322022a291461036757806322dec37b1461036f57806323b872dd1461038f57806325d5971f146103a25780632e42a896146103b5578063313ce5671461043a57806331903da11461044957806336de95f614610469578063395093511461047c578063399080ec1461048f5780633d9a12cc146104a25780633e6326fc146104b55780634162169f146104d557806347b3e7e8146104e85780634f1db7f614610508578063576ce9fd1461051b5780635aef7de61461052e5780635c975abb146105415780635fc5e0201461054c5780636eb629841461056857806370a082311461057b578063777d66411461058e5780637bcbb9ff146105ae578063846141b3146105c157806387269729146105e157806395d89b41146105e9578063a457c2d7146105f1578063a4c0ed3614610604578063a694fc3a14610617578063a9059cbb1461062a578063aa3258211461063d578063aaf5eb681461054c578063aba78c1614610650578063b20b9979146106a4578063b811540e146106b7578063b86543ba146106ca578063bf8e9b6e146106dd578063c6710629146106e5578063c7b8981c146106f8578063ceb8b01c14610700578063cf09e0d014610708578063d55ec69714610722578063d80528ae1461072a578063d853365f14610789578063dd62ed3e14610792578063e087788e146107a5578063e1758bd8146107b8578063ebe91644146107c0578063f5eb42dc146108a1578063fc0c546a146108b4578063fea6f4f5146108c7575b600080fd5b6102c06102bb366004613b5b565b6108da565b6040519081526020015b60405180910390f35b6102db61094c565b6040516102ca9190613bd0565b6102fb6102f6366004613be3565b6109de565b60405190151581526020016102ca565b6103136109f8565b604080519283526020830191909152016102ca565b6002546102c0565b610338610a29565b005b607c5461034a9063ffffffff1681565b60405163ffffffff90911681526020016102ca565b6102c0610b6e565b6102c0610b97565b6102c061037d366004613b5b565b60076020526000908152604090205481565b6102fb61039d366004613c0f565b610ba7565b6103136103b0366004613c50565b610bcb565b6104076103c3366004613c69565b600b602090815260009283526040808420909152908252902080546001909101546001600160801b0380831692600160801b90819004821692808316929190041684565b604080516001600160801b03958616815293851660208501529184169183019190915290911660608201526080016102ca565b604051601281526020016102ca565b6102c0610457366004613b5b565b60086020526000908152604090205481565b6102c0610477366004613b5b565b610de0565b6102fb61048a366004613be3565b610e11565b61031361049d366004613b5b565b610e50565b6102c06104b0366004613ca2565b610e66565b6040546104c8906001600160a01b031681565b6040516102ca9190613cec565b603e546104c8906001600160a01b031681565b6102c06104f6366004613b5b565b600a6020526000908152604090205481565b610313610516366004613c69565b610f5a565b6102c0610529366004613b5b565b610f9d565b603f546104c8906001600160a01b031681565b60745460ff166102fb565b61055b670de0b6b3a764000081565b6040516102ca9190613d00565b610338610576366004613c50565b610fc1565b6102c0610589366004613b5b565b610ff8565b60795461059b90600f0b81565b604051600f9190910b81526020016102ca565b6102c06105bc366004613b5b565b611013565b6102c06105cf366004613b5b565b60096020526000908152604090205481565b6102c061102e565b6102db61108d565b6102fb6105ff366004613be3565b61109c565b6102fb610612366004613d14565b61112e565b610338610625366004613c50565b611189565b6102fb610638366004613be3565b61128f565b6102c061064b366004613b5b565b61129d565b61068461065e366004613b5b565b6078602052600090815260409020546001600160801b0380821691600160801b90041682565b604080516001600160801b039384168152929091166020830152016102ca565b6103386106b2366004613db3565b6112b9565b6102c06106c5366004613c50565b61132f565b607b5461055b906001600160801b031681565b61031361136d565b6103136106f3366004613b5b565b611408565b61031361142a565b6102c061144f565b607b5461055b90600160801b90046001600160801b031681565b610338611493565b607554607654607754610754926001600160801b0380821693600160801b90920481169291169084565b6040516102ca94939291906001600160801b039485168152928416602084015292166040820152606081019190915260800190565b61055b61271081565b6102c06107a0366004613c69565b6119c9565b6103386107b3366004613db3565b6119f4565b6104c8611a1e565b61085e6107ce366004613b5b565b60408051608081018252600080825260208201819052918101829052606081019190915250306000908152600b602090815260408083206001600160a01b0394909416835292815290829020825160808101845281546001600160801b038082168352600160801b9182900481169483019490945260019092015480841694820194909452920416606082015290565b6040516102ca919081516001600160801b039081168252602080840151821690830152604080840151821690830152606092830151169181019190915260800190565b6102c06108af366004613b5b565b611ab5565b607a546104c8906001600160a01b031681565b6103386108d5366004613ddc565b611ac0565b6000806108e683611ab5565b905060006108f261102e565b905060006108ff85610f9d565b905081811161090e5780610910565b815b9050670de0b6b3a76400006109258483613e27565b61092f8585613e27565b6109399190613e46565b6109439190613e73565b95945050505050565b60606003805461095b90613e87565b80601f016020809104026020016040519081016040528092919081815260200182805461098790613e87565b80156109d45780601f106109a9576101008083540402835291602001916109d4565b820191906000526020600020905b8154815290600101906020018083116109b757829003601f168201915b5050505050905090565b6000336109ec818585611db7565b60019150505b92915050565b306000908152600a6020526040812054607954909190610a2390600f0b670de0b6b3a7640000611d4f565b90509091565b60408054905163bf40fac160e01b815260206004820152600a60248201526921a7a72a2927a62622a960b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b158015610a8757600080fd5b505afa158015610a9b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610abf9190613ec2565b603e80546001600160a01b0319166001600160a01b0392909216918217905560408051632d77bef360e11b81529051635aef7de691600480820192602092909190829003018186803b158015610b1457600080fd5b505afa158015610b28573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b4c9190613ec2565b603f80546001600160a01b0319166001600160a01b0392909216919091179055565b607b54600090610b8990600c906001600160801b0316613edf565b6001600160801b0316905090565b6000610ba260025490565b905090565b600033610bb5858285611edb565b610bc0858585611f55565b506001949350505050565b60008060026073541415610c265760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064015b60405180910390fd5b6002607355600080610c3733611ab5565b90508415610c6657610c49338661204d565b93509150610c5b3033876000436123fe565b50610c66338661249b565b610c6f336125d7565b935060008315610c8657610c8333856128da565b90505b6000610c9133611ab5565b610c9b9084613e46565b90508315610d6e57607a5460405163a9059cbb60e01b81526001600160a01b039091169063a9059cbb90610cd59033908890600401613f05565b602060405180830381600087803b158015610cef57600080fd5b505af1158015610d03573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d279190613f1e565b610d6e5760405162461bcd60e51b81526020600482015260186024820152771dda5d1a191c985dc81d1c985b9cd9995c8819985a5b195960421b6044820152606401610c1d565b337fb4445b5ca5d925c0bf5fb70a192f888574bff35d4da72ff1c5dae14df544310c82610d9b8588613f3b565b60408051928352602083019190915281018a9052606081018990526080810188905260a0810185905260c00160405180910390a2505050506001607381905550915091565b6000670de0b6b3a7640000610df483611ab5565b610dfd84610f9d565b610e079190613e27565b6109f29190613e73565b3360008181526001602090815260408083206001600160a01b03871684529091528120549091906109ec9082908690610e4b908790613f3b565b611db7565b600080610e5d3084610f5a565b91509150915091565b6001600160a01b038085166000818152600b602090815260408083209486168352938152838220845160808101865281546001600160801b038082168352600160801b91829004811683860152600190930154808416838901520490911660608201529282526005905291822054829015610f50576000610ee8888888612af7565b91505082604001516001600160801b0316915082602001516001600160801b0316676765c793fa10079d601b1b8285600001516001600160801b0316610f2e9190613e27565b610f389190613e73565b610f429190613e46565b610f4c9083613f3b565b9150505b9695505050505050565b6001600160a01b039182166000818152600b60209081526040808320949095168252928352838120549181526005909252919020546001600160801b0390911691565b6001600160a01b03166000908152607860205260409020546001600160801b031690565b610fc9612bef565b610fd33082612cc3565b604051818152600080516020614209833981519152906020015b60405180910390a150565b6001600160a01b031660009081526020819052604090205490565b6001600160a01b031660009081526006602052604090205490565b600080611039612d01565b9050611043610b97565b1561108457670de0b6b3a7640000611059610b97565b6110639190613e27565b611075670de0b6b3a764000083613e27565b61107f9190613e73565b611087565b60005b91505090565b60606004805461095b90613e87565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909190838110156111215760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610c1d565b610bc08286868403611db7565b607a546000906001600160a01b0316331461117f5760405162461bcd60e51b81526020600482015260116024820152703ab739bab83837b93a32b2103a37b5b2b760791b6044820152606401610c1d565b610bc08585612d67565b607a546040516323b872dd60e01b8152336004820152306024820152604481018390526001600160a01b03909116906323b872dd90606401602060405180830381600087803b1580156111db57600080fd5b505af11580156111ef573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112139190613f1e565b6112825760405162461bcd60e51b815260206004820152603a60248201527f7472616e7366657246726f6d206661696c65642c206d616b652073757265207960448201527937ba9030b8383937bb32b2103a37b5b2b7103a3930b739b332b960311b6064820152608401610c1d565b61128c3382612d67565b50565b6000336109ec818585611f55565b6000670de0b6b3a76400006112b183611ab5565b610dfd61102e565b6112c1612bef565b6112ca81612e03565b607954607b54612ee0916112f6916112ee91600f0b906001600160801b0316611b36565b612710611d4f565b1061130057600080fd5b7f5e47ff33a7f14c29b3d9d622df796f19d1af1adf178ff7e266844cc8362457c081604051610fed9190613d00565b60006109f261133c61102e565b612710611351670de0b6b3a764000086613e27565b61135b9190613e27565b6113659190613e73565b612710612e49565b60008061137930611013565b915061138460025490565b1561140157670de0b6b3a764000061139b60025490565b6113a59190613e27565b607554670de0b6b3a7640000906113cd908290600160801b90046001600160801b0316613f53565b6001600160801b03166113de612d01565b6113e89190613e46565b6113f29190613e27565b6113fc9190613e73565b610a23565b5090600090565b6000806114183060004386610e66565b9150611423836108da565b9050915091565b600080600061143b6106c5336108da565b905061144681610bcb565b92509250509091565b60755460009061147890670de0b6b3a764000090600160801b90046001600160801b0316613f53565b6001600160801b0316611489612d01565b610ba29190613e46565b607c546114a99063ffffffff1662015180613f82565b607b546114cc9163ffffffff1690600160801b90046001600160801b0316613fa5565b6001600160801b0316421180156115635750603e54603f54604051639be2faed60e01b81523060048201526001600160a01b039182166024820152911690639be2faed9060440160206040518083038186803b15801561152b57600080fd5b505afa15801561153f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115639190613f1e565b6115ac5760405162461bcd60e51b815260206004820152601a6024820152796e6f7420646561646c696e65206f72206e6f7420736368656d6560301b6044820152606401610c1d565b6115c03066d3c21bcecceda160191b612cc3565b60405166d3c21bcecceda160191b81526000805160206142098339815191529060200160405180910390a160408054905163bf40fac160e01b81526000916001600160a01b03169063bf40fac19061161a90600401613fef565b60206040518083038186803b15801561163257600080fd5b505afa158015611646573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061166a9190613ec2565b905060006001600160a01b0382161561181657816001600160a01b031663c7b8981c6040518163ffffffff1660e01b8152600401602060405180830381600087803b1580156116b857600080fd5b505af11580156116cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116f09190614001565b50603e54604051600060248201526001600160a01b039091169063d1b7089a90849060440160408051601f198184030181529181526020820180516001600160e01b03166363b13cd160e11b179052603f54905160e085901b6001600160e01b03191681526117709392916001600160a01b03169060009060040161401a565b600060405180830381600087803b15801561178a57600080fd5b505af115801561179e573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526117c69190810190614064565b509050806118165760405162461bcd60e51b815260206004820181905260248201527f63616c6c696e67207365744d6f6e74686c7952657761726473206661696c65646044820152606401610c1d565b603e546040805490516001600160a01b039283169263d1b7089a921690611841903090602401614126565b60408051601f198184030181529181526020820180516001600160e01b0316639b2ea4bd60e01b179052603f54905160e085901b6001600160e01b031916815261189c9392916001600160a01b03169060009060040161401a565b600060405180830381600087803b1580156118b657600080fd5b505af11580156118ca573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526118f29190810190614064565b5090508061193e5760405162461bcd60e51b815260206004820152601960248201527818d85b1b1a5b99c81cd95d1059191c995cdcc819985a5b1959603a1b6044820152606401610c1d565b603e54603f54604051636c525b1360e01b81526001600160a01b0392831692636c525b139261197292911690600401613cec565b602060405180830381600087803b15801561198c57600080fd5b505af11580156119a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119c49190613f1e565b505050565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6119fc612bef565b607b80546001600160801b0319166001600160801b0392909216919091179055565b60408054905163bf40fac160e01b815260206004820152600a60248201526923a7a7a22227a62620a960b11b60448201526000916001600160a01b03169063bf40fac19060640160206040518083038186803b158015611a7d57600080fd5b505afa158015611a91573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ba29190613ec2565b60006109f282610ff8565b611ac8612e6c565b611ad0612bef565b8115611ae357611ade612e94565b611aeb565b611aeb612f03565b611af4816112b9565b5050565b600081611b0457600080fd5b6000611b108484612f7d565b905060016001607f1b036001600160801b0382161115611b2f57600080fd5b9392505050565b600080600084600f0b128015611b4f5750826001166001145b905060008085600f0b12611b635784611b68565b846000035b6001600160801b03169050600160801b600160401b8211611bfd57603f82901b91505b8415611bf5576001851615611ba0578102607f1c5b908002607f1c906002851615611bb6578102607f1c5b908002607f1c906004851615611bcc578102607f1c5b908002607f1c906008851615611be2578102607f1c5b60049490941c93908002607f1c90611b8b565b60401c611d13565b603f600160601b831015611c175760209290921b91601f19015b600160701b831015611c2f5760109290921b91600f19015b600160781b831015611c475760089290921b91600719015b6001607c1b831015611c5f5760049290921b91600319015b6001607e1b831015611c775760029290921b91600119015b6001607f1b831015611c8f5760019290921b91600019015b60005b8615611cfc5760408210611ca557600080fd5b6001871615611ccb57918302607f1c918101600160801b831115611ccb57600192831c92015b928002607f1c9260019190911b90600160801b8410611cf057600193841c9391909101905b600187901c9650611c92565b60408110611d0957600080fd5b6040039190911c90505b600083611d205781611d25565b816000035b905060016001607f1b03198112801590611d46575060016001607f1b038113155b610f5057600080fd5b600081611d5e575060006109f2565b600083600f0b1215611d6f57600080fd5b600f83900b6001600160801b038316810260401c90608084901c026001600160c01b03811115611d9e57600080fd5b60401b8119811115611daf57600080fd5b019392505050565b6001600160a01b038316611e195760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610c1d565b6001600160a01b038216611e7a5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610c1d565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000611ee784846119c9565b90506000198114611f4f5781811015611f425760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610c1d565b611f4f8484848403611db7565b50505050565b611f633084836000436123fe565b50611f723083836000436130de565b506000611f7e83610ff8565b9050611f8a8282613f3b565b6001600160a01b038516600090815260786020526040902054611fb79084906001600160801b0316613e27565b6001600160a01b038516600090815260786020526040902054611fe49084906001600160801b0316613e27565b611fee9190613f3b565b611ff89190613e73565b6001600160a01b038416600090815260786020526040902080546001600160801b0319166001600160801b0392909216919091179055612037846125d7565b50612041836125d7565b50611f4f848484613151565b600080612058612e6c565b600061206385611ab5565b90506000841180156120755750808411155b6120ae5760405162461bcd60e51b815260206004820152600a6024820152696e6f2062616c616e636560b01b6044820152606401610c1d565b6000670de0b6b3a7640000856120c261102e565b6120cc9190613e27565b6120d69190613e73565b905060006120e3876108da565b9050818110156120f357806120f5565b815b935083821161210557600061210f565b61210f8483613e46565b607554909550600160801b90046001600160801b03168511156121715760755460009061214c90600160801b90046001600160801b031687613e46565b90506121588186613f3b565b607554600160801b90046001600160801b031696509450505b600082116121c15760405162461bcd60e51b815260206004820152601f60248201527f6d696e207368617265732077697468647261772076616c75653a2031206764006044820152606401610c1d565b6121d3670de0b6b3a764000083613e27565b607780546000906121e5908490613e46565b90915550506075805486919060109061220f908490600160801b90046001600160801b0316614152565b92506101000a8154816001600160801b0302191690836001600160801b0316021790555083607560010160008282829054906101000a90046001600160801b031661225a9190613fa5565b82546101009290920a6001600160801b038181021990931691831602179091556001600160a01b0389166000908152607860205260409020805487935090916010916122af918591600160801b900416613fa5565b92506101000a8154816001600160801b0302191690836001600160801b031602179055506000866122de610b97565b6122e89190613e46565b90506000811561232957612304670de0b6b3a764000083613e27565b60775461231a90670de0b6b3a764000090613e27565b6123249190613e73565b61232c565b60005b9050600087118061233c57508286145b80612345575081155b15612380576001600160a01b038916600090815260786020526040902080546001600160801b0319166001600160801b0383161790556123f2565b61238a8886613e46565b670de0b6b3a764000061239d8886613e46565b6123a79190613e27565b6123b19190613e73565b6123bb9082613e46565b6001600160a01b038a16600090815260786020526040902080546001600160801b0319166001600160801b03929092169190911790555b50505050509250929050565b600061240b86848461330d565b6001600160a01b038087166000908152600b6020908152604080832093891683529290522054612452908790879061244d9088906001600160801b0316613e46565b613388565b6001600160a01b038616600090815260056020526040902054612476908590613e46565b6001600160a01b03871660009081526005602052604090205550600195945050505050565b6001600160a01b0382166124fb5760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608401610c1d565b6001600160a01b0382166000908152602081905260409020548181101561256f5760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608401610c1d565b6001600160a01b038316600090815260208190526040812083830390556002805484929061259e908490613e46565b90915550506040518281526000906001600160a01b038516906000805160206142298339815191529060200160405180910390a3505050565b60408054905163bf40fac160e01b815260009130916001600160a01b039091169063bf40fac19061260a90600401613fef565b60206040518083038186803b15801561262257600080fd5b505afa158015612636573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061265a9190613ec2565b6001600160a01b03161480612787575060408054905163bf40fac160e01b81526001600160a01b039091169063bf40fac1906126989060040161417a565b60206040518083038186803b1580156126b057600080fd5b505afa1580156126c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126e89190613ec2565b604051632474521560e21b81527f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660048201523060248201526001600160a01b0391909116906391d148549060440160206040518083038186803b15801561274f57600080fd5b505afa158015612763573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127879190613f1e565b156128d5576127993083600043613504565b905080156128d55760408054905163bf40fac160e01b81526001600160a01b039091169063bf40fac1906127cf9060040161417a565b60206040518083038186803b1580156127e757600080fd5b505afa1580156127fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061281f9190613ec2565b6001600160a01b03166340c10f1983836040518363ffffffff1660e01b815260040161284c929190613f05565b602060405180830381600087803b15801561286657600080fd5b505af115801561287a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061289e9190614001565b5060405181815233907f43848d0574703c28d68ae8958e0571521618f60c4bcacfb094cff2156eaae0f19060200160405180910390a25b919050565b60408054905163bf40fac160e01b815260009182916001600160a01b039091169063bf40fac19061290d9060040161419e565b60206040518083038186803b15801561292557600080fd5b505afa158015612939573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061295d9190613ec2565b90506001600160a01b03811615612a735760408054905163bf40fac160e01b81526001600160a01b039091169063bf40fac19061299c9060040161419e565b60206040518083038186803b1580156129b457600080fd5b505afa1580156129c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129ec9190613ec2565b6001600160a01b03166317eebf2185856040518363ffffffff1660e01b8152600401612a19929190613f05565b602060405180830381600087803b158015612a3357600080fd5b505af1925050508015612a63575060408051601f3d908101601f19168201909252612a6091810190614001565b60015b612a705760009150612a73565b91505b82821015612af0576000612a9085612a8b8587613e46565b613639565b9050612aa03086836000436130de565b50612aab8582613852565b60408051858152602081018590526001600160a01b038716917ebf1ad6dc928dba623a6fa0f94a5a7066d3a4ea1fba064b71e9afe629b6fa1f910160405180910390a2505b5092915050565b6001600160a01b038316600090815260066020908152604080832054600990925290912054908382108015612b2c5750834310155b612b365781612b38565b835b91506000834311612b495743612b4b565b835b905084811080612b5b5750838310155b15612b665750612be7565b6000612b728483613e46565b6001600160a01b0388166000908152600a602052604081205491925090612b999083613e27565b6001600160a01b038916600090815260056020526040902054909150612bca82676765c793fa10079d601b1b613e27565b612bd49190613e73565b612bde9085613f3b565b93508294505050505b935093915050565b603e5460408051632d77bef360e11b8152905133926001600160a01b031691635aef7de6916004808301926020929190829003018186803b158015612c3357600080fd5b505afa158015612c47573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c6b9190613ec2565b6001600160a01b031614612cc15760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206176617461722063616e2063616c6c2074686973206d6574686f646044820152606401610c1d565b565b612ccf8260004361330d565b612cd7610b6e565b612ce19082613e73565b6001600160a01b039092166000908152600a602052604090209190915550565b6077546000901580612d1d57506075546001600160801b031643145b15612d29575060775490565b607554600090612d5290612d46906001600160801b031643613e46565b607954600f0b90611b36565b60775490915061108790600f83900b90611d4f565b60745460ff1615612d8a5760405162461bcd60e51b8152600401610c1d906141c8565b6000612d96838361391f565b9050612da28382613852565b612db03084836000436130de565b50612dba836125d7565b50826001600160a01b03167f9e71bc8eea02a63969f509818f2dafb9254532904319f9dbda79b67bd34a5f3d83604051612df691815260200190565b60405180910390a2505050565b612e0b612e6c565b612e26816001600160801b0316670de0b6b3a7640000611af8565b607980546001600160801b0319166001600160801b039290921691909117905550565b6000816001612e588286613f3b565b612e629190613e46565b611b2f9190613e73565b612e74612d01565b607755607580546001600160801b031916436001600160801b0316179055565b60745460ff1615612eb75760405162461bcd60e51b8152600401610c1d906141c8565b6074805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612eec3390565b604051612ef99190613cec565b60405180910390a1565b60745460ff16612f4c5760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152606401610c1d565b6074805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33612eec565b600081612f8957600080fd5b60006001600160c01b038411612fb45782604085901b81612fac57612fac613e5d565b0490506130ca565b60c084811c600160201b8110612fcc576020918201911c5b620100008110612fde576010918201911c5b6101008110612fef576008918201911c5b60108110612fff576004918201911c5b6004811061300f576002918201911c5b6002811061301e576001820191505b60bf820360018603901c6001018260ff0387901b8161303f5761303f613e5d565b0492506001600160801b0383111561305657600080fd5b608085901c83026001600160801b038616840260c088901c604089901b82811015613082576001820391505b608084901b92900382811015613099576001820391505b829003608084901c82146130af576130af6141f2565b8881816130be576130be613e5d565b04870196505050505050505b6001600160801b03811115611b2f57600080fd5b60006130eb86848461330d565b6001600160a01b038087166000908152600b602090815260408083209389168352929052205461312d908790879061244d9088906001600160801b0316613f3b565b6001600160a01b038616600090815260056020526040902054612476908590613f3b565b6001600160a01b0383166131b55760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610c1d565b6001600160a01b0382166132175760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610c1d565b6001600160a01b0383166000908152602081905260409020548181101561328f5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610c1d565b6001600160a01b038085166000908152602081905260408082208585039055918516815290812080548492906132c6908490613f3b565b92505081905550826001600160a01b0316846001600160a01b03166000805160206142298339815191528460405161330091815260200190565b60405180910390a3611f4f565b6001600160a01b0383166000908152600560205260409020546133485750506001600160a01b03166000908152600960205260409020439055565b600080613356858585612af7565b6001600160a01b0390961660009081526006602090815260408083209890985560099052959095209490945550505050565b6001600160a01b038084166000908152600b6020908152604080832093861683529290522080546001600160801b0316156134945780546001600160a01b03851660009081526006602052604081205490916001600160801b03600160801b8204811692676765c793fa10079d601b1b926134039216613e27565b61340d9190613e73565b6134179190613e46565b60018301549091506134339082906001600160801b0316613fa5565b6001830180546001600160801b0319166001600160801b03929092169190911790556001600160a01b038516600090815260086020526040902054613479908290613f3b565b6001600160a01b038616600090815260086020526040902055505b80546001600160801b0319166001600160801b0383161781556001600160a01b038416600090815260066020526040902054676765c793fa10079d601b1b906134dd9084613e27565b6134e79190613e73565b81546001600160801b03918216600160801b029116179055505050565b600061351185848461330d565b6001600160a01b038086166000908152600b602090815260408083209388168352929052205461354d90869086906001600160801b0316613388565b6001600160a01b038581166000908152600b6020908152604080832093881683529290522060010180546001600160801b03808216928392909160109161359d918591600160801b900416613fa5565b82546101009290920a6001600160801b038181021990931691831602179091556001600160a01b038881166000818152600b60209081526040808320948c16835293815283822060010180546001600160801b03191690559181526007909152205461360d925090831690613f3b565b6001600160a01b0387166000908152600760205260409020556001600160801b03169050949350505050565b600081613648575060006109f2565b6000613652610b97565b116136685761366361271083613e27565b61368c565b61367061102e565b613682670de0b6b3a764000084613e27565b61368c9190613e73565b6076805491925083916000906136ac9084906001600160801b0316614152565b92506101000a8154816001600160801b0302191690836001600160801b03160217905550670de0b6b3a76400006001600160801b0316826136ed9190613e27565b607780546000906136ff908490613f3b565b90915550506001600160a01b0383166000908152607860205260409020805483919060109061373f908490600160801b90046001600160801b0316614152565b82546101009290920a6001600160801b038181021990931691831602179091556001600160a01b038516600090815260786020526040902054161590506109f25760008161378c85611ab5565b6137969190613f3b565b6137a8670de0b6b3a764000085613e27565b6137b29190613e73565b6001600160a01b0385166000908152607860205260409020549091506001600160801b0316811015613810576001600160a01b03841660009081526078602052604090205461380b9082906001600160801b0316613e46565b613813565b60005b6001600160a01b038516600090815260786020526040902080546001600160801b03929092166001600160801b03199092169190911790555092915050565b6001600160a01b0382166138a85760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610c1d565b80600260008282546138ba9190613f3b565b90915550506001600160a01b038216600090815260208190526040812080548392906138e7908490613f3b565b90915550506040518181526001600160a01b038316906000906000805160206142298339815191529060200160405180910390a35050565b6000613929612e6c565b6000821161396a5760405162461bcd60e51b815260206004820152600e60248201526d043616e6e6f74207374616b6520360941b6044820152606401610c1d565b6000613974610b97565b1161398a5761398561271083613e27565b6139ae565b61399261102e565b6139a4670de0b6b3a764000084613e27565b6139ae9190613e73565b9050600081116139fa5760405162461bcd60e51b81526020600482015260176024820152766d696e207374616b65203120736861726520707269636560481b6044820152606401610c1d565b613a0383611ab5565b15613a7c5780613a1284611ab5565b613a1c9190613f3b565b613a2461102e565b613a2e9083613e27565b6001600160a01b0385166000908152607860205260409020546001600160801b0316613a5986611ab5565b613a639190613e27565b613a6d9190613f3b565b613a779190613e73565b613a99565b80613a8f670de0b6b3a764000084613e27565b613a999190613e73565b6001600160a01b038416600090815260786020526040902080546001600160801b0319166001600160801b03928316179055607580548492601091613ae7918591600160801b900416613fa5565b92506101000a8154816001600160801b0302191690836001600160801b03160217905550670de0b6b3a76400006001600160801b031682613b289190613e27565b60778054600090613b3a908490613f3b565b90915550909392505050565b6001600160a01b038116811461128c57600080fd5b600060208284031215613b6d57600080fd5b8135611b2f81613b46565b60005b83811015613b93578181015183820152602001613b7b565b83811115611f4f5750506000910152565b60008151808452613bbc816020860160208601613b78565b601f01601f19169290920160200192915050565b602081526000611b2f6020830184613ba4565b60008060408385031215613bf657600080fd5b8235613c0181613b46565b946020939093013593505050565b600080600060608486031215613c2457600080fd5b8335613c2f81613b46565b92506020840135613c3f81613b46565b929592945050506040919091013590565b600060208284031215613c6257600080fd5b5035919050565b60008060408385031215613c7c57600080fd5b8235613c8781613b46565b91506020830135613c9781613b46565b809150509250929050565b60008060008060808587031215613cb857600080fd5b8435613cc381613b46565b935060208501359250604085013591506060850135613ce181613b46565b939692955090935050565b6001600160a01b0391909116815260200190565b6001600160801b0391909116815260200190565b60008060008060608587031215613d2a57600080fd5b8435613d3581613b46565b93506020850135925060408501356001600160401b0380821115613d5857600080fd5b818701915087601f830112613d6c57600080fd5b813581811115613d7b57600080fd5b886020828501011115613d8d57600080fd5b95989497505060200194505050565b80356001600160801b03811681146128d557600080fd5b600060208284031215613dc557600080fd5b611b2f82613d9c565b801515811461128c57600080fd5b60008060408385031215613def57600080fd5b8235613dfa81613dce565b9150613e0860208401613d9c565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b6000816000190483118215151615613e4157613e41613e11565b500290565b600082821015613e5857613e58613e11565b500390565b634e487b7160e01b600052601260045260246000fd5b600082613e8257613e82613e5d565b500490565b600181811c90821680613e9b57607f821691505b60208210811415613ebc57634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215613ed457600080fd5b8151611b2f81613b46565b60006001600160801b0383811680613ef957613ef9613e5d565b92169190910492915050565b6001600160a01b03929092168252602082015260400190565b600060208284031215613f3057600080fd5b8151611b2f81613dce565b60008219821115613f4e57613f4e613e11565b500190565b60006001600160801b0382811684821681151582840482111615613f7957613f79613e11565b02949350505050565b600063ffffffff80831681851681830481118215151615613f7957613f79613e11565b60006001600160801b03828116848216808303821115613fc757613fc7613e11565b01949350505050565b600c81526b4744414f5f5354414b494e4760a01b602082015260400190565b6020815260006109f260208301613fd0565b60006020828403121561401357600080fd5b5051919050565b600060018060a01b0380871683526080602084015261403c6080840187613ba4565b94166040830152506060015292915050565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561407757600080fd5b825161408281613dce565b60208401519092506001600160401b038082111561409f57600080fd5b818501915085601f8301126140b357600080fd5b8151818111156140c5576140c561404e565b604051601f8201601f19908116603f011681019083821181831017156140ed576140ed61404e565b8160405282815288602084870101111561410657600080fd5b614117836020830160208801613b78565b80955050505050509250929050565b60408152600061413860408301613fd0565b6001600160a01b0393909316602092909201919091525090565b60006001600160801b038381169083168181101561417257614172613e11565b039392505050565b6020808252600a90820152692922a82aaa20aa24a7a760b11b604082015260600190565b60208082526010908201526f26a4a72a212aa9272faba920a82822a960811b604082015260600190565b60208082526010908201526f14185d5cd8589b194e881c185d5cd95960821b604082015260600190565b634e487b7160e01b600052600160045260246000fdfe1bda1e84e6af3f7391d288a491b734032ae9ea89ad3ebbc213d352456ab51a2bddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa264697066735822122043dd84c9f07ef89636c59485ecb578c1a293f81c80d238f06cfe1dc15df878cd64736f6c63430008080033",
|
|
1333
1333
|
"linkReferences": {},
|
|
1334
1334
|
"deployedLinkReferences": {}
|
|
1335
1335
|
}
|
|
@@ -862,8 +862,8 @@
|
|
|
862
862
|
"type": "function"
|
|
863
863
|
}
|
|
864
864
|
],
|
|
865
|
-
"bytecode": "0x60a06040523060601b6080523480156200001857600080fd5b5060405162002f5238038062002f528339810160408190526200003b9162000564565b62000046816200018c565b6101045460405163bf40fac160e01b815260206004820152600a60248201526923a7a7a22227a62620a960b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b158015620000a657600080fd5b505afa158015620000bb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000e1919062000564565b61016980546001600160a01b0319166001600160a01b0392909216919091179055604080518082018252601381527f4724205374616b696e6720466f7220474f4f4400000000000000000000000000602080830191909152825180840190935260038352621cd1c960ea1b908301526200015b91620001b5565b620001756207e9006a01a784379d99db420000006200058b565b306000908152606a60205260409020555062000639565b61010480546001600160a01b0319166001600160a01b038316179055620001b262000248565b50565b600054610100900460ff1680620001cf575060005460ff16155b620001f75760405162461bcd60e51b8152600401620001ee90620005ae565b60405180910390fd5b600054610100900460ff161580156200021a576000805461ffff19166101011790555b6200022462000398565b62000230838362000409565b801562000243576000805461ff00191690555b505050565b6101045460405163bf40fac160e01b815260206004820152600a60248201526921a7a72a2927a62622a960b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b158015620002a857600080fd5b505afa158015620002bd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002e3919062000564565b61010280546001600160a01b0319166001600160a01b0392909216918217905560408051632d77bef360e11b81529051635aef7de691600480820192602092909190829003018186803b1580156200033a57600080fd5b505afa1580156200034f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000375919062000564565b61010380546001600160a01b0319166001600160a01b0392909216919091179055565b600054610100900460ff1680620003b2575060005460ff16155b620003d15760405162461bcd60e51b8152600401620001ee90620005ae565b600054610100900460ff16158015620003f4576000805461ffff19166101011790555b8015620001b2576000805461ff001916905550565b600054610100900460ff168062000423575060005460ff16155b620004425760405162461bcd60e51b8152600401620001ee90620005ae565b600054610100900460ff1615801562000465576000805461ffff19166101011790555b82516200047a906036906020860190620004a8565b50815162000490906037906020850190620004a8565b50801562000243576000805461ff0019169055505050565b828054620004b690620005fc565b90600052602060002090601f016020900481019282620004da576000855562000525565b82601f10620004f557805160ff191683800117855562000525565b8280016001018555821562000525579182015b828111156200052557825182559160200191906001019062000508565b506200053392915062000537565b5090565b5b8082111562000533576000815560010162000538565b6001600160a01b0381168114620001b257600080fd5b6000602082840312156200057757600080fd5b815162000584816200054e565b9392505050565b600082620005a957634e487b7160e01b600052601260045260246000fd5b500490565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b600181811c908216806200061157607f821691505b602082108114156200063357634e487b7160e01b600052602260045260246000fd5b50919050565b60805160601c6128e56200066d60003960008181610cb301528181610cf301528181610eef0152610f2f01526128e56000f3fe6080604052600436106101aa5760003560e01c806306fdde03146101af578063095ea7b3146101da5780630c1cd7f31461020a57806318160ddd146102365780631b3c90a81461024b578063213b329e1461026257806322dec37b1461027857806323b872dd146102a557806325d5971f146102c557806328e964e9146102e55780632e42a8961461031a578063313ce567146103ac57806331903da1146103c85780633659cfe6146103f557806339509351146104155780633d9a12cc146104355780633e6326fc146104555780634162169f1461048357806347b3e7e8146104a45780634f1db7f6146104d15780634f1ef286146104f15780635aef7de61461050457806370a08231146105255780637bcbb9ff1461055b578063846141b31461057b57806395d89b41146105a8578063a457c2d7146105bd578063a694fc3a146105dd578063a87430ba146105fd578063a9059cbb146106eb578063b46aa5271461070b578063bf8e9b6e14610722578063c671062914610737578063c76279a214610757578063c7b8981c14610777578063dd62ed3e1461078c578063e1758bd8146107d2575b600080fd5b3480156101bb57600080fd5b506101c46107e7565b6040516101d191906123a9565b60405180910390f35b3480156101e657600080fd5b506101fa6101f53660046123f1565b610879565b60405190151581526020016101d1565b34801561021657600080fd5b50306000908152606a60205260409020545b6040519081526020016101d1565b34801561024257600080fd5b50603554610228565b34801561025757600080fd5b5061026061088f565b005b34801561026e57600080fd5b506207e900610228565b34801561028457600080fd5b5061022861029336600461241d565b60676020526000908152604090205481565b3480156102b157600080fd5b506101fa6102c036600461243a565b6109d7565b3480156102d157600080fd5b506102606102e036600461247b565b610a88565b3480156102f157600080fd5b5061030561030036600461241d565b610c92565b604080519283526020830191909152016101d1565b34801561032657600080fd5b50610379610335366004612494565b606b602090815260009283526040808420909152908252902080546001909101546001600160801b0380831692600160801b90819004821692808316929190041684565b604080516001600160801b03958616815293851660208501529184169183019190915290911660608201526080016101d1565b3480156103b857600080fd5b50604051600281526020016101d1565b3480156103d457600080fd5b506102286103e336600461241d565b60686020526000908152604090205481565b34801561040157600080fd5b5061026061041036600461241d565b610ca8565b34801561042157600080fd5b506101fa6104303660046123f1565b610d71565b34801561044157600080fd5b506102286104503660046124cd565b610dad565b34801561046157600080fd5b5061010454610476906001600160a01b031681565b6040516101d19190612517565b34801561048f57600080fd5b5061010254610476906001600160a01b031681565b3480156104b057600080fd5b506102286104bf36600461241d565b606a6020526000908152604090205481565b3480156104dd57600080fd5b506103056104ec366004612494565b610ea1565b6102606104ff366004612541565b610ee4565b34801561051057600080fd5b5061010354610476906001600160a01b031681565b34801561053157600080fd5b5061022861054036600461241d565b6001600160a01b031660009081526033602052604090205490565b34801561056757600080fd5b5061022861057636600461241d565b610f9e565b34801561058757600080fd5b5061022861059636600461241d565b60696020526000908152604090205481565b3480156105b457600080fd5b506101c4610fb9565b3480156105c957600080fd5b506101fa6105d83660046123f1565b610fc8565b3480156105e957600080fd5b506102606105f836600461247b565b611061565b34801561060957600080fd5b506106a861061836600461241d565b60408051608081018252600080825260208201819052918101829052606081019190915250306000908152606b602090815260408083206001600160a01b0394909416835292815290829020825160808101845281546001600160801b038082168352600160801b9182900481169483019490945260019092015480841694820194909452920416606082015290565b6040516101d1919081516001600160801b039081168252602080840151821690830152604080840151821690830152606092830151169181019190915260800190565b3480156106f757600080fd5b506101fa6107063660046123f1565b611226565b34801561071757600080fd5b506102286207e90081565b34801561072e57600080fd5b50610228611233565b34801561074357600080fd5b5061022861075236600461241d565b611243565b34801561076357600080fd5b5061026061077236600461247b565b611258565b34801561078357600080fd5b5061022861126a565b34801561079857600080fd5b506102286107a7366004612494565b6001600160a01b03918216600090815260346020908152604080832093909416825291909152205490565b3480156107de57600080fd5b506104766112aa565b6060603680546107f690612604565b80601f016020809104026020016040519081016040528092919081815260200182805461082290612604565b801561086f5780601f106108445761010080835404028352916020019161086f565b820191906000526020600020905b81548152906001019060200180831161085257829003601f168201915b5050505050905090565b6000610886338484611342565b50600192915050565b6101045460405163bf40fac160e01b815260206004820152600a60248201526921a7a72a2927a62622a960b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b1580156108ee57600080fd5b505afa158015610902573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610926919061263f565b61010280546001600160a01b0319166001600160a01b0392909216918217905560408051632d77bef360e11b81529051635aef7de691600480820192602092909190829003018186803b15801561097c57600080fd5b505afa158015610990573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109b4919061263f565b61010380546001600160a01b0319166001600160a01b0392909216919091179055565b60006109e4848484611466565b6001600160a01b038416600090815260346020908152604080832033845290915290205482811015610a6e5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b610a7b8533858403611342565b60019150505b9392505050565b6002610137541415610aac5760405162461bcd60e51b8152600401610a659061265c565b6002610137556000610abe3033610ea1565b50905081610aca578091505b60008211610b1a5760405162461bcd60e51b815260206004820152601f60248201527f53686f756c6420776974686472617720706f73697469766520616d6f756e74006044820152606401610a65565b81811015610b645760405162461bcd60e51b8152602060048201526017602482015276139bdd08195b9bdd59da081d1bdad95b881cdd185ad959604a1b6044820152606401610a65565b81610b6f33846114a8565b610b7d3033856000436115e4565b50610b8733611681565b50610169546001600160a01b031663a9059cbb33836040518363ffffffff1660e01b8152600401610bb9929190612693565b602060405180830381600087803b158015610bd357600080fd5b505af1158015610be7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c0b91906126ac565b610c525760405162461bcd60e51b81526020600482015260186024820152771dda5d1a191c985dc81d1c985b9cd9995c8819985a5b195960421b6044820152606401610a65565b60405183815233907f1248d48e2de900a1010c7fce73506969ecec243600bfc08b641b158f26d857cd9060200160405180910390a2505060016101375550565b600080610c9f3084610ea1565b91509150915091565b306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161415610cf15760405162461bcd60e51b8152600401610a65906126ce565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610d236117eb565b6001600160a01b031614610d495760405162461bcd60e51b8152600401610a6590612708565b610d5281611807565b60408051600080825260208201909252610d6e9183919061180f565b50565b3360008181526034602090815260408083206001600160a01b03871684529091528120549091610886918590610da8908690612758565b611342565b6001600160a01b038085166000818152606b602090815260408083209486168352938152838220845160808101865281546001600160801b038082168352600160801b91829004811683860152600190930154808416838901520490911660608201529282526065905291822054829015610e97576000610e2f888888611956565b91505082604001516001600160801b0316915082602001516001600160801b0316676765c793fa10079d601b1b8285600001516001600160801b0316610e759190612770565b610e7f919061278f565b610e8991906127b1565b610e939083612758565b9150505b9695505050505050565b6001600160a01b039182166000818152606b60209081526040808320949095168252928352838120549181526065909252919020546001600160801b0390911691565b306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161415610f2d5760405162461bcd60e51b8152600401610a65906126ce565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610f5f6117eb565b6001600160a01b031614610f855760405162461bcd60e51b8152600401610a6590612708565b610f8e82611807565b610f9a8282600161180f565b5050565b6001600160a01b031660009081526066602052604090205490565b6060603780546107f690612604565b3360009081526034602090815260408083206001600160a01b03861684529091528120548281101561104a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610a65565b6110573385858403611342565b5060019392505050565b600081116110c35760405162461bcd60e51b815260206004820152602960248201527f596f75206e65656420746f207374616b65206120706f73697469766520746f6b604482015268195b88185b5bdd5b9d60ba1b6064820152608401610a65565b610169546001600160a01b03166323b872dd336040516001600160e01b031960e084901b1681526001600160a01b03909116600482015230602482015260448101849052606401602060405180830381600087803b15801561112457600080fd5b505af1158015611138573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061115c91906126ac565b6111cb5760405162461bcd60e51b815260206004820152603a60248201527f7472616e7366657246726f6d206661696c65642c206d616b652073757265207960448201527937ba9030b8383937bb32b2103a37b5b2b7103a3930b739b332b960311b6064820152608401610a65565b6111d9303383600043611a4e565b506111e43382611ac1565b6111ed33611681565b5060405181815233907f9e71bc8eea02a63969f509818f2dafb9254532904319f9dbda79b67bd34a5f3d9060200160405180910390a250565b6000610886338484611466565b600061123e30610f9e565b905090565b60006112523060004385610dad565b92915050565b611260611b8e565b610d6e3082611c63565b600060026101375414156112905760405162461bcd60e51b8152600401610a659061265c565b60026101375561129f33611681565b905060016101375590565b6101045460405163bf40fac160e01b815260206004820152600a60248201526923a7a7a22227a62620a960b11b60448201526000916001600160a01b03169063bf40fac19060640160206040518083038186803b15801561130a57600080fd5b505afa15801561131e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061123e919061263f565b6001600160a01b0383166113a45760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610a65565b6001600160a01b0382166114055760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610a65565b6001600160a01b0383811660008181526034602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6114743084836000436115e4565b50611483308383600043611a4e565b5061148d83611681565b5061149782611681565b506114a3838383611c9c565b505050565b6001600160a01b0382166115085760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608401610a65565b6001600160a01b0382166000908152603360205260409020548181101561157c5760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608401610a65565b6001600160a01b03831660009081526033602052604081208383039055603580548492906115ab9084906127b1565b90915550506040518281526000906001600160a01b038516906000805160206128908339815191529060200160405180910390a3505050565b60006115f1868484611e5a565b6001600160a01b038087166000908152606b602090815260408083209389168352929052205461163890879087906116339088906001600160801b03166127b1565b611ed5565b6001600160a01b03861660009081526065602052604090205461165c9085906127b1565b6001600160a01b03871660009081526065602052604090205550600195945050505050565b6000806116913084600043612051565b90508015611252576101045460405163bf40fac160e01b815260206004820152600a6024820152692922a82aaa20aa24a7a760b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b1580156116f857600080fd5b505afa15801561170c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611730919061263f565b6001600160a01b03166340c10f1984836040518363ffffffff1660e01b815260040161175d929190612693565b602060405180830381600087803b15801561177757600080fd5b505af115801561178b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117af91906127c8565b5060405181815233907f43848d0574703c28d68ae8958e0571521618f60c4bcacfb094cff2156eaae0f19060200160405180910390a292915050565b600080516020612849833981519152546001600160a01b031690565b610d6e611b8e565b60006118196117eb565b905061182484612186565b6000835111806118315750815b15611842576118408484612219565b505b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143805460ff1661194f57805460ff191660011781556040516118bd90869061188e908590602401612517565b60408051601f198184030181529190526020810180516001600160e01b0316631b2ce7f360e11b179052612219565b50805460ff191681556118ce6117eb565b6001600160a01b0316826001600160a01b0316146119465760405162461bcd60e51b815260206004820152602f60248201527f45524331393637557067726164653a207570677261646520627265616b73206660448201526e75727468657220757067726164657360881b6064820152608401610a65565b61194f85612304565b5050505050565b6001600160a01b03831660009081526066602090815260408083205460699092529091205490838210801561198b5750834310155b6119955781611997565b835b915060008343116119a857436119aa565b835b9050848110806119ba5750838310155b156119c55750611a46565b60006119d184836127b1565b6001600160a01b0388166000908152606a6020526040812054919250906119f89083612770565b6001600160a01b038916600090815260656020526040902054909150611a2982676765c793fa10079d601b1b612770565b611a33919061278f565b611a3d9085612758565b93508294505050505b935093915050565b6000611a5b868484611e5a565b6001600160a01b038087166000908152606b6020908152604080832093891683529290522054611a9d90879087906116339088906001600160801b0316612758565b6001600160a01b03861660009081526065602052604090205461165c908590612758565b6001600160a01b038216611b175760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610a65565b8060356000828254611b299190612758565b90915550506001600160a01b03821660009081526033602052604081208054839290611b56908490612758565b90915550506040518181526001600160a01b038316906000906000805160206128908339815191529060200160405180910390a35050565b6101025460408051632d77bef360e11b8152905133926001600160a01b031691635aef7de6916004808301926020929190829003018186803b158015611bd357600080fd5b505afa158015611be7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c0b919061263f565b6001600160a01b031614611c615760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206176617461722063616e2063616c6c2074686973206d6574686f646044820152606401610a65565b565b611c6f82600043611e5a565b611c7c6207e9008261278f565b6001600160a01b039092166000908152606a602052604090209190915550565b6001600160a01b038316611d005760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610a65565b6001600160a01b038216611d625760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610a65565b6001600160a01b03831660009081526033602052604090205481811015611dda5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610a65565b6001600160a01b03808516600090815260336020526040808220858503905591851681529081208054849290611e11908490612758565b92505081905550826001600160a01b0316846001600160a01b031660008051602061289083398151915284604051611e4b91815260200190565b60405180910390a35b50505050565b6001600160a01b038316600090815260656020526040902054611e955750506001600160a01b03166000908152606960205260409020439055565b600080611ea3858585611956565b6001600160a01b0390961660009081526066602090815260408083209890985560699052959095209490945550505050565b6001600160a01b038084166000908152606b6020908152604080832093861683529290522080546001600160801b031615611fe15780546001600160a01b03851660009081526066602052604081205490916001600160801b03600160801b8204811692676765c793fa10079d601b1b92611f509216612770565b611f5a919061278f565b611f6491906127b1565b6001830154909150611f809082906001600160801b03166127e1565b6001830180546001600160801b0319166001600160801b03929092169190911790556001600160a01b038516600090815260686020526040902054611fc6908290612758565b6001600160a01b038616600090815260686020526040902055505b80546001600160801b0319166001600160801b0383161781556001600160a01b038416600090815260666020526040902054676765c793fa10079d601b1b9061202a9084612770565b612034919061278f565b81546001600160801b03918216600160801b029116179055505050565b600061205e858484611e5a565b6001600160a01b038086166000908152606b602090815260408083209388168352929052205461209a90869086906001600160801b0316611ed5565b6001600160a01b038581166000908152606b6020908152604080832093881683529290522060010180546001600160801b0380821692839290916010916120ea918591600160801b9004166127e1565b82546101009290920a6001600160801b038181021990931691831602179091556001600160a01b038881166000818152606b60209081526040808320948c16835293815283822060010180546001600160801b03191690559181526067909152205461215a925090831690612758565b6001600160a01b0387166000908152606760205260409020556001600160801b03169050949350505050565b803b6121ea5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610a65565b60008051602061284983398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6060823b6122785760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610a65565b600080846001600160a01b031684604051612293919061280c565b600060405180830381855af49150503d80600081146122ce576040519150601f19603f3d011682016040523d82523d6000602084013e6122d3565b606091505b50915091506122fb828260405180606001604052806027815260200161286960279139612344565b95945050505050565b61230d81612186565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60608315612353575081610a81565b8251156123635782518084602001fd5b8160405162461bcd60e51b8152600401610a6591906123a9565b60005b83811015612398578181015183820152602001612380565b83811115611e545750506000910152565b60208152600082518060208401526123c881604085016020870161237d565b601f01601f19169190910160400192915050565b6001600160a01b0381168114610d6e57600080fd5b6000806040838503121561240457600080fd5b823561240f816123dc565b946020939093013593505050565b60006020828403121561242f57600080fd5b8135610a81816123dc565b60008060006060848603121561244f57600080fd5b833561245a816123dc565b9250602084013561246a816123dc565b929592945050506040919091013590565b60006020828403121561248d57600080fd5b5035919050565b600080604083850312156124a757600080fd5b82356124b2816123dc565b915060208301356124c2816123dc565b809150509250929050565b600080600080608085870312156124e357600080fd5b84356124ee816123dc565b93506020850135925060408501359150606085013561250c816123dc565b939692955090935050565b6001600160a01b0391909116815260200190565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561255457600080fd5b823561255f816123dc565b915060208301356001600160401b038082111561257b57600080fd5b818501915085601f83011261258f57600080fd5b8135818111156125a1576125a161252b565b604051601f8201601f19908116603f011681019083821181831017156125c9576125c961252b565b816040528281528860208487010111156125e257600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b600181811c9082168061261857607f821691505b6020821081141561263957634e487b7160e01b600052602260045260246000fd5b50919050565b60006020828403121561265157600080fd5b8151610a81816123dc565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b6001600160a01b03929092168252602082015260400190565b6000602082840312156126be57600080fd5b81518015158114610a8157600080fd5b6020808252602c9082015260008051602061282983398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c9082015260008051602061282983398151915260408201526b6163746976652070726f787960a01b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b6000821982111561276b5761276b612742565b500190565b600081600019048311821515161561278a5761278a612742565b500290565b6000826127ac57634e487b7160e01b600052601260045260246000fd5b500490565b6000828210156127c3576127c3612742565b500390565b6000602082840312156127da57600080fd5b5051919050565b60006001600160801b0382811684821680830382111561280357612803612742565b01949350505050565b6000825161281e81846020870161237d565b919091019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220b88ad33eeaf2d7e7a3fb09beec29590e9c8d3c5d311bf7e7115e5c856b8431cc64736f6c63430008080033",
|
|
866
|
-
"deployedBytecode": "0x6080604052600436106101aa5760003560e01c806306fdde03146101af578063095ea7b3146101da5780630c1cd7f31461020a57806318160ddd146102365780631b3c90a81461024b578063213b329e1461026257806322dec37b1461027857806323b872dd146102a557806325d5971f146102c557806328e964e9146102e55780632e42a8961461031a578063313ce567146103ac57806331903da1146103c85780633659cfe6146103f557806339509351146104155780633d9a12cc146104355780633e6326fc146104555780634162169f1461048357806347b3e7e8146104a45780634f1db7f6146104d15780634f1ef286146104f15780635aef7de61461050457806370a08231146105255780637bcbb9ff1461055b578063846141b31461057b57806395d89b41146105a8578063a457c2d7146105bd578063a694fc3a146105dd578063a87430ba146105fd578063a9059cbb146106eb578063b46aa5271461070b578063bf8e9b6e14610722578063c671062914610737578063c76279a214610757578063c7b8981c14610777578063dd62ed3e1461078c578063e1758bd8146107d2575b600080fd5b3480156101bb57600080fd5b506101c46107e7565b6040516101d191906123a9565b60405180910390f35b3480156101e657600080fd5b506101fa6101f53660046123f1565b610879565b60405190151581526020016101d1565b34801561021657600080fd5b50306000908152606a60205260409020545b6040519081526020016101d1565b34801561024257600080fd5b50603554610228565b34801561025757600080fd5b5061026061088f565b005b34801561026e57600080fd5b506207e900610228565b34801561028457600080fd5b5061022861029336600461241d565b60676020526000908152604090205481565b3480156102b157600080fd5b506101fa6102c036600461243a565b6109d7565b3480156102d157600080fd5b506102606102e036600461247b565b610a88565b3480156102f157600080fd5b5061030561030036600461241d565b610c92565b604080519283526020830191909152016101d1565b34801561032657600080fd5b50610379610335366004612494565b606b602090815260009283526040808420909152908252902080546001909101546001600160801b0380831692600160801b90819004821692808316929190041684565b604080516001600160801b03958616815293851660208501529184169183019190915290911660608201526080016101d1565b3480156103b857600080fd5b50604051600281526020016101d1565b3480156103d457600080fd5b506102286103e336600461241d565b60686020526000908152604090205481565b34801561040157600080fd5b5061026061041036600461241d565b610ca8565b34801561042157600080fd5b506101fa6104303660046123f1565b610d71565b34801561044157600080fd5b506102286104503660046124cd565b610dad565b34801561046157600080fd5b5061010454610476906001600160a01b031681565b6040516101d19190612517565b34801561048f57600080fd5b5061010254610476906001600160a01b031681565b3480156104b057600080fd5b506102286104bf36600461241d565b606a6020526000908152604090205481565b3480156104dd57600080fd5b506103056104ec366004612494565b610ea1565b6102606104ff366004612541565b610ee4565b34801561051057600080fd5b5061010354610476906001600160a01b031681565b34801561053157600080fd5b5061022861054036600461241d565b6001600160a01b031660009081526033602052604090205490565b34801561056757600080fd5b5061022861057636600461241d565b610f9e565b34801561058757600080fd5b5061022861059636600461241d565b60696020526000908152604090205481565b3480156105b457600080fd5b506101c4610fb9565b3480156105c957600080fd5b506101fa6105d83660046123f1565b610fc8565b3480156105e957600080fd5b506102606105f836600461247b565b611061565b34801561060957600080fd5b506106a861061836600461241d565b60408051608081018252600080825260208201819052918101829052606081019190915250306000908152606b602090815260408083206001600160a01b0394909416835292815290829020825160808101845281546001600160801b038082168352600160801b9182900481169483019490945260019092015480841694820194909452920416606082015290565b6040516101d1919081516001600160801b039081168252602080840151821690830152604080840151821690830152606092830151169181019190915260800190565b3480156106f757600080fd5b506101fa6107063660046123f1565b611226565b34801561071757600080fd5b506102286207e90081565b34801561072e57600080fd5b50610228611233565b34801561074357600080fd5b5061022861075236600461241d565b611243565b34801561076357600080fd5b5061026061077236600461247b565b611258565b34801561078357600080fd5b5061022861126a565b34801561079857600080fd5b506102286107a7366004612494565b6001600160a01b03918216600090815260346020908152604080832093909416825291909152205490565b3480156107de57600080fd5b506104766112aa565b6060603680546107f690612604565b80601f016020809104026020016040519081016040528092919081815260200182805461082290612604565b801561086f5780601f106108445761010080835404028352916020019161086f565b820191906000526020600020905b81548152906001019060200180831161085257829003601f168201915b5050505050905090565b6000610886338484611342565b50600192915050565b6101045460405163bf40fac160e01b815260206004820152600a60248201526921a7a72a2927a62622a960b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b1580156108ee57600080fd5b505afa158015610902573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610926919061263f565b61010280546001600160a01b0319166001600160a01b0392909216918217905560408051632d77bef360e11b81529051635aef7de691600480820192602092909190829003018186803b15801561097c57600080fd5b505afa158015610990573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109b4919061263f565b61010380546001600160a01b0319166001600160a01b0392909216919091179055565b60006109e4848484611466565b6001600160a01b038416600090815260346020908152604080832033845290915290205482811015610a6e5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b610a7b8533858403611342565b60019150505b9392505050565b6002610137541415610aac5760405162461bcd60e51b8152600401610a659061265c565b6002610137556000610abe3033610ea1565b50905081610aca578091505b60008211610b1a5760405162461bcd60e51b815260206004820152601f60248201527f53686f756c6420776974686472617720706f73697469766520616d6f756e74006044820152606401610a65565b81811015610b645760405162461bcd60e51b8152602060048201526017602482015276139bdd08195b9bdd59da081d1bdad95b881cdd185ad959604a1b6044820152606401610a65565b81610b6f33846114a8565b610b7d3033856000436115e4565b50610b8733611681565b50610169546001600160a01b031663a9059cbb33836040518363ffffffff1660e01b8152600401610bb9929190612693565b602060405180830381600087803b158015610bd357600080fd5b505af1158015610be7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c0b91906126ac565b610c525760405162461bcd60e51b81526020600482015260186024820152771dda5d1a191c985dc81d1c985b9cd9995c8819985a5b195960421b6044820152606401610a65565b60405183815233907f1248d48e2de900a1010c7fce73506969ecec243600bfc08b641b158f26d857cd9060200160405180910390a2505060016101375550565b600080610c9f3084610ea1565b91509150915091565b306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161415610cf15760405162461bcd60e51b8152600401610a65906126ce565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610d236117eb565b6001600160a01b031614610d495760405162461bcd60e51b8152600401610a6590612708565b610d5281611807565b60408051600080825260208201909252610d6e9183919061180f565b50565b3360008181526034602090815260408083206001600160a01b03871684529091528120549091610886918590610da8908690612758565b611342565b6001600160a01b038085166000818152606b602090815260408083209486168352938152838220845160808101865281546001600160801b038082168352600160801b91829004811683860152600190930154808416838901520490911660608201529282526065905291822054829015610e97576000610e2f888888611956565b91505082604001516001600160801b0316915082602001516001600160801b0316676765c793fa10079d601b1b8285600001516001600160801b0316610e759190612770565b610e7f919061278f565b610e8991906127b1565b610e939083612758565b9150505b9695505050505050565b6001600160a01b039182166000818152606b60209081526040808320949095168252928352838120549181526065909252919020546001600160801b0390911691565b306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161415610f2d5760405162461bcd60e51b8152600401610a65906126ce565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610f5f6117eb565b6001600160a01b031614610f855760405162461bcd60e51b8152600401610a6590612708565b610f8e82611807565b610f9a8282600161180f565b5050565b6001600160a01b031660009081526066602052604090205490565b6060603780546107f690612604565b3360009081526034602090815260408083206001600160a01b03861684529091528120548281101561104a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610a65565b6110573385858403611342565b5060019392505050565b600081116110c35760405162461bcd60e51b815260206004820152602960248201527f596f75206e65656420746f207374616b65206120706f73697469766520746f6b604482015268195b88185b5bdd5b9d60ba1b6064820152608401610a65565b610169546001600160a01b03166323b872dd336040516001600160e01b031960e084901b1681526001600160a01b03909116600482015230602482015260448101849052606401602060405180830381600087803b15801561112457600080fd5b505af1158015611138573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061115c91906126ac565b6111cb5760405162461bcd60e51b815260206004820152603a60248201527f7472616e7366657246726f6d206661696c65642c206d616b652073757265207960448201527937ba9030b8383937bb32b2103a37b5b2b7103a3930b739b332b960311b6064820152608401610a65565b6111d9303383600043611a4e565b506111e43382611ac1565b6111ed33611681565b5060405181815233907f9e71bc8eea02a63969f509818f2dafb9254532904319f9dbda79b67bd34a5f3d9060200160405180910390a250565b6000610886338484611466565b600061123e30610f9e565b905090565b60006112523060004385610dad565b92915050565b611260611b8e565b610d6e3082611c63565b600060026101375414156112905760405162461bcd60e51b8152600401610a659061265c565b60026101375561129f33611681565b905060016101375590565b6101045460405163bf40fac160e01b815260206004820152600a60248201526923a7a7a22227a62620a960b11b60448201526000916001600160a01b03169063bf40fac19060640160206040518083038186803b15801561130a57600080fd5b505afa15801561131e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061123e919061263f565b6001600160a01b0383166113a45760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610a65565b6001600160a01b0382166114055760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610a65565b6001600160a01b0383811660008181526034602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6114743084836000436115e4565b50611483308383600043611a4e565b5061148d83611681565b5061149782611681565b506114a3838383611c9c565b505050565b6001600160a01b0382166115085760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608401610a65565b6001600160a01b0382166000908152603360205260409020548181101561157c5760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608401610a65565b6001600160a01b03831660009081526033602052604081208383039055603580548492906115ab9084906127b1565b90915550506040518281526000906001600160a01b038516906000805160206128908339815191529060200160405180910390a3505050565b60006115f1868484611e5a565b6001600160a01b038087166000908152606b602090815260408083209389168352929052205461163890879087906116339088906001600160801b03166127b1565b611ed5565b6001600160a01b03861660009081526065602052604090205461165c9085906127b1565b6001600160a01b03871660009081526065602052604090205550600195945050505050565b6000806116913084600043612051565b90508015611252576101045460405163bf40fac160e01b815260206004820152600a6024820152692922a82aaa20aa24a7a760b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b1580156116f857600080fd5b505afa15801561170c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611730919061263f565b6001600160a01b03166340c10f1984836040518363ffffffff1660e01b815260040161175d929190612693565b602060405180830381600087803b15801561177757600080fd5b505af115801561178b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117af91906127c8565b5060405181815233907f43848d0574703c28d68ae8958e0571521618f60c4bcacfb094cff2156eaae0f19060200160405180910390a292915050565b600080516020612849833981519152546001600160a01b031690565b610d6e611b8e565b60006118196117eb565b905061182484612186565b6000835111806118315750815b15611842576118408484612219565b505b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143805460ff1661194f57805460ff191660011781556040516118bd90869061188e908590602401612517565b60408051601f198184030181529190526020810180516001600160e01b0316631b2ce7f360e11b179052612219565b50805460ff191681556118ce6117eb565b6001600160a01b0316826001600160a01b0316146119465760405162461bcd60e51b815260206004820152602f60248201527f45524331393637557067726164653a207570677261646520627265616b73206660448201526e75727468657220757067726164657360881b6064820152608401610a65565b61194f85612304565b5050505050565b6001600160a01b03831660009081526066602090815260408083205460699092529091205490838210801561198b5750834310155b6119955781611997565b835b915060008343116119a857436119aa565b835b9050848110806119ba5750838310155b156119c55750611a46565b60006119d184836127b1565b6001600160a01b0388166000908152606a6020526040812054919250906119f89083612770565b6001600160a01b038916600090815260656020526040902054909150611a2982676765c793fa10079d601b1b612770565b611a33919061278f565b611a3d9085612758565b93508294505050505b935093915050565b6000611a5b868484611e5a565b6001600160a01b038087166000908152606b6020908152604080832093891683529290522054611a9d90879087906116339088906001600160801b0316612758565b6001600160a01b03861660009081526065602052604090205461165c908590612758565b6001600160a01b038216611b175760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610a65565b8060356000828254611b299190612758565b90915550506001600160a01b03821660009081526033602052604081208054839290611b56908490612758565b90915550506040518181526001600160a01b038316906000906000805160206128908339815191529060200160405180910390a35050565b6101025460408051632d77bef360e11b8152905133926001600160a01b031691635aef7de6916004808301926020929190829003018186803b158015611bd357600080fd5b505afa158015611be7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c0b919061263f565b6001600160a01b031614611c615760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206176617461722063616e2063616c6c2074686973206d6574686f646044820152606401610a65565b565b611c6f82600043611e5a565b611c7c6207e9008261278f565b6001600160a01b039092166000908152606a602052604090209190915550565b6001600160a01b038316611d005760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610a65565b6001600160a01b038216611d625760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610a65565b6001600160a01b03831660009081526033602052604090205481811015611dda5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610a65565b6001600160a01b03808516600090815260336020526040808220858503905591851681529081208054849290611e11908490612758565b92505081905550826001600160a01b0316846001600160a01b031660008051602061289083398151915284604051611e4b91815260200190565b60405180910390a35b50505050565b6001600160a01b038316600090815260656020526040902054611e955750506001600160a01b03166000908152606960205260409020439055565b600080611ea3858585611956565b6001600160a01b0390961660009081526066602090815260408083209890985560699052959095209490945550505050565b6001600160a01b038084166000908152606b6020908152604080832093861683529290522080546001600160801b031615611fe15780546001600160a01b03851660009081526066602052604081205490916001600160801b03600160801b8204811692676765c793fa10079d601b1b92611f509216612770565b611f5a919061278f565b611f6491906127b1565b6001830154909150611f809082906001600160801b03166127e1565b6001830180546001600160801b0319166001600160801b03929092169190911790556001600160a01b038516600090815260686020526040902054611fc6908290612758565b6001600160a01b038616600090815260686020526040902055505b80546001600160801b0319166001600160801b0383161781556001600160a01b038416600090815260666020526040902054676765c793fa10079d601b1b9061202a9084612770565b612034919061278f565b81546001600160801b03918216600160801b029116179055505050565b600061205e858484611e5a565b6001600160a01b038086166000908152606b602090815260408083209388168352929052205461209a90869086906001600160801b0316611ed5565b6001600160a01b038581166000908152606b6020908152604080832093881683529290522060010180546001600160801b0380821692839290916010916120ea918591600160801b9004166127e1565b82546101009290920a6001600160801b038181021990931691831602179091556001600160a01b038881166000818152606b60209081526040808320948c16835293815283822060010180546001600160801b03191690559181526067909152205461215a925090831690612758565b6001600160a01b0387166000908152606760205260409020556001600160801b03169050949350505050565b803b6121ea5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610a65565b60008051602061284983398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6060823b6122785760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610a65565b600080846001600160a01b031684604051612293919061280c565b600060405180830381855af49150503d80600081146122ce576040519150601f19603f3d011682016040523d82523d6000602084013e6122d3565b606091505b50915091506122fb828260405180606001604052806027815260200161286960279139612344565b95945050505050565b61230d81612186565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60608315612353575081610a81565b8251156123635782518084602001fd5b8160405162461bcd60e51b8152600401610a6591906123a9565b60005b83811015612398578181015183820152602001612380565b83811115611e545750506000910152565b60208152600082518060208401526123c881604085016020870161237d565b601f01601f19169190910160400192915050565b6001600160a01b0381168114610d6e57600080fd5b6000806040838503121561240457600080fd5b823561240f816123dc565b946020939093013593505050565b60006020828403121561242f57600080fd5b8135610a81816123dc565b60008060006060848603121561244f57600080fd5b833561245a816123dc565b9250602084013561246a816123dc565b929592945050506040919091013590565b60006020828403121561248d57600080fd5b5035919050565b600080604083850312156124a757600080fd5b82356124b2816123dc565b915060208301356124c2816123dc565b809150509250929050565b600080600080608085870312156124e357600080fd5b84356124ee816123dc565b93506020850135925060408501359150606085013561250c816123dc565b939692955090935050565b6001600160a01b0391909116815260200190565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561255457600080fd5b823561255f816123dc565b915060208301356001600160401b038082111561257b57600080fd5b818501915085601f83011261258f57600080fd5b8135818111156125a1576125a161252b565b604051601f8201601f19908116603f011681019083821181831017156125c9576125c961252b565b816040528281528860208487010111156125e257600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b600181811c9082168061261857607f821691505b6020821081141561263957634e487b7160e01b600052602260045260246000fd5b50919050565b60006020828403121561265157600080fd5b8151610a81816123dc565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b6001600160a01b03929092168252602082015260400190565b6000602082840312156126be57600080fd5b81518015158114610a8157600080fd5b6020808252602c9082015260008051602061282983398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c9082015260008051602061282983398151915260408201526b6163746976652070726f787960a01b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b6000821982111561276b5761276b612742565b500190565b600081600019048311821515161561278a5761278a612742565b500290565b6000826127ac57634e487b7160e01b600052601260045260246000fd5b500490565b6000828210156127c3576127c3612742565b500390565b6000602082840312156127da57600080fd5b5051919050565b60006001600160801b0382811684821680830382111561280357612803612742565b01949350505050565b6000825161281e81846020870161237d565b919091019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220b88ad33eeaf2d7e7a3fb09beec29590e9c8d3c5d311bf7e7115e5c856b8431cc64736f6c63430008080033",
|
|
865
|
+
"bytecode": "0x60a06040523060601b6080523480156200001857600080fd5b5060405162002f5238038062002f528339810160408190526200003b9162000564565b62000046816200018c565b6101045460405163bf40fac160e01b815260206004820152600a60248201526923a7a7a22227a62620a960b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b158015620000a657600080fd5b505afa158015620000bb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000e1919062000564565b61016980546001600160a01b0319166001600160a01b0392909216919091179055604080518082018252601381527f4724205374616b696e6720466f7220474f4f4400000000000000000000000000602080830191909152825180840190935260038352621cd1c960ea1b908301526200015b91620001b5565b620001756207e9006a01a784379d99db420000006200058b565b306000908152606a60205260409020555062000639565b61010480546001600160a01b0319166001600160a01b038316179055620001b262000248565b50565b600054610100900460ff1680620001cf575060005460ff16155b620001f75760405162461bcd60e51b8152600401620001ee90620005ae565b60405180910390fd5b600054610100900460ff161580156200021a576000805461ffff19166101011790555b6200022462000398565b62000230838362000409565b801562000243576000805461ff00191690555b505050565b6101045460405163bf40fac160e01b815260206004820152600a60248201526921a7a72a2927a62622a960b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b158015620002a857600080fd5b505afa158015620002bd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002e3919062000564565b61010280546001600160a01b0319166001600160a01b0392909216918217905560408051632d77bef360e11b81529051635aef7de691600480820192602092909190829003018186803b1580156200033a57600080fd5b505afa1580156200034f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000375919062000564565b61010380546001600160a01b0319166001600160a01b0392909216919091179055565b600054610100900460ff1680620003b2575060005460ff16155b620003d15760405162461bcd60e51b8152600401620001ee90620005ae565b600054610100900460ff16158015620003f4576000805461ffff19166101011790555b8015620001b2576000805461ff001916905550565b600054610100900460ff168062000423575060005460ff16155b620004425760405162461bcd60e51b8152600401620001ee90620005ae565b600054610100900460ff1615801562000465576000805461ffff19166101011790555b82516200047a906036906020860190620004a8565b50815162000490906037906020850190620004a8565b50801562000243576000805461ff0019169055505050565b828054620004b690620005fc565b90600052602060002090601f016020900481019282620004da576000855562000525565b82601f10620004f557805160ff191683800117855562000525565b8280016001018555821562000525579182015b828111156200052557825182559160200191906001019062000508565b506200053392915062000537565b5090565b5b8082111562000533576000815560010162000538565b6001600160a01b0381168114620001b257600080fd5b6000602082840312156200057757600080fd5b815162000584816200054e565b9392505050565b600082620005a957634e487b7160e01b600052601260045260246000fd5b500490565b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b600181811c908216806200061157607f821691505b602082108114156200063357634e487b7160e01b600052602260045260246000fd5b50919050565b60805160601c6128e56200066d60003960008181610cb301528181610cf301528181610eef0152610f2f01526128e56000f3fe6080604052600436106101aa5760003560e01c806306fdde03146101af578063095ea7b3146101da5780630c1cd7f31461020a57806318160ddd146102365780631b3c90a81461024b578063213b329e1461026257806322dec37b1461027857806323b872dd146102a557806325d5971f146102c557806328e964e9146102e55780632e42a8961461031a578063313ce567146103ac57806331903da1146103c85780633659cfe6146103f557806339509351146104155780633d9a12cc146104355780633e6326fc146104555780634162169f1461048357806347b3e7e8146104a45780634f1db7f6146104d15780634f1ef286146104f15780635aef7de61461050457806370a08231146105255780637bcbb9ff1461055b578063846141b31461057b57806395d89b41146105a8578063a457c2d7146105bd578063a694fc3a146105dd578063a87430ba146105fd578063a9059cbb146106eb578063b46aa5271461070b578063bf8e9b6e14610722578063c671062914610737578063c76279a214610757578063c7b8981c14610777578063dd62ed3e1461078c578063e1758bd8146107d2575b600080fd5b3480156101bb57600080fd5b506101c46107e7565b6040516101d191906123a9565b60405180910390f35b3480156101e657600080fd5b506101fa6101f53660046123f1565b610879565b60405190151581526020016101d1565b34801561021657600080fd5b50306000908152606a60205260409020545b6040519081526020016101d1565b34801561024257600080fd5b50603554610228565b34801561025757600080fd5b5061026061088f565b005b34801561026e57600080fd5b506207e900610228565b34801561028457600080fd5b5061022861029336600461241d565b60676020526000908152604090205481565b3480156102b157600080fd5b506101fa6102c036600461243a565b6109d7565b3480156102d157600080fd5b506102606102e036600461247b565b610a88565b3480156102f157600080fd5b5061030561030036600461241d565b610c92565b604080519283526020830191909152016101d1565b34801561032657600080fd5b50610379610335366004612494565b606b602090815260009283526040808420909152908252902080546001909101546001600160801b0380831692600160801b90819004821692808316929190041684565b604080516001600160801b03958616815293851660208501529184169183019190915290911660608201526080016101d1565b3480156103b857600080fd5b50604051600281526020016101d1565b3480156103d457600080fd5b506102286103e336600461241d565b60686020526000908152604090205481565b34801561040157600080fd5b5061026061041036600461241d565b610ca8565b34801561042157600080fd5b506101fa6104303660046123f1565b610d71565b34801561044157600080fd5b506102286104503660046124cd565b610dad565b34801561046157600080fd5b5061010454610476906001600160a01b031681565b6040516101d19190612517565b34801561048f57600080fd5b5061010254610476906001600160a01b031681565b3480156104b057600080fd5b506102286104bf36600461241d565b606a6020526000908152604090205481565b3480156104dd57600080fd5b506103056104ec366004612494565b610ea1565b6102606104ff366004612541565b610ee4565b34801561051057600080fd5b5061010354610476906001600160a01b031681565b34801561053157600080fd5b5061022861054036600461241d565b6001600160a01b031660009081526033602052604090205490565b34801561056757600080fd5b5061022861057636600461241d565b610f9e565b34801561058757600080fd5b5061022861059636600461241d565b60696020526000908152604090205481565b3480156105b457600080fd5b506101c4610fb9565b3480156105c957600080fd5b506101fa6105d83660046123f1565b610fc8565b3480156105e957600080fd5b506102606105f836600461247b565b611061565b34801561060957600080fd5b506106a861061836600461241d565b60408051608081018252600080825260208201819052918101829052606081019190915250306000908152606b602090815260408083206001600160a01b0394909416835292815290829020825160808101845281546001600160801b038082168352600160801b9182900481169483019490945260019092015480841694820194909452920416606082015290565b6040516101d1919081516001600160801b039081168252602080840151821690830152604080840151821690830152606092830151169181019190915260800190565b3480156106f757600080fd5b506101fa6107063660046123f1565b611226565b34801561071757600080fd5b506102286207e90081565b34801561072e57600080fd5b50610228611233565b34801561074357600080fd5b5061022861075236600461241d565b611243565b34801561076357600080fd5b5061026061077236600461247b565b611258565b34801561078357600080fd5b5061022861126a565b34801561079857600080fd5b506102286107a7366004612494565b6001600160a01b03918216600090815260346020908152604080832093909416825291909152205490565b3480156107de57600080fd5b506104766112aa565b6060603680546107f690612604565b80601f016020809104026020016040519081016040528092919081815260200182805461082290612604565b801561086f5780601f106108445761010080835404028352916020019161086f565b820191906000526020600020905b81548152906001019060200180831161085257829003601f168201915b5050505050905090565b6000610886338484611342565b50600192915050565b6101045460405163bf40fac160e01b815260206004820152600a60248201526921a7a72a2927a62622a960b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b1580156108ee57600080fd5b505afa158015610902573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610926919061263f565b61010280546001600160a01b0319166001600160a01b0392909216918217905560408051632d77bef360e11b81529051635aef7de691600480820192602092909190829003018186803b15801561097c57600080fd5b505afa158015610990573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109b4919061263f565b61010380546001600160a01b0319166001600160a01b0392909216919091179055565b60006109e4848484611466565b6001600160a01b038416600090815260346020908152604080832033845290915290205482811015610a6e5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b610a7b8533858403611342565b60019150505b9392505050565b6002610137541415610aac5760405162461bcd60e51b8152600401610a659061265c565b6002610137556000610abe3033610ea1565b50905081610aca578091505b60008211610b1a5760405162461bcd60e51b815260206004820152601f60248201527f53686f756c6420776974686472617720706f73697469766520616d6f756e74006044820152606401610a65565b81811015610b645760405162461bcd60e51b8152602060048201526017602482015276139bdd08195b9bdd59da081d1bdad95b881cdd185ad959604a1b6044820152606401610a65565b81610b6f33846114a8565b610b7d3033856000436115e4565b50610b8733611681565b50610169546001600160a01b031663a9059cbb33836040518363ffffffff1660e01b8152600401610bb9929190612693565b602060405180830381600087803b158015610bd357600080fd5b505af1158015610be7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c0b91906126ac565b610c525760405162461bcd60e51b81526020600482015260186024820152771dda5d1a191c985dc81d1c985b9cd9995c8819985a5b195960421b6044820152606401610a65565b60405183815233907f1248d48e2de900a1010c7fce73506969ecec243600bfc08b641b158f26d857cd9060200160405180910390a2505060016101375550565b600080610c9f3084610ea1565b91509150915091565b306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161415610cf15760405162461bcd60e51b8152600401610a65906126ce565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610d236117eb565b6001600160a01b031614610d495760405162461bcd60e51b8152600401610a6590612708565b610d5281611807565b60408051600080825260208201909252610d6e9183919061180f565b50565b3360008181526034602090815260408083206001600160a01b03871684529091528120549091610886918590610da8908690612758565b611342565b6001600160a01b038085166000818152606b602090815260408083209486168352938152838220845160808101865281546001600160801b038082168352600160801b91829004811683860152600190930154808416838901520490911660608201529282526065905291822054829015610e97576000610e2f888888611956565b91505082604001516001600160801b0316915082602001516001600160801b0316676765c793fa10079d601b1b8285600001516001600160801b0316610e759190612770565b610e7f919061278f565b610e8991906127b1565b610e939083612758565b9150505b9695505050505050565b6001600160a01b039182166000818152606b60209081526040808320949095168252928352838120549181526065909252919020546001600160801b0390911691565b306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161415610f2d5760405162461bcd60e51b8152600401610a65906126ce565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610f5f6117eb565b6001600160a01b031614610f855760405162461bcd60e51b8152600401610a6590612708565b610f8e82611807565b610f9a8282600161180f565b5050565b6001600160a01b031660009081526066602052604090205490565b6060603780546107f690612604565b3360009081526034602090815260408083206001600160a01b03861684529091528120548281101561104a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610a65565b6110573385858403611342565b5060019392505050565b600081116110c35760405162461bcd60e51b815260206004820152602960248201527f596f75206e65656420746f207374616b65206120706f73697469766520746f6b604482015268195b88185b5bdd5b9d60ba1b6064820152608401610a65565b610169546001600160a01b03166323b872dd336040516001600160e01b031960e084901b1681526001600160a01b03909116600482015230602482015260448101849052606401602060405180830381600087803b15801561112457600080fd5b505af1158015611138573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061115c91906126ac565b6111cb5760405162461bcd60e51b815260206004820152603a60248201527f7472616e7366657246726f6d206661696c65642c206d616b652073757265207960448201527937ba9030b8383937bb32b2103a37b5b2b7103a3930b739b332b960311b6064820152608401610a65565b6111d9303383600043611a4e565b506111e43382611ac1565b6111ed33611681565b5060405181815233907f9e71bc8eea02a63969f509818f2dafb9254532904319f9dbda79b67bd34a5f3d9060200160405180910390a250565b6000610886338484611466565b600061123e30610f9e565b905090565b60006112523060004385610dad565b92915050565b611260611b8e565b610d6e3082611c63565b600060026101375414156112905760405162461bcd60e51b8152600401610a659061265c565b60026101375561129f33611681565b905060016101375590565b6101045460405163bf40fac160e01b815260206004820152600a60248201526923a7a7a22227a62620a960b11b60448201526000916001600160a01b03169063bf40fac19060640160206040518083038186803b15801561130a57600080fd5b505afa15801561131e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061123e919061263f565b6001600160a01b0383166113a45760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610a65565b6001600160a01b0382166114055760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610a65565b6001600160a01b0383811660008181526034602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6114743084836000436115e4565b50611483308383600043611a4e565b5061148d83611681565b5061149782611681565b506114a3838383611c9c565b505050565b6001600160a01b0382166115085760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608401610a65565b6001600160a01b0382166000908152603360205260409020548181101561157c5760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608401610a65565b6001600160a01b03831660009081526033602052604081208383039055603580548492906115ab9084906127b1565b90915550506040518281526000906001600160a01b038516906000805160206128908339815191529060200160405180910390a3505050565b60006115f1868484611e5a565b6001600160a01b038087166000908152606b602090815260408083209389168352929052205461163890879087906116339088906001600160801b03166127b1565b611ed5565b6001600160a01b03861660009081526065602052604090205461165c9085906127b1565b6001600160a01b03871660009081526065602052604090205550600195945050505050565b6000806116913084600043612051565b90508015611252576101045460405163bf40fac160e01b815260206004820152600a6024820152692922a82aaa20aa24a7a760b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b1580156116f857600080fd5b505afa15801561170c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611730919061263f565b6001600160a01b03166340c10f1984836040518363ffffffff1660e01b815260040161175d929190612693565b602060405180830381600087803b15801561177757600080fd5b505af115801561178b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117af91906127c8565b5060405181815233907f43848d0574703c28d68ae8958e0571521618f60c4bcacfb094cff2156eaae0f19060200160405180910390a292915050565b600080516020612849833981519152546001600160a01b031690565b610d6e611b8e565b60006118196117eb565b905061182484612186565b6000835111806118315750815b15611842576118408484612219565b505b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143805460ff1661194f57805460ff191660011781556040516118bd90869061188e908590602401612517565b60408051601f198184030181529190526020810180516001600160e01b0316631b2ce7f360e11b179052612219565b50805460ff191681556118ce6117eb565b6001600160a01b0316826001600160a01b0316146119465760405162461bcd60e51b815260206004820152602f60248201527f45524331393637557067726164653a207570677261646520627265616b73206660448201526e75727468657220757067726164657360881b6064820152608401610a65565b61194f85612304565b5050505050565b6001600160a01b03831660009081526066602090815260408083205460699092529091205490838210801561198b5750834310155b6119955781611997565b835b915060008343116119a857436119aa565b835b9050848110806119ba5750838310155b156119c55750611a46565b60006119d184836127b1565b6001600160a01b0388166000908152606a6020526040812054919250906119f89083612770565b6001600160a01b038916600090815260656020526040902054909150611a2982676765c793fa10079d601b1b612770565b611a33919061278f565b611a3d9085612758565b93508294505050505b935093915050565b6000611a5b868484611e5a565b6001600160a01b038087166000908152606b6020908152604080832093891683529290522054611a9d90879087906116339088906001600160801b0316612758565b6001600160a01b03861660009081526065602052604090205461165c908590612758565b6001600160a01b038216611b175760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610a65565b8060356000828254611b299190612758565b90915550506001600160a01b03821660009081526033602052604081208054839290611b56908490612758565b90915550506040518181526001600160a01b038316906000906000805160206128908339815191529060200160405180910390a35050565b6101025460408051632d77bef360e11b8152905133926001600160a01b031691635aef7de6916004808301926020929190829003018186803b158015611bd357600080fd5b505afa158015611be7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c0b919061263f565b6001600160a01b031614611c615760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206176617461722063616e2063616c6c2074686973206d6574686f646044820152606401610a65565b565b611c6f82600043611e5a565b611c7c6207e9008261278f565b6001600160a01b039092166000908152606a602052604090209190915550565b6001600160a01b038316611d005760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610a65565b6001600160a01b038216611d625760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610a65565b6001600160a01b03831660009081526033602052604090205481811015611dda5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610a65565b6001600160a01b03808516600090815260336020526040808220858503905591851681529081208054849290611e11908490612758565b92505081905550826001600160a01b0316846001600160a01b031660008051602061289083398151915284604051611e4b91815260200190565b60405180910390a35b50505050565b6001600160a01b038316600090815260656020526040902054611e955750506001600160a01b03166000908152606960205260409020439055565b600080611ea3858585611956565b6001600160a01b0390961660009081526066602090815260408083209890985560699052959095209490945550505050565b6001600160a01b038084166000908152606b6020908152604080832093861683529290522080546001600160801b031615611fe15780546001600160a01b03851660009081526066602052604081205490916001600160801b03600160801b8204811692676765c793fa10079d601b1b92611f509216612770565b611f5a919061278f565b611f6491906127b1565b6001830154909150611f809082906001600160801b03166127e1565b6001830180546001600160801b0319166001600160801b03929092169190911790556001600160a01b038516600090815260686020526040902054611fc6908290612758565b6001600160a01b038616600090815260686020526040902055505b80546001600160801b0319166001600160801b0383161781556001600160a01b038416600090815260666020526040902054676765c793fa10079d601b1b9061202a9084612770565b612034919061278f565b81546001600160801b03918216600160801b029116179055505050565b600061205e858484611e5a565b6001600160a01b038086166000908152606b602090815260408083209388168352929052205461209a90869086906001600160801b0316611ed5565b6001600160a01b038581166000908152606b6020908152604080832093881683529290522060010180546001600160801b0380821692839290916010916120ea918591600160801b9004166127e1565b82546101009290920a6001600160801b038181021990931691831602179091556001600160a01b038881166000818152606b60209081526040808320948c16835293815283822060010180546001600160801b03191690559181526067909152205461215a925090831690612758565b6001600160a01b0387166000908152606760205260409020556001600160801b03169050949350505050565b803b6121ea5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610a65565b60008051602061284983398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6060823b6122785760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610a65565b600080846001600160a01b031684604051612293919061280c565b600060405180830381855af49150503d80600081146122ce576040519150601f19603f3d011682016040523d82523d6000602084013e6122d3565b606091505b50915091506122fb828260405180606001604052806027815260200161286960279139612344565b95945050505050565b61230d81612186565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60608315612353575081610a81565b8251156123635782518084602001fd5b8160405162461bcd60e51b8152600401610a6591906123a9565b60005b83811015612398578181015183820152602001612380565b83811115611e545750506000910152565b60208152600082518060208401526123c881604085016020870161237d565b601f01601f19169190910160400192915050565b6001600160a01b0381168114610d6e57600080fd5b6000806040838503121561240457600080fd5b823561240f816123dc565b946020939093013593505050565b60006020828403121561242f57600080fd5b8135610a81816123dc565b60008060006060848603121561244f57600080fd5b833561245a816123dc565b9250602084013561246a816123dc565b929592945050506040919091013590565b60006020828403121561248d57600080fd5b5035919050565b600080604083850312156124a757600080fd5b82356124b2816123dc565b915060208301356124c2816123dc565b809150509250929050565b600080600080608085870312156124e357600080fd5b84356124ee816123dc565b93506020850135925060408501359150606085013561250c816123dc565b939692955090935050565b6001600160a01b0391909116815260200190565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561255457600080fd5b823561255f816123dc565b915060208301356001600160401b038082111561257b57600080fd5b818501915085601f83011261258f57600080fd5b8135818111156125a1576125a161252b565b604051601f8201601f19908116603f011681019083821181831017156125c9576125c961252b565b816040528281528860208487010111156125e257600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b600181811c9082168061261857607f821691505b6020821081141561263957634e487b7160e01b600052602260045260246000fd5b50919050565b60006020828403121561265157600080fd5b8151610a81816123dc565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b6001600160a01b03929092168252602082015260400190565b6000602082840312156126be57600080fd5b81518015158114610a8157600080fd5b6020808252602c9082015260008051602061282983398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c9082015260008051602061282983398151915260408201526b6163746976652070726f787960a01b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b6000821982111561276b5761276b612742565b500190565b600081600019048311821515161561278a5761278a612742565b500290565b6000826127ac57634e487b7160e01b600052601260045260246000fd5b500490565b6000828210156127c3576127c3612742565b500390565b6000602082840312156127da57600080fd5b5051919050565b60006001600160801b0382811684821680830382111561280357612803612742565b01949350505050565b6000825161281e81846020870161237d565b919091019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa264697066735822122071822dd6efe8e3e6defc64e56ef918142e6b7f6657bfcb03300e2e76852b6c0764736f6c63430008080033",
|
|
866
|
+
"deployedBytecode": "0x6080604052600436106101aa5760003560e01c806306fdde03146101af578063095ea7b3146101da5780630c1cd7f31461020a57806318160ddd146102365780631b3c90a81461024b578063213b329e1461026257806322dec37b1461027857806323b872dd146102a557806325d5971f146102c557806328e964e9146102e55780632e42a8961461031a578063313ce567146103ac57806331903da1146103c85780633659cfe6146103f557806339509351146104155780633d9a12cc146104355780633e6326fc146104555780634162169f1461048357806347b3e7e8146104a45780634f1db7f6146104d15780634f1ef286146104f15780635aef7de61461050457806370a08231146105255780637bcbb9ff1461055b578063846141b31461057b57806395d89b41146105a8578063a457c2d7146105bd578063a694fc3a146105dd578063a87430ba146105fd578063a9059cbb146106eb578063b46aa5271461070b578063bf8e9b6e14610722578063c671062914610737578063c76279a214610757578063c7b8981c14610777578063dd62ed3e1461078c578063e1758bd8146107d2575b600080fd5b3480156101bb57600080fd5b506101c46107e7565b6040516101d191906123a9565b60405180910390f35b3480156101e657600080fd5b506101fa6101f53660046123f1565b610879565b60405190151581526020016101d1565b34801561021657600080fd5b50306000908152606a60205260409020545b6040519081526020016101d1565b34801561024257600080fd5b50603554610228565b34801561025757600080fd5b5061026061088f565b005b34801561026e57600080fd5b506207e900610228565b34801561028457600080fd5b5061022861029336600461241d565b60676020526000908152604090205481565b3480156102b157600080fd5b506101fa6102c036600461243a565b6109d7565b3480156102d157600080fd5b506102606102e036600461247b565b610a88565b3480156102f157600080fd5b5061030561030036600461241d565b610c92565b604080519283526020830191909152016101d1565b34801561032657600080fd5b50610379610335366004612494565b606b602090815260009283526040808420909152908252902080546001909101546001600160801b0380831692600160801b90819004821692808316929190041684565b604080516001600160801b03958616815293851660208501529184169183019190915290911660608201526080016101d1565b3480156103b857600080fd5b50604051600281526020016101d1565b3480156103d457600080fd5b506102286103e336600461241d565b60686020526000908152604090205481565b34801561040157600080fd5b5061026061041036600461241d565b610ca8565b34801561042157600080fd5b506101fa6104303660046123f1565b610d71565b34801561044157600080fd5b506102286104503660046124cd565b610dad565b34801561046157600080fd5b5061010454610476906001600160a01b031681565b6040516101d19190612517565b34801561048f57600080fd5b5061010254610476906001600160a01b031681565b3480156104b057600080fd5b506102286104bf36600461241d565b606a6020526000908152604090205481565b3480156104dd57600080fd5b506103056104ec366004612494565b610ea1565b6102606104ff366004612541565b610ee4565b34801561051057600080fd5b5061010354610476906001600160a01b031681565b34801561053157600080fd5b5061022861054036600461241d565b6001600160a01b031660009081526033602052604090205490565b34801561056757600080fd5b5061022861057636600461241d565b610f9e565b34801561058757600080fd5b5061022861059636600461241d565b60696020526000908152604090205481565b3480156105b457600080fd5b506101c4610fb9565b3480156105c957600080fd5b506101fa6105d83660046123f1565b610fc8565b3480156105e957600080fd5b506102606105f836600461247b565b611061565b34801561060957600080fd5b506106a861061836600461241d565b60408051608081018252600080825260208201819052918101829052606081019190915250306000908152606b602090815260408083206001600160a01b0394909416835292815290829020825160808101845281546001600160801b038082168352600160801b9182900481169483019490945260019092015480841694820194909452920416606082015290565b6040516101d1919081516001600160801b039081168252602080840151821690830152604080840151821690830152606092830151169181019190915260800190565b3480156106f757600080fd5b506101fa6107063660046123f1565b611226565b34801561071757600080fd5b506102286207e90081565b34801561072e57600080fd5b50610228611233565b34801561074357600080fd5b5061022861075236600461241d565b611243565b34801561076357600080fd5b5061026061077236600461247b565b611258565b34801561078357600080fd5b5061022861126a565b34801561079857600080fd5b506102286107a7366004612494565b6001600160a01b03918216600090815260346020908152604080832093909416825291909152205490565b3480156107de57600080fd5b506104766112aa565b6060603680546107f690612604565b80601f016020809104026020016040519081016040528092919081815260200182805461082290612604565b801561086f5780601f106108445761010080835404028352916020019161086f565b820191906000526020600020905b81548152906001019060200180831161085257829003601f168201915b5050505050905090565b6000610886338484611342565b50600192915050565b6101045460405163bf40fac160e01b815260206004820152600a60248201526921a7a72a2927a62622a960b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b1580156108ee57600080fd5b505afa158015610902573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610926919061263f565b61010280546001600160a01b0319166001600160a01b0392909216918217905560408051632d77bef360e11b81529051635aef7de691600480820192602092909190829003018186803b15801561097c57600080fd5b505afa158015610990573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109b4919061263f565b61010380546001600160a01b0319166001600160a01b0392909216919091179055565b60006109e4848484611466565b6001600160a01b038416600090815260346020908152604080832033845290915290205482811015610a6e5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b610a7b8533858403611342565b60019150505b9392505050565b6002610137541415610aac5760405162461bcd60e51b8152600401610a659061265c565b6002610137556000610abe3033610ea1565b50905081610aca578091505b60008211610b1a5760405162461bcd60e51b815260206004820152601f60248201527f53686f756c6420776974686472617720706f73697469766520616d6f756e74006044820152606401610a65565b81811015610b645760405162461bcd60e51b8152602060048201526017602482015276139bdd08195b9bdd59da081d1bdad95b881cdd185ad959604a1b6044820152606401610a65565b81610b6f33846114a8565b610b7d3033856000436115e4565b50610b8733611681565b50610169546001600160a01b031663a9059cbb33836040518363ffffffff1660e01b8152600401610bb9929190612693565b602060405180830381600087803b158015610bd357600080fd5b505af1158015610be7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c0b91906126ac565b610c525760405162461bcd60e51b81526020600482015260186024820152771dda5d1a191c985dc81d1c985b9cd9995c8819985a5b195960421b6044820152606401610a65565b60405183815233907f1248d48e2de900a1010c7fce73506969ecec243600bfc08b641b158f26d857cd9060200160405180910390a2505060016101375550565b600080610c9f3084610ea1565b91509150915091565b306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161415610cf15760405162461bcd60e51b8152600401610a65906126ce565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610d236117eb565b6001600160a01b031614610d495760405162461bcd60e51b8152600401610a6590612708565b610d5281611807565b60408051600080825260208201909252610d6e9183919061180f565b50565b3360008181526034602090815260408083206001600160a01b03871684529091528120549091610886918590610da8908690612758565b611342565b6001600160a01b038085166000818152606b602090815260408083209486168352938152838220845160808101865281546001600160801b038082168352600160801b91829004811683860152600190930154808416838901520490911660608201529282526065905291822054829015610e97576000610e2f888888611956565b91505082604001516001600160801b0316915082602001516001600160801b0316676765c793fa10079d601b1b8285600001516001600160801b0316610e759190612770565b610e7f919061278f565b610e8991906127b1565b610e939083612758565b9150505b9695505050505050565b6001600160a01b039182166000818152606b60209081526040808320949095168252928352838120549181526065909252919020546001600160801b0390911691565b306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161415610f2d5760405162461bcd60e51b8152600401610a65906126ce565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610f5f6117eb565b6001600160a01b031614610f855760405162461bcd60e51b8152600401610a6590612708565b610f8e82611807565b610f9a8282600161180f565b5050565b6001600160a01b031660009081526066602052604090205490565b6060603780546107f690612604565b3360009081526034602090815260408083206001600160a01b03861684529091528120548281101561104a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610a65565b6110573385858403611342565b5060019392505050565b600081116110c35760405162461bcd60e51b815260206004820152602960248201527f596f75206e65656420746f207374616b65206120706f73697469766520746f6b604482015268195b88185b5bdd5b9d60ba1b6064820152608401610a65565b610169546001600160a01b03166323b872dd336040516001600160e01b031960e084901b1681526001600160a01b03909116600482015230602482015260448101849052606401602060405180830381600087803b15801561112457600080fd5b505af1158015611138573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061115c91906126ac565b6111cb5760405162461bcd60e51b815260206004820152603a60248201527f7472616e7366657246726f6d206661696c65642c206d616b652073757265207960448201527937ba9030b8383937bb32b2103a37b5b2b7103a3930b739b332b960311b6064820152608401610a65565b6111d9303383600043611a4e565b506111e43382611ac1565b6111ed33611681565b5060405181815233907f9e71bc8eea02a63969f509818f2dafb9254532904319f9dbda79b67bd34a5f3d9060200160405180910390a250565b6000610886338484611466565b600061123e30610f9e565b905090565b60006112523060004385610dad565b92915050565b611260611b8e565b610d6e3082611c63565b600060026101375414156112905760405162461bcd60e51b8152600401610a659061265c565b60026101375561129f33611681565b905060016101375590565b6101045460405163bf40fac160e01b815260206004820152600a60248201526923a7a7a22227a62620a960b11b60448201526000916001600160a01b03169063bf40fac19060640160206040518083038186803b15801561130a57600080fd5b505afa15801561131e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061123e919061263f565b6001600160a01b0383166113a45760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610a65565b6001600160a01b0382166114055760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610a65565b6001600160a01b0383811660008181526034602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6114743084836000436115e4565b50611483308383600043611a4e565b5061148d83611681565b5061149782611681565b506114a3838383611c9c565b505050565b6001600160a01b0382166115085760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b6064820152608401610a65565b6001600160a01b0382166000908152603360205260409020548181101561157c5760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b6064820152608401610a65565b6001600160a01b03831660009081526033602052604081208383039055603580548492906115ab9084906127b1565b90915550506040518281526000906001600160a01b038516906000805160206128908339815191529060200160405180910390a3505050565b60006115f1868484611e5a565b6001600160a01b038087166000908152606b602090815260408083209389168352929052205461163890879087906116339088906001600160801b03166127b1565b611ed5565b6001600160a01b03861660009081526065602052604090205461165c9085906127b1565b6001600160a01b03871660009081526065602052604090205550600195945050505050565b6000806116913084600043612051565b90508015611252576101045460405163bf40fac160e01b815260206004820152600a6024820152692922a82aaa20aa24a7a760b11b60448201526001600160a01b039091169063bf40fac19060640160206040518083038186803b1580156116f857600080fd5b505afa15801561170c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611730919061263f565b6001600160a01b03166340c10f1984836040518363ffffffff1660e01b815260040161175d929190612693565b602060405180830381600087803b15801561177757600080fd5b505af115801561178b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117af91906127c8565b5060405181815233907f43848d0574703c28d68ae8958e0571521618f60c4bcacfb094cff2156eaae0f19060200160405180910390a292915050565b600080516020612849833981519152546001600160a01b031690565b610d6e611b8e565b60006118196117eb565b905061182484612186565b6000835111806118315750815b15611842576118408484612219565b505b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143805460ff1661194f57805460ff191660011781556040516118bd90869061188e908590602401612517565b60408051601f198184030181529190526020810180516001600160e01b0316631b2ce7f360e11b179052612219565b50805460ff191681556118ce6117eb565b6001600160a01b0316826001600160a01b0316146119465760405162461bcd60e51b815260206004820152602f60248201527f45524331393637557067726164653a207570677261646520627265616b73206660448201526e75727468657220757067726164657360881b6064820152608401610a65565b61194f85612304565b5050505050565b6001600160a01b03831660009081526066602090815260408083205460699092529091205490838210801561198b5750834310155b6119955781611997565b835b915060008343116119a857436119aa565b835b9050848110806119ba5750838310155b156119c55750611a46565b60006119d184836127b1565b6001600160a01b0388166000908152606a6020526040812054919250906119f89083612770565b6001600160a01b038916600090815260656020526040902054909150611a2982676765c793fa10079d601b1b612770565b611a33919061278f565b611a3d9085612758565b93508294505050505b935093915050565b6000611a5b868484611e5a565b6001600160a01b038087166000908152606b6020908152604080832093891683529290522054611a9d90879087906116339088906001600160801b0316612758565b6001600160a01b03861660009081526065602052604090205461165c908590612758565b6001600160a01b038216611b175760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401610a65565b8060356000828254611b299190612758565b90915550506001600160a01b03821660009081526033602052604081208054839290611b56908490612758565b90915550506040518181526001600160a01b038316906000906000805160206128908339815191529060200160405180910390a35050565b6101025460408051632d77bef360e11b8152905133926001600160a01b031691635aef7de6916004808301926020929190829003018186803b158015611bd357600080fd5b505afa158015611be7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c0b919061263f565b6001600160a01b031614611c615760405162461bcd60e51b815260206004820181905260248201527f6f6e6c79206176617461722063616e2063616c6c2074686973206d6574686f646044820152606401610a65565b565b611c6f82600043611e5a565b611c7c6207e9008261278f565b6001600160a01b039092166000908152606a602052604090209190915550565b6001600160a01b038316611d005760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610a65565b6001600160a01b038216611d625760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610a65565b6001600160a01b03831660009081526033602052604090205481811015611dda5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610a65565b6001600160a01b03808516600090815260336020526040808220858503905591851681529081208054849290611e11908490612758565b92505081905550826001600160a01b0316846001600160a01b031660008051602061289083398151915284604051611e4b91815260200190565b60405180910390a35b50505050565b6001600160a01b038316600090815260656020526040902054611e955750506001600160a01b03166000908152606960205260409020439055565b600080611ea3858585611956565b6001600160a01b0390961660009081526066602090815260408083209890985560699052959095209490945550505050565b6001600160a01b038084166000908152606b6020908152604080832093861683529290522080546001600160801b031615611fe15780546001600160a01b03851660009081526066602052604081205490916001600160801b03600160801b8204811692676765c793fa10079d601b1b92611f509216612770565b611f5a919061278f565b611f6491906127b1565b6001830154909150611f809082906001600160801b03166127e1565b6001830180546001600160801b0319166001600160801b03929092169190911790556001600160a01b038516600090815260686020526040902054611fc6908290612758565b6001600160a01b038616600090815260686020526040902055505b80546001600160801b0319166001600160801b0383161781556001600160a01b038416600090815260666020526040902054676765c793fa10079d601b1b9061202a9084612770565b612034919061278f565b81546001600160801b03918216600160801b029116179055505050565b600061205e858484611e5a565b6001600160a01b038086166000908152606b602090815260408083209388168352929052205461209a90869086906001600160801b0316611ed5565b6001600160a01b038581166000908152606b6020908152604080832093881683529290522060010180546001600160801b0380821692839290916010916120ea918591600160801b9004166127e1565b82546101009290920a6001600160801b038181021990931691831602179091556001600160a01b038881166000818152606b60209081526040808320948c16835293815283822060010180546001600160801b03191690559181526067909152205461215a925090831690612758565b6001600160a01b0387166000908152606760205260409020556001600160801b03169050949350505050565b803b6121ea5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610a65565b60008051602061284983398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6060823b6122785760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610a65565b600080846001600160a01b031684604051612293919061280c565b600060405180830381855af49150503d80600081146122ce576040519150601f19603f3d011682016040523d82523d6000602084013e6122d3565b606091505b50915091506122fb828260405180606001604052806027815260200161286960279139612344565b95945050505050565b61230d81612186565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60608315612353575081610a81565b8251156123635782518084602001fd5b8160405162461bcd60e51b8152600401610a6591906123a9565b60005b83811015612398578181015183820152602001612380565b83811115611e545750506000910152565b60208152600082518060208401526123c881604085016020870161237d565b601f01601f19169190910160400192915050565b6001600160a01b0381168114610d6e57600080fd5b6000806040838503121561240457600080fd5b823561240f816123dc565b946020939093013593505050565b60006020828403121561242f57600080fd5b8135610a81816123dc565b60008060006060848603121561244f57600080fd5b833561245a816123dc565b9250602084013561246a816123dc565b929592945050506040919091013590565b60006020828403121561248d57600080fd5b5035919050565b600080604083850312156124a757600080fd5b82356124b2816123dc565b915060208301356124c2816123dc565b809150509250929050565b600080600080608085870312156124e357600080fd5b84356124ee816123dc565b93506020850135925060408501359150606085013561250c816123dc565b939692955090935050565b6001600160a01b0391909116815260200190565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561255457600080fd5b823561255f816123dc565b915060208301356001600160401b038082111561257b57600080fd5b818501915085601f83011261258f57600080fd5b8135818111156125a1576125a161252b565b604051601f8201601f19908116603f011681019083821181831017156125c9576125c961252b565b816040528281528860208487010111156125e257600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b600181811c9082168061261857607f821691505b6020821081141561263957634e487b7160e01b600052602260045260246000fd5b50919050565b60006020828403121561265157600080fd5b8151610a81816123dc565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b6001600160a01b03929092168252602082015260400190565b6000602082840312156126be57600080fd5b81518015158114610a8157600080fd5b6020808252602c9082015260008051602061282983398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c9082015260008051602061282983398151915260408201526b6163746976652070726f787960a01b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b6000821982111561276b5761276b612742565b500190565b600081600019048311821515161561278a5761278a612742565b500290565b6000826127ac57634e487b7160e01b600052601260045260246000fd5b500490565b6000828210156127c3576127c3612742565b500390565b6000602082840312156127da57600080fd5b5051919050565b60006001600160801b0382811684821680830382111561280357612803612742565b01949350505050565b6000825161281e81846020870161237d565b919091019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa264697066735822122071822dd6efe8e3e6defc64e56ef918142e6b7f6657bfcb03300e2e76852b6c0764736f6c63430008080033",
|
|
867
867
|
"linkReferences": {},
|
|
868
868
|
"deployedLinkReferences": {}
|
|
869
869
|
}
|