@gearbox-protocol/sdk 0.0.110 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/lib/apy/convexAPY.d.ts +1 -1
- package/lib/apy/convexAPY.js +7 -7
- package/lib/apy/curveAPY.js +4 -4
- package/lib/apy/index.d.ts +1 -1
- package/lib/apy/index.js +1 -1
- package/lib/apy/lidoAPY.js +7 -7
- package/lib/apy/yearnAPY.js +3 -3
- package/lib/contracts/adapters.js +1 -1
- package/lib/contracts/contracts.d.ts +5 -5
- package/lib/contracts/contracts.js +66 -71
- package/lib/contracts/contractsRegister.js +2 -2
- package/lib/contracts/protocols.js +6 -6
- package/lib/core/constants.d.ts +3 -2
- package/lib/core/constants.js +6 -5
- package/lib/core/creditAccount.d.ts +2 -2
- package/lib/core/creditManager.js +3 -3
- package/lib/core/creditSession.d.ts +1 -1
- package/lib/core/creditSession.js +1 -1
- package/lib/core/eventOrTx.d.ts +2 -2
- package/lib/core/eventOrTx.js +1 -1
- package/lib/core/events.d.ts +1 -1
- package/lib/core/events.js +32 -31
- package/lib/core/history.d.ts +2 -2
- package/lib/core/pool.js +1 -1
- package/lib/core/tokenDistributor.js +1 -1
- package/lib/core/transactions.js +22 -22
- package/lib/index.d.ts +29 -29
- package/lib/index.js +37 -37
- package/lib/oracles/oracles.d.ts +5 -6
- package/lib/oracles/priceFeeds.d.ts +1 -1
- package/lib/oracles/priceFeeds.js +292 -194
- package/lib/pathfinder/contracts.js +4 -4
- package/lib/pathfinder/curveLP.d.ts +2 -2
- package/lib/pathfinder/curveLP.js +4 -4
- package/lib/pathfinder/path.d.ts +3 -3
- package/lib/pathfinder/path.js +7 -7
- package/lib/pathfinder/tradeTypes.d.ts +2 -2
- package/lib/pathfinder/yVault.d.ts +3 -3
- package/lib/pathfinder/yVault.js +5 -5
- package/lib/strategies/convex.js +13 -13
- package/lib/strategies/creditFacade.js +6 -6
- package/lib/strategies/curve.js +13 -13
- package/lib/strategies/lido.d.ts +1 -1
- package/lib/strategies/lido.js +3 -3
- package/lib/strategies/uniswapV2.js +3 -3
- package/lib/strategies/uniswapV3.js +6 -6
- package/lib/strategies/yearn.js +7 -7
- package/lib/tokens/connectors.js +1 -1
- package/lib/tokens/convex.d.ts +2 -2
- package/lib/tokens/convex.js +50 -50
- package/lib/tokens/curveLP.d.ts +1 -1
- package/lib/tokens/curveLP.js +30 -30
- package/lib/tokens/gear.d.ts +1 -1
- package/lib/tokens/gear.js +6 -6
- package/lib/tokens/normal.js +176 -176
- package/lib/tokens/token.d.ts +3 -3
- package/lib/tokens/token.js +64 -64
- package/lib/tokens/tokenData.d.ts +1 -1
- package/lib/tokens/tokenData.js +4 -4
- package/lib/tokens/yearn.d.ts +1 -1
- package/lib/tokens/yearn.js +19 -19
- package/lib/utils/extracter.js +1 -1
- package/lib/utils/formatter.js +19 -12
- package/lib/utils/mappers.d.ts +1 -1
- package/lib/utils/mappers.js +1 -1
- package/lib/utils/multicall.js +2 -2
- package/lib/utils/network.js +3 -3
- package/lib/utils/repeater.js +6 -6
- package/package.json +30 -23
- package/.eslintignore +0 -5
- package/.eslintrc.js +0 -52
- package/.husky/pre-push +0 -4
- package/.idea/gearbox-sdk.iml +0 -12
- package/.idea/modules.xml +0 -8
- package/.idea/vcs.xml +0 -6
- package/.prettierrc +0 -10
- package/lib/apy/convexAPY copy.d.ts +0 -6
- package/lib/apy/convexAPY copy.js +0 -201
- package/lib/types/hardhat.d.ts +0 -2715
- package/src/abi/adapters/YearnV2.sol/YearnAdapter.dbg.json +0 -4
- package/src/abi/adapters/YearnV2.sol/YearnAdapter.json +0 -455
- package/src/abi/core/ACL.sol/ACL.dbg.json +0 -4
- package/src/abi/core/ACL.sol/ACL.json +0 -262
- package/src/abi/core/ACLTrait.sol/ACLTrait.dbg.json +0 -4
- package/src/abi/core/ACLTrait.sol/ACLTrait.json +0 -64
- package/src/abi/core/AccountMining.sol/AccountMining.dbg.json +0 -4
- package/src/abi/core/AccountMining.sol/AccountMining.json +0 -150
- package/src/abi/core/AddressProvider.sol/AddressProvider.dbg.json +0 -4
- package/src/abi/core/AddressProvider.sol/AddressProvider.json +0 -496
- package/src/abi/core/ContractsRegister.sol/ContractsRegister.dbg.json +0 -4
- package/src/abi/core/ContractsRegister.sol/ContractsRegister.json +0 -255
- package/src/abi/credit/LeverageActions.sol/LeveragedActions.dbg.json +0 -4
- package/src/abi/credit/LeverageActions.sol/LeveragedActions.json +0 -514
- package/src/abi/deployer/AdaptersDeployer.sol/AdaptersDeployer.dbg.json +0 -4
- package/src/abi/deployer/AdaptersDeployer.sol/AdaptersDeployer.json +0 -160
- package/src/abi/deployer/GenesisDeployer.sol/GenesisDeployer.dbg.json +0 -4
- package/src/abi/deployer/GenesisDeployer.sol/GenesisDeployer.json +0 -189
- package/src/abi/deployer/PoolDeployer.sol/PoolDeployer.dbg.json +0 -4
- package/src/abi/deployer/PoolDeployer.sol/PoolDeployer.json +0 -215
- package/src/abi/fuzzing/FuzzHarness.sol/FuzzHarness.dbg.json +0 -4
- package/src/abi/fuzzing/FuzzHarness.sol/FuzzHarness.json +0 -50
- package/src/abi/integrations/yearn/IYVault.sol/IYVault.dbg.json +0 -4
- package/src/abi/integrations/yearn/IYVault.sol/IYVault.json +0 -400
- package/src/abi/interfaces/IGearToken.sol/IGearToken.dbg.json +0 -4
- package/src/abi/interfaces/IGearToken.sol/IGearToken.json +0 -331
- package/src/abi/interfaces/IMerkleDistributor.sol/IMerkleDistributor.dbg.json +0 -4
- package/src/abi/interfaces/IMerkleDistributor.sol/IMerkleDistributor.json +0 -98
- package/src/abi/mocks/core/ACLTraitTest.sol/ACLTraitTest.dbg.json +0 -4
- package/src/abi/mocks/core/ACLTraitTest.sol/ACLTraitTest.json +0 -96
- package/src/abi/mocks/credit/ExecutorMock.sol/ExecutorMock.dbg.json +0 -4
- package/src/abi/mocks/credit/ExecutorMock.sol/ExecutorMock.json +0 -61
- package/src/abi/mocks/integrations/CurveMock.sol/CurveMock.dbg.json +0 -4
- package/src/abi/mocks/integrations/CurveMock.sol/CurveMock.json +0 -168
- package/src/abi/mocks/integrations/YearnMock.sol/YearnMock.dbg.json +0 -4
- package/src/abi/mocks/integrations/YearnMock.sol/YearnMock.json +0 -556
- package/src/abi/mocks/oracles/ChainlinkPriceFeedMock.sol/ChainlinkPriceFeedMock.dbg.json +0 -4
- package/src/abi/mocks/oracles/ChainlinkPriceFeedMock.sol/ChainlinkPriceFeedMock.json +0 -151
- package/src/abi/mocks/pool/CreditManagerMockForPoolTest.sol/CreditManagerMockForPoolTest.dbg.json +0 -4
- package/src/abi/mocks/pool/CreditManagerMockForPoolTest.sol/CreditManagerMockForPoolTest.json +0 -89
- package/src/abi/mocks/tokens/ERC20Blocking.sol/ERC20BlockingMock.dbg.json +0 -4
- package/src/abi/mocks/tokens/ERC20Blocking.sol/ERC20BlockingMock.json +0 -387
- package/src/abi/mocks/tokens/ERC20Fee.sol/TokenFeeMock.dbg.json +0 -4
- package/src/abi/mocks/tokens/ERC20Fee.sol/TokenFeeMock.json +0 -385
- package/src/abi/oracles/YearnPriceFeed.sol/YearnPriceFeed.dbg.json +0 -4
- package/src/abi/oracles/YearnPriceFeed.sol/YearnPriceFeed.json +0 -321
- package/src/abi/support/PathFinder.sol/PathFinder.dbg.json +0 -4
- package/src/abi/support/PathFinder.sol/PathFinder.json +0 -189
- package/src/abi/tokens/GearNFT.sol/GearBeta.dbg.json +0 -4
- package/src/abi/tokens/GearNFT.sol/GearBeta.json +0 -485
- package/src/abi/tokens/TokenDistributor.sol/TokenDistributor.dbg.json +0 -4
- package/src/abi/tokens/TokenDistributor.sol/TokenDistributor.json +0 -439
- package/src/abi/tokens/Vesting.sol/StepVesting.dbg.json +0 -4
- package/src/abi/tokens/Vesting.sol/StepVesting.json +0 -254
- package/src/apy/convexAPY.ts +0 -201
- package/src/apy/curveAPY.ts +0 -68
- package/src/apy/index.ts +0 -8
- package/src/apy/lidoAPY.ts +0 -89
- package/src/apy/yearnAPY.ts +0 -66
- package/src/config.ts +0 -2
- package/src/contracts/adapters.ts +0 -18
- package/src/contracts/contracts.ts +0 -438
- package/src/contracts/contractsRegister.ts +0 -68
- package/src/contracts/protocols.ts +0 -40
- package/src/core/constants.ts +0 -51
- package/src/core/creditAccount.ts +0 -160
- package/src/core/creditManager.ts +0 -309
- package/src/core/creditOperation.ts +0 -9
- package/src/core/creditSession.ts +0 -87
- package/src/core/errors.ts +0 -71
- package/src/core/eventOrTx.ts +0 -97
- package/src/core/events.ts +0 -1259
- package/src/core/history.ts +0 -55
- package/src/core/multicall.ts +0 -6
- package/src/core/operations.ts +0 -41
- package/src/core/pool.ts +0 -81
- package/src/core/strategy.ts +0 -140
- package/src/core/tokenDistributor.ts +0 -14
- package/src/core/transactions.ts +0 -492
- package/src/index.ts +0 -64
- package/src/oracles/oracles.ts +0 -48
- package/src/oracles/priceFeeds.ts +0 -546
- package/src/pathfinder/contracts.ts +0 -19
- package/src/pathfinder/convexLP.ts +0 -37
- package/src/pathfinder/curveLP.ts +0 -75
- package/src/pathfinder/path.ts +0 -174
- package/src/pathfinder/priority.ts +0 -14
- package/src/pathfinder/trade.ts +0 -90
- package/src/pathfinder/tradeTypes.ts +0 -105
- package/src/pathfinder/yVault.ts +0 -90
- package/src/payload/creditAccount.ts +0 -7
- package/src/payload/creditManager.ts +0 -24
- package/src/payload/creditSession.ts +0 -24
- package/src/payload/graphPayload.ts +0 -10
- package/src/payload/pool.ts +0 -3
- package/src/payload/token.ts +0 -5
- package/src/strategies/convex.ts +0 -414
- package/src/strategies/creditFacade.ts +0 -119
- package/src/strategies/curve.ts +0 -478
- package/src/strategies/lido.ts +0 -88
- package/src/strategies/uniswapV2.ts +0 -109
- package/src/strategies/uniswapV3.ts +0 -127
- package/src/strategies/yearn.ts +0 -219
- package/src/tokens/connectors.ts +0 -8
- package/src/tokens/convex.ts +0 -358
- package/src/tokens/curveLP.ts +0 -191
- package/src/tokens/gear.ts +0 -58
- package/src/tokens/normal.ts +0 -812
- package/src/tokens/token.ts +0 -256
- package/src/tokens/tokenData.ts +0 -85
- package/src/tokens/tokenType.ts +0 -12
- package/src/tokens/yearn.ts +0 -146
- package/src/types/@chainlink/contracts/index.ts +0 -5
- package/src/types/@chainlink/contracts/src/index.ts +0 -5
- package/src/types/@chainlink/contracts/src/v0.8/index.ts +0 -5
- package/src/types/@chainlink/contracts/src/v0.8/interfaces/AggregatorV3Interface.ts +0 -228
- package/src/types/@chainlink/contracts/src/v0.8/interfaces/index.ts +0 -4
- package/src/types/@chainlink/index.ts +0 -5
- package/src/types/@openzeppelin/contracts/access/Ownable.ts +0 -175
- package/src/types/@openzeppelin/contracts/access/index.ts +0 -4
- package/src/types/@openzeppelin/contracts/index.ts +0 -11
- package/src/types/@openzeppelin/contracts/security/Pausable.ts +0 -111
- package/src/types/@openzeppelin/contracts/security/index.ts +0 -4
- package/src/types/@openzeppelin/contracts/token/ERC20/ERC20.ts +0 -444
- package/src/types/@openzeppelin/contracts/token/ERC20/IERC20.ts +0 -322
- package/src/types/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.ts +0 -364
- package/src/types/@openzeppelin/contracts/token/ERC20/extensions/index.ts +0 -4
- package/src/types/@openzeppelin/contracts/token/ERC20/index.ts +0 -7
- package/src/types/@openzeppelin/contracts/token/ERC721/ERC721.ts +0 -578
- package/src/types/@openzeppelin/contracts/token/ERC721/IERC721.ts +0 -527
- package/src/types/@openzeppelin/contracts/token/ERC721/IERC721Receiver.ts +0 -120
- package/src/types/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata.ts +0 -581
- package/src/types/@openzeppelin/contracts/token/ERC721/extensions/index.ts +0 -4
- package/src/types/@openzeppelin/contracts/token/ERC721/index.ts +0 -8
- package/src/types/@openzeppelin/contracts/token/index.ts +0 -7
- package/src/types/@openzeppelin/contracts/utils/index.ts +0 -5
- package/src/types/@openzeppelin/contracts/utils/introspection/ERC165.ts +0 -102
- package/src/types/@openzeppelin/contracts/utils/introspection/IERC165.ts +0 -102
- package/src/types/@openzeppelin/contracts/utils/introspection/index.ts +0 -5
- package/src/types/@openzeppelin/index.ts +0 -5
- package/src/types/common.ts +0 -44
- package/src/types/contracts/adapters/AbstractAdapter.ts +0 -174
- package/src/types/contracts/adapters/UniversalAdapter.ts +0 -258
- package/src/types/contracts/adapters/convex/ConvexV1_BaseRewardPool.sol/ConvexV1BaseRewardPoolAdapter.ts +0 -1079
- package/src/types/contracts/adapters/convex/ConvexV1_BaseRewardPool.sol/index.ts +0 -4
- package/src/types/contracts/adapters/convex/ConvexV1_Booster.sol/ConvexV1BoosterAdapter.ts +0 -676
- package/src/types/contracts/adapters/convex/ConvexV1_Booster.sol/index.ts +0 -4
- package/src/types/contracts/adapters/convex/ConvexV1_ClaimZap.sol/ConvexV1ClaimZapAdapter.ts +0 -290
- package/src/types/contracts/adapters/convex/ConvexV1_ClaimZap.sol/index.ts +0 -4
- package/src/types/contracts/adapters/convex/ConvexV1_StakedPositionToken.sol/ConvexStakedPositionToken.ts +0 -393
- package/src/types/contracts/adapters/convex/ConvexV1_StakedPositionToken.sol/index.ts +0 -4
- package/src/types/contracts/adapters/convex/index.ts +0 -11
- package/src/types/contracts/adapters/curve/CurveV1_2.sol/CurveV1Adapter2Assets.ts +0 -1679
- package/src/types/contracts/adapters/curve/CurveV1_2.sol/index.ts +0 -4
- package/src/types/contracts/adapters/curve/CurveV1_3.sol/CurveV1Adapter3Assets.ts +0 -1685
- package/src/types/contracts/adapters/curve/CurveV1_3.sol/index.ts +0 -4
- package/src/types/contracts/adapters/curve/CurveV1_4.sol/CurveV1Adapter4Assets.ts +0 -1694
- package/src/types/contracts/adapters/curve/CurveV1_4.sol/index.ts +0 -4
- package/src/types/contracts/adapters/curve/CurveV1_Base.sol/CurveV1AdapterBase.ts +0 -1394
- package/src/types/contracts/adapters/curve/CurveV1_Base.sol/index.ts +0 -4
- package/src/types/contracts/adapters/curve/CurveV1_DepositZap.sol/CurveV1AdapterDeposit.ts +0 -1394
- package/src/types/contracts/adapters/curve/CurveV1_DepositZap.sol/index.ts +0 -4
- package/src/types/contracts/adapters/curve/CurveV1_stETH.sol/CurveV1AdapterStETH.ts +0 -1679
- package/src/types/contracts/adapters/curve/CurveV1_stETH.sol/index.ts +0 -4
- package/src/types/contracts/adapters/curve/CurveV1_stETHGateway.sol/CurveV1StETHPoolGateway.ts +0 -1232
- package/src/types/contracts/adapters/curve/CurveV1_stETHGateway.sol/index.ts +0 -4
- package/src/types/contracts/adapters/curve/index.ts +0 -17
- package/src/types/contracts/adapters/index.ts +0 -15
- package/src/types/contracts/adapters/lido/LidoV1.sol/LidoV1Adapter.ts +0 -689
- package/src/types/contracts/adapters/lido/LidoV1.sol/index.ts +0 -4
- package/src/types/contracts/adapters/lido/LidoV1_WETHGateway.sol/LidoV1Gateway.ts +0 -400
- package/src/types/contracts/adapters/lido/LidoV1_WETHGateway.sol/index.ts +0 -4
- package/src/types/contracts/adapters/lido/index.ts +0 -7
- package/src/types/contracts/adapters/uniswap/UniswapV2.sol/UniswapV2Adapter.ts +0 -1575
- package/src/types/contracts/adapters/uniswap/UniswapV2.sol/index.ts +0 -4
- package/src/types/contracts/adapters/uniswap/UniswapV3.sol/UniswapV3Adapter.ts +0 -532
- package/src/types/contracts/adapters/uniswap/UniswapV3.sol/index.ts +0 -4
- package/src/types/contracts/adapters/uniswap/index.ts +0 -7
- package/src/types/contracts/adapters/yearn/YearnV2.sol/YearnV2Adapter.ts +0 -744
- package/src/types/contracts/adapters/yearn/YearnV2.sol/index.ts +0 -4
- package/src/types/contracts/adapters/yearn/index.ts +0 -5
- package/src/types/contracts/core/ACL.ts +0 -564
- package/src/types/contracts/core/ACLTrait.ts +0 -170
- package/src/types/contracts/core/AccountFactory.ts +0 -680
- package/src/types/contracts/core/AddressProvider.ts +0 -706
- package/src/types/contracts/core/ContractsRegister.ts +0 -456
- package/src/types/contracts/core/DataCompressor.ts +0 -625
- package/src/types/contracts/core/WETHGateway.ts +0 -263
- package/src/types/contracts/core/index.ts +0 -10
- package/src/types/contracts/credit/CreditAccount.ts +0 -406
- package/src/types/contracts/credit/CreditConfigurator.ts +0 -1297
- package/src/types/contracts/credit/CreditFacade.ts +0 -1654
- package/src/types/contracts/credit/CreditManager.ts +0 -1834
- package/src/types/contracts/credit/index.ts +0 -7
- package/src/types/contracts/factories/CreditManagerFactory.ts +0 -539
- package/src/types/contracts/factories/GenesisFactory.ts +0 -274
- package/src/types/contracts/factories/PoolFactory.ts +0 -350
- package/src/types/contracts/factories/index.ts +0 -6
- package/src/types/contracts/index.ts +0 -29
- package/src/types/contracts/integrations/convex/IBaseRewardPool.ts +0 -856
- package/src/types/contracts/integrations/convex/IBooster.ts +0 -407
- package/src/types/contracts/integrations/convex/IClaimZap.ts +0 -183
- package/src/types/contracts/integrations/convex/IConvexToken.ts +0 -407
- package/src/types/contracts/integrations/convex/IRewards.sol/IBasicRewards.ts +0 -225
- package/src/types/contracts/integrations/convex/IRewards.sol/IRewards.ts +0 -395
- package/src/types/contracts/integrations/convex/IRewards.sol/index.ts +0 -5
- package/src/types/contracts/integrations/convex/Interfaces.sol/ICrvDeposit.ts +0 -128
- package/src/types/contracts/integrations/convex/Interfaces.sol/ICurveGauge.ts +0 -242
- package/src/types/contracts/integrations/convex/Interfaces.sol/ICurveVoteEscrow.ts +0 -227
- package/src/types/contracts/integrations/convex/Interfaces.sol/IDeposit.ts +0 -371
- package/src/types/contracts/integrations/convex/Interfaces.sol/IFeeDistro.ts +0 -104
- package/src/types/contracts/integrations/convex/Interfaces.sol/IMinter.ts +0 -95
- package/src/types/contracts/integrations/convex/Interfaces.sol/IPools.ts +0 -290
- package/src/types/contracts/integrations/convex/Interfaces.sol/IRegistry.ts +0 -189
- package/src/types/contracts/integrations/convex/Interfaces.sol/IRewardFactory.ts +0 -310
- package/src/types/contracts/integrations/convex/Interfaces.sol/IRewards.ts +0 -395
- package/src/types/contracts/integrations/convex/Interfaces.sol/IStaker.ts +0 -652
- package/src/types/contracts/integrations/convex/Interfaces.sol/IStash.ts +0 -209
- package/src/types/contracts/integrations/convex/Interfaces.sol/IStashFactory.ts +0 -120
- package/src/types/contracts/integrations/convex/Interfaces.sol/ITokenFactory.ts +0 -104
- package/src/types/contracts/integrations/convex/Interfaces.sol/ITokenMinter.ts +0 -143
- package/src/types/contracts/integrations/convex/Interfaces.sol/IVestedEscrow.ts +0 -107
- package/src/types/contracts/integrations/convex/Interfaces.sol/IVoting.ts +0 -220
- package/src/types/contracts/integrations/convex/Interfaces.sol/IWalletChecker.ts +0 -84
- package/src/types/contracts/integrations/convex/Interfaces.sol/index.ts +0 -21
- package/src/types/contracts/integrations/convex/index.ts +0 -11
- package/src/types/contracts/integrations/curve/ICRVToken.ts +0 -422
- package/src/types/contracts/integrations/curve/ICurvePool.ts +0 -894
- package/src/types/contracts/integrations/curve/ICurvePoolStETH.ts +0 -772
- package/src/types/contracts/integrations/curve/ICurvePool_2.sol/ICurvePool2Assets.ts +0 -1179
- package/src/types/contracts/integrations/curve/ICurvePool_2.sol/index.ts +0 -4
- package/src/types/contracts/integrations/curve/ICurvePool_3.sol/ICurvePool3Assets.ts +0 -1185
- package/src/types/contracts/integrations/curve/ICurvePool_3.sol/index.ts +0 -4
- package/src/types/contracts/integrations/curve/ICurvePool_4.sol/ICurvePool4Assets.ts +0 -1194
- package/src/types/contracts/integrations/curve/ICurvePool_4.sol/index.ts +0 -4
- package/src/types/contracts/integrations/curve/ICurveRegistry.ts +0 -148
- package/src/types/contracts/integrations/curve/index.ts +0 -13
- package/src/types/contracts/integrations/index.ts +0 -13
- package/src/types/contracts/integrations/lido/ILidoOracle.ts +0 -115
- package/src/types/contracts/integrations/lido/IstETH.sol/IstETH.ts +0 -534
- package/src/types/contracts/integrations/lido/IstETH.sol/IstETHGetters.ts +0 -507
- package/src/types/contracts/integrations/lido/IstETH.sol/index.ts +0 -5
- package/src/types/contracts/integrations/lido/index.ts +0 -6
- package/src/types/contracts/integrations/uniswap/IQuoter.ts +0 -263
- package/src/types/contracts/integrations/uniswap/IUniswapV2Router01.ts +0 -1128
- package/src/types/contracts/integrations/uniswap/IUniswapV2Router02.ts +0 -1446
- package/src/types/contracts/integrations/uniswap/IUniswapV3.sol/ISwapRouter.ts +0 -318
- package/src/types/contracts/integrations/uniswap/IUniswapV3.sol/index.ts +0 -4
- package/src/types/contracts/integrations/uniswap/IUniswapV3SwapCallback.ts +0 -117
- package/src/types/contracts/integrations/uniswap/index.ts +0 -9
- package/src/types/contracts/integrations/yearn/IYVault.ts +0 -640
- package/src/types/contracts/integrations/yearn/index.ts +0 -4
- package/src/types/contracts/interfaces/IACL.sol/IACL.ts +0 -261
- package/src/types/contracts/interfaces/IACL.sol/IACLEvents.ts +0 -135
- package/src/types/contracts/interfaces/IACL.sol/index.ts +0 -5
- package/src/types/contracts/interfaces/IAccountFactory.sol/IAccountFactory.ts +0 -396
- package/src/types/contracts/interfaces/IAccountFactory.sol/IAccountFactoryEvents.ts +0 -158
- package/src/types/contracts/interfaces/IAccountFactory.sol/IAccountFactoryGetters.ts +0 -198
- package/src/types/contracts/interfaces/IAccountFactory.sol/index.ts +0 -6
- package/src/types/contracts/interfaces/IAddressProvider.sol/IAddressProvider.ts +0 -290
- package/src/types/contracts/interfaces/IAddressProvider.sol/IAddressProviderEvents.ts +0 -79
- package/src/types/contracts/interfaces/IAddressProvider.sol/index.ts +0 -5
- package/src/types/contracts/interfaces/IContractsRegister.sol/IContractsRegister.ts +0 -305
- package/src/types/contracts/interfaces/IContractsRegister.sol/IContractsRegisterEvents.ts +0 -89
- package/src/types/contracts/interfaces/IContractsRegister.sol/index.ts +0 -5
- package/src/types/contracts/interfaces/ICreditAccount.sol/ICrediAccountExceptions.ts +0 -55
- package/src/types/contracts/interfaces/ICreditAccount.sol/ICreditAccount.ts +0 -406
- package/src/types/contracts/interfaces/ICreditAccount.sol/index.ts +0 -5
- package/src/types/contracts/interfaces/ICreditConfigurator.sol/ICreditConfigurator.ts +0 -666
- package/src/types/contracts/interfaces/ICreditConfigurator.sol/ICreditConfiguratorEvents.ts +0 -384
- package/src/types/contracts/interfaces/ICreditConfigurator.sol/ICreditConfiguratorExceptions.ts +0 -56
- package/src/types/contracts/interfaces/ICreditConfigurator.sol/index.ts +0 -6
- package/src/types/contracts/interfaces/ICreditFacade.sol/ICreditFacade.ts +0 -1236
- package/src/types/contracts/interfaces/ICreditFacade.sol/ICreditFacadeEvents.ts +0 -358
- package/src/types/contracts/interfaces/ICreditFacade.sol/ICreditFacadeExceptions.ts +0 -55
- package/src/types/contracts/interfaces/ICreditFacade.sol/ICreditFacadeExtended.ts +0 -143
- package/src/types/contracts/interfaces/ICreditFacade.sol/index.ts +0 -7
- package/src/types/contracts/interfaces/ICreditManagerV2.sol/ICreditManagerV2.ts +0 -1534
- package/src/types/contracts/interfaces/ICreditManagerV2.sol/ICreditManagerV2Events.ts +0 -98
- package/src/types/contracts/interfaces/ICreditManagerV2.sol/ICreditManagerV2Exceptions.ts +0 -55
- package/src/types/contracts/interfaces/ICreditManagerV2.sol/index.ts +0 -6
- package/src/types/contracts/interfaces/IDataCompressor.sol/IDataCompressor.ts +0 -516
- package/src/types/contracts/interfaces/IDataCompressor.sol/IDataCompressorExceptions.ts +0 -55
- package/src/types/contracts/interfaces/IDataCompressor.sol/index.ts +0 -5
- package/src/types/contracts/interfaces/IDegenNFT.sol/IDegenNFT.ts +0 -209
- package/src/types/contracts/interfaces/IDegenNFT.sol/IDegenNFTExceptions.ts +0 -55
- package/src/types/contracts/interfaces/IDegenNFT.sol/index.ts +0 -5
- package/src/types/contracts/interfaces/IGearToken.ts +0 -560
- package/src/types/contracts/interfaces/IInterestRateModel.ts +0 -123
- package/src/types/contracts/interfaces/ILPPriceFeed.sol/ILPPriceFeed.ts +0 -379
- package/src/types/contracts/interfaces/ILPPriceFeed.sol/ILPPriceFeedEvents.ts +0 -80
- package/src/types/contracts/interfaces/ILPPriceFeed.sol/ILPPriceFeedExceptions.ts +0 -55
- package/src/types/contracts/interfaces/ILPPriceFeed.sol/index.ts +0 -6
- package/src/types/contracts/interfaces/IMerkleDistributor.ts +0 -200
- package/src/types/contracts/interfaces/IPhantomERC20.ts +0 -381
- package/src/types/contracts/interfaces/IPoolService.sol/IPoolService.ts +0 -901
- package/src/types/contracts/interfaces/IPoolService.sol/IPoolServiceEvents.ts +0 -277
- package/src/types/contracts/interfaces/IPoolService.sol/index.ts +0 -5
- package/src/types/contracts/interfaces/IPriceFeedAddress.ts +0 -177
- package/src/types/contracts/interfaces/IPriceFeedType.ts +0 -108
- package/src/types/contracts/interfaces/IPriceOracle.sol/IPriceOracleV2.ts +0 -387
- package/src/types/contracts/interfaces/IPriceOracle.sol/IPriceOracleV2Events.ts +0 -79
- package/src/types/contracts/interfaces/IPriceOracle.sol/IPriceOracleV2Exceptions.ts +0 -55
- package/src/types/contracts/interfaces/IPriceOracle.sol/IPriceOracleV2Ext.ts +0 -429
- package/src/types/contracts/interfaces/IPriceOracle.sol/index.ts +0 -7
- package/src/types/contracts/interfaces/IVersion.ts +0 -81
- package/src/types/contracts/interfaces/IWETHGateway.ts +0 -201
- package/src/types/contracts/interfaces/V1/ICreditFilter.ts +0 -1288
- package/src/types/contracts/interfaces/V1/ICreditManager.ts +0 -1194
- package/src/types/contracts/interfaces/V1/IPriceOracle.sol/IPriceOracleV2.ts +0 -220
- package/src/types/contracts/interfaces/V1/IPriceOracle.sol/index.ts +0 -4
- package/src/types/contracts/interfaces/V1/index.ts +0 -7
- package/src/types/contracts/interfaces/adapters/IAdapter.sol/IAdapter.ts +0 -174
- package/src/types/contracts/interfaces/adapters/IAdapter.sol/IAdapterExceptions.ts +0 -55
- package/src/types/contracts/interfaces/adapters/IAdapter.sol/index.ts +0 -5
- package/src/types/contracts/interfaces/adapters/IUniversalAdapter.sol/IUniversalAdapter.ts +0 -258
- package/src/types/contracts/interfaces/adapters/IUniversalAdapter.sol/IUniversalAdapterExceptions.ts +0 -55
- package/src/types/contracts/interfaces/adapters/IUniversalAdapter.sol/index.ts +0 -5
- package/src/types/contracts/interfaces/adapters/convex/IConvexV1BaseRewardPoolAdapter.sol/IConvexV1BaseRewardPoolAdapter.ts +0 -1088
- package/src/types/contracts/interfaces/adapters/convex/IConvexV1BaseRewardPoolAdapter.sol/IConvexV1BaseRewardPoolAdapterErrors.ts +0 -56
- package/src/types/contracts/interfaces/adapters/convex/IConvexV1BaseRewardPoolAdapter.sol/index.ts +0 -5
- package/src/types/contracts/interfaces/adapters/convex/IConvexV1BoosterAdapter.ts +0 -553
- package/src/types/contracts/interfaces/adapters/convex/index.ts +0 -6
- package/src/types/contracts/interfaces/adapters/curve/ICurveV1Adapter.sol/ICurveV1Adapter.ts +0 -1397
- package/src/types/contracts/interfaces/adapters/curve/ICurveV1Adapter.sol/ICurveV1AdapterExceptions.ts +0 -55
- package/src/types/contracts/interfaces/adapters/curve/ICurveV1Adapter.sol/index.ts +0 -5
- package/src/types/contracts/interfaces/adapters/curve/index.ts +0 -5
- package/src/types/contracts/interfaces/adapters/index.ts +0 -15
- package/src/types/contracts/interfaces/adapters/lido/ILidoV1Adapter.sol/ILidoV1Adapter.ts +0 -486
- package/src/types/contracts/interfaces/adapters/lido/ILidoV1Adapter.sol/ILidoV1AdapterEvents.ts +0 -69
- package/src/types/contracts/interfaces/adapters/lido/ILidoV1Adapter.sol/ILidoV1AdapterExceptions.ts +0 -55
- package/src/types/contracts/interfaces/adapters/lido/ILidoV1Adapter.sol/index.ts +0 -6
- package/src/types/contracts/interfaces/adapters/lido/index.ts +0 -5
- package/src/types/contracts/interfaces/adapters/uniswap/IUniswapV2Adapter.ts +0 -1595
- package/src/types/contracts/interfaces/adapters/uniswap/IUniswapV3Adapter.sol/IUniswapV3Adapter.ts +0 -532
- package/src/types/contracts/interfaces/adapters/uniswap/IUniswapV3Adapter.sol/IUniswapV3AdapterExceptions.ts +0 -55
- package/src/types/contracts/interfaces/adapters/uniswap/IUniswapV3Adapter.sol/index.ts +0 -5
- package/src/types/contracts/interfaces/adapters/uniswap/index.ts +0 -6
- package/src/types/contracts/interfaces/external/IWETH.ts +0 -159
- package/src/types/contracts/interfaces/external/index.ts +0 -4
- package/src/types/contracts/interfaces/index.ts +0 -43
- package/src/types/contracts/libraries/Errors.ts +0 -894
- package/src/types/contracts/libraries/index.ts +0 -4
- package/src/types/contracts/oracles/LPPriceFeed.ts +0 -451
- package/src/types/contracts/oracles/PriceFeedChecker.ts +0 -55
- package/src/types/contracts/oracles/PriceOracle.ts +0 -535
- package/src/types/contracts/oracles/ZeroPriceFeed.ts +0 -244
- package/src/types/contracts/oracles/curve/AbstractCurveLPPriceFeed.ts +0 -485
- package/src/types/contracts/oracles/curve/CurveLP2PriceFeed.ts +0 -519
- package/src/types/contracts/oracles/curve/CurveLP3PriceFeed.ts +0 -536
- package/src/types/contracts/oracles/curve/CurveLP4PriceFeed.ts +0 -553
- package/src/types/contracts/oracles/curve/index.ts +0 -7
- package/src/types/contracts/oracles/index.ts +0 -11
- package/src/types/contracts/oracles/yearn/YearnPriceFeed.ts +0 -499
- package/src/types/contracts/oracles/yearn/index.ts +0 -4
- package/src/types/contracts/pathfinder/ConvexPathFinder.ts +0 -211
- package/src/types/contracts/pathfinder/CurveLPPathFinder.ts +0 -335
- package/src/types/contracts/pathfinder/CurvePathFinder.ts +0 -514
- package/src/types/contracts/pathfinder/ISwapper.ts +0 -208
- package/src/types/contracts/pathfinder/NormalTokenPathFinder.ts +0 -526
- package/src/types/contracts/pathfinder/SwapPathFinder.ts +0 -424
- package/src/types/contracts/pathfinder/UniswapV2PathFinder.ts +0 -422
- package/src/types/contracts/pathfinder/UniswapV3PathFinder.ts +0 -559
- package/src/types/contracts/pathfinder/YearnPathFinder.ts +0 -200
- package/src/types/contracts/pathfinder/data/Balances.sol/BalanceOps.ts +0 -55
- package/src/types/contracts/pathfinder/data/Balances.sol/index.ts +0 -4
- package/src/types/contracts/pathfinder/data/index.ts +0 -5
- package/src/types/contracts/pathfinder/index.ts +0 -14
- package/src/types/contracts/pool/LinearInterestRateModel.ts +0 -276
- package/src/types/contracts/pool/PoolService.ts +0 -1314
- package/src/types/contracts/pool/index.ts +0 -5
- package/src/types/contracts/support/ContractUpgrader.ts +0 -284
- package/src/types/contracts/support/MerkleDistributor.ts +0 -200
- package/src/types/contracts/support/MultiCall.sol/Multicall2.ts +0 -451
- package/src/types/contracts/support/MultiCall.sol/index.ts +0 -4
- package/src/types/contracts/support/PauseMulticall.ts +0 -286
- package/src/types/contracts/support/index.ts +0 -8
- package/src/types/contracts/test/Playground.t.sol/PlaygroundTest.ts +0 -425
- package/src/types/contracts/test/Playground.t.sol/index.ts +0 -4
- package/src/types/contracts/test/adapters/AbstractAdapter.t.sol/AbstractAdapterTest.ts +0 -1196
- package/src/types/contracts/test/adapters/AbstractAdapter.t.sol/index.ts +0 -4
- package/src/types/contracts/test/adapters/AdapterTestHelper.ts +0 -814
- package/src/types/contracts/test/adapters/ConvexAdapterHelper.ts +0 -1351
- package/src/types/contracts/test/adapters/ConvexV1_BaseRewardPool.t.sol/ConvexV1AdapterBasePoolTest.ts +0 -1701
- package/src/types/contracts/test/adapters/ConvexV1_BaseRewardPool.t.sol/index.ts +0 -4
- package/src/types/contracts/test/adapters/ConvexV1_Booster.t.sol/ConvexV1AdapterBoosterTest.ts +0 -1583
- package/src/types/contracts/test/adapters/ConvexV1_Booster.t.sol/index.ts +0 -4
- package/src/types/contracts/test/adapters/ConvexV1_ClaimZap.t.sol/ConvexV1ClaimZapAdapterTest.ts +0 -1551
- package/src/types/contracts/test/adapters/ConvexV1_ClaimZap.t.sol/index.ts +0 -4
- package/src/types/contracts/test/adapters/CurveV1AdapterBaseMetapoolTest.t.sol/CurveV1AdapterBaseMetaPoolTest.ts +0 -1021
- package/src/types/contracts/test/adapters/CurveV1AdapterBaseMetapoolTest.t.sol/index.ts +0 -4
- package/src/types/contracts/test/adapters/CurveV1AdapterBaseTest.t.sol/CurveV1AdapterBaseTest.ts +0 -1325
- package/src/types/contracts/test/adapters/CurveV1AdapterBaseTest.t.sol/index.ts +0 -4
- package/src/types/contracts/test/adapters/CurveV1AdapterHelper.ts +0 -814
- package/src/types/contracts/test/adapters/CurveV1Adapter_2AssetsTest.t.sol/CurveV1Adapter2AssetsTest.ts +0 -1080
- package/src/types/contracts/test/adapters/CurveV1Adapter_2AssetsTest.t.sol/index.ts +0 -4
- package/src/types/contracts/test/adapters/CurveV1Adapter_3AssetsTest.t.sol/CurveV1Adapter3AssetsTest.ts +0 -1080
- package/src/types/contracts/test/adapters/CurveV1Adapter_3AssetsTest.t.sol/index.ts +0 -4
- package/src/types/contracts/test/adapters/CurveV1Adapter_4AssetsTest.t.sol/CurveV1Adapter4AssetsTest.ts +0 -1110
- package/src/types/contracts/test/adapters/CurveV1Adapter_4AssetsTest.t.sol/index.ts +0 -4
- package/src/types/contracts/test/adapters/CurveV1StETHTest.t.sol/CurveV1StEthAdapterTest.ts +0 -1100
- package/src/types/contracts/test/adapters/CurveV1StETHTest.t.sol/index.ts +0 -4
- package/src/types/contracts/test/adapters/LidoV1Adapter.t.sol/LidoV1AdapterTest.ts +0 -1146
- package/src/types/contracts/test/adapters/LidoV1Adapter.t.sol/index.ts +0 -4
- package/src/types/contracts/test/adapters/UniswapV2Adapter.t.sol/UniswapV2AdapterTest.ts +0 -1210
- package/src/types/contracts/test/adapters/UniswapV2Adapter.t.sol/index.ts +0 -4
- package/src/types/contracts/test/adapters/UniswapV3Adapter.t.sol/UniswapV3AdapterTest.ts +0 -1124
- package/src/types/contracts/test/adapters/UniswapV3Adapter.t.sol/index.ts +0 -4
- package/src/types/contracts/test/adapters/YearnV2Adapter.t.sol/YearnV2AdapterTest.ts +0 -1408
- package/src/types/contracts/test/adapters/YearnV2Adapter.t.sol/index.ts +0 -4
- package/src/types/contracts/test/adapters/index.ts +0 -34
- package/src/types/contracts/test/core/ACL.t.sol/ACLTest.ts +0 -659
- package/src/types/contracts/test/core/ACL.t.sol/index.ts +0 -4
- package/src/types/contracts/test/core/AddressProvider.t.sol/AddressProviderTest.ts +0 -783
- package/src/types/contracts/test/core/AddressProvider.t.sol/index.ts +0 -4
- package/src/types/contracts/test/core/index.ts +0 -7
- package/src/types/contracts/test/credit/CreditConfigurator.t.sol/CreditConfiguratorTest.ts +0 -1958
- package/src/types/contracts/test/credit/CreditConfigurator.t.sol/index.ts +0 -4
- package/src/types/contracts/test/credit/CreditFacade.t.sol/CreditFacadeTest.ts +0 -2860
- package/src/types/contracts/test/credit/CreditFacade.t.sol/index.ts +0 -4
- package/src/types/contracts/test/credit/CreditManager.t.sol/CreditManagerTest.ts +0 -2480
- package/src/types/contracts/test/credit/CreditManager.t.sol/index.ts +0 -4
- package/src/types/contracts/test/credit/index.ts +0 -9
- package/src/types/contracts/test/index.ts +0 -31
- package/src/types/contracts/test/lib/cheatCodes.sol/CheatCodes.ts +0 -926
- package/src/types/contracts/test/lib/cheatCodes.sol/index.ts +0 -4
- package/src/types/contracts/test/lib/constants.sol/Roles.ts +0 -375
- package/src/types/contracts/test/lib/constants.sol/index.ts +0 -4
- package/src/types/contracts/test/lib/index.ts +0 -9
- package/src/types/contracts/test/lib/test.sol/DSTest.ts +0 -375
- package/src/types/contracts/test/lib/test.sol/index.ts +0 -4
- package/src/types/contracts/test/mainnet/MainnetTokens.sol/MainnetTokensTestSuite.ts +0 -346
- package/src/types/contracts/test/mainnet/MainnetTokens.sol/index.ts +0 -4
- package/src/types/contracts/test/mainnet/TotalValueCalculator.ts +0 -104
- package/src/types/contracts/test/mainnet/index.ts +0 -6
- package/src/types/contracts/test/mocks/adapters/AdapterMock.ts +0 -458
- package/src/types/contracts/test/mocks/adapters/TargetContractMock.ts +0 -81
- package/src/types/contracts/test/mocks/adapters/index.ts +0 -5
- package/src/types/contracts/test/mocks/core/ACLTraitTest.ts +0 -238
- package/src/types/contracts/test/mocks/core/AddressProviderACLMock.ts +0 -186
- package/src/types/contracts/test/mocks/core/index.ts +0 -5
- package/src/types/contracts/test/mocks/credit/CreditManagerInternal.ts +0 -2197
- package/src/types/contracts/test/mocks/credit/index.ts +0 -4
- package/src/types/contracts/test/mocks/dao/TreasuryMock.ts +0 -69
- package/src/types/contracts/test/mocks/dao/index.ts +0 -4
- package/src/types/contracts/test/mocks/index.ts +0 -21
- package/src/types/contracts/test/mocks/integrations/ConvexBaseRewardPoolMock.sol/BaseRewardPoolMock.ts +0 -1069
- package/src/types/contracts/test/mocks/integrations/ConvexBaseRewardPoolMock.sol/IBaseRewardPoolMockEvents.ts +0 -140
- package/src/types/contracts/test/mocks/integrations/ConvexBaseRewardPoolMock.sol/index.ts +0 -5
- package/src/types/contracts/test/mocks/integrations/ConvexBoosterMock.sol/BoosterMock.ts +0 -1002
- package/src/types/contracts/test/mocks/integrations/ConvexBoosterMock.sol/IBoosterMockEvents.ts +0 -122
- package/src/types/contracts/test/mocks/integrations/ConvexBoosterMock.sol/index.ts +0 -5
- package/src/types/contracts/test/mocks/integrations/ConvexClaimZapMock.sol/ClaimZapMock.ts +0 -209
- package/src/types/contracts/test/mocks/integrations/ConvexClaimZapMock.sol/IBasicRewards.ts +0 -225
- package/src/types/contracts/test/mocks/integrations/ConvexClaimZapMock.sol/index.ts +0 -5
- package/src/types/contracts/test/mocks/integrations/ConvexExtraRewardPoolMock.sol/ExtraRewardPoolMock.ts +0 -731
- package/src/types/contracts/test/mocks/integrations/ConvexExtraRewardPoolMock.sol/IExtraRewardPoolMockEvents.ts +0 -141
- package/src/types/contracts/test/mocks/integrations/ConvexExtraRewardPoolMock.sol/VirtualBalanceWrapper.ts +0 -203
- package/src/types/contracts/test/mocks/integrations/ConvexExtraRewardPoolMock.sol/index.ts +0 -6
- package/src/types/contracts/test/mocks/integrations/ConvexTokenRewardContractMock.sol/TokenRewardContractMock.ts +0 -425
- package/src/types/contracts/test/mocks/integrations/ConvexTokenRewardContractMock.sol/index.ts +0 -4
- package/src/types/contracts/test/mocks/integrations/CurveV1MetapoolMock.ts +0 -1101
- package/src/types/contracts/test/mocks/integrations/CurveV1Mock.ts +0 -1124
- package/src/types/contracts/test/mocks/integrations/CurveV1Mock_2Assets.ts +0 -1409
- package/src/types/contracts/test/mocks/integrations/CurveV1Mock_3Assets.ts +0 -1415
- package/src/types/contracts/test/mocks/integrations/CurveV1Mock_4Assets.ts +0 -1424
- package/src/types/contracts/test/mocks/integrations/CurveV1StETHMock.ts +0 -880
- package/src/types/contracts/test/mocks/integrations/LidoMock.sol/ILidoMockEvents.ts +0 -82
- package/src/types/contracts/test/mocks/integrations/LidoMock.sol/LidoMock.ts +0 -747
- package/src/types/contracts/test/mocks/integrations/LidoMock.sol/index.ts +0 -5
- package/src/types/contracts/test/mocks/integrations/UniswapV2Mock.ts +0 -1553
- package/src/types/contracts/test/mocks/integrations/UniswapV3Mock.ts +0 -953
- package/src/types/contracts/test/mocks/integrations/YearnV2Mock.ts +0 -898
- package/src/types/contracts/test/mocks/integrations/index.ts +0 -24
- package/src/types/contracts/test/mocks/libraries/PercentageMathTest.ts +0 -143
- package/src/types/contracts/test/mocks/libraries/WadRayMathTest.ts +0 -315
- package/src/types/contracts/test/mocks/libraries/index.ts +0 -5
- package/src/types/contracts/test/mocks/oracles/LPPriceFeedMock.ts +0 -486
- package/src/types/contracts/test/mocks/oracles/PriceFeedMock.ts +0 -368
- package/src/types/contracts/test/mocks/oracles/index.ts +0 -5
- package/src/types/contracts/test/mocks/pool/CreditManagerMockForPoolTest.ts +0 -285
- package/src/types/contracts/test/mocks/pool/PoolServiceMock.ts +0 -1401
- package/src/types/contracts/test/mocks/pool/TestPoolService.ts +0 -1439
- package/src/types/contracts/test/mocks/pool/index.ts +0 -6
- package/src/types/contracts/test/mocks/token/CERC20Mock.ts +0 -635
- package/src/types/contracts/test/mocks/token/ERC20ApproveRestricted.sol/ERC20ApproveRestrictedFalse.ts +0 -544
- package/src/types/contracts/test/mocks/token/ERC20ApproveRestricted.sol/ERC20ApproveRestrictedRevert.ts +0 -544
- package/src/types/contracts/test/mocks/token/ERC20ApproveRestricted.sol/index.ts +0 -5
- package/src/types/contracts/test/mocks/token/ERC20Blocking.sol/ERC20BlockingMock.ts +0 -620
- package/src/types/contracts/test/mocks/token/ERC20Blocking.sol/index.ts +0 -4
- package/src/types/contracts/test/mocks/token/ERC20Fee.sol/TokenFeeMock.ts +0 -595
- package/src/types/contracts/test/mocks/token/ERC20Fee.sol/index.ts +0 -4
- package/src/types/contracts/test/mocks/token/ERC20Mock.ts +0 -695
- package/src/types/contracts/test/mocks/token/ERC20NonCompliant.sol/NonCompliantERC20.ts +0 -105
- package/src/types/contracts/test/mocks/token/ERC20NonCompliant.sol/index.ts +0 -4
- package/src/types/contracts/test/mocks/token/ERC721ReceiverMock.sol/ERC721ReceiverMock.ts +0 -118
- package/src/types/contracts/test/mocks/token/ERC721ReceiverMock.sol/IERC721Receiver.ts +0 -120
- package/src/types/contracts/test/mocks/token/ERC721ReceiverMock.sol/index.ts +0 -5
- package/src/types/contracts/test/mocks/token/StETHMock.ts +0 -618
- package/src/types/contracts/test/mocks/token/WETHMock.ts +0 -488
- package/src/types/contracts/test/mocks/token/index.ts +0 -17
- package/src/types/contracts/test/oracles/CurveLPPriceFeed.t.sol/CurveLPPriceFeedTest.ts +0 -749
- package/src/types/contracts/test/oracles/CurveLPPriceFeed.t.sol/index.ts +0 -4
- package/src/types/contracts/test/oracles/LPPriceFeed.t.sol/LPPriceFeedTest.ts +0 -617
- package/src/types/contracts/test/oracles/LPPriceFeed.t.sol/index.ts +0 -4
- package/src/types/contracts/test/oracles/PriceOracle.t.sol/PriceOracleTest.ts +0 -758
- package/src/types/contracts/test/oracles/PriceOracle.t.sol/index.ts +0 -4
- package/src/types/contracts/test/oracles/YearnPriceFeed.t.sol/YearnFeedTest.ts +0 -595
- package/src/types/contracts/test/oracles/YearnPriceFeed.t.sol/index.ts +0 -4
- package/src/types/contracts/test/oracles/ZeroPriceFeed.t.sol/ZeroFeedTest.ts +0 -503
- package/src/types/contracts/test/oracles/ZeroPriceFeed.t.sol/index.ts +0 -4
- package/src/types/contracts/test/oracles/index.ts +0 -13
- package/src/types/contracts/test/pathfinder/CurveLPPathFinder.t.sol/CurveLPPathFinderTest.ts +0 -897
- package/src/types/contracts/test/pathfinder/CurveLPPathFinder.t.sol/index.ts +0 -4
- package/src/types/contracts/test/pathfinder/CurvePathFinder.t.sol/CurvePathFinderTest.ts +0 -1058
- package/src/types/contracts/test/pathfinder/CurvePathFinder.t.sol/index.ts +0 -4
- package/src/types/contracts/test/pathfinder/NormalTokenPathFinder.t.sol/NormalTokenPathFinderTest.ts +0 -1243
- package/src/types/contracts/test/pathfinder/NormalTokenPathFinder.t.sol/index.ts +0 -4
- package/src/types/contracts/test/pathfinder/PathFinderTestHelper.ts +0 -815
- package/src/types/contracts/test/pathfinder/SwapPathFinder.t.sol/SwapPathFinderTest.ts +0 -1328
- package/src/types/contracts/test/pathfinder/SwapPathFinder.t.sol/index.ts +0 -4
- package/src/types/contracts/test/pathfinder/UniswapV2PathFinder.t.sol/UniswapV2PathFinderTest.ts +0 -1108
- package/src/types/contracts/test/pathfinder/UniswapV2PathFinder.t.sol/index.ts +0 -4
- package/src/types/contracts/test/pathfinder/UniswapV3PathFinder.t.sol/UniswapV3PathFinderTest.ts +0 -1142
- package/src/types/contracts/test/pathfinder/UniswapV3PathFinder.t.sol/index.ts +0 -4
- package/src/types/contracts/test/pathfinder/YearnPathFinder.t.sol/YearnPathFinderTest.ts +0 -927
- package/src/types/contracts/test/pathfinder/YearnPathFinder.t.sol/index.ts +0 -4
- package/src/types/contracts/test/pathfinder/index.ts +0 -18
- package/src/types/contracts/test/pool/PoolService.t.sol/PoolServiceTest.ts +0 -1671
- package/src/types/contracts/test/pool/PoolService.t.sol/index.ts +0 -4
- package/src/types/contracts/test/pool/index.ts +0 -5
- package/src/types/contracts/test/sigp/AttackingContractNonPayable.sol/AttackContractNonPayable.ts +0 -81
- package/src/types/contracts/test/sigp/AttackingContractNonPayable.sol/index.ts +0 -4
- package/src/types/contracts/test/sigp/DummyMulticallTarget.ts +0 -175
- package/src/types/contracts/test/sigp/FlashLoanAttacker2.ts +0 -240
- package/src/types/contracts/test/sigp/Interfaces.sol/ICrvDeposit.ts +0 -128
- package/src/types/contracts/test/sigp/Interfaces.sol/ICurveGauge.ts +0 -242
- package/src/types/contracts/test/sigp/Interfaces.sol/ICurveVoteEscrow.ts +0 -227
- package/src/types/contracts/test/sigp/Interfaces.sol/IDeposit.ts +0 -371
- package/src/types/contracts/test/sigp/Interfaces.sol/IFeeDistro.ts +0 -104
- package/src/types/contracts/test/sigp/Interfaces.sol/IMinter.ts +0 -95
- package/src/types/contracts/test/sigp/Interfaces.sol/IPools.ts +0 -290
- package/src/types/contracts/test/sigp/Interfaces.sol/IRegistry.ts +0 -189
- package/src/types/contracts/test/sigp/Interfaces.sol/IRewardFactory.ts +0 -310
- package/src/types/contracts/test/sigp/Interfaces.sol/IRewards.ts +0 -395
- package/src/types/contracts/test/sigp/Interfaces.sol/IStaker.ts +0 -652
- package/src/types/contracts/test/sigp/Interfaces.sol/IStash.ts +0 -209
- package/src/types/contracts/test/sigp/Interfaces.sol/IStashFactory.ts +0 -120
- package/src/types/contracts/test/sigp/Interfaces.sol/ITokenFactory.ts +0 -104
- package/src/types/contracts/test/sigp/Interfaces.sol/ITokenMinter.ts +0 -143
- package/src/types/contracts/test/sigp/Interfaces.sol/IVestedEscrow.ts +0 -107
- package/src/types/contracts/test/sigp/Interfaces.sol/IVoting.ts +0 -220
- package/src/types/contracts/test/sigp/Interfaces.sol/IWalletChecker.ts +0 -84
- package/src/types/contracts/test/sigp/Interfaces.sol/index.ts +0 -21
- package/src/types/contracts/test/sigp/NewConvexBaseRewardPoolMock.sol/NewBaseRewardPoolMock.ts +0 -1069
- package/src/types/contracts/test/sigp/NewConvexBaseRewardPoolMock.sol/index.ts +0 -4
- package/src/types/contracts/test/sigp/NewConvexBoosterMock.sol/NewBoosterMock.ts +0 -1002
- package/src/types/contracts/test/sigp/NewConvexBoosterMock.sol/index.ts +0 -4
- package/src/types/contracts/test/sigp/NewCreditConfigurator.ts +0 -1262
- package/src/types/contracts/test/sigp/UniswapHelper.sol/UniswapV3AdapterTestHelper.ts +0 -326
- package/src/types/contracts/test/sigp/UniswapHelper.sol/index.ts +0 -4
- package/src/types/contracts/test/sigp/index.ts +0 -20
- package/src/types/contracts/test/sigp/interfaces/ILockedCvx.ts +0 -832
- package/src/types/contracts/test/sigp/interfaces/index.ts +0 -4
- package/src/types/contracts/test/sigp/stETHMock.sol/StETHMockERC20.ts +0 -725
- package/src/types/contracts/test/sigp/stETHMock.sol/index.ts +0 -4
- package/src/types/contracts/test/suites/BalanceHelper.ts +0 -375
- package/src/types/contracts/test/suites/BaseCreditTestSuite.ts +0 -649
- package/src/types/contracts/test/suites/CreditFacadeHelper.ts +0 -472
- package/src/types/contracts/test/suites/CreditFacadeTestSuite.ts +0 -821
- package/src/types/contracts/test/suites/CreditManagerTestSuite.ts +0 -748
- package/src/types/contracts/test/suites/PoolServiceTestSuite.ts +0 -209
- package/src/types/contracts/test/suites/TokensTestSuite.ts +0 -980
- package/src/types/contracts/test/suites/index.ts +0 -10
- package/src/types/contracts/test/support/PauseMulticall.t.sol/PauseMulticallTest.ts +0 -551
- package/src/types/contracts/test/support/PauseMulticall.t.sol/index.ts +0 -4
- package/src/types/contracts/test/support/index.ts +0 -5
- package/src/types/contracts/test/tokens/DegenNFT.t.sol/DegenNFTTest.ts +0 -970
- package/src/types/contracts/test/tokens/DegenNFT.t.sol/index.ts +0 -4
- package/src/types/contracts/test/tokens/index.ts +0 -5
- package/src/types/contracts/tokens/DegenNFT.ts +0 -967
- package/src/types/contracts/tokens/DieselToken.ts +0 -618
- package/src/types/contracts/tokens/GearToken.ts +0 -994
- package/src/types/contracts/tokens/PhantomERC20.ts +0 -379
- package/src/types/contracts/tokens/index.ts +0 -7
- package/src/types/factories/@chainlink/contracts/index.ts +0 -4
- package/src/types/factories/@chainlink/contracts/src/index.ts +0 -4
- package/src/types/factories/@chainlink/contracts/src/v0.8/index.ts +0 -4
- package/src/types/factories/@chainlink/contracts/src/v0.8/interfaces/AggregatorV3Interface__factory.ts +0 -141
- package/src/types/factories/@chainlink/contracts/src/v0.8/interfaces/index.ts +0 -4
- package/src/types/factories/@chainlink/index.ts +0 -4
- package/src/types/factories/@openzeppelin/contracts/access/Ownable__factory.ts +0 -78
- package/src/types/factories/@openzeppelin/contracts/access/index.ts +0 -4
- package/src/types/factories/@openzeppelin/contracts/index.ts +0 -7
- package/src/types/factories/@openzeppelin/contracts/security/Pausable__factory.ts +0 -65
- package/src/types/factories/@openzeppelin/contracts/security/index.ts +0 -4
- package/src/types/factories/@openzeppelin/contracts/token/ERC20/ERC20__factory.ts +0 -349
- package/src/types/factories/@openzeppelin/contracts/token/ERC20/IERC20__factory.ts +0 -206
- package/src/types/factories/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata__factory.ts +0 -248
- package/src/types/factories/@openzeppelin/contracts/token/ERC20/extensions/index.ts +0 -4
- package/src/types/factories/@openzeppelin/contracts/token/ERC20/index.ts +0 -6
- package/src/types/factories/@openzeppelin/contracts/token/ERC721/ERC721__factory.ts +0 -409
- package/src/types/factories/@openzeppelin/contracts/token/ERC721/IERC721Receiver__factory.ts +0 -60
- package/src/types/factories/@openzeppelin/contracts/token/ERC721/IERC721__factory.ts +0 -311
- package/src/types/factories/@openzeppelin/contracts/token/ERC721/extensions/IERC721Metadata__factory.ts +0 -356
- package/src/types/factories/@openzeppelin/contracts/token/ERC721/extensions/index.ts +0 -4
- package/src/types/factories/@openzeppelin/contracts/token/ERC721/index.ts +0 -7
- package/src/types/factories/@openzeppelin/contracts/token/index.ts +0 -5
- package/src/types/factories/@openzeppelin/contracts/utils/index.ts +0 -4
- package/src/types/factories/@openzeppelin/contracts/utils/introspection/ERC165__factory.ts +0 -42
- package/src/types/factories/@openzeppelin/contracts/utils/introspection/IERC165__factory.ts +0 -45
- package/src/types/factories/@openzeppelin/contracts/utils/introspection/index.ts +0 -5
- package/src/types/factories/@openzeppelin/index.ts +0 -4
- package/src/types/factories/contracts/adapters/AbstractAdapter__factory.ts +0 -107
- package/src/types/factories/contracts/adapters/UniversalAdapter__factory.ts +0 -230
- package/src/types/factories/contracts/adapters/convex/ConvexV1_BaseRewardPool.sol/ConvexV1BaseRewardPoolAdapter__factory.ts +0 -806
- package/src/types/factories/contracts/adapters/convex/ConvexV1_BaseRewardPool.sol/index.ts +0 -4
- package/src/types/factories/contracts/adapters/convex/ConvexV1_Booster.sol/ConvexV1BoosterAdapter__factory.ts +0 -533
- package/src/types/factories/contracts/adapters/convex/ConvexV1_Booster.sol/index.ts +0 -4
- package/src/types/factories/contracts/adapters/convex/ConvexV1_ClaimZap.sol/ConvexV1ClaimZapAdapter__factory.ts +0 -254
- package/src/types/factories/contracts/adapters/convex/ConvexV1_ClaimZap.sol/index.ts +0 -4
- package/src/types/factories/contracts/adapters/convex/ConvexV1_StakedPositionToken.sol/ConvexStakedPositionToken__factory.ts +0 -338
- package/src/types/factories/contracts/adapters/convex/ConvexV1_StakedPositionToken.sol/index.ts +0 -4
- package/src/types/factories/contracts/adapters/convex/index.ts +0 -7
- package/src/types/factories/contracts/adapters/curve/CurveV1_2.sol/CurveV1Adapter2Assets__factory.ts +0 -1137
- package/src/types/factories/contracts/adapters/curve/CurveV1_2.sol/index.ts +0 -4
- package/src/types/factories/contracts/adapters/curve/CurveV1_3.sol/CurveV1Adapter3Assets__factory.ts +0 -1137
- package/src/types/factories/contracts/adapters/curve/CurveV1_3.sol/index.ts +0 -4
- package/src/types/factories/contracts/adapters/curve/CurveV1_4.sol/CurveV1Adapter4Assets__factory.ts +0 -1137
- package/src/types/factories/contracts/adapters/curve/CurveV1_4.sol/index.ts +0 -4
- package/src/types/factories/contracts/adapters/curve/CurveV1_Base.sol/CurveV1AdapterBase__factory.ts +0 -1003
- package/src/types/factories/contracts/adapters/curve/CurveV1_Base.sol/index.ts +0 -4
- package/src/types/factories/contracts/adapters/curve/CurveV1_DepositZap.sol/CurveV1AdapterDeposit__factory.ts +0 -998
- package/src/types/factories/contracts/adapters/curve/CurveV1_DepositZap.sol/index.ts +0 -4
- package/src/types/factories/contracts/adapters/curve/CurveV1_stETH.sol/CurveV1AdapterStETH__factory.ts +0 -1124
- package/src/types/factories/contracts/adapters/curve/CurveV1_stETH.sol/index.ts +0 -4
- package/src/types/factories/contracts/adapters/curve/CurveV1_stETHGateway.sol/CurveV1StETHPoolGateway__factory.ts +0 -855
- package/src/types/factories/contracts/adapters/curve/CurveV1_stETHGateway.sol/index.ts +0 -4
- package/src/types/factories/contracts/adapters/curve/index.ts +0 -10
- package/src/types/factories/contracts/adapters/index.ts +0 -10
- package/src/types/factories/contracts/adapters/lido/LidoV1.sol/LidoV1Adapter__factory.ts +0 -558
- package/src/types/factories/contracts/adapters/lido/LidoV1.sol/index.ts +0 -4
- package/src/types/factories/contracts/adapters/lido/LidoV1_WETHGateway.sol/LidoV1Gateway__factory.ts +0 -336
- package/src/types/factories/contracts/adapters/lido/LidoV1_WETHGateway.sol/index.ts +0 -4
- package/src/types/factories/contracts/adapters/lido/index.ts +0 -5
- package/src/types/factories/contracts/adapters/uniswap/UniswapV2.sol/UniswapV2Adapter__factory.ts +0 -1152
- package/src/types/factories/contracts/adapters/uniswap/UniswapV2.sol/index.ts +0 -4
- package/src/types/factories/contracts/adapters/uniswap/UniswapV3.sol/UniswapV3Adapter__factory.ts +0 -473
- package/src/types/factories/contracts/adapters/uniswap/UniswapV3.sol/index.ts +0 -4
- package/src/types/factories/contracts/adapters/uniswap/index.ts +0 -5
- package/src/types/factories/contracts/adapters/yearn/YearnV2.sol/YearnV2Adapter__factory.ts +0 -556
- package/src/types/factories/contracts/adapters/yearn/YearnV2.sol/index.ts +0 -4
- package/src/types/factories/contracts/adapters/yearn/index.ts +0 -4
- package/src/types/factories/contracts/core/ACLTrait__factory.ts +0 -107
- package/src/types/factories/contracts/core/ACL__factory.ts +0 -320
- package/src/types/factories/contracts/core/AccountFactory__factory.ts +0 -479
- package/src/types/factories/contracts/core/AddressProvider__factory.ts +0 -404
- package/src/types/factories/contracts/core/ContractsRegister__factory.ts +0 -357
- package/src/types/factories/contracts/core/DataCompressor__factory.ts +0 -910
- package/src/types/factories/contracts/core/WETHGateway__factory.ts +0 -191
- package/src/types/factories/contracts/core/index.ts +0 -10
- package/src/types/factories/contracts/credit/CreditAccount__factory.ts +0 -263
- package/src/types/factories/contracts/credit/CreditConfigurator__factory.ts +0 -931
- package/src/types/factories/contracts/credit/CreditFacade__factory.ts +0 -1254
- package/src/types/factories/contracts/credit/CreditManager__factory.ts +0 -1180
- package/src/types/factories/contracts/credit/index.ts +0 -7
- package/src/types/factories/contracts/factories/CreditManagerFactory__factory.ts +0 -392
- package/src/types/factories/contracts/factories/GenesisFactory__factory.ts +0 -202
- package/src/types/factories/contracts/factories/PoolFactory__factory.ts +0 -248
- package/src/types/factories/contracts/factories/index.ts +0 -6
- package/src/types/factories/contracts/index.ts +0 -16
- package/src/types/factories/contracts/integrations/convex/IBaseRewardPool__factory.ts +0 -541
- package/src/types/factories/contracts/integrations/convex/IBooster__factory.ts +0 -277
- package/src/types/factories/contracts/integrations/convex/IClaimZap__factory.ts +0 -105
- package/src/types/factories/contracts/integrations/convex/IConvexToken__factory.ts +0 -274
- package/src/types/factories/contracts/integrations/convex/IRewards.sol/IBasicRewards__factory.ts +0 -93
- package/src/types/factories/contracts/integrations/convex/IRewards.sol/IRewards__factory.ts +0 -190
- package/src/types/factories/contracts/integrations/convex/IRewards.sol/index.ts +0 -5
- package/src/types/factories/contracts/integrations/convex/Interfaces.sol/ICrvDeposit__factory.ts +0 -57
- package/src/types/factories/contracts/integrations/convex/Interfaces.sol/ICurveGauge__factory.ts +0 -123
- package/src/types/factories/contracts/integrations/convex/Interfaces.sol/ICurveVoteEscrow__factory.ts +0 -90
- package/src/types/factories/contracts/integrations/convex/Interfaces.sol/IDeposit__factory.ts +0 -230
- package/src/types/factories/contracts/integrations/convex/Interfaces.sol/IFeeDistro__factory.ts +0 -46
- package/src/types/factories/contracts/integrations/convex/Interfaces.sol/IMinter__factory.ts +0 -39
- package/src/types/factories/contracts/integrations/convex/Interfaces.sol/IPools__factory.ts +0 -189
- package/src/types/factories/contracts/integrations/convex/Interfaces.sol/IRegistry__factory.ts +0 -114
- package/src/types/factories/contracts/integrations/convex/Interfaces.sol/IRewardFactory__factory.ts +0 -164
- package/src/types/factories/contracts/integrations/convex/Interfaces.sol/IRewards__factory.ts +0 -190
- package/src/types/factories/contracts/integrations/convex/Interfaces.sol/IStaker__factory.ts +0 -324
- package/src/types/factories/contracts/integrations/convex/Interfaces.sol/IStashFactory__factory.ts +0 -60
- package/src/types/factories/contracts/integrations/convex/Interfaces.sol/IStash__factory.ts +0 -95
- package/src/types/factories/contracts/integrations/convex/Interfaces.sol/ITokenFactory__factory.ts +0 -45
- package/src/types/factories/contracts/integrations/convex/Interfaces.sol/ITokenMinter__factory.ts +0 -62
- package/src/types/factories/contracts/integrations/convex/Interfaces.sol/IVestedEscrow__factory.ts +0 -50
- package/src/types/factories/contracts/integrations/convex/Interfaces.sol/IVoting__factory.ts +0 -131
- package/src/types/factories/contracts/integrations/convex/Interfaces.sol/IWalletChecker__factory.ts +0 -45
- package/src/types/factories/contracts/integrations/convex/Interfaces.sol/index.ts +0 -21
- package/src/types/factories/contracts/integrations/convex/index.ts +0 -9
- package/src/types/factories/contracts/integrations/curve/ICRVToken__factory.ts +0 -270
- package/src/types/factories/contracts/integrations/curve/ICurvePoolStETH__factory.ts +0 -478
- package/src/types/factories/contracts/integrations/curve/ICurvePool_2.sol/ICurvePool2Assets__factory.ts +0 -717
- package/src/types/factories/contracts/integrations/curve/ICurvePool_2.sol/index.ts +0 -4
- package/src/types/factories/contracts/integrations/curve/ICurvePool_3.sol/ICurvePool3Assets__factory.ts +0 -717
- package/src/types/factories/contracts/integrations/curve/ICurvePool_3.sol/index.ts +0 -4
- package/src/types/factories/contracts/integrations/curve/ICurvePool_4.sol/ICurvePool4Assets__factory.ts +0 -717
- package/src/types/factories/contracts/integrations/curve/ICurvePool_4.sol/index.ts +0 -4
- package/src/types/factories/contracts/integrations/curve/ICurvePool__factory.ts +0 -571
- package/src/types/factories/contracts/integrations/curve/ICurveRegistry__factory.ts +0 -83
- package/src/types/factories/contracts/integrations/curve/index.ts +0 -10
- package/src/types/factories/contracts/integrations/index.ts +0 -8
- package/src/types/factories/contracts/integrations/lido/ILidoOracle__factory.ts +0 -49
- package/src/types/factories/contracts/integrations/lido/IstETH.sol/IstETHGetters__factory.ts +0 -344
- package/src/types/factories/contracts/integrations/lido/IstETH.sol/IstETH__factory.ts +0 -360
- package/src/types/factories/contracts/integrations/lido/IstETH.sol/index.ts +0 -5
- package/src/types/factories/contracts/integrations/lido/index.ts +0 -5
- package/src/types/factories/contracts/integrations/uniswap/IQuoter__factory.ts +0 -152
- package/src/types/factories/contracts/integrations/uniswap/IUniswapV2Router01__factory.ts +0 -775
- package/src/types/factories/contracts/integrations/uniswap/IUniswapV2Router02__factory.ts +0 -977
- package/src/types/factories/contracts/integrations/uniswap/IUniswapV3.sol/ISwapRouter__factory.ts +0 -240
- package/src/types/factories/contracts/integrations/uniswap/IUniswapV3.sol/index.ts +0 -4
- package/src/types/factories/contracts/integrations/uniswap/IUniswapV3SwapCallback__factory.ts +0 -53
- package/src/types/factories/contracts/integrations/uniswap/index.ts +0 -8
- package/src/types/factories/contracts/integrations/yearn/IYVault__factory.ts +0 -415
- package/src/types/factories/contracts/integrations/yearn/index.ts +0 -4
- package/src/types/factories/contracts/interfaces/IACL.sol/IACLEvents__factory.ts +0 -78
- package/src/types/factories/contracts/interfaces/IACL.sol/IACL__factory.ts +0 -145
- package/src/types/factories/contracts/interfaces/IACL.sol/index.ts +0 -5
- package/src/types/factories/contracts/interfaces/IAccountFactory.sol/IAccountFactoryEvents__factory.ts +0 -107
- package/src/types/factories/contracts/interfaces/IAccountFactory.sol/IAccountFactoryGetters__factory.ts +0 -120
- package/src/types/factories/contracts/interfaces/IAccountFactory.sol/IAccountFactory__factory.ts +0 -243
- package/src/types/factories/contracts/interfaces/IAccountFactory.sol/index.ts +0 -6
- package/src/types/factories/contracts/interfaces/IAddressProvider.sol/IAddressProviderEvents__factory.ts +0 -49
- package/src/types/factories/contracts/interfaces/IAddressProvider.sol/IAddressProvider__factory.ts +0 -175
- package/src/types/factories/contracts/interfaces/IAddressProvider.sol/index.ts +0 -5
- package/src/types/factories/contracts/interfaces/IContractsRegister.sol/IContractsRegisterEvents__factory.ts +0 -56
- package/src/types/factories/contracts/interfaces/IContractsRegister.sol/IContractsRegister__factory.ts +0 -193
- package/src/types/factories/contracts/interfaces/IContractsRegister.sol/index.ts +0 -5
- package/src/types/factories/contracts/interfaces/ICreditAccount.sol/ICrediAccountExceptions__factory.ts +0 -40
- package/src/types/factories/contracts/interfaces/ICreditAccount.sol/ICreditAccount__factory.ts +0 -227
- package/src/types/factories/contracts/interfaces/ICreditAccount.sol/index.ts +0 -5
- package/src/types/factories/contracts/interfaces/ICreditConfigurator.sol/ICreditConfiguratorEvents__factory.ts +0 -293
- package/src/types/factories/contracts/interfaces/ICreditConfigurator.sol/ICreditConfiguratorExceptions__factory.ts +0 -90
- package/src/types/factories/contracts/interfaces/ICreditConfigurator.sol/ICreditConfigurator__factory.ts +0 -495
- package/src/types/factories/contracts/interfaces/ICreditConfigurator.sol/index.ts +0 -6
- package/src/types/factories/contracts/interfaces/ICreditFacade.sol/ICreditFacadeEvents__factory.ts +0 -302
- package/src/types/factories/contracts/interfaces/ICreditFacade.sol/ICreditFacadeExceptions__factory.ts +0 -176
- package/src/types/factories/contracts/interfaces/ICreditFacade.sol/ICreditFacadeExtended__factory.ts +0 -61
- package/src/types/factories/contracts/interfaces/ICreditFacade.sol/ICreditFacade__factory.ts +0 -972
- package/src/types/factories/contracts/interfaces/ICreditFacade.sol/index.ts +0 -7
- package/src/types/factories/contracts/interfaces/ICreditManagerV2.sol/ICreditManagerV2Events__factory.ts +0 -62
- package/src/types/factories/contracts/interfaces/ICreditManagerV2.sol/ICreditManagerV2Exceptions__factory.ts +0 -95
- package/src/types/factories/contracts/interfaces/ICreditManagerV2.sol/ICreditManagerV2__factory.ts +0 -928
- package/src/types/factories/contracts/interfaces/ICreditManagerV2.sol/index.ts +0 -6
- package/src/types/factories/contracts/interfaces/IDataCompressor.sol/IDataCompressorExceptions__factory.ts +0 -40
- package/src/types/factories/contracts/interfaces/IDataCompressor.sol/IDataCompressor__factory.ts +0 -790
- package/src/types/factories/contracts/interfaces/IDataCompressor.sol/index.ts +0 -5
- package/src/types/factories/contracts/interfaces/IDegenNFT.sol/IDegenNFTExceptions__factory.ts +0 -46
- package/src/types/factories/contracts/interfaces/IDegenNFT.sol/IDegenNFT__factory.ts +0 -134
- package/src/types/factories/contracts/interfaces/IDegenNFT.sol/index.ts +0 -5
- package/src/types/factories/contracts/interfaces/IGearToken__factory.ts +0 -346
- package/src/types/factories/contracts/interfaces/IInterestRateModel__factory.ts +0 -63
- package/src/types/factories/contracts/interfaces/ILPPriceFeed.sol/ILPPriceFeedEvents__factory.ts +0 -45
- package/src/types/factories/contracts/interfaces/ILPPriceFeed.sol/ILPPriceFeedExceptions__factory.ts +0 -40
- package/src/types/factories/contracts/interfaces/ILPPriceFeed.sol/ILPPriceFeed__factory.ts +0 -244
- package/src/types/factories/contracts/interfaces/ILPPriceFeed.sol/index.ts +0 -6
- package/src/types/factories/contracts/interfaces/IMerkleDistributor__factory.ts +0 -124
- package/src/types/factories/contracts/interfaces/IPhantomERC20__factory.ts +0 -261
- package/src/types/factories/contracts/interfaces/IPoolService.sol/IPoolServiceEvents__factory.ts +0 -222
- package/src/types/factories/contracts/interfaces/IPoolService.sol/IPoolService__factory.ts +0 -581
- package/src/types/factories/contracts/interfaces/IPoolService.sol/index.ts +0 -5
- package/src/types/factories/contracts/interfaces/IPriceFeedAddress__factory.ts +0 -104
- package/src/types/factories/contracts/interfaces/IPriceFeedType__factory.ts +0 -52
- package/src/types/factories/contracts/interfaces/IPriceOracle.sol/IPriceOracleV2Events__factory.ts +0 -49
- package/src/types/factories/contracts/interfaces/IPriceOracle.sol/IPriceOracleV2Exceptions__factory.ts +0 -45
- package/src/types/factories/contracts/interfaces/IPriceOracle.sol/IPriceOracleV2Ext__factory.ts +0 -274
- package/src/types/factories/contracts/interfaces/IPriceOracle.sol/IPriceOracleV2__factory.ts +0 -256
- package/src/types/factories/contracts/interfaces/IPriceOracle.sol/index.ts +0 -7
- package/src/types/factories/contracts/interfaces/IVersion__factory.ts +0 -39
- package/src/types/factories/contracts/interfaces/IWETHGateway__factory.ts +0 -90
- package/src/types/factories/contracts/interfaces/V1/ICreditFilter__factory.ts +0 -704
- package/src/types/factories/contracts/interfaces/V1/ICreditManager__factory.ts +0 -773
- package/src/types/factories/contracts/interfaces/V1/IPriceOracle.sol/IPriceOracleV2__factory.ts +0 -116
- package/src/types/factories/contracts/interfaces/V1/IPriceOracle.sol/index.ts +0 -4
- package/src/types/factories/contracts/interfaces/V1/index.ts +0 -6
- package/src/types/factories/contracts/interfaces/adapters/IAdapter.sol/IAdapterExceptions__factory.ts +0 -37
- package/src/types/factories/contracts/interfaces/adapters/IAdapter.sol/IAdapter__factory.ts +0 -102
- package/src/types/factories/contracts/interfaces/adapters/IAdapter.sol/index.ts +0 -5
- package/src/types/factories/contracts/interfaces/adapters/IUniversalAdapter.sol/IUniversalAdapterExceptions__factory.ts +0 -46
- package/src/types/factories/contracts/interfaces/adapters/IUniversalAdapter.sol/IUniversalAdapter__factory.ts +0 -173
- package/src/types/factories/contracts/interfaces/adapters/IUniversalAdapter.sol/index.ts +0 -5
- package/src/types/factories/contracts/interfaces/adapters/convex/IConvexV1BaseRewardPoolAdapter.sol/IConvexV1BaseRewardPoolAdapterErrors__factory.ts +0 -43
- package/src/types/factories/contracts/interfaces/adapters/convex/IConvexV1BaseRewardPoolAdapter.sol/IConvexV1BaseRewardPoolAdapter__factory.ts +0 -723
- package/src/types/factories/contracts/interfaces/adapters/convex/IConvexV1BaseRewardPoolAdapter.sol/index.ts +0 -5
- package/src/types/factories/contracts/interfaces/adapters/convex/IConvexV1BoosterAdapter__factory.ts +0 -377
- package/src/types/factories/contracts/interfaces/adapters/convex/index.ts +0 -5
- package/src/types/factories/contracts/interfaces/adapters/curve/ICurveV1Adapter.sol/ICurveV1AdapterExceptions__factory.ts +0 -35
- package/src/types/factories/contracts/interfaces/adapters/curve/ICurveV1Adapter.sol/ICurveV1Adapter__factory.ts +0 -900
- package/src/types/factories/contracts/interfaces/adapters/curve/ICurveV1Adapter.sol/index.ts +0 -5
- package/src/types/factories/contracts/interfaces/adapters/curve/index.ts +0 -4
- package/src/types/factories/contracts/interfaces/adapters/index.ts +0 -9
- package/src/types/factories/contracts/interfaces/adapters/lido/ILidoV1Adapter.sol/ILidoV1AdapterEvents__factory.ts +0 -43
- package/src/types/factories/contracts/interfaces/adapters/lido/ILidoV1Adapter.sol/ILidoV1AdapterExceptions__factory.ts +0 -35
- package/src/types/factories/contracts/interfaces/adapters/lido/ILidoV1Adapter.sol/ILidoV1Adapter__factory.ts +0 -324
- package/src/types/factories/contracts/interfaces/adapters/lido/ILidoV1Adapter.sol/index.ts +0 -6
- package/src/types/factories/contracts/interfaces/adapters/lido/index.ts +0 -4
- package/src/types/factories/contracts/interfaces/adapters/uniswap/IUniswapV2Adapter__factory.ts +0 -1082
- package/src/types/factories/contracts/interfaces/adapters/uniswap/IUniswapV3Adapter.sol/IUniswapV3AdapterExceptions__factory.ts +0 -35
- package/src/types/factories/contracts/interfaces/adapters/uniswap/IUniswapV3Adapter.sol/IUniswapV3Adapter__factory.ts +0 -408
- package/src/types/factories/contracts/interfaces/adapters/uniswap/IUniswapV3Adapter.sol/index.ts +0 -5
- package/src/types/factories/contracts/interfaces/adapters/uniswap/index.ts +0 -5
- package/src/types/factories/contracts/interfaces/external/IWETH__factory.ts +0 -67
- package/src/types/factories/contracts/interfaces/external/index.ts +0 -4
- package/src/types/factories/contracts/interfaces/index.ts +0 -27
- package/src/types/factories/contracts/libraries/Errors__factory.ts +0 -488
- package/src/types/factories/contracts/libraries/index.ts +0 -4
- package/src/types/factories/contracts/oracles/LPPriceFeed__factory.ts +0 -350
- package/src/types/factories/contracts/oracles/PriceFeedChecker__factory.ts +0 -77
- package/src/types/factories/contracts/oracles/PriceOracle__factory.ts +0 -458
- package/src/types/factories/contracts/oracles/ZeroPriceFeed__factory.ts +0 -204
- package/src/types/factories/contracts/oracles/curve/AbstractCurveLPPriceFeed__factory.ts +0 -380
- package/src/types/factories/contracts/oracles/curve/CurveLP2PriceFeed__factory.ts +0 -493
- package/src/types/factories/contracts/oracles/curve/CurveLP3PriceFeed__factory.ts +0 -515
- package/src/types/factories/contracts/oracles/curve/CurveLP4PriceFeed__factory.ts +0 -537
- package/src/types/factories/contracts/oracles/curve/index.ts +0 -7
- package/src/types/factories/contracts/oracles/index.ts +0 -9
- package/src/types/factories/contracts/oracles/yearn/YearnPriceFeed__factory.ts +0 -462
- package/src/types/factories/contracts/oracles/yearn/index.ts +0 -4
- package/src/types/factories/contracts/pathfinder/ConvexPathFinder__factory.ts +0 -224
- package/src/types/factories/contracts/pathfinder/CurveLPPathFinder__factory.ts +0 -323
- package/src/types/factories/contracts/pathfinder/CurvePathFinder__factory.ts +0 -443
- package/src/types/factories/contracts/pathfinder/ISwapper__factory.ts +0 -226
- package/src/types/factories/contracts/pathfinder/NormalTokenPathFinder__factory.ts +0 -623
- package/src/types/factories/contracts/pathfinder/SwapPathFinder__factory.ts +0 -443
- package/src/types/factories/contracts/pathfinder/UniswapV2PathFinder__factory.ts +0 -395
- package/src/types/factories/contracts/pathfinder/UniswapV3PathFinder__factory.ts +0 -516
- package/src/types/factories/contracts/pathfinder/YearnPathFinder__factory.ts +0 -181
- package/src/types/factories/contracts/pathfinder/data/Balances.sol/BalanceOps__factory.ts +0 -73
- package/src/types/factories/contracts/pathfinder/data/Balances.sol/index.ts +0 -4
- package/src/types/factories/contracts/pathfinder/data/index.ts +0 -4
- package/src/types/factories/contracts/pathfinder/index.ts +0 -13
- package/src/types/factories/contracts/pool/LinearInterestRateModel__factory.ts +0 -249
- package/src/types/factories/contracts/pool/PoolService__factory.ts +0 -917
- package/src/types/factories/contracts/pool/index.ts +0 -5
- package/src/types/factories/contracts/support/ContractUpgrader__factory.ts +0 -130
- package/src/types/factories/contracts/support/MerkleDistributor__factory.ts +0 -191
- package/src/types/factories/contracts/support/MultiCall.sol/Multicall2__factory.ts +0 -373
- package/src/types/factories/contracts/support/MultiCall.sol/index.ts +0 -4
- package/src/types/factories/contracts/support/PauseMulticall__factory.ts +0 -206
- package/src/types/factories/contracts/support/index.ts +0 -7
- package/src/types/factories/contracts/test/Playground.t.sol/PlaygroundTest__factory.ts +0 -370
- package/src/types/factories/contracts/test/Playground.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/adapters/AbstractAdapter.t.sol/AbstractAdapterTest__factory.ts +0 -966
- package/src/types/factories/contracts/test/adapters/AbstractAdapter.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/adapters/AdapterTestHelper__factory.ts +0 -740
- package/src/types/factories/contracts/test/adapters/ConvexAdapterHelper__factory.ts +0 -1190
- package/src/types/factories/contracts/test/adapters/ConvexV1_BaseRewardPool.t.sol/ConvexV1AdapterBasePoolTest__factory.ts +0 -1280
- package/src/types/factories/contracts/test/adapters/ConvexV1_BaseRewardPool.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/adapters/ConvexV1_Booster.t.sol/ConvexV1AdapterBoosterTest__factory.ts +0 -1250
- package/src/types/factories/contracts/test/adapters/ConvexV1_Booster.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/adapters/ConvexV1_ClaimZap.t.sol/ConvexV1ClaimZapAdapterTest__factory.ts +0 -1245
- package/src/types/factories/contracts/test/adapters/ConvexV1_ClaimZap.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/adapters/CurveV1AdapterBaseMetapoolTest.t.sol/CurveV1AdapterBaseMetaPoolTest__factory.ts +0 -819
- package/src/types/factories/contracts/test/adapters/CurveV1AdapterBaseMetapoolTest.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/adapters/CurveV1AdapterBaseTest.t.sol/CurveV1AdapterBaseTest__factory.ts +0 -899
- package/src/types/factories/contracts/test/adapters/CurveV1AdapterBaseTest.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/adapters/CurveV1AdapterHelper__factory.ts +0 -749
- package/src/types/factories/contracts/test/adapters/CurveV1Adapter_2AssetsTest.t.sol/CurveV1Adapter2AssetsTest__factory.ts +0 -831
- package/src/types/factories/contracts/test/adapters/CurveV1Adapter_2AssetsTest.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/adapters/CurveV1Adapter_3AssetsTest.t.sol/CurveV1Adapter3AssetsTest__factory.ts +0 -831
- package/src/types/factories/contracts/test/adapters/CurveV1Adapter_3AssetsTest.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/adapters/CurveV1Adapter_4AssetsTest.t.sol/CurveV1Adapter4AssetsTest__factory.ts +0 -838
- package/src/types/factories/contracts/test/adapters/CurveV1Adapter_4AssetsTest.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/adapters/CurveV1StETHTest.t.sol/CurveV1StEthAdapterTest__factory.ts +0 -850
- package/src/types/factories/contracts/test/adapters/CurveV1StETHTest.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/adapters/LidoV1Adapter.t.sol/LidoV1AdapterTest__factory.ts +0 -884
- package/src/types/factories/contracts/test/adapters/LidoV1Adapter.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/adapters/UniswapV2Adapter.t.sol/UniswapV2AdapterTest__factory.ts +0 -913
- package/src/types/factories/contracts/test/adapters/UniswapV2Adapter.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/adapters/UniswapV3Adapter.t.sol/UniswapV3AdapterTest__factory.ts +0 -846
- package/src/types/factories/contracts/test/adapters/UniswapV3Adapter.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/adapters/YearnV2Adapter.t.sol/YearnV2AdapterTest__factory.ts +0 -918
- package/src/types/factories/contracts/test/adapters/YearnV2Adapter.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/adapters/index.ts +0 -20
- package/src/types/factories/contracts/test/core/ACL.t.sol/ACLTest__factory.ts +0 -457
- package/src/types/factories/contracts/test/core/ACL.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/core/AddressProvider.t.sol/AddressProviderTest__factory.ts +0 -466
- package/src/types/factories/contracts/test/core/AddressProvider.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/core/index.ts +0 -5
- package/src/types/factories/contracts/test/credit/CreditConfigurator.t.sol/CreditConfiguratorTest__factory.ts +0 -1048
- package/src/types/factories/contracts/test/credit/CreditConfigurator.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/credit/CreditFacade.t.sol/CreditFacadeTest__factory.ts +0 -1368
- package/src/types/factories/contracts/test/credit/CreditFacade.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/credit/CreditManager.t.sol/CreditManagerTest__factory.ts +0 -1003
- package/src/types/factories/contracts/test/credit/CreditManager.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/credit/index.ts +0 -6
- package/src/types/factories/contracts/test/index.ts +0 -17
- package/src/types/factories/contracts/test/lib/cheatCodes.sol/CheatCodes__factory.ts +0 -472
- package/src/types/factories/contracts/test/lib/cheatCodes.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/lib/constants.sol/Roles__factory.ts +0 -358
- package/src/types/factories/contracts/test/lib/constants.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/lib/index.ts +0 -6
- package/src/types/factories/contracts/test/lib/test.sol/DSTest__factory.ts +0 -353
- package/src/types/factories/contracts/test/lib/test.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/mainnet/MainnetTokens.sol/MainnetTokensTestSuite__factory.ts +0 -237
- package/src/types/factories/contracts/test/mainnet/MainnetTokens.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/mainnet/TotalValueCalculator__factory.ts +0 -95
- package/src/types/factories/contracts/test/mainnet/index.ts +0 -5
- package/src/types/factories/contracts/test/mocks/adapters/AdapterMock__factory.ts +0 -373
- package/src/types/factories/contracts/test/mocks/adapters/TargetContractMock__factory.ts +0 -84
- package/src/types/factories/contracts/test/mocks/adapters/index.ts +0 -5
- package/src/types/factories/contracts/test/mocks/core/ACLTraitTest__factory.ts +0 -185
- package/src/types/factories/contracts/test/mocks/core/AddressProviderACLMock__factory.ts +0 -153
- package/src/types/factories/contracts/test/mocks/core/index.ts +0 -5
- package/src/types/factories/contracts/test/mocks/credit/CreditManagerInternal__factory.ts +0 -1395
- package/src/types/factories/contracts/test/mocks/credit/index.ts +0 -4
- package/src/types/factories/contracts/test/mocks/dao/TreasuryMock__factory.ts +0 -79
- package/src/types/factories/contracts/test/mocks/dao/index.ts +0 -4
- package/src/types/factories/contracts/test/mocks/index.ts +0 -12
- package/src/types/factories/contracts/test/mocks/integrations/ConvexBaseRewardPoolMock.sol/BaseRewardPoolMock__factory.ts +0 -763
- package/src/types/factories/contracts/test/mocks/integrations/ConvexBaseRewardPoolMock.sol/IBaseRewardPoolMockEvents__factory.ts +0 -105
- package/src/types/factories/contracts/test/mocks/integrations/ConvexBaseRewardPoolMock.sol/index.ts +0 -5
- package/src/types/factories/contracts/test/mocks/integrations/ConvexBoosterMock.sol/BoosterMock__factory.ts +0 -776
- package/src/types/factories/contracts/test/mocks/integrations/ConvexBoosterMock.sol/IBoosterMockEvents__factory.ts +0 -94
- package/src/types/factories/contracts/test/mocks/integrations/ConvexBoosterMock.sol/index.ts +0 -5
- package/src/types/factories/contracts/test/mocks/integrations/ConvexClaimZapMock.sol/ClaimZapMock__factory.ts +0 -187
- package/src/types/factories/contracts/test/mocks/integrations/ConvexClaimZapMock.sol/IBasicRewards__factory.ts +0 -93
- package/src/types/factories/contracts/test/mocks/integrations/ConvexClaimZapMock.sol/index.ts +0 -5
- package/src/types/factories/contracts/test/mocks/integrations/ConvexExtraRewardPoolMock.sol/ExtraRewardPoolMock__factory.ts +0 -558
- package/src/types/factories/contracts/test/mocks/integrations/ConvexExtraRewardPoolMock.sol/IExtraRewardPoolMockEvents__factory.ts +0 -105
- package/src/types/factories/contracts/test/mocks/integrations/ConvexExtraRewardPoolMock.sol/VirtualBalanceWrapper__factory.ts +0 -186
- package/src/types/factories/contracts/test/mocks/integrations/ConvexExtraRewardPoolMock.sol/index.ts +0 -6
- package/src/types/factories/contracts/test/mocks/integrations/ConvexTokenRewardContractMock.sol/TokenRewardContractMock__factory.ts +0 -345
- package/src/types/factories/contracts/test/mocks/integrations/ConvexTokenRewardContractMock.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/mocks/integrations/CurveV1MetapoolMock__factory.ts +0 -747
- package/src/types/factories/contracts/test/mocks/integrations/CurveV1Mock_2Assets__factory.ts +0 -902
- package/src/types/factories/contracts/test/mocks/integrations/CurveV1Mock_3Assets__factory.ts +0 -902
- package/src/types/factories/contracts/test/mocks/integrations/CurveV1Mock_4Assets__factory.ts +0 -902
- package/src/types/factories/contracts/test/mocks/integrations/CurveV1Mock__factory.ts +0 -756
- package/src/types/factories/contracts/test/mocks/integrations/CurveV1StETHMock__factory.ts +0 -594
- package/src/types/factories/contracts/test/mocks/integrations/LidoMock.sol/ILidoMockEvents__factory.ts +0 -51
- package/src/types/factories/contracts/test/mocks/integrations/LidoMock.sol/LidoMock__factory.ts +0 -525
- package/src/types/factories/contracts/test/mocks/integrations/LidoMock.sol/index.ts +0 -5
- package/src/types/factories/contracts/test/mocks/integrations/UniswapV2Mock__factory.ts +0 -1060
- package/src/types/factories/contracts/test/mocks/integrations/UniswapV3Mock__factory.ts +0 -776
- package/src/types/factories/contracts/test/mocks/integrations/YearnV2Mock__factory.ts +0 -609
- package/src/types/factories/contracts/test/mocks/integrations/index.ts +0 -18
- package/src/types/factories/contracts/test/mocks/libraries/PercentageMathTest__factory.ts +0 -110
- package/src/types/factories/contracts/test/mocks/libraries/WadRayMathTest__factory.ts +0 -248
- package/src/types/factories/contracts/test/mocks/libraries/index.ts +0 -5
- package/src/types/factories/contracts/test/mocks/oracles/LPPriceFeedMock__factory.ts +0 -449
- package/src/types/factories/contracts/test/mocks/oracles/PriceFeedMock__factory.ts +0 -297
- package/src/types/factories/contracts/test/mocks/oracles/index.ts +0 -5
- package/src/types/factories/contracts/test/mocks/pool/CreditManagerMockForPoolTest__factory.ts +0 -194
- package/src/types/factories/contracts/test/mocks/pool/PoolServiceMock__factory.ts +0 -899
- package/src/types/factories/contracts/test/mocks/pool/TestPoolService__factory.ts +0 -976
- package/src/types/factories/contracts/test/mocks/pool/index.ts +0 -6
- package/src/types/factories/contracts/test/mocks/token/CERC20Mock__factory.ts +0 -486
- package/src/types/factories/contracts/test/mocks/token/ERC20ApproveRestricted.sol/ERC20ApproveRestrictedFalse__factory.ts +0 -395
- package/src/types/factories/contracts/test/mocks/token/ERC20ApproveRestricted.sol/ERC20ApproveRestrictedRevert__factory.ts +0 -395
- package/src/types/factories/contracts/test/mocks/token/ERC20ApproveRestricted.sol/index.ts +0 -5
- package/src/types/factories/contracts/test/mocks/token/ERC20Blocking.sol/ERC20BlockingMock__factory.ts +0 -446
- package/src/types/factories/contracts/test/mocks/token/ERC20Blocking.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/mocks/token/ERC20Fee.sol/TokenFeeMock__factory.ts +0 -454
- package/src/types/factories/contracts/test/mocks/token/ERC20Fee.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/mocks/token/ERC20Mock__factory.ts +0 -526
- package/src/types/factories/contracts/test/mocks/token/ERC20NonCompliant.sol/NonCompliantERC20__factory.ts +0 -86
- package/src/types/factories/contracts/test/mocks/token/ERC20NonCompliant.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/mocks/token/ERC721ReceiverMock.sol/ERC721ReceiverMock__factory.ts +0 -96
- package/src/types/factories/contracts/test/mocks/token/ERC721ReceiverMock.sol/IERC721Receiver__factory.ts +0 -60
- package/src/types/factories/contracts/test/mocks/token/ERC721ReceiverMock.sol/index.ts +0 -5
- package/src/types/factories/contracts/test/mocks/token/StETHMock__factory.ts +0 -441
- package/src/types/factories/contracts/test/mocks/token/WETHMock__factory.ts +0 -364
- package/src/types/factories/contracts/test/mocks/token/index.ts +0 -12
- package/src/types/factories/contracts/test/oracles/CurveLPPriceFeed.t.sol/CurveLPPriceFeedTest__factory.ts +0 -543
- package/src/types/factories/contracts/test/oracles/CurveLPPriceFeed.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/oracles/LPPriceFeed.t.sol/LPPriceFeedTest__factory.ts +0 -480
- package/src/types/factories/contracts/test/oracles/LPPriceFeed.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/oracles/PriceOracle.t.sol/PriceOracleTest__factory.ts +0 -511
- package/src/types/factories/contracts/test/oracles/PriceOracle.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/oracles/YearnPriceFeed.t.sol/YearnFeedTest__factory.ts +0 -474
- package/src/types/factories/contracts/test/oracles/YearnPriceFeed.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/oracles/ZeroPriceFeed.t.sol/ZeroFeedTest__factory.ts +0 -422
- package/src/types/factories/contracts/test/oracles/ZeroPriceFeed.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/oracles/index.ts +0 -8
- package/src/types/factories/contracts/test/pathfinder/CurveLPPathFinder.t.sol/CurveLPPathFinderTest__factory.ts +0 -673
- package/src/types/factories/contracts/test/pathfinder/CurveLPPathFinder.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/pathfinder/CurvePathFinder.t.sol/CurvePathFinderTest__factory.ts +0 -750
- package/src/types/factories/contracts/test/pathfinder/CurvePathFinder.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/pathfinder/NormalTokenPathFinder.t.sol/NormalTokenPathFinderTest__factory.ts +0 -839
- package/src/types/factories/contracts/test/pathfinder/NormalTokenPathFinder.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/pathfinder/PathFinderTestHelper__factory.ts +0 -652
- package/src/types/factories/contracts/test/pathfinder/SwapPathFinder.t.sol/SwapPathFinderTest__factory.ts +0 -912
- package/src/types/factories/contracts/test/pathfinder/SwapPathFinder.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/pathfinder/UniswapV2PathFinder.t.sol/UniswapV2PathFinderTest__factory.ts +0 -806
- package/src/types/factories/contracts/test/pathfinder/UniswapV2PathFinder.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/pathfinder/UniswapV3PathFinder.t.sol/UniswapV3PathFinderTest__factory.ts +0 -826
- package/src/types/factories/contracts/test/pathfinder/UniswapV3PathFinder.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/pathfinder/YearnPathFinder.t.sol/YearnPathFinderTest__factory.ts +0 -676
- package/src/types/factories/contracts/test/pathfinder/YearnPathFinder.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/pathfinder/index.ts +0 -11
- package/src/types/factories/contracts/test/pool/PoolService.t.sol/PoolServiceTest__factory.ts +0 -804
- package/src/types/factories/contracts/test/pool/PoolService.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/pool/index.ts +0 -4
- package/src/types/factories/contracts/test/sigp/AttackingContractNonPayable.sol/AttackContractNonPayable__factory.ts +0 -88
- package/src/types/factories/contracts/test/sigp/AttackingContractNonPayable.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/sigp/DummyMulticallTarget__factory.ts +0 -131
- package/src/types/factories/contracts/test/sigp/FlashLoanAttacker2__factory.ts +0 -164
- package/src/types/factories/contracts/test/sigp/Interfaces.sol/ICrvDeposit__factory.ts +0 -57
- package/src/types/factories/contracts/test/sigp/Interfaces.sol/ICurveGauge__factory.ts +0 -123
- package/src/types/factories/contracts/test/sigp/Interfaces.sol/ICurveVoteEscrow__factory.ts +0 -90
- package/src/types/factories/contracts/test/sigp/Interfaces.sol/IDeposit__factory.ts +0 -230
- package/src/types/factories/contracts/test/sigp/Interfaces.sol/IFeeDistro__factory.ts +0 -46
- package/src/types/factories/contracts/test/sigp/Interfaces.sol/IMinter__factory.ts +0 -39
- package/src/types/factories/contracts/test/sigp/Interfaces.sol/IPools__factory.ts +0 -189
- package/src/types/factories/contracts/test/sigp/Interfaces.sol/IRegistry__factory.ts +0 -114
- package/src/types/factories/contracts/test/sigp/Interfaces.sol/IRewardFactory__factory.ts +0 -164
- package/src/types/factories/contracts/test/sigp/Interfaces.sol/IRewards__factory.ts +0 -190
- package/src/types/factories/contracts/test/sigp/Interfaces.sol/IStaker__factory.ts +0 -324
- package/src/types/factories/contracts/test/sigp/Interfaces.sol/IStashFactory__factory.ts +0 -60
- package/src/types/factories/contracts/test/sigp/Interfaces.sol/IStash__factory.ts +0 -95
- package/src/types/factories/contracts/test/sigp/Interfaces.sol/ITokenFactory__factory.ts +0 -45
- package/src/types/factories/contracts/test/sigp/Interfaces.sol/ITokenMinter__factory.ts +0 -62
- package/src/types/factories/contracts/test/sigp/Interfaces.sol/IVestedEscrow__factory.ts +0 -50
- package/src/types/factories/contracts/test/sigp/Interfaces.sol/IVoting__factory.ts +0 -131
- package/src/types/factories/contracts/test/sigp/Interfaces.sol/IWalletChecker__factory.ts +0 -45
- package/src/types/factories/contracts/test/sigp/Interfaces.sol/index.ts +0 -21
- package/src/types/factories/contracts/test/sigp/NewConvexBaseRewardPoolMock.sol/NewBaseRewardPoolMock__factory.ts +0 -767
- package/src/types/factories/contracts/test/sigp/NewConvexBaseRewardPoolMock.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/sigp/NewConvexBoosterMock.sol/NewBoosterMock__factory.ts +0 -776
- package/src/types/factories/contracts/test/sigp/NewConvexBoosterMock.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/sigp/NewCreditConfigurator__factory.ts +0 -922
- package/src/types/factories/contracts/test/sigp/UniswapHelper.sol/UniswapV3AdapterTestHelper__factory.ts +0 -244
- package/src/types/factories/contracts/test/sigp/UniswapHelper.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/sigp/index.ts +0 -13
- package/src/types/factories/contracts/test/sigp/interfaces/ILockedCvx__factory.ts +0 -442
- package/src/types/factories/contracts/test/sigp/interfaces/index.ts +0 -4
- package/src/types/factories/contracts/test/sigp/stETHMock.sol/StETHMockERC20__factory.ts +0 -482
- package/src/types/factories/contracts/test/sigp/stETHMock.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/suites/BalanceHelper__factory.ts +0 -356
- package/src/types/factories/contracts/test/suites/BaseCreditTestSuite__factory.ts +0 -589
- package/src/types/factories/contracts/test/suites/CreditFacadeHelper__factory.ts +0 -421
- package/src/types/factories/contracts/test/suites/CreditFacadeTestSuite__factory.ts +0 -685
- package/src/types/factories/contracts/test/suites/CreditManagerTestSuite__factory.ts +0 -677
- package/src/types/factories/contracts/test/suites/PoolServiceTestSuite__factory.ts +0 -186
- package/src/types/factories/contracts/test/suites/TokensTestSuite__factory.ts +0 -744
- package/src/types/factories/contracts/test/suites/index.ts +0 -10
- package/src/types/factories/contracts/test/support/PauseMulticall.t.sol/PauseMulticallTest__factory.ts +0 -398
- package/src/types/factories/contracts/test/support/PauseMulticall.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/support/index.ts +0 -4
- package/src/types/factories/contracts/test/tokens/DegenNFT.t.sol/DegenNFTTest__factory.ts +0 -560
- package/src/types/factories/contracts/test/tokens/DegenNFT.t.sol/index.ts +0 -4
- package/src/types/factories/contracts/test/tokens/index.ts +0 -4
- package/src/types/factories/contracts/tokens/DegenNFT__factory.ts +0 -699
- package/src/types/factories/contracts/tokens/DieselToken__factory.ts +0 -464
- package/src/types/factories/contracts/tokens/GearToken__factory.ts +0 -719
- package/src/types/factories/contracts/tokens/PhantomERC20__factory.ts +0 -261
- package/src/types/factories/contracts/tokens/index.ts +0 -7
- package/src/types/factories/index.ts +0 -6
- package/src/types/hardhat.d.ts +0 -2715
- package/src/types/index.ts +0 -562
- package/src/utils/errors.ts +0 -11
- package/src/utils/extracter.ts +0 -30
- package/src/utils/formatter.ts +0 -146
- package/src/utils/loading.ts +0 -17
- package/src/utils/mappers.ts +0 -32
- package/src/utils/math.ts +0 -42
- package/src/utils/multicall.ts +0 -80
- package/src/utils/network.ts +0 -28
- package/src/utils/price.ts +0 -33
- package/src/utils/repeater.ts +0 -18
- package/src/utils/types.ts +0 -7
- package/src/utils/validate.ts +0 -8
- package/tsconfig.json +0 -62
|
@@ -1,392 +0,0 @@
|
|
|
1
|
-
/* Autogenerated file. Do not edit manually. */
|
|
2
|
-
/* tslint:disable */
|
|
3
|
-
/* eslint-disable */
|
|
4
|
-
import {
|
|
5
|
-
Signer,
|
|
6
|
-
utils,
|
|
7
|
-
Contract,
|
|
8
|
-
ContractFactory,
|
|
9
|
-
BigNumberish,
|
|
10
|
-
Overrides,
|
|
11
|
-
} from "ethers";
|
|
12
|
-
import type { Provider, TransactionRequest } from "@ethersproject/providers";
|
|
13
|
-
import type {
|
|
14
|
-
CreditManagerFactory,
|
|
15
|
-
CreditManagerFactoryInterface,
|
|
16
|
-
CreditManagerOptsStruct,
|
|
17
|
-
} from "../../../contracts/factories/CreditManagerFactory";
|
|
18
|
-
|
|
19
|
-
const _abi = [
|
|
20
|
-
{
|
|
21
|
-
inputs: [
|
|
22
|
-
{
|
|
23
|
-
internalType: "address",
|
|
24
|
-
name: "_pool",
|
|
25
|
-
type: "address",
|
|
26
|
-
},
|
|
27
|
-
{
|
|
28
|
-
components: [
|
|
29
|
-
{
|
|
30
|
-
internalType: "uint128",
|
|
31
|
-
name: "minBorrowedAmount",
|
|
32
|
-
type: "uint128",
|
|
33
|
-
},
|
|
34
|
-
{
|
|
35
|
-
internalType: "uint128",
|
|
36
|
-
name: "maxBorrowedAmount",
|
|
37
|
-
type: "uint128",
|
|
38
|
-
},
|
|
39
|
-
{
|
|
40
|
-
components: [
|
|
41
|
-
{
|
|
42
|
-
internalType: "address",
|
|
43
|
-
name: "token",
|
|
44
|
-
type: "address",
|
|
45
|
-
},
|
|
46
|
-
{
|
|
47
|
-
internalType: "uint16",
|
|
48
|
-
name: "liquidationThreshold",
|
|
49
|
-
type: "uint16",
|
|
50
|
-
},
|
|
51
|
-
],
|
|
52
|
-
internalType: "struct CollateralToken[]",
|
|
53
|
-
name: "collateralTokens",
|
|
54
|
-
type: "tuple[]",
|
|
55
|
-
},
|
|
56
|
-
{
|
|
57
|
-
internalType: "address",
|
|
58
|
-
name: "degenNFT",
|
|
59
|
-
type: "address",
|
|
60
|
-
},
|
|
61
|
-
{
|
|
62
|
-
internalType: "bool",
|
|
63
|
-
name: "expirable",
|
|
64
|
-
type: "bool",
|
|
65
|
-
},
|
|
66
|
-
],
|
|
67
|
-
internalType: "struct CreditManagerOpts",
|
|
68
|
-
name: "opts",
|
|
69
|
-
type: "tuple",
|
|
70
|
-
},
|
|
71
|
-
{
|
|
72
|
-
internalType: "uint256",
|
|
73
|
-
name: "salt",
|
|
74
|
-
type: "uint256",
|
|
75
|
-
},
|
|
76
|
-
],
|
|
77
|
-
stateMutability: "nonpayable",
|
|
78
|
-
type: "constructor",
|
|
79
|
-
},
|
|
80
|
-
{
|
|
81
|
-
inputs: [],
|
|
82
|
-
name: "RootSelfDestoyException",
|
|
83
|
-
type: "error",
|
|
84
|
-
},
|
|
85
|
-
{
|
|
86
|
-
anonymous: false,
|
|
87
|
-
inputs: [
|
|
88
|
-
{
|
|
89
|
-
indexed: true,
|
|
90
|
-
internalType: "address",
|
|
91
|
-
name: "previousOwner",
|
|
92
|
-
type: "address",
|
|
93
|
-
},
|
|
94
|
-
{
|
|
95
|
-
indexed: true,
|
|
96
|
-
internalType: "address",
|
|
97
|
-
name: "newOwner",
|
|
98
|
-
type: "address",
|
|
99
|
-
},
|
|
100
|
-
],
|
|
101
|
-
name: "OwnershipTransferred",
|
|
102
|
-
type: "event",
|
|
103
|
-
},
|
|
104
|
-
{
|
|
105
|
-
inputs: [
|
|
106
|
-
{
|
|
107
|
-
internalType: "uint256",
|
|
108
|
-
name: "",
|
|
109
|
-
type: "uint256",
|
|
110
|
-
},
|
|
111
|
-
],
|
|
112
|
-
name: "adapters",
|
|
113
|
-
outputs: [
|
|
114
|
-
{
|
|
115
|
-
internalType: "address",
|
|
116
|
-
name: "adapter",
|
|
117
|
-
type: "address",
|
|
118
|
-
},
|
|
119
|
-
{
|
|
120
|
-
internalType: "address",
|
|
121
|
-
name: "targetContract",
|
|
122
|
-
type: "address",
|
|
123
|
-
},
|
|
124
|
-
],
|
|
125
|
-
stateMutability: "view",
|
|
126
|
-
type: "function",
|
|
127
|
-
},
|
|
128
|
-
{
|
|
129
|
-
inputs: [
|
|
130
|
-
{
|
|
131
|
-
components: [
|
|
132
|
-
{
|
|
133
|
-
internalType: "address",
|
|
134
|
-
name: "adapter",
|
|
135
|
-
type: "address",
|
|
136
|
-
},
|
|
137
|
-
{
|
|
138
|
-
internalType: "address",
|
|
139
|
-
name: "targetContract",
|
|
140
|
-
type: "address",
|
|
141
|
-
},
|
|
142
|
-
],
|
|
143
|
-
internalType: "struct Adapter[]",
|
|
144
|
-
name: "_adapters",
|
|
145
|
-
type: "tuple[]",
|
|
146
|
-
},
|
|
147
|
-
],
|
|
148
|
-
name: "addAdapters",
|
|
149
|
-
outputs: [],
|
|
150
|
-
stateMutability: "nonpayable",
|
|
151
|
-
type: "function",
|
|
152
|
-
},
|
|
153
|
-
{
|
|
154
|
-
inputs: [],
|
|
155
|
-
name: "addressProvider",
|
|
156
|
-
outputs: [
|
|
157
|
-
{
|
|
158
|
-
internalType: "contract AddressProvider",
|
|
159
|
-
name: "",
|
|
160
|
-
type: "address",
|
|
161
|
-
},
|
|
162
|
-
],
|
|
163
|
-
stateMutability: "view",
|
|
164
|
-
type: "function",
|
|
165
|
-
},
|
|
166
|
-
{
|
|
167
|
-
inputs: [],
|
|
168
|
-
name: "configure",
|
|
169
|
-
outputs: [],
|
|
170
|
-
stateMutability: "nonpayable",
|
|
171
|
-
type: "function",
|
|
172
|
-
},
|
|
173
|
-
{
|
|
174
|
-
inputs: [],
|
|
175
|
-
name: "creditConfigurator",
|
|
176
|
-
outputs: [
|
|
177
|
-
{
|
|
178
|
-
internalType: "contract CreditConfigurator",
|
|
179
|
-
name: "",
|
|
180
|
-
type: "address",
|
|
181
|
-
},
|
|
182
|
-
],
|
|
183
|
-
stateMutability: "view",
|
|
184
|
-
type: "function",
|
|
185
|
-
},
|
|
186
|
-
{
|
|
187
|
-
inputs: [],
|
|
188
|
-
name: "creditFacade",
|
|
189
|
-
outputs: [
|
|
190
|
-
{
|
|
191
|
-
internalType: "contract CreditFacade",
|
|
192
|
-
name: "",
|
|
193
|
-
type: "address",
|
|
194
|
-
},
|
|
195
|
-
],
|
|
196
|
-
stateMutability: "view",
|
|
197
|
-
type: "function",
|
|
198
|
-
},
|
|
199
|
-
{
|
|
200
|
-
inputs: [],
|
|
201
|
-
name: "creditManager",
|
|
202
|
-
outputs: [
|
|
203
|
-
{
|
|
204
|
-
internalType: "contract CreditManager",
|
|
205
|
-
name: "",
|
|
206
|
-
type: "address",
|
|
207
|
-
},
|
|
208
|
-
],
|
|
209
|
-
stateMutability: "view",
|
|
210
|
-
type: "function",
|
|
211
|
-
},
|
|
212
|
-
{
|
|
213
|
-
inputs: [
|
|
214
|
-
{
|
|
215
|
-
internalType: "bytes",
|
|
216
|
-
name: "bytecode",
|
|
217
|
-
type: "bytes",
|
|
218
|
-
},
|
|
219
|
-
{
|
|
220
|
-
internalType: "uint256",
|
|
221
|
-
name: "_salt",
|
|
222
|
-
type: "uint256",
|
|
223
|
-
},
|
|
224
|
-
],
|
|
225
|
-
name: "deploy",
|
|
226
|
-
outputs: [],
|
|
227
|
-
stateMutability: "payable",
|
|
228
|
-
type: "function",
|
|
229
|
-
},
|
|
230
|
-
{
|
|
231
|
-
inputs: [],
|
|
232
|
-
name: "destoy",
|
|
233
|
-
outputs: [],
|
|
234
|
-
stateMutability: "nonpayable",
|
|
235
|
-
type: "function",
|
|
236
|
-
},
|
|
237
|
-
{
|
|
238
|
-
inputs: [
|
|
239
|
-
{
|
|
240
|
-
internalType: "bytes",
|
|
241
|
-
name: "bytecode",
|
|
242
|
-
type: "bytes",
|
|
243
|
-
},
|
|
244
|
-
{
|
|
245
|
-
internalType: "uint256",
|
|
246
|
-
name: "_salt",
|
|
247
|
-
type: "uint256",
|
|
248
|
-
},
|
|
249
|
-
],
|
|
250
|
-
name: "getAddress",
|
|
251
|
-
outputs: [
|
|
252
|
-
{
|
|
253
|
-
internalType: "address",
|
|
254
|
-
name: "",
|
|
255
|
-
type: "address",
|
|
256
|
-
},
|
|
257
|
-
],
|
|
258
|
-
stateMutability: "view",
|
|
259
|
-
type: "function",
|
|
260
|
-
},
|
|
261
|
-
{
|
|
262
|
-
inputs: [],
|
|
263
|
-
name: "getRootBack",
|
|
264
|
-
outputs: [],
|
|
265
|
-
stateMutability: "nonpayable",
|
|
266
|
-
type: "function",
|
|
267
|
-
},
|
|
268
|
-
{
|
|
269
|
-
inputs: [],
|
|
270
|
-
name: "owner",
|
|
271
|
-
outputs: [
|
|
272
|
-
{
|
|
273
|
-
internalType: "address",
|
|
274
|
-
name: "",
|
|
275
|
-
type: "address",
|
|
276
|
-
},
|
|
277
|
-
],
|
|
278
|
-
stateMutability: "view",
|
|
279
|
-
type: "function",
|
|
280
|
-
},
|
|
281
|
-
{
|
|
282
|
-
inputs: [],
|
|
283
|
-
name: "pool",
|
|
284
|
-
outputs: [
|
|
285
|
-
{
|
|
286
|
-
internalType: "contract PoolService",
|
|
287
|
-
name: "",
|
|
288
|
-
type: "address",
|
|
289
|
-
},
|
|
290
|
-
],
|
|
291
|
-
stateMutability: "view",
|
|
292
|
-
type: "function",
|
|
293
|
-
},
|
|
294
|
-
{
|
|
295
|
-
inputs: [],
|
|
296
|
-
name: "renounceOwnership",
|
|
297
|
-
outputs: [],
|
|
298
|
-
stateMutability: "nonpayable",
|
|
299
|
-
type: "function",
|
|
300
|
-
},
|
|
301
|
-
{
|
|
302
|
-
inputs: [],
|
|
303
|
-
name: "root",
|
|
304
|
-
outputs: [
|
|
305
|
-
{
|
|
306
|
-
internalType: "address",
|
|
307
|
-
name: "",
|
|
308
|
-
type: "address",
|
|
309
|
-
},
|
|
310
|
-
],
|
|
311
|
-
stateMutability: "view",
|
|
312
|
-
type: "function",
|
|
313
|
-
},
|
|
314
|
-
{
|
|
315
|
-
inputs: [
|
|
316
|
-
{
|
|
317
|
-
internalType: "address",
|
|
318
|
-
name: "newOwner",
|
|
319
|
-
type: "address",
|
|
320
|
-
},
|
|
321
|
-
],
|
|
322
|
-
name: "transferOwnership",
|
|
323
|
-
outputs: [],
|
|
324
|
-
stateMutability: "nonpayable",
|
|
325
|
-
type: "function",
|
|
326
|
-
},
|
|
327
|
-
];
|
|
328
|
-
|
|
329
|
-
const _bytecode =
|
|
330
|
-
"0x60e06040523480156200001157600080fd5b5060405162013af238038062013af2833981016040819052620000349162000630565b826001600160a01b0316632954018c6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000073573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000999190620007bf565b620000a433620004ab565b6001600160a01b038116608081905260408051630873769560e01b815290516308737695916004808201926020929091908290030181865afa158015620000ef573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001159190620007bf565b6001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000153573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001799190620007bf565b6001600160a01b0390811660a052841660c0525060405183906200019d9062000519565b6001600160a01b039091168152602001604051809103906000f080158015620001ca573d6000803e3d6000fd5b50600180546001600160a01b0319166001600160a01b0392909216918217905560608301516080840151604051620002029062000527565b6001600160a01b03938416815292909116602083015215156040820152606001604051809103906000f0801580156200023f573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b0392909216919091179055604051600090620002746020820162000535565b601f1982820381018352601f909101166040819052600154600254620002b0926001600160a01b039283169291909116908790602001620007e6565b60408051601f1981840301815290829052620002d09291602001620008e8565b60408051601f19818403018152919052905060006200035982848151602092830120604080517fff00000000000000000000000000000000000000000000000000000000000000818601523060601b6001600160601b03191660218201526035810193909352605580840192909252805180840390920182526075909201909152805191012090565b600154604051634fafc35760e11b81526001600160a01b038084166004830152929350911690639f5f86ae90602401600060405180830381600087803b158015620003a357600080fd5b505af1158015620003b8573d6000803e3d6000fd5b50505050620003ce8284620004fb60201b60201c565b600380546001600160a01b0319166001600160a01b0383811691821790925560015460408051630304b08760e61b81529051919093169263c12c21c09160048083019260209291908290030181865afa15801562000430573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004569190620007bf565b6001600160a01b031614620004a05760405162461bcd60e51b815260206004820152600c60248201526b496e636f727265637420434d60a01b604482015260640160405180910390fd5b505050505062000909565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60008183516020850134f59050803b6200051457600080fd5b505050565b6158e8806200243683390190565b615e978062007d1e83390190565b615f3d806200dbb583390190565b6001600160a01b03811681146200055957600080fd5b50565b8051620005698162000543565b919050565b634e487b7160e01b600052604160045260246000fd5b60405160a081016001600160401b0381118282101715620005a957620005a96200056e565b60405290565b604080519081016001600160401b0381118282101715620005a957620005a96200056e565b604051601f8201601f191681016001600160401b0381118282101715620005ff57620005ff6200056e565b604052919050565b80516001600160801b03811681146200056957600080fd5b805180151581146200056957600080fd5b6000806000606084860312156200064657600080fd5b8351620006538162000543565b602085810151919450906001600160401b03808211156200067357600080fd5b9086019060a082890312156200068857600080fd5b6200069262000584565b6200069d8362000607565b8152620006ac84840162000607565b8482015260408084015183811115620006c457600080fd5b8401601f81018b13620006d657600080fd5b805184811115620006eb57620006eb6200056e565b620006fb878260051b01620005d4565b818152878101955060069190911b82018701908c8211156200071c57600080fd5b918701915b818310156200077e5783838e0312156200073b5760008081fd5b62000745620005af565b8351620007528162000543565b81528389015161ffff811681146200076a5760008081fd5b818a01528652948701949183019162000721565b8484015250620007939050606085016200055c565b6060830152620007a6608085016200061f565b6080830152979097015195989697509495945050505050565b600060208284031215620007d257600080fd5b8151620007df8162000543565b9392505050565b600060018060a01b0380861683526020818616818501526040606081860152610100850160018060801b038088511660608801528084890151166080880152508187015160a080880152818151808452610120890191508583019350600092505b808310156200087857835180518816835286015161ffff168683015292850192600192909201919084019062000847565b5060608901516001600160a01b031660c0890152608090980151151560e0909701969096525094979650505050505050565b6000815160005b81811015620008cd5760208185018101518683015201620008b1565b81811115620008dd576000828601525b509290920192915050565b600062000901620008fa8386620008aa565b84620008aa565b949350505050565b60805160a05160c051611ad3620009636000396000818161010a0152610ea00152600081816103790152610b170152600081816101680152818161068c01528181610a4d01528181610b860152610c190152611ad36000f3fe6080604052600436106100f35760003560e01c80638da5cb5b1161008a578063ebf0c71711610059578063ebf0c71714610367578063f2fde38b1461039b578063f4747c58146103bb578063f9aa028a146103db57600080fd5b80638da5cb5b1461025a57806394ca2cb5146102855780639c4ae2d014610327578063c12c21c01461033a57600080fd5b80633e0b1a23116100c65780633e0b1a23146101ce5780634ef501ac146101e3578063715018a614610230578063805abe6a1461024557600080fd5b806316f0115b146100f85780632954018c146101565780632f7a18811461018a578063318d0d10146101b7575b600080fd5b34801561010457600080fd5b5061012c7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b34801561016257600080fd5b5061012c7f000000000000000000000000000000000000000000000000000000000000000081565b34801561019657600080fd5b5060025461012c9073ffffffffffffffffffffffffffffffffffffffff1681565b3480156101c357600080fd5b506101cc610408565b005b3480156101da57600080fd5b506101cc610498565b3480156101ef57600080fd5b506102036101fe366004611726565b610521565b6040805173ffffffffffffffffffffffffffffffffffffffff93841681529290911660208301520161014d565b34801561023c57600080fd5b506101cc610567565b34801561025157600080fd5b506101cc6105f2565b34801561026657600080fd5b5060005473ffffffffffffffffffffffffffffffffffffffff1661012c565b34801561029157600080fd5b5061012c6102a03660046117e6565b8151602092830120604080517fff00000000000000000000000000000000000000000000000000000000000000818601523060601b7fffffffffffffffffffffffffffffffffffffffff0000000000000000000000001660218201526035810193909352605580840192909252805180840390920182526075909201909152805191012090565b6101cc6103353660046117e6565b6107d8565b34801561034657600080fd5b5060015461012c9073ffffffffffffffffffffffffffffffffffffffff1681565b34801561037357600080fd5b5061012c7f000000000000000000000000000000000000000000000000000000000000000081565b3480156103a757600080fd5b506101cc6103b63660046118c0565b6107f5565b3480156103c757600080fd5b506101cc6103d63660046118e4565b610925565b3480156103e757600080fd5b5060035461012c9073ffffffffffffffffffffffffffffffffffffffff1681565b60005473ffffffffffffffffffffffffffffffffffffffff16331461048e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b610496610a49565b565b60005473ffffffffffffffffffffffffffffffffffffffff163314610519576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610485565b61048e610b82565b6004818154811061053157600080fd5b60009182526020909120600290910201805460019091015473ffffffffffffffffffffffffffffffffffffffff91821692501682565b60005473ffffffffffffffffffffffffffffffffffffffff1633146105e8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610485565b61049660006116b1565b60005473ffffffffffffffffffffffffffffffffffffffff163314610673576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610485565b3073ffffffffffffffffffffffffffffffffffffffff167f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663087376956040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106f5573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071991906119c4565b73ffffffffffffffffffffffffffffffffffffffff16638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610763573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061078791906119c4565b73ffffffffffffffffffffffffffffffffffffffff1614156107d5576040517fbdebb83f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b33ff5b60008183516020850134f59050803b6107f057600080fd5b505050565b60005473ffffffffffffffffffffffffffffffffffffffff163314610876576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610485565b73ffffffffffffffffffffffffffffffffffffffff8116610919576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610485565b610922816116b1565b50565b60005473ffffffffffffffffffffffffffffffffffffffff1633146109a6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610485565b805160005b818110156107f05760048382815181106109c7576109c76119e1565b602090810291909101810151825460018082018555600094855293839020825160029092020180547fffffffffffffffffffffffff000000000000000000000000000000000000000090811673ffffffffffffffffffffffffffffffffffffffff938416178255929093015192840180549092169216919091179055016109ab565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663087376956040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ab6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ada91906119c4565b6040517ff2fde38b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000811660048301529192509082169063f2fde38b90602401600060405180830381600087803b158015610b6757600080fd5b505af1158015610b7b573d6000803e3d6000fd5b5050505050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663c513c9bb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bef573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c1391906119c4565b905060007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663fca513a86040518163ffffffff1660e01b8152600401602060405180830381865afa158015610c82573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ca691906119c4565b60045490915060005b81811015610dd4576003546004805473ffffffffffffffffffffffffffffffffffffffff90921691637bccacee919084908110610cee57610cee6119e1565b906000526020600020906002020160010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660048481548110610d3357610d336119e1565b600091825260209091206002909102015460405160e084901b7fffffffff0000000000000000000000000000000000000000000000000000000016815273ffffffffffffffffffffffffffffffffffffffff928316600482015291166024820152604401600060405180830381600087803b158015610db157600080fd5b505af1158015610dc5573d6000803e3d6000fd5b50505050806001019050610caf565b506001546040517fe26b2f6300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff91821660048201529084169063e26b2f6390602401600060405180830381600087803b158015610e4257600080fd5b505af1158015610e56573d6000803e3d6000fd5b50506001546040517fcf33d95500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff91821660048201527f0000000000000000000000000000000000000000000000000000000000000000909116925063cf33d9559150602401600060405180830381600087803b158015610ee857600080fd5b505af1158015610efc573d6000803e3d6000fd5b50505050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166350e036ff6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f6d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f919190611a10565b905060005b818110156116ab576003546040517f5094cb4f0000000000000000000000000000000000000000000000000000000081526004810183905260009173ffffffffffffffffffffffffffffffffffffffff1690635094cb4f90602401602060405180830381865afa15801561100e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061103291906119c4565b6001546040517ffdd5764500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff80841660048301529293506000929091169063fdd5764590602401602060405180830381865afa1580156110a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110cc91906119c4565b905060008173ffffffffffffffffffffffffffffffffffffffff1663ce30bbdb6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561111b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061113f9190611a29565b9050600c81601081111561115557611155611a4a565b14156116225760008273ffffffffffffffffffffffffffffffffffffffff166320b2c1516040518163ffffffff1660e01b8152600401602060405180830381865afa1580156111a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111cc91906119c4565b905060008373ffffffffffffffffffffffffffffffffffffffff1663927188d96040518163ffffffff1660e01b8152600401602060405180830381865afa15801561121b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061123f91906119c4565b905060008473ffffffffffffffffffffffffffffffffffffffff166399253ac06040518163ffffffff1660e01b8152600401602060405180830381865afa15801561128e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112b291906119c4565b6040517f9dcb511a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8481166004830152919250908a169063e8a97a3e9083908390639dcb511a90602401602060405180830381865afa15801561132c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061135091906119c4565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815273ffffffffffffffffffffffffffffffffffffffff928316600482015291166024820152604401600060405180830381600087803b1580156113bd57600080fd5b505af11580156113d1573d6000803e3d6000fd5b50506040517f9dcb511a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85811660048301528c16925063e8a97a3e915085908390639dcb511a90602401602060405180830381865afa15801561144b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061146f91906119c4565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815273ffffffffffffffffffffffffffffffffffffffff928316600482015291166024820152604401600060405180830381600087803b1580156114dc57600080fd5b505af11580156114f0573d6000803e3d6000fd5b50506003546001546040517f7832743800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff87811660048301529283169450633e7c88d69350879290911690637832743890602401602060405180830381865afa158015611573573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115979190611a79565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815273ffffffffffffffffffffffffffffffffffffffff909216600483015261ffff166024820152604401600060405180830381600087803b15801561160657600080fd5b505af115801561161a573d6000803e3d6000fd5b505050505050505b600d81601081111561163657611636611a4a565b141561169d578173ffffffffffffffffffffffffffffffffffffffff16639b51ecd36040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561168457600080fd5b505af1158015611698573d6000803e3d6000fd5b505050505b836001019350505050610f96565b50505050565b6000805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60006020828403121561173857600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040805190810167ffffffffffffffff811182821017156117915761179161173f565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156117de576117de61173f565b604052919050565b600080604083850312156117f957600080fd5b823567ffffffffffffffff8082111561181157600080fd5b818501915085601f83011261182557600080fd5b81356020828211156118395761183961173f565b611869817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f85011601611797565b9250818352878183860101111561187f57600080fd5b8181850182850137600091830181019190915290969401359450505050565b73ffffffffffffffffffffffffffffffffffffffff8116811461092257600080fd5b6000602082840312156118d257600080fd5b81356118dd8161189e565b9392505050565b600060208083850312156118f757600080fd5b823567ffffffffffffffff8082111561190f57600080fd5b818501915085601f83011261192357600080fd5b8135818111156119355761193561173f565b611943848260051b01611797565b818152848101925060069190911b83018401908782111561196357600080fd5b928401925b818410156119b957604084890312156119815760008081fd5b61198961176e565b84356119948161189e565b8152848601356119a38161189e565b8187015283526040939093019291840191611968565b979650505050505050565b6000602082840312156119d657600080fd5b81516118dd8161189e565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600060208284031215611a2257600080fd5b5051919050565b600060208284031215611a3b57600080fd5b8151601181106118dd57600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b600060208284031215611a8b57600080fd5b815161ffff811681146118dd57600080fdfea264697066735822122090f5e4310a8b66bfdd7fdfbe64bc5b98570e7c1a415ffb0ced3c857cf6c5b14064736f6c634300080a00336101606040526000805462ff00001916620c00001790553480156200002357600080fd5b50604051620058e8380380620058e8833981016040819052620000469162000537565b806001600160a01b0316632954018c6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000085573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000ab919062000537565b6000805460ff191690556001600160a01b038116620000dd57604051635919af9760e11b815260040160405180910390fd5b806001600160a01b031663087376956040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200011c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000142919062000537565b6001600160a01b03166080816001600160a01b031681525050506000816001600160a01b0316632954018c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200019d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001c3919062000537565b6001600160a01b03831661010081905260e081905260408051632495a59960e01b81529051929350600092632495a599916004808201926020929091908290030181865afa1580156200021a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000240919062000537565b6001600160a01b03811660c05290506200025a8162000472565b816001600160a01b0316634c252f916040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000299573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002bf919062000537565b6001600160a01b0316610120816001600160a01b031681525050816001600160a01b03166377532ed96040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000318573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200033e919062000537565b6001600160a01b0316610140816001600160a01b031681525050816001600160a01b031663fca513a86040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000397573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003bd919062000537565b6001600001600a6101000a8154816001600160a01b0302191690836001600160a01b03160217905550816001600160a01b0316639068a8686040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000425573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200044b919062000537565b6001600160a01b031660a0525050600380546001600160a01b031916331790555062000588565b6001600160a01b03811660009081526006602052604090205415620004aa57604051632e5a5c7760e01b815260040160405180910390fd5b61010060055410620004cf57604051631cbbe18560e01b815260040160405180910390fd5b600580546001600160a01b0383166000818152600660209081526040808320600190951b948590558483526004909152812091909155825491929062000515836200055e565b91905055505050565b6001600160a01b03811681146200053457600080fd5b50565b6000602082840312156200054a57600080fd5b815162000557816200051e565b9392505050565b60006000198214156200058157634e487b7160e01b600052601160045260246000fd5b5060010190565b60805160a05160c05160e051610100516101205161014051615248620006a0600039600081816107e20152818161371001526137c501526000818161052f01526136780152600081816103d301528181610e5701528181610ebb015281816124ff0152818161265a01528181612aa101528181612b8c01528181612c4e01528181612d0d0152613b8f015260006105a401526000818161062701528181610d2201528181610db301528181610e0001528181610e3601528181610f3f0152818161203a01528181612b6b015281816130ee015281816134dc015281816135a90152613fe601526000818161081c01528181610fe101526124c20152600081816107a80152818161118401526122cb01526152486000f3fe608060405234801561001057600080fd5b50600436106103415760003560e01c8063830aa745116101bd578063a70bc542116100f9578063e75538c7116100a2578063f9aa028a1161007c578063f9aa028a1461089d578063fdd57645146108bd578063fe47cde7146108f3578063ff6875431461091357600080fd5b8063e75538c714610864578063e958b70414610877578063f67c5bd01461088a57600080fd5b8063db7ceb80116100d3578063db7ceb8014610817578063dc2b21c11461083e578063e1998cf91461085157600080fd5b8063a70bc542146107ca578063c5e10eef146107dd578063d48bfca71461080457600080fd5b806394cf073a116101665780639f5f86ae116101405780639f5f86ae146107745780639fd12b7714610787578063a366f49614610790578063a50cf2c8146107a357600080fd5b806394cf073a146106f557806395373018146107085780639af1d35a1461071b57600080fd5b80638991b2f1116101975780638991b2f1146106af5780638fe3f93f146106cf578063944ac59f146106e257600080fd5b8063830aa7451461066f5780638345f26e146106825780638456cb59146106a757600080fd5b8063458936f51161028c578063570a7af2116102355780636ce4074a1161020f5780636ce4074a146105ef5780636e98e5e41461060f5780636f307dc314610622578063783274381461064957600080fd5b8063570a7af21461059f5780635c975abb146105c6578063654a9eda146105dc57600080fd5b80635063524a116102665780635063524a1461055157806351e3f1601461058457806354fd4d501461059757600080fd5b8063458936f51461050e57806346fb371d146105175780634f0e0ef31461052a57600080fd5b80632630c12f116102ee5780633192195c116102c85780633192195c146104be5780633e8297ca146104e65780633f4ba83a1461050657600080fd5b80632630c12f1461045857806329df0b93146104845780632f7a18811461049757600080fd5b806316f0115b1161031f57806316f0115b146103ce578063172c48c7146103f55780632362a2d81461043757600080fd5b8063055ee9b5146103465780630d8f9cee146103a657806311ca4fc2146103bb575b600080fd5b61037c610354366004614a87565b60026020526000908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b6103b96103b4366004614aa4565b610949565b005b6103b96103c9366004614aa4565b610a76565b61037c7f000000000000000000000000000000000000000000000000000000000000000081565b610408610403366004614add565b610b4e565b6040805173ffffffffffffffffffffffffffffffffffffffff909316835261ffff90911660208301520161039d565b61044a610445366004614b13565b610b66565b60405190815260200161039d565b6001546a0100000000000000000000900473ffffffffffffffffffffffffffffffffffffffff1661037c565b6103b9610492366004614a87565b6110be565b60005461037c906301000000900473ffffffffffffffffffffffffffffffffffffffff1681565b6104d16104cc366004614a87565b611122565b6040805192835260208301919091520161039d565b61044a6104f4366004614a87565b60096020526000908152604090205481565b6103b9611156565b61044a60055481565b6103b9610525366004614b95565b611244565b61037c7f000000000000000000000000000000000000000000000000000000000000000081565b61056461055f366004614be6565b61149b565b60408051948552602085019390935291830152606082015260800161039d565b6103b9610592366004614aa4565b611602565b61044a600281565b61037c7f000000000000000000000000000000000000000000000000000000000000000081565b60005460ff16604051901515815260200161039d565b6103b96105ea366004614c21565b611703565b6106026105fd366004614d40565b611bbb565b60405161039d9190614e5b565b6103b961061d366004614aa4565b611e8e565b61037c7f000000000000000000000000000000000000000000000000000000000000000081565b61065c610657366004614a87565b612036565b60405161ffff909116815260200161039d565b6103b961067d366004614b95565b61210f565b6000546106959062010000900460ff1681565b60405160ff909116815260200161039d565b6103b961229d565b61044a6106bd366004614a87565b60086020526000908152604090205481565b61037c6106dd366004614e6e565b612389565b6103b96106f0366004614ea5565b612718565b61044a610703366004614f0a565b612845565b6103b9610716366004614a87565b612e5a565b6001546040805161ffff808416825262010000840481166020830152640100000000840481169282019290925266010000000000008304821660608201526801000000000000000090920416608082015260a00161039d565b6103b9610782366004614a87565b612f85565b61044a60075481565b6103b961079e366004614add565b613045565b61037c7f000000000000000000000000000000000000000000000000000000000000000081565b6103b96107d8366004614f4c565b61309b565b61037c7f000000000000000000000000000000000000000000000000000000000000000081565b6103b9610812366004614a87565b613221565b61037c7f000000000000000000000000000000000000000000000000000000000000000081565b6103b961084c366004614f81565b61327b565b6103b961085f366004614aa4565b613306565b610408610872366004614add565b6134c9565b61037c610885366004614a87565b613541565b61044a610898366004614a87565b6135a5565b60035461037c9073ffffffffffffffffffffffffffffffffffffffff1681565b61037c6108cb366004614a87565b600b6020526000908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b600c5461037c9073ffffffffffffffffffffffffffffffffffffffff1681565b61037c610921366004614a87565b600a6020526000908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b336000908152600a602052604090205473ffffffffffffffffffffffffffffffffffffffff1615801561099b57506000546301000000900473ffffffffffffffffffffffffffffffffffffffff163314155b156109d2576040517fad40d9e900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600054610100900460ff1615610a14576040517f69bc183d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16610100179055610a4a828261362e565b5050600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055565b60035473ffffffffffffffffffffffffffffffffffffffff163314610ac7576040517feee4716900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000805473ffffffffffffffffffffffffffffffffffffffff9384166301000000027fffffffffffffffffff0000000000000000000000000000000000000000ffffff90911617905560018054919092166a0100000000000000000000027fffff0000000000000000000000000000000000000000ffffffffffffffffffff909116179055565b600080610b5d6001841b6134c9565b91509150915091565b6000805460ff1615610bd9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f5061757361626c653a207061757365640000000000000000000000000000000060448201526064015b60405180910390fd5b600054610100900460ff1615610c1b576040517f69bc183d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080546101007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff90911617908190556301000000900473ffffffffffffffffffffffffffffffffffffffff163314610ca0576040517fd8026b2200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000610cab89613541565b90506000806000806000610cbe86611122565b9094509050610ccf8c8e868461149b565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8b81166004830152939b5093985090955093506000917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa158015610d6b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d8f9190614fa4565b9050610d9b8887614fec565b610da6906001614fec565b811115610de657610de1877f00000000000000000000000000000000000000000000000000000000000000008d60018c8b870303038d61366e565b610e30565b610e3073ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168d8960018a8d01869003016138c0565b610e7e877f00000000000000000000000000000000000000000000000000000000000000007f000000000000000000000000000000000000000000000000000000000000000089600061366e565b6040517fca9505e40000000000000000000000000000000000000000000000000000000081526004810186905260248101859052604481018490527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff169063ca9505e490606401600060405180830381600087803b158015610f1457600080fd5b505af1158015610f28573d6000803e3d6000fd5b50505050505050506001841115610f6757610f67837f00000000000000000000000000000000000000000000000000000000000000008d87600061366e565b73ffffffffffffffffffffffffffffffffffffffff8316600090815260086020526040902054861916610f9c8489888461395b565b6040517f89b77b3e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85811660048301527f000000000000000000000000000000000000000000000000000000000000000016906389b77b3e90602401600060405180830381600087803b15801561102557600080fd5b505af1158015611039573d6000803e3d6000fd5b50505073ffffffffffffffffffffffffffffffffffffffff909c16600090815260026020526040812080547fffffffffffffffffffffffff000000000000000000000000000000000000000016905580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905550929a9950505050505050505050565b6000546301000000900473ffffffffffffffffffffffffffffffffffffffff163314611116576040517fd8026b2200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61111f81613a35565b50565b60008060008061113185613aa6565b91955092509050816111438286615004565b61114d9190615041565b92505050915091565b6040517fd4eb5db00000000000000000000000000000000000000000000000000000000081523360048201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff169063d4eb5db090602401602060405180830381865afa1580156111e0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611204919061507c565b61123a576040517f10332dee00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611242613c24565b565b60005460ff16156112b1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610bd0565b600054610100900460ff16156112f3576040517f69bc183d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16610100178155338152600a602052604090205473ffffffffffffffffffffffffffffffffffffffff9081169084161480159061137457506000546301000000900473ffffffffffffffffffffffffffffffffffffffff163314155b80156113985750600c5473ffffffffffffffffffffffffffffffffffffffff163314155b806113b7575073ffffffffffffffffffffffffffffffffffffffff8316155b156113ee576040517fad40d9e900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6113f7826135a5565b61142d576040517f700ca0af00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061143885613541565b9050611448838583856000613d05565b61146c5761145b83858360006001613d05565b5061146a838583856001613d05565b505b5050600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055505050565b6001546000908190819081906127109061ffff166114b98888615099565b6114c39190615004565b6114cd9190615041565b6114d79086614fec565b935060018760028111156114ed576114ed6150b0565b1415611587576001546000906127109061151390640100000000900461ffff168b615004565b61151d9190615041565b6001549091506127109061153b9062010000900461ffff168b615004565b6115459190615041565b61154f9086614fec565b94508481111561156657600185820303935061156a565b8094505b85811061157b578585039250611581565b84860391505b506115f7565b600287600281111561159b5761159b6150b0565b14156115f157600154600090612710906115c59068010000000000000000900461ffff168b615004565b6115cf9190615041565b6001549091506127109061153b906601000000000000900461ffff168b615004565b84840391505b945094509450949050565b336000908152600a602052604090205473ffffffffffffffffffffffffffffffffffffffff1615801561165457506000546301000000900473ffffffffffffffffffffffffffffffffffffffff163314155b1561168b576040517fad40d9e900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600054610100900460ff16156116cd576040517f69bc183d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16610100179055610a4a8282613ea6565b336000908152600a602052604090205473ffffffffffffffffffffffffffffffffffffffff1615801561175557506000546301000000900473ffffffffffffffffffffffffffffffffffffffff163314155b1561178c576040517fad40d9e900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600054610100900460ff16156117ce576040517f69bc183d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790556118048584613ea6565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8681166004830152600091908616906370a0823190602401602060405180830381865afa158015611874573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118989190614fa4565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff88811660048301529192506000918616906370a0823190602401602060405180830381865afa15801561190a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192e9190614fa4565b60015490915060009081906a0100000000000000000000900473ffffffffffffffffffffffffffffffffffffffff16635cecbd0e61196c8689615099565b8a6119778988615099565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e086901b168152600481019390935273ffffffffffffffffffffffffffffffffffffffff918216602484015260448301528a1660648201526084016040805180830381865afa1580156119f3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a1791906150df565b9150915060018411611a2d57611a2d898961362e565b611a3687612036565b611a449061ffff1682615004565b9050611a4f88612036565b611a5d9061ffff1683615004565b9150818110611a7857611a6f89613a35565b5050505061146c565b73ffffffffffffffffffffffffffffffffffffffff891660009081526009602052604081205483611ab56b033b2e3c9fd0803ce800000085615004565b611abf9190615041565b611ad5906b033b2e3c9fd0803ce8000000615099565b611adf9190614fec565b60015490915061271090611b0a906b033b2e3c9fd0803ce80000009062010000900461ffff16615004565b611b149190615041565b8111611b555773ffffffffffffffffffffffffffffffffffffffff8a166000908152600960205260409020819055611b4b8a613a35565b505050505061146c565b611b5e8a613f56565b50505073ffffffffffffffffffffffffffffffffffffffff871660009081526009602052604090206001905550505050600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055505050565b6060611bc960005460ff1690565b15611c30576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610bd0565b600054610100900460ff1615611c72576040517f69bc183d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16610100178155338152600a602052604090205473ffffffffffffffffffffffffffffffffffffffff908116908416141580611ce7575073ffffffffffffffffffffffffffffffffffffffff8316155b15611d3d57600c5473ffffffffffffffffffffffffffffffffffffffff163314611d3d576040517f5d2e3a7400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000611d4885613541565b90508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167faed1eb34af6acd8c1e3911fb2ebb875a66324b03957886bd002227b17f52ab0360405160405180910390a36040517f1cff79cd00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff821690631cff79cd90611df89087908790600401615103565b6000604051808303816000875af1158015611e17573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052611e5d9190810190615132565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905595945050505050565b60035473ffffffffffffffffffffffffffffffffffffffff163314611edf576040517feee4716900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff821615611f4f5773ffffffffffffffffffffffffffffffffffffffff8281166000908152600a6020526040902080547fffffffffffffffffffffffff0000000000000000000000000000000000000000169183169190911790555b73ffffffffffffffffffffffffffffffffffffffff811615611fbf5773ffffffffffffffffffffffffffffffffffffffff8181166000908152600b6020526040902080547fffffffffffffffffffffffff0000000000000000000000000000000000000000169184169190911790555b73ffffffffffffffffffffffffffffffffffffffff811673cccccccccccccccccccccccccccccccccccccccc141561203257600c80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84161790555b5050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156120ba5750506001547e01000000000000000000000000000000000000000000000000000000000000900461ffff1690565b60006120c5836135a5565b9050806120fe576040517f700ca0af00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b612107816134c9565b949350505050565b60005460ff161561217c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610bd0565b600054610100900460ff16156121be576040517f69bc183d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080546101007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff90911617908190556301000000900473ffffffffffffffffffffffffffffffffffffffff163314612243576040517fd8026b2200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61224d8383613ea6565b61226f73ffffffffffffffffffffffffffffffffffffffff83168585846138c0565b5050600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1690555050565b6040517f3a41ec640000000000000000000000000000000000000000000000000000000081523360048201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1690633a41ec6490602401602060405180830381865afa158015612327573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061234b919061507c565b612381576040517fd794b1e700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6112426142d4565b6000805460ff16156123f7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610bd0565b600054610100900460ff1615612439576040517f69bc183d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080546101007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff90911617908190556301000000900473ffffffffffffffffffffffffffffffffffffffff1633146124be576040517fd8026b2200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166321d18456857f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16630fce70fb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612568573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061258c9190614fa4565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b168152600481019290925260248201526044016020604051808303816000875af11580156125e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061260b91906151a0565b6040517fbf28068b0000000000000000000000000000000000000000000000000000000081526004810186905273ffffffffffffffffffffffffffffffffffffffff80831660248301529192507f00000000000000000000000000000000000000000000000000000000000000009091169063bf28068b90604401600060405180830381600087803b1580156126a057600080fd5b505af11580156126b4573d6000803e3d6000fd5b505050506126c28382614394565b73ffffffffffffffffffffffffffffffffffffffff811660009081526008602052604081206001905580547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff1690559392505050565b60035473ffffffffffffffffffffffffffffffffffffffff163314612769576040517feee4716900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001805461ffff92831668010000000000000000027fffffffffffffffffffffffffffffffffffffffffffff0000ffffffffffffffff9484166601000000000000027fffffffffffffffffffffffffffffffffffffffffffffffff0000ffffffffffff96851664010000000002969096167fffffffffffffffffffffffffffffffffffffffffffffffff00000000ffffffff97851662010000027fffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000000090931694909816939093171794909416949094179190911716919091179055565b6000805460ff16156128b3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610bd0565b600054610100900460ff16156128f5576040517f69bc183d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080546101007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff90911617908190556301000000900473ffffffffffffffffffffffffffffffffffffffff16331461297a576040517fd8026b2200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080600061298887613aa6565b925092509250846129a25761299d8684615099565b6129ac565b6129ac8684614fec565b935060008515612b045769021e19e0c9bab24000008510612a15576129d583603689901c615004565b6129e3603686901c84615004565b6129ed9190614fec565b603686901c6129fc8585615004565b612a069190615004565b612a109190615041565b612a52565b612a1f8388615004565b612a298584615004565b612a339190614fec565b85612a3e8585615004565b612a489190615004565b612a529190615041565b6040517fbf28068b0000000000000000000000000000000000000000000000000000000081526004810189905273ffffffffffffffffffffffffffffffffffffffff8a811660248301529192507f00000000000000000000000000000000000000000000000000000000000000009091169063bf28068b90604401600060405180830381600087803b158015612ae757600080fd5b505af1158015612afb573d6000803e3d6000fd5b50505050612d9f565b60008484612b128583615004565b612b1c9190615041565b612b269190615099565b60015490915060009061271090612b419061ffff1684615004565b612b4b9190615041565b905073ffffffffffffffffffffffffffffffffffffffff8a1663d1660f997f00000000000000000000000000000000000000000000000000000000000000007f000000000000000000000000000000000000000000000000000000000000000084612bb6878f614fec565b612bc09190614fec565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e086901b16815273ffffffffffffffffffffffffffffffffffffffff93841660048201529290911660248301526044820152606401600060405180830381600087803b158015612c3457600080fd5b505af1158015612c48573d6000803e3d6000fd5b505050507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663ca9505e4838b612c949190614fec565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815260048101919091526024810184905260006044820152606401600060405180830381600087803b158015612cf357600080fd5b505af1158015612d07573d6000803e3d6000fd5b505050507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16630fce70fb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612d76573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612d9a9190614fa4565b925050505b6040517f16128211000000000000000000000000000000000000000000000000000000008152600481018690526024810182905273ffffffffffffffffffffffffffffffffffffffff891690631612821190604401600060405180830381600087803b158015612e0e57600080fd5b505af1158015612e22573d6000803e3d6000fd5b5050600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055509498975050505050505050565b336000908152600a602052604090205473ffffffffffffffffffffffffffffffffffffffff16158015612eac57506000546301000000900473ffffffffffffffffffffffffffffffffffffffff163314155b15612ee3576040517fad40d9e900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600054610100900460ff1615612f25576040517f69bc183d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16610100179055612f5a81613f56565b50600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055565b60035473ffffffffffffffffffffffffffffffffffffffff163314612fd6576040517feee4716900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600380547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040517ff62005acebe9b616aefb5f248b48f5e89f28437b27d1eebc0b2d911209f297af90600090a250565b60035473ffffffffffffffffffffffffffffffffffffffff163314613096576040517feee4716900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600755565b60035473ffffffffffffffffffffffffffffffffffffffff1633146130ec576040517feee4716900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415613193576001805461ffff83167e01000000000000000000000000000000000000000000000000000000000000027dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9091161790555050565b600061319e836135a5565b9050806131d7576040517f700ca0af00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000908152600460205260409020805473ffffffffffffffffffffffffffffffffffffffff1675ffff000000000000000000000000000000000000000060a084901b161790555050565b60035473ffffffffffffffffffffffffffffffffffffffff163314613272576040517feee4716900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61111f81614467565b60035473ffffffffffffffffffffffffffffffffffffffff1633146132cc576040517feee4716900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000805460ff90921662010000027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff909216919091179055565b60005460ff1615613373576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610bd0565b600054610100900460ff16156133b5576040517f69bc183d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080546101007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff90911617908190556301000000900473ffffffffffffffffffffffffffffffffffffffff16331461343a576040517fd8026b2200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061344583613541565b73ffffffffffffffffffffffffffffffffffffffff8416600090815260026020526040902080547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055905061349c8282614394565b5050600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff16905550565b60008082600114156135275750506001547f0000000000000000000000000000000000000000000000000000000000000000927e0100000000000000000000000000000000000000000000000000000000000090910461ffff169150565b50506000908152600460205260409020549060a082901c90565b73ffffffffffffffffffffffffffffffffffffffff80821660009081526002602052604090205416806135a0576040517fb5ba4c4d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b919050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16146136255773ffffffffffffffffffffffffffffffffffffffff8216600090815260066020526040902054613628565b60015b92915050565b6000613639826135a5565b73ffffffffffffffffffffffffffffffffffffffff909316600090815260086020526040902080549319939093169092555050565b8080156136c657507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16145b15613828576040517fd1660f9900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85811660048301527f0000000000000000000000000000000000000000000000000000000000000000811660248301526044820184905286169063d1660f9990606401600060405180830381600087803b15801561376357600080fd5b505af1158015613777573d6000803e3d6000fd5b50506040517f5869dba800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8681166004830152602482018690527f0000000000000000000000000000000000000000000000000000000000000000169250635869dba89150604401600060405180830381600087803b15801561380b57600080fd5b505af115801561381f573d6000803e3d6000fd5b505050506138b9565b6040517fd1660f9900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff858116600483015284811660248301526044820184905286169063d1660f9990606401600060405180830381600087803b1580156138a057600080fd5b505af11580156138b4573d6000803e3d6000fd5b505050505b5050505050565b6040805173ffffffffffffffffffffffffffffffffffffffff85811660248301528416604482015260648082018490528251808303909101815260849091019091526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f23b872dd0000000000000000000000000000000000000000000000000000000017905261395590859061455b565b50505050565b60025b8181116138b95781811615613a2d576000613978826134c9565b506040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff88811660048301529192506000918316906370a0823190602401602060405180830381865afa1580156139eb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613a0f9190614fa4565b90506002811115613a2a57613a2a878388600185038961366e565b50505b60011b61395e565b73ffffffffffffffffffffffffffffffffffffffff811660009081526008602052604081205490613a6582614667565b60005490915062010000900460ff16811115613aa1576000613a86836146a7565b613a91906001614fec565b905061395584848460008561470b565b505050565b60008060008373ffffffffffffffffffffffffffffffffffffffff16631afbb7a46040518163ffffffff1660e01b8152600401602060405180830381865afa158015613af6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613b1a9190614fa4565b92508373ffffffffffffffffffffffffffffffffffffffff166317d11a156040518163ffffffff1660e01b8152600401602060405180830381865afa158015613b67573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613b8b9190614fa4565b91507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16630fce70fb6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613bf8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613c1c9190614fa4565b929491935050565b60005460ff16613c90576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610bd0565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a1565b6040805173ffffffffffffffffffffffffffffffffffffffff8681166024830152604480830186905283518084039091018152606490920183526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f095ea7b30000000000000000000000000000000000000000000000000000000017905291517f1cff79cd000000000000000000000000000000000000000000000000000000008152600092861691631cff79cd91613dc6918a91600401615103565b6000604051808303816000875af1925050508015613e2457506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052613e219190810190615132565b60015b613e2d57613e61565b80511580613e50575080806020019051810190613e4a919061507c565b15156001145b15613e5f576001915050613e9d565b505b8115613e99576040517f76e3e29c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5060005b95945050505050565b6000613eb1826135a5565b9050801580613ec35750600754811615155b15613efa576040517f700ca0af00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff83166000908152600860205260409020548116613aa15773ffffffffffffffffffffffffffffffffffffffff83166000908152600860205260409020805482179055505050565b60015473ffffffffffffffffffffffffffffffffffffffff8281166000908152600860205260408120546a010000000000000000000090930490911691908080613f9f86611122565b6040517ff9a650300000000000000000000000000000000000000000000000000000000081526127108202600482015273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000081166024830152919350908716915063f9a6503090604401602060405180830381865afa15801561403a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061405e9190614fa4565b9250614069846146a7565b6001019150506000806000805b848110156142a157801561408f5760018186031b614092565b60015b935086841615614299576000806140a8866134c9565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8e811660048301529294509092506000918416906370a0823190602401602060405180830381865afa15801561411d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906141419190614fa4565b9050600181111561428c576040517ff9a650300000000000000000000000000000000000000000000000000000000081526004810182905273ffffffffffffffffffffffffffffffffffffffff848116602483015261ffff841691908d169063f9a6503090604401602060405180830381865afa1580156141c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906141ea9190614fa4565b6141f49190615004565b6141fe9087614fec565b95508886106142875760006142128b614667565b60005490915062010000900460ff16811115614249576142448d8c836001891561423e57898e0361470b565b8d61470b565b614278565b85156142785773ffffffffffffffffffffffffffffffffffffffff8d1660009081526008602052604090208b90555b50505050505050505050505050565b614295565b98861898600194505b5050505b600101614076565b506040517f532e7bb600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005460ff1615614341576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610bd0565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258613cdb3390565b73ffffffffffffffffffffffffffffffffffffffff821615806143dd575073ffffffffffffffffffffffffffffffffffffffff8281166000908152600260205260409020541615155b15614414576040517f9e59609e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff918216600090815260026020526040902080547fffffffffffffffffffffffff00000000000000000000000000000000000000001691909216179055565b73ffffffffffffffffffffffffffffffffffffffff8116600090815260066020526040902054156144c4576040517f2e5a5c7700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61010060055410614501576040517f1cbbe18500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6005805473ffffffffffffffffffffffffffffffffffffffff83166000818152600660209081526040808320600190951b9485905584835260049091528120919091558254919290614552836151bd565b91905055505050565b60006145bd826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c65648152508573ffffffffffffffffffffffffffffffffffffffff166148799092919063ffffffff16565b805190915015613aa157808060200190518101906145db919061507c565b613aa1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f742073756363656564000000000000000000000000000000000000000000006064820152608401610bd0565b60008060005b6101008110156146a0576001811b91508382161561468c578260010192505b838210614698576146a0565b60010161466d565b5050919050565b600081600114156146ba57506000919050565b61010060015b60016146cc8284614fec565b901c92506001831b848116158015906146e75750600185851c145b156146f257506146a0565b84811061470157839250614705565b8391505b506146c0565b815b81811015614846576001811b8581161561483d57600061472c826134c9565b506040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a811660048301529192506000918316906370a0823190602401602060405180830381865afa15801561479f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906147c39190614fa4565b90506001811161483a57600054978318977fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9097019660ff6201000090910416871161483a5750505073ffffffffffffffffffffffffffffffffffffffff86166000908152600860205260409020859055506138b9565b50505b5060010161470d565b506040517f53275fcb00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60606148888484600085614892565b90505b9392505050565b606082471015614924576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c00000000000000000000000000000000000000000000000000006064820152608401610bd0565b843b61498c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610bd0565b6000808673ffffffffffffffffffffffffffffffffffffffff1685876040516149b591906151f6565b60006040518083038185875af1925050503d80600081146149f2576040519150601f19603f3d011682016040523d82523d6000602084013e6149f7565b606091505b5091509150614a07828286614a12565b979650505050505050565b60608315614a2157508161488b565b825115614a315782518084602001fd5b816040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bd09190614e5b565b73ffffffffffffffffffffffffffffffffffffffff8116811461111f57600080fd5b600060208284031215614a9957600080fd5b813561488b81614a65565b60008060408385031215614ab757600080fd5b8235614ac281614a65565b91506020830135614ad281614a65565b809150509250929050565b600060208284031215614aef57600080fd5b5035919050565b8035600381106135a057600080fd5b801515811461111f57600080fd5b600080600080600080600060e0888a031215614b2e57600080fd5b8735614b3981614a65565b9650614b4760208901614af6565b9550604088013594506060880135614b5e81614a65565b93506080880135614b6e81614a65565b925060a0880135915060c0880135614b8581614b05565b8091505092959891949750929550565b60008060008060808587031215614bab57600080fd5b8435614bb681614a65565b93506020850135614bc681614a65565b92506040850135614bd681614a65565b9396929550929360600135925050565b60008060008060808587031215614bfc57600080fd5b84359350614c0c60208601614af6565b93969395505050506040820135916060013590565b600080600080600060a08688031215614c3957600080fd5b8535614c4481614a65565b94506020860135614c5481614a65565b93506040860135614c6481614a65565b94979396509394606081013594506080013592915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff81118282101715614cf257614cf2614c7c565b604052919050565b600067ffffffffffffffff821115614d1457614d14614c7c565b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b600080600060608486031215614d5557600080fd5b8335614d6081614a65565b92506020840135614d7081614a65565b9150604084013567ffffffffffffffff811115614d8c57600080fd5b8401601f81018613614d9d57600080fd5b8035614db0614dab82614cfa565b614cab565b818152876020838501011115614dc557600080fd5b816020840160208301376000602083830101528093505050509250925092565b60005b83811015614e00578181015183820152602001614de8565b838111156139555750506000910152565b60008151808452614e29816020860160208601614de5565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60208152600061488b6020830184614e11565b60008060408385031215614e8157600080fd5b823591506020830135614ad281614a65565b803561ffff811681146135a057600080fd5b600080600080600060a08688031215614ebd57600080fd5b614ec686614e93565b9450614ed460208701614e93565b9350614ee260408701614e93565b9250614ef060608701614e93565b9150614efe60808701614e93565b90509295509295909350565b600080600060608486031215614f1f57600080fd5b8335614f2a81614a65565b9250602084013591506040840135614f4181614b05565b809150509250925092565b60008060408385031215614f5f57600080fd5b8235614f6a81614a65565b9150614f7860208401614e93565b90509250929050565b600060208284031215614f9357600080fd5b813560ff8116811461488b57600080fd5b600060208284031215614fb657600080fd5b5051919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008219821115614fff57614fff614fbd565b500190565b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561503c5761503c614fbd565b500290565b600082615077577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b60006020828403121561508e57600080fd5b815161488b81614b05565b6000828210156150ab576150ab614fbd565b500390565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b600080604083850312156150f257600080fd5b505080516020909101519092909150565b73ffffffffffffffffffffffffffffffffffffffff831681526040602082015260006148886040830184614e11565b60006020828403121561514457600080fd5b815167ffffffffffffffff81111561515b57600080fd5b8201601f8101841361516c57600080fd5b805161517a614dab82614cfa565b81815285602083850101111561518f57600080fd5b613e9d826020830160208601614de5565b6000602082840312156151b257600080fd5b815161488b81614a65565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156151ef576151ef614fbd565b5060010190565b60008251615208818460208701614de5565b919091019291505056fea26469706673582212209d39bb9d4972b515acdad1ffb757acd15e103ca6ee762f88a6382b36243734ba64736f6c634300080a00336101406040523480156200001257600080fd5b5060405162005e9738038062005e97833981016040819052620000359162000198565b60016000556001600160a01b0383166200006257604051635919af9760e11b815260040160405180910390fd5b6001600160a01b038316608081905260408051636f307dc360e01b81529051636f307dc3916004808201926020929091908290030181865afa158015620000ad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000d39190620001ea565b6001600160a01b031660a0816001600160a01b031681525050826001600160a01b0316634f0e0ef36040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200012b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001519190620001ea565b6001600160a01b0390811660c0529190911660e0819052151561010052151561012052506200020f565b80516001600160a01b03811681146200019357600080fd5b919050565b600080600060608486031215620001ae57600080fd5b620001b9846200017b565b9250620001c9602085016200017b565b915060408401518015158114620001df57600080fd5b809150509250925092565b600060208284031215620001fd57600080fd5b62000208826200017b565b9392505050565b60805160a05160c05160e0516101005161012051615a86620004116000396000818161061101528181612fb5015261481f01526000818161031701528181610dde015281816144f901526146e5015260008181610557015281816146a901526147a901526000818161034b0152818161387d015261392d01526000818161047301528181611bfe0152818161274f0152818161280d0152818161366a01526137dd015260008181610665015281816109d801528181610b0301528181610bd501528181610cdd01528181610e6501528181610fe30152818161114e0152818161120e0152818161132e015281816114510152818161162b01528181611708015281816117e0015281816119e501528181611b1201528181611d9501528181611ed5015281816120040152818161216801528181612290015281816123c601528181612568015281816126390152818161266f0152818161293d01528181612a2101528181612a8a01528181612bde01528181612d2601528181612e6801528181612ec2015281816130a10152818161311b015281816131b401528181613341015281816134c10152818161358a0152818161372f01528181613a1a01528181613b2e01528181613dbb015281816142200152818161432801528181614492015281816148e7015281816149e801528181614aae0152614d8f0152615a866000f3fe6080604052600436106102695760003560e01c8063860aefcf11610153578063c7de38a6116100cb578063dfd594651161007f578063eb9606df11610064578063eb9606df1461081e578063f9eaee0d1461083e578063ffd9b9071461085e57600080fd5b8063dfd59465146107de578063e1f21c67146107fe57600080fd5b8063cff0ab96116100b0578063cff0ab96146106ef578063d9ccbec114610783578063dcf65482146107be57600080fd5b8063c7de38a6146106a7578063caa5c23f146106dc57600080fd5b80639c55a05411610122578063b55bb84b11610107578063b55bb84b14610633578063c12c21c014610653578063c690908a1461068757600080fd5b80639c55a054146105df578063b1836d32146105ff57600080fd5b8063860aefcf146104db5780639408b63f146105455780639b67ab30146105795780639be0536a146105bd57600080fd5b80635d91a0e0116101e65780636d19b486116101b55780637071b7c51161019a5780637071b7c51461049557806379c0ef91146104a857806382871ace146104c857600080fd5b80636d19b486146104415780636f307dc31461046157600080fd5b80635d91a0e0146103e85780635f73fbec146103fb578063601d66f61461040e5780636c8f225d1461042e57600080fd5b80633d9287fa1161023d5780635019e20a116102225780635019e20a1461039257806354fd4d50146103b257806359781034146103d557600080fd5b80633d9287fa146103055780634f0e0ef31461033957600080fd5b8062842b571461026e578063256ac915146102905780632a7ba1f7146102c55780632b7c7b11146102e5575b600080fd5b34801561027a57600080fd5b5061028e6102893660046151bf565b61087e565b005b34801561029c57600080fd5b506102b06102ab3660046151f8565b61098e565b60405190151581526020015b60405180910390f35b3480156102d157600080fd5b5061028e6102e0366004615215565b610a61565b3480156102f157600080fd5b5061028e610300366004615215565b610c3b565b34801561031157600080fd5b506102b07f000000000000000000000000000000000000000000000000000000000000000081565b34801561034557600080fd5b5061036d7f000000000000000000000000000000000000000000000000000000000000000081565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016102bc565b34801561039e57600080fd5b5061028e6103ad3660046151f8565b610d6a565b3480156103be57600080fd5b506103c7600281565b6040519081526020016102bc565b61028e6103e336600461522e565b61108c565b61028e6103f63660046152bb565b611275565b61028e610409366004615340565b611589565b34801561041a57600080fd5b5061028e6104293660046153d8565b6117de565b61028e61043c36600461541b565b611900565b34801561044d57600080fd5b506102b061045c3660046151f8565b611c31565b34801561046d57600080fd5b5061036d7f000000000000000000000000000000000000000000000000000000000000000081565b61028e6104a336600461546e565b611c60565b3480156104b457600080fd5b5061036d6104c3366004615215565b611f3e565b61028e6104d63660046152bb565b611f4b565b3480156104e757600080fd5b5060025461051c906fffffffffffffffffffffffffffffffff8082169170010000000000000000000000000000000090041682565b604080516fffffffffffffffffffffffffffffffff9384168152929091166020830152016102bc565b34801561055157600080fd5b5061036d7f000000000000000000000000000000000000000000000000000000000000000081565b34801561058557600080fd5b506004546040805167ffffffffffffffff608084901c1681526fffffffffffffffffffffffffffffffff9092166020830152016102bc565b3480156105c957600080fd5b506105d261227d565b6040516102bc91906154e2565b3480156105eb57600080fd5b5061028e6105fa36600461553c565b61228e565b34801561060b57600080fd5b506102b07f000000000000000000000000000000000000000000000000000000000000000081565b34801561063f57600080fd5b5061028e61064e3660046151f8565b6123c4565b34801561065f57600080fd5b5061036d7f000000000000000000000000000000000000000000000000000000000000000081565b34801561069357600080fd5b5061028e6106a23660046151f8565b6124c6565b3480156106b357600080fd5b506106c76106c23660046151f8565b612668565b604080519283526020830191909152016102bc565b61028e6106ea366004615557565b61289b565b3480156106fb57600080fd5b5060015461074e906fffffffffffffffffffffffffffffffff811690700100000000000000000000000000000000810460ff169071010000000000000000000000000000000000900464ffffffffff1683565b604080516fffffffffffffffffffffffffffffffff9094168452911515602084015264ffffffffff16908201526060016102bc565b34801561078f57600080fd5b506102b061079e366004615599565b600360209081526000928352604080842090915290825290205460ff1681565b3480156107ca57600080fd5b5061028e6107d93660046151f8565b612a88565b3480156107ea57600080fd5b506103c76107f93660046151f8565b612b86565b34801561080a57600080fd5b5061028e61081936600461522e565b612c6d565b34801561082a57600080fd5b5061028e6108393660046155c7565b612ec0565b34801561084a57600080fd5b506102b06108593660046151f8565b613057565b34801561086a57600080fd5b5061028e6108793660046155ee565b6131b2565b600260005414156108f0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064015b60405180910390fd5b6002600090815573ffffffffffffffffffffffffffffffffffffffff8316808252600360209081526040808420338086529083529381902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001686151590811790915590519081527f9b3258bc4904fd6426b99843e206c6c7cdb1fd0f040121c25b71dafbb3851ee0910160405180910390a350506001600055565b6040517f055ee9b500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff828116600483015260009182917f0000000000000000000000000000000000000000000000000000000000000000169063055ee9b590602401602060405180830381865afa158015610a1f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a43919061560b565b73ffffffffffffffffffffffffffffffffffffffff16141592915050565b60026000541415610ace576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016108e7565b600260009081556040517fe958b7040000000000000000000000000000000000000000000000000000000081523360048201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff169063e958b70490602401602060405180830381865afa158015610b5f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b83919061560b565b9050610b903382846132eb565b6040517f9537301800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff82811660048301527f000000000000000000000000000000000000000000000000000000000000000016906395373018906024015b600060405180830381600087803b158015610c1a57600080fd5b505af1158015610c2e573d6000803e3d6000fd5b5050600160005550505050565b60026000541415610ca8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016108e7565b600260009081556040517fe958b7040000000000000000000000000000000000000000000000000000000081523360048201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff169063e958b70490602401602060405180830381865afa158015610d39573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d5d919061560b565b9050610b90338284613411565b60026000541415610dd7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016108e7565b60026000557f000000000000000000000000000000000000000000000000000000000000000015610e34576040517f5aa6676700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517fe958b7040000000000000000000000000000000000000000000000000000000081523360048201526000907f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff169063e958b70490602401602060405180830381865afa158015610ec1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ee5919061560b565b33600090815260036020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716845290915290205490915060ff16610f52576040517f85b0772600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000610f5d82613583565b5090508015610f98576040517ff713841e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517fe1998cf900000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff84811660248301527f0000000000000000000000000000000000000000000000000000000000000000169063e1998cf990604401600060405180830381600087803b15801561102757600080fd5b505af115801561103b573d6000803e3d6000fd5b505060405173ffffffffffffffffffffffffffffffffffffffff861692503391507f93c70cc9715bef0d83edf2095f3595402279d274f402a73ffc17f1bcb19d863d90600090a35050600160005550565b600260005414156110f9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016108e7565b6002600055611106613875565b6040517fe958b70400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301526000917f00000000000000000000000000000000000000000000000000000000000000009091169063e958b70490602401602060405180830381865afa158015611197573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111bb919061560b565b90506111c9848285856139b7565b6040517f29df0b9300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff82811660048301527f000000000000000000000000000000000000000000000000000000000000000016906329df0b9390602401600060405180830381600087803b15801561125257600080fd5b505af1158015611266573d6000803e3d6000fd5b50506001600055505050505050565b600260005414156112e2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016108e7565b600260009081556040517fe958b70400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff88811660048301527f0000000000000000000000000000000000000000000000000000000000000000169063e958b70490602401602060405180830381865afa158015611375573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611399919061560b565b905073ffffffffffffffffffffffffffffffffffffffff86166113e8576040517fb2335f2e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000806113f483613583565b915091508161142f576040517f1fdd676f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611437613875565b831561144d5761144d85858b8660016000613ae3565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16632362a2d88b600185338e8e8e6040518863ffffffff1660e01b81526004016114b59796959493929190615663565b6020604051808303816000875af11580156114d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f891906156bf565b90508873ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff168b73ffffffffffffffffffffffffffffffffffffffff167f7dfecd8419723a9d3954585a30c2a270165d70aafa146c11c1e1b88ae14390648460405161157091815260200190565b60405180910390a4505060016000555050505050505050565b600260005414156115f6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016108e7565b600260009081556040517fe958b7040000000000000000000000000000000000000000000000000000000081523360048201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff169063e958b70490602401602060405180830381865afa158015611687573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116ab919061560b565b90506116b5613875565b81156116cb576116cb8383338460016000613ae3565b6040517f2362a2d800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690632362a2d89061174a903390600090819083908d908d908d90600401615663565b6020604051808303816000875af1158015611769573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061178d91906156bf565b5060405173ffffffffffffffffffffffffffffffffffffffff87169033907f460ad03b1cf79b1d64d3aefa28475f110ab66e84649c52bb41ed796b9b39198190600090a35050600160005550505050565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663f9aa028a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611849573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061186d919061560b565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146118d1576040517feee4716900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6fffffffffffffffffffffffffffffffff90811670010000000000000000000000000000000002911617600255565b6002600054141561196d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016108e7565b60026000908155606461198461ffff851687615707565b61198e9190615744565b9050611999816144f7565b6119a2816145e8565b6119ab84614668565b6119b3613875565b6040517f172c48c7000000000000000000000000000000000000000000000000000000008152600060048201819052907f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff169063172c48c7906024016040805180830381865afa158015611a40573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a64919061577f565b61ffff169150611a789050816127106157ae565b611a829083615707565b611a8c8288615707565b11611ac3576040517f532e7bb600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f8fe3f93f0000000000000000000000000000000000000000000000000000000081526004810183905273ffffffffffffffffffffffffffffffffffffffff86811660248301526000917f000000000000000000000000000000000000000000000000000000000000000090911690638fe3f93f906044016020604051808303816000875af1158015611b5d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b81919061560b565b90508073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167ffa2baf5d3eb95569f312f22477b246f9d4c50276f1cb3ded8e1aeadcbc07a7638587604051611bef92919091825261ffff16602082015260400190565b60405180910390a3611c2386827f00000000000000000000000000000000000000000000000000000000000000008a6139b7565b505060016000555050505050565b73ffffffffffffffffffffffffffffffffffffffff811660009081526006602052604081205415155b92915050565b60026000541415611ccd576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016108e7565b6002600055611cdb856144f7565b611ce484614668565b611ced856145e8565b600154700100000000000000000000000000000000900460ff1615611d3e576040517f7615238d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611d46613875565b6040517f8fe3f93f0000000000000000000000000000000000000000000000000000000081526004810186905273ffffffffffffffffffffffffffffffffffffffff85811660248301526000917f000000000000000000000000000000000000000000000000000000000000000090911690638fe3f93f906044016020604051808303816000875af1158015611de0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e04919061560b565b90508073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167ffa2baf5d3eb95569f312f22477b246f9d4c50276f1cb3ded8e1aeadcbc07a7638885604051611e7292919091825261ffff16602082015260400190565b60405180910390a38215611e9057611e908484878460006001613ae3565b6040517f9537301800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff82811660048301527f00000000000000000000000000000000000000000000000000000000000000001690639537301890602401600060405180830381600087803b158015611f1957600080fd5b505af1158015611f2d573d6000803e3d6000fd5b505060016000555050505050505050565b6000611c5a60058361480f565b60026000541415611fb8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016108e7565b600260009081556040517fe958b70400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff88811660048301527f0000000000000000000000000000000000000000000000000000000000000000169063e958b70490602401602060405180830381865afa15801561204b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061206f919061560b565b905073ffffffffffffffffffffffffffffffffffffffff86166120be576040517fb2335f2e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6120c661481b565b6120fc576040517f7e52ccb400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061210782612668565b509050612112613875565b82156121285761212884848a8560016000613ae3565b6040517f2362a2d800000000000000000000000000000000000000000000000000000000815260009073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001690632362a2d8906121aa908c90600290879033908f908f908f90600401615663565b6020604051808303816000875af11580156121c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121ed91906156bf565b90508773ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff168a73ffffffffffffffffffffffffffffffffffffffff167ffada13ff2d5e1a1d9da37ad4a4130893b34e3c69c32b17f87ec31fd661b867078460405161226591815260200190565b60405180910390a45050600160005550505050505050565b6060612289600561486b565b905090565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663f9aa028a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156122f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061231d919061560b565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612381576040517feee4716900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600180547fffffffffffffffffffffffffffffffff00000000000000000000000000000000166fffffffffffffffffffffffffffffffff92909216919091179055565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663f9aa028a6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561242f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612453919061560b565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146124b7576040517feee4716900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6124c2600582614878565b5050565b60026000541415612533576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016108e7565b600260009081556040517fe958b7040000000000000000000000000000000000000000000000000000000081523360048201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff169063e958b70490602401602060405180830381865afa1580156125c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125e8919061560b565b90506125f4818361489a565b6040517f29df0b9300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff82811660048301527f000000000000000000000000000000000000000000000000000000000000000016906329df0b9390602401610c00565b60008060007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16632630c12f6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156126d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126fc919061560b565b905060008061270b8387614999565b6040517f7afb01040000000000000000000000000000000000000000000000000000000081526004810183905273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000008116602483015292945090925090841690637afb010490604401602060405180830381865afa1580156127a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127c991906156bf565b6040517f7afb01040000000000000000000000000000000000000000000000000000000081526004810183905273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000008116602483015291965061271091851690637afb010490604401602060405180830381865afa158015612863573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061288791906156bf565b6128919190615744565b9350505050915091565b60026000541415612908576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016108e7565b600260009081556040517fe958b7040000000000000000000000000000000000000000000000000000000081523360048201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff169063e958b70490602401602060405180830381865afa158015612999573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129bd919061560b565b90506129c7613875565b8115612a7e576129dc83833384600080613ae3565b6040517f9537301800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff82811660048301527f00000000000000000000000000000000000000000000000000000000000000001690639537301890602401600060405180830381600087803b158015612a6557600080fd5b505af1158015612a79573d6000803e3d6000fd5b505050505b5050600160005550565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663f9aa028a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612af3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b17919061560b565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612b7b576040517feee4716900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6124c2600582614c92565b600080612b9283612668565b6040517f3192195c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8681166004830152919350600092507f000000000000000000000000000000000000000000000000000000000000000090911690633192195c906024016040805180830381865afa158015612c26573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c4a91906157c5565b9150819050612c5b61271084615707565b612c659190615744565b949350505050565b60026000541415612cda576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016108e7565b600260009081556040517ffdd5764500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85811660048301527f0000000000000000000000000000000000000000000000000000000000000000169063fdd5764590602401602060405180830381865afa158015612d6d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612d91919061560b565b73ffffffffffffffffffffffffffffffffffffffff161480612dd7575073ffffffffffffffffffffffffffffffffffffffff831660009081526006602052604090205415155b15612e0e576040517f5d2e3a7400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f46fb371d00000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff84811660248301528381166044830152606482018390527f000000000000000000000000000000000000000000000000000000000000000016906346fb371d90608401600060405180830381600087803b158015612eac57600080fd5b505af1158015611c23573d6000803e3d6000fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663f9aa028a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612f2b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612f4f919061560b565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612fb3576040517feee4716900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000061300a576040517f50dd11fc00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001805464ffffffffff90921671010000000000000000000000000000000000027fffffffffffffffffffff0000000000ffffffffffffffffffffffffffffffffff909216919091179055565b6040517ff67c5bd000000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff828116600483015260009182917f0000000000000000000000000000000000000000000000000000000000000000169063f67c5bd090602401602060405180830381865afa1580156130e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061310c91906156bf565b905080158015906131ab5750807f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16639fd12b776040518163ffffffff1660e01b8152600401602060405180830381865afa158015613184573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131a891906156bf565b16155b9392505050565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663f9aa028a6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561321d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613241919061560b565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146132a5576040517feee4716900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60018054911515700100000000000000000000000000000000027fffffffffffffffffffffffffffffff00ffffffffffffffffffffffffffffffff909216919091179055565b6040517f94cf073a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff838116600483015260248201839052600060448301819052917f0000000000000000000000000000000000000000000000000000000000000000909116906394cf073a906064016020604051808303816000875af115801561338c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133b091906156bf565b90506133bb816145e8565b8373ffffffffffffffffffffffffffffffffffffffff167f98274bf834d179ee08dc0604071b0dc90b54731bd5f725a5a96a39a86bce025a8360405161340391815260200190565b60405180910390a250505050565b61341a816144f7565b600154700100000000000000000000000000000000900460ff161561346b576040517f7615238d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f94cf073a00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff838116600483015260248201839052600160448301526000917f0000000000000000000000000000000000000000000000000000000000000000909116906394cf073a906064016020604051808303816000875af115801561350c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061353091906156bf565b905061353b816145e8565b8373ffffffffffffffffffffffffffffffffffffffff167f9cac51154cc0d835e2f9c9d1f59a9344588cee107f4203bf58a8c797e3a58c458360405161340391815260200190565b60008060007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16632630c12f6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156135f3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613617919061560b565b90506000806136268387614999565b6040517f7afb01040000000000000000000000000000000000000000000000000000000081526004810183905273ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000008116602483015292945090925090841690637afb010490604401602060405180830381865afa1580156136c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906136e491906156bf565b6040517f3192195c00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff88811660048301529195506000917f00000000000000000000000000000000000000000000000000000000000000001690633192195c906024016040805180830381865afa158015613775573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061379991906157c5565b6040517ff9a650300000000000000000000000000000000000000000000000000000000081526004810182905273ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000081166024830152919350600092506127109187169063f9a6503090604401602060405180830381865afa158015613837573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061385b91906156bf565b6138659190615707565b9092109794965093945050505050565b34156139b5577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663d0e30db0346040518263ffffffff1660e01b81526004016000604051808303818588803b1580156138e357600080fd5b505af11580156138f7573d6000803e3d6000fd5b50506040517fa9059cbb0000000000000000000000000000000000000000000000000000000081523360048201523460248201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16935063a9059cbb925060440190506020604051808303816000875af115801561398f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139b391906157e9565b505b565b6139c084614cb4565b6040517f830aa74500000000000000000000000000000000000000000000000000000000815233600482015273ffffffffffffffffffffffffffffffffffffffff84811660248301528381166044830152606482018390527f0000000000000000000000000000000000000000000000000000000000000000169063830aa74590608401600060405180830381600087803b158015613a5e57600080fd5b505af1158015613a72573d6000803e3d6000fd5b505050508173ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fa32435755c235de2976ed44a75a2f85cb01faf0c894f639fe0c32bb9455fea8f83604051613ad591815260200190565b60405180910390a350505050565b6040517fe1998cf900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85811660048301523060248301527f0000000000000000000000000000000000000000000000000000000000000000169063e1998cf990604401600060405180830381600087803b158015613b7257600080fd5b505af1158015613b86573d6000803e3d6000fd5b505060405173ffffffffffffffffffffffffffffffffffffffff871692507f4ad424605b950d17d87835716d98c0cac1f6ff9c38114e63304902188a6908119150600090a28460005b8181101561441d5736888883818110613bea57613bea615806565b9050602002810190613bfc9190615835565b90506004613c0d6020830183615873565b90501015613c47576040517fe2b0e50600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b30613c5560208301836151f8565b73ffffffffffffffffffffffffffffffffffffffff16141561421c578415613ca9576040517f5fb9107f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000613cb86020830183615873565b613cc1916158d8565b90507fffffffff0000000000000000000000000000000000000000000000000000000081167f59781034000000000000000000000000000000000000000000000000000000001415613e3c5760008080613d1e6020860186615873565b613d2c916004908290615920565b810190613d39919061522e565b925092509250613e34838c73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614613e2b576040517fe958b70400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff86811660048301527f0000000000000000000000000000000000000000000000000000000000000000169063e958b70490602401602060405180830381865afa158015613e02573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613e26919061560b565b613e2d565b8b5b84846139b7565b505050614216565b7fffffffff0000000000000000000000000000000000000000000000000000000081167f2b7c7b11000000000000000000000000000000000000000000000000000000001415613ec757600194506000613e996020840184615873565b613ea7916004908290615920565b810190613eb49190615215565b9050613ec1898983613411565b50614216565b7fffffffff0000000000000000000000000000000000000000000000000000000081167f2a7ba1f7000000000000000000000000000000000000000000000000000000001415613f80578415613f49576040517fc0b0caa800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000613f586020840184615873565b613f66916004908290615920565b810190613f739190615215565b9050613ec18989836132eb565b7fffffffff0000000000000000000000000000000000000000000000000000000081167f233a8caa0000000000000000000000000000000000000000000000000000000014156140e457600080613fda6020850185615873565b613fe8916004908290615920565b810190613ff5919061594a565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8c8116600483015292945090925082918416906370a0823190602401602060405180830381865afa158015614069573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061408d91906156bf565b10156140dd576040517fa5ac537300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff831660048201526024016108e7565b5050614216565b7fffffffff0000000000000000000000000000000000000000000000000000000081167fc690908a00000000000000000000000000000000000000000000000000000000141561416457600061413d6020840184615873565b61414b916004908290615920565b81019061415891906151f8565b9050613ec1888261489a565b7fffffffff0000000000000000000000000000000000000000000000000000000081167f23e27a640000000000000000000000000000000000000000000000000000000014156141e45760006141bd6020840184615873565b6141cb916004908290615920565b8101906141d891906151f8565b9050613ec18882614d42565b6040517f1e9e7e7a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50614414565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663ff68754361426760208501856151f8565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff9091166004820152602401602060405180830381865afa1580156142d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906142f4919061560b565b73ffffffffffffffffffffffffffffffffffffffff16148061436d575073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001661435560208301836151f8565b73ffffffffffffffffffffffffffffffffffffffff16145b156143a4576040517f5d2e3a7400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6144126143b46020830183615873565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506143f69250505060208401846151f8565b73ffffffffffffffffffffffffffffffffffffffff1690614e39565b505b50600101613bcf565b506040517f60c8e8938c9a0c0d88a98d6f1c562ce68077e12bf3edb8047378f2f736cb45b490600090a16040517fe1998cf900000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff86811660248301527f0000000000000000000000000000000000000000000000000000000000000000169063e1998cf990604401600060405180830381600087803b1580156144d657600080fd5b505af11580156144ea573d6000803e3d6000fd5b5050505050505050505050565b7f00000000000000000000000000000000000000000000000000000000000000006139b3576001546fffffffffffffffffffffffffffffffff9081169081146124c257600454608081901c906fffffffffffffffffffffffffffffffff16600067ffffffffffffffff8316431461456e578461458a565b61458a6fffffffffffffffffffffffffffffffff831686615976565b9050838111156145c6576040517f675f1a5600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6fffffffffffffffffffffffffffffffff81164360801b176004555050505050565b6002546fffffffffffffffffffffffffffffffff16811080614631575060025470010000000000000000000000000000000090046fffffffffffffffffffffffffffffffff1681115b156139b3576040517fce16799400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61467061481b565b156146a7576040517f63fc31c100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1615614806577f0000000000000000000000000000000000000000000000000000000000000000801561472657503373ffffffffffffffffffffffffffffffffffffffff821614155b1561475d576040517f5aa6676700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f9dc29fac00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8281166004830152600160248301527f00000000000000000000000000000000000000000000000000000000000000001690639dc29fac90604401600060405180830381600087803b1580156147ed57600080fd5b505af1158015614801573d6000803e3d6000fd5b505050505b6139b381614cb4565b60006131ab8383614e7b565b60007f0000000000000000000000000000000000000000000000000000000000000000801561228957505060015471010000000000000000000000000000000000900464ffffffffff1642101590565b606060006131ab83614ea5565b60006131ab8373ffffffffffffffffffffffffffffffffffffffff8416614f01565b6040517f51e3f16000000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff838116600483015282811660248301527f000000000000000000000000000000000000000000000000000000000000000016906351e3f16090604401600060405180830381600087803b15801561492b57600080fd5b505af115801561493f573d6000803e3d6000fd5b50506040805173ffffffffffffffffffffffffffffffffffffffff8087168252851660208201527fdf498aa1c340e992665d6fb4f3be8436d452c45a630cb6d7fab7963da39bac8793500190505b60405180910390a15050565b6040517f8991b2f100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8281166004830152600091829160019183917f00000000000000000000000000000000000000000000000000000000000000001690638991b2f190602401602060405180830381865afa158015614a2f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614a5391906156bf565b90505b808211614c895780821615614c7d576040517fe75538c700000000000000000000000000000000000000000000000000000000815260048101839052600090819073ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000169063e75538c7906024016040805180830381865afa158015614af4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614b18919061577f565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8a811660048301529294509092506000918416906370a0823190602401602060405180830381865afa158015614b8d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614bb191906156bf565b90506001811115614c79576040517ff9a650300000000000000000000000000000000000000000000000000000000081526004810182905273ffffffffffffffffffffffffffffffffffffffff8481166024830152600091908b169063f9a6503090604401602060405180830381865afa158015614c33573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614c5791906156bf565b978801979050614c6b61ffff841682615707565b614c759088615976565b9650505b5050505b600182901b9150614a56565b50509250929050565b60006131ab8373ffffffffffffffffffffffffffffffffffffffff8416614f50565b3373ffffffffffffffffffffffffffffffffffffffff821614801590614d0b575033600090815260036020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff16155b156139b3576040517f85b0772600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f0d8f9cee00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff838116600483015282811660248301527f00000000000000000000000000000000000000000000000000000000000000001690630d8f9cee90604401600060405180830381600087803b158015614dd357600080fd5b505af1158015614de7573d6000803e3d6000fd5b50506040805173ffffffffffffffffffffffffffffffffffffffff8087168252851660208201527f69db9e9764da61b6681b89fb0f5be018506e0342036e56b59c3015a620d60977935001905061498d565b60606131ab83836040518060400160405280601e81526020017f416464726573733a206c6f772d6c6576656c2063616c6c206661696c65640000815250615043565b6000826000018281548110614e9257614e92615806565b9060005260206000200154905092915050565b606081600001805480602002602001604051908101604052809291908181526020018280548015614ef557602002820191906000526020600020905b815481526020019060010190808311614ee1575b50505050509050919050565b6000818152600183016020526040812054614f4857508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155611c5a565b506000611c5a565b60008181526001830160205260408120548015615039576000614f746001836157ae565b8554909150600090614f88906001906157ae565b9050818114614fed576000866000018281548110614fa857614fa8615806565b9060005260206000200154905080876000018481548110614fcb57614fcb615806565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080614ffe57614ffe61598e565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050611c5a565b6000915050611c5a565b6060612c65848460008585843b6150b6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016108e7565b6000808673ffffffffffffffffffffffffffffffffffffffff1685876040516150df91906159ed565b60006040518083038185875af1925050503d806000811461511c576040519150601f19603f3d011682016040523d82523d6000602084013e615121565b606091505b509150915061513182828661513c565b979650505050505050565b6060831561514b5750816131ab565b82511561515b5782518084602001fd5b816040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108e791906159ff565b73ffffffffffffffffffffffffffffffffffffffff811681146139b357600080fd5b80151581146139b357600080fd5b600080604083850312156151d257600080fd5b82356151dd8161518f565b915060208301356151ed816151b1565b809150509250929050565b60006020828403121561520a57600080fd5b81356131ab8161518f565b60006020828403121561522757600080fd5b5035919050565b60008060006060848603121561524357600080fd5b833561524e8161518f565b9250602084013561525e8161518f565b929592945050506040919091013590565b60008083601f84011261528157600080fd5b50813567ffffffffffffffff81111561529957600080fd5b6020830191508360208260051b85010111156152b457600080fd5b9250929050565b60008060008060008060a087890312156152d457600080fd5b86356152df8161518f565b955060208701356152ef8161518f565b9450604087013593506060870135615306816151b1565b9250608087013567ffffffffffffffff81111561532257600080fd5b61532e89828a0161526f565b979a9699509497509295939492505050565b60008060008060006080868803121561535857600080fd5b85356153638161518f565b945060208601359350604086013561537a816151b1565b9250606086013567ffffffffffffffff81111561539657600080fd5b6153a28882890161526f565b969995985093965092949392505050565b80356fffffffffffffffffffffffffffffffff811681146153d357600080fd5b919050565b600080604083850312156153eb57600080fd5b6153f4836153b3565b9150615402602084016153b3565b90509250929050565b61ffff811681146139b357600080fd5b6000806000806080858703121561543157600080fd5b8435935060208501356154438161518f565b925060408501356154538161540b565b915060608501356154638161540b565b939692955090935050565b60008060008060006080868803121561548657600080fd5b8535945060208601356154988161518f565b9350604086013567ffffffffffffffff8111156154b457600080fd5b6154c08882890161526f565b90945092505060608601356154d48161540b565b809150509295509295909350565b6020808252825182820181905260009190848201906040850190845b8181101561553057835173ffffffffffffffffffffffffffffffffffffffff16835292840192918401916001016154fe565b50909695505050505050565b60006020828403121561554e57600080fd5b6131ab826153b3565b6000806020838503121561556a57600080fd5b823567ffffffffffffffff81111561558157600080fd5b61558d8582860161526f565b90969095509350505050565b600080604083850312156155ac57600080fd5b82356155b78161518f565b915060208301356151ed8161518f565b6000602082840312156155d957600080fd5b813564ffffffffff811681146131ab57600080fd5b60006020828403121561560057600080fd5b81356131ab816151b1565b60006020828403121561561d57600080fd5b81516131ab8161518f565b6003811061565f577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b9052565b73ffffffffffffffffffffffffffffffffffffffff888116825260e082019061568f602084018a615628565b6040830197909752948616606082015292909416608083015260a082015291151560c09092019190915292915050565b6000602082840312156156d157600080fd5b5051919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561573f5761573f6156d8565b500290565b60008261577a577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b6000806040838503121561579257600080fd5b825161579d8161518f565b60208401519092506151ed8161540b565b6000828210156157c0576157c06156d8565b500390565b600080604083850312156157d857600080fd5b505080516020909101519092909150565b6000602082840312156157fb57600080fd5b81516131ab816151b1565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600082357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc183360301811261586957600080fd5b9190910192915050565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe18436030181126158a857600080fd5b83018035915067ffffffffffffffff8211156158c357600080fd5b6020019150368190038213156152b457600080fd5b7fffffffff0000000000000000000000000000000000000000000000000000000081358181169160048510156159185780818660040360031b1b83161692505b505092915050565b6000808585111561593057600080fd5b8386111561593d57600080fd5b5050820193919092039150565b6000806040838503121561595d57600080fd5b82356159688161518f565b946020939093013593505050565b60008219821115615989576159896156d8565b500190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b60005b838110156159d85781810151838201526020016159c0565b838111156159e7576000848401525b50505050565b600082516158698184602087016159bd565b6020815260008251806020840152615a1e8160408501602087016159bd565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016919091016040019291505056fea2646970667358221220a3f4a705ab580a6ada1e438cd2ee4abc001b62d1d171fce12c41994900fef21664736f6c634300080a003360a06040523480156200001157600080fd5b5060405162005f3d38038062005f3d8339810160408190526200003491620012eb565b826001600160a01b031663570a7af26040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000073573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200009991906200147f565b6001600160a01b0316632954018c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015620000d7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000fd91906200147f565b6000805460ff191690556001600160a01b0381166200012f57604051635919af9760e11b815260040160405180910390fd5b806001600160a01b031663087376956040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200016e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200019491906200147f565b6001600160a01b03908116608052600180546001600160a01b031916918616918217905560408051636f307dc360e01b81529051919250636f307dc39160048083019260209291908290030181865afa158015620001f6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200021c91906200147f565b600260006101000a8154816001600160a01b0302191690836001600160a01b03160217905550826001600160a01b031663570a7af26040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000281573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002a791906200147f565b6001600160a01b0316632954018c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002e5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200030b91906200147f565b600080546001600160a01b039290921661010002610100600160a81b0319909216919091179055620003626103e860c86200034b6101f4612710620014bc565b60646200035c60c8612710620014bc565b620005e8565b60408101515160005b81811015620003ee576000836040015182815181106200038f576200038f620014e2565b6020026020010151600001519050620003ae81620007c260201b60201c565b620003e48185604001518481518110620003cc57620003cc620014e2565b60200260200101516020015162000a5e60201b60201c565b506001016200036b565b5060015460408051632630c12f60e01b815290516001600160a01b03909216916311ca4fc29186918491632630c12f9160048083019260209291908290030181865afa15801562000443573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200046991906200147f565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401600060405180830381600087803b158015620004b257600080fd5b505af1158015620004c7573d6000803e3d6000fd5b50506040516001600160a01b03861692507fa8b21f72cb83bce808df32dc2330217d744a1c22f3e9e44e4b11bbf049d37d9d9150600090a2600160009054906101000a90046001600160a01b03166001600160a01b0316632630c12f6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000553573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200057991906200147f565b6001600160a01b03167f3f82447be465b0b5a4a9e54c74d5f6ae73f2e9537f2cc1590a340524703d096160405160405180910390a26020820151620005cb90620005c5906002620014f8565b62000bda565b81516020830151620005de919062000dc8565b5050505062001604565b6000620005f68585620014bc565b60015460405163172c48c760e01b81526000600482018190529293506001600160a01b039091169063172c48c7906024016040805180830381865afa15801562000644573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200066a91906200152a565b9150508061ffff168261ffff1614620006be57620006888262000f47565b60025460405161ffff841681526001600160a01b039091169060008051602062005f1d8339815191529060200160405180910390a25b60015460405163944ac59f60e01b815261ffff808a166004830152808916602483015280881660448301528087166064830152851660848201526001600160a01b039091169063944ac59f9060a401600060405180830381600087803b1580156200072857600080fd5b505af11580156200073d573d6000803e3d6000fd5b505050507f2214a403d5f8d049e52eacca974c6dea01a471e41d6a18903bfaf7dbc709741f878787612710620007749190620014bc565b876200078388612710620014bc565b6040805161ffff96871681529486166020860152928516848401529084166060840152909216608082015290519081900360a00190a150505050505050565b6001600160a01b038116620007ea57604051635919af9760e11b815260040160405180910390fd5b62000809816001600160a01b03166200116f60201b620023381760201c565b620008365760405163df4c572d60e01b81526001600160a01b038216600482015260240160405180910390fd5b6040516370a0823160e01b81523060048201526001600160a01b038216906370a0823190602401602060405180830381865afa92505050801562000899575060408051601f3d908101601f19168201909252620008969181019062001564565b60015b620008b75760405163528ca31d60e01b815260040160405180910390fd5b50600160009054906101000a90046001600160a01b03166001600160a01b0316632630c12f6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200090c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200093291906200147f565b604051630f9a650360e41b8152670de0b6b3a764000060048201526001600160a01b038381166024830152919091169063f9a6503090604401602060405180830381865afa925050508015620009a7575060408051601f3d908101601f19168201909252620009a49181019062001564565b60015b620009c5576040516367a7cd4360e01b815260040160405180910390fd5b5060015460405163d48bfca760e01b81526001600160a01b0383811660048301529091169063d48bfca790602401600060405180830381600087803b15801562000a0e57600080fd5b505af115801562000a23573d6000803e3d6000fd5b50506040516001600160a01b03841692507fbeceb48aeaa805aeae57be163cca6249077a18734e408a85aa74e875c43738099150600090a250565b6002546001600160a01b038381169116141562000a8e57604051633b899cf960e01b815260040160405180910390fd5b60015460405163172c48c760e01b8152600060048201819052916001600160a01b03169063172c48c7906024016040805180830381865afa15801562000ad8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000afe91906200152a565b91505061ffff8216158062000b1a57508061ffff168261ffff16115b1562000b39576040516333c6608d60e01b815260040160405180910390fd5b600154604051635385e2a160e11b81526001600160a01b03858116600483015261ffff851660248301529091169063a70bc54290604401600060405180830381600087803b15801562000b8b57600080fd5b505af115801562000ba0573d6000803e3d6000fd5b505060405161ffff851681526001600160a01b038616925060008051602062005f1d833981519152915060200160405180910390a2505050565b600062000be662001175565b6001600160a01b031663cff0ab966040518163ffffffff1660e01b8152600401606060405180830381865afa15801562000c24573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000c4a91906200157e565b50509050600062000c606200117560201b60201c565b6001600160a01b031663860aefcf6040518163ffffffff1660e01b81526004016040805180830381865afa15801562000c9d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000cc39190620015d5565b915050806001600160801b0316836001600160801b0316101562000cfa576040516309aadd6f60e41b815260040160405180910390fd5b826001600160801b0316826001600160801b03161462000dc35762000d1e62001175565b604051632715681560e21b81526001600160801b03851660048201526001600160a01b039190911690639c55a05490602401600060405180830381600087803b15801562000d6b57600080fd5b505af115801562000d80573d6000803e3d6000fd5b50506040516001600160801b03861681527fa030eec20ae970821387224ec3bb15b4bd22b89bfb86dc4d2b3827aa3d99e48d925060200190505b60405180910390a15b505050565b600062000dd462001175565b6001600160a01b031663cff0ab966040518163ffffffff1660e01b8152600401606060405180830381865afa15801562000e12573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000e3891906200157e565b50509050816001600160801b0316836001600160801b0316118062000e6e5750806001600160801b0316826001600160801b0316115b1562000e8d576040516309aadd6f60e41b815260040160405180910390fd5b62000e9762001175565b60405163300eb37b60e11b81526001600160801b038086166004830152841660248201526001600160a01b03919091169063601d66f690604401600060405180830381600087803b15801562000eec57600080fd5b505af115801562000f01573d6000803e3d6000fd5b5050604080516001600160801b038088168252861660208201527f4d4981437d0211f9e6843eb024d9ada1fa3a99514d4343d4aece106dd11524bb935001905062000dba565b600154600254604051635385e2a160e11b81526001600160a01b03918216600482015261ffff8416602482015291169063a70bc54290604401600060405180830381600087803b15801562000f9b57600080fd5b505af115801562000fb0573d6000803e3d6000fd5b505050506000600160009054906101000a90046001600160a01b03166001600160a01b031663458936f56040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200100a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001030919062001564565b905060015b8181101562000dc35760015460405163172c48c760e01b81526004810183905260009182916001600160a01b039091169063172c48c7906024016040805180830381865afa1580156200108c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620010b291906200152a565b915091508461ffff168161ffff1611156200116457600154604051635385e2a160e11b81526001600160a01b03848116600483015261ffff881660248301529091169063a70bc54290604401600060405180830381600087803b1580156200111957600080fd5b505af11580156200112e573d6000803e3d6000fd5b505060405161ffff881681526001600160a01b038516925060008051602062005f1d833981519152915060200160405180910390a25b505060010162001035565b3b151590565b60015460408051632f7a188160e01b815290516000926001600160a01b031691632f7a18819160048083019260209291908290030181865afa158015620011c0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620011e691906200147f565b905090565b6001600160a01b03811681146200120157600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b60405160a081016001600160401b03811182821017156200123f576200123f62001204565b60405290565b604080519081016001600160401b03811182821017156200123f576200123f62001204565b604051601f8201601f191681016001600160401b038111828210171562001295576200129562001204565b604052919050565b80516001600160801b0381168114620012b557600080fd5b919050565b8051620012b581620011eb565b805161ffff81168114620012b557600080fd5b80518015158114620012b557600080fd5b6000806000606084860312156200130157600080fd5b83516200130e81620011eb565b809350506020808501516200132381620011eb565b604086810151919450906001600160401b03808211156200134357600080fd5b9087019060a0828a0312156200135857600080fd5b620013626200121a565b6200136d836200129d565b81526200137c8584016200129d565b8582015283830151828111156200139257600080fd5b8301601f81018b13620013a457600080fd5b805183811115620013b957620013b962001204565b620013c9878260051b016200126a565b818152878101945060069190911b82018701908c821115620013ea57600080fd5b918701915b81831015620014435786838e031215620014095760008081fd5b6200141362001245565b83516200142081620011eb565b81526200142f848a01620012c7565b818a015285529387019391860191620013ef565b838701525062001458905060608401620012ba565b60608201526200146b60808401620012da565b608082015280955050505050509250925092565b6000602082840312156200149257600080fd5b81516200149f81620011eb565b9392505050565b634e487b7160e01b600052601160045260246000fd5b600061ffff83811690831681811015620014da57620014da620014a6565b039392505050565b634e487b7160e01b600052603260045260246000fd5b60006001600160801b0382811684821681151582840482111615620015215762001521620014a6565b02949350505050565b600080604083850312156200153e57600080fd5b82516200154b81620011eb565b91506200155b60208401620012c7565b90509250929050565b6000602082840312156200157757600080fd5b5051919050565b6000806000606084860312156200159457600080fd5b6200159f846200129d565b9250620015af60208501620012da565b9150604084015164ffffffffff81168114620015ca57600080fd5b809150509250925092565b60008060408385031215620015e957600080fd5b620015f4836200129d565b91506200155b602084016200129d565b608051614878620016a56000396000818161033601528181610446015281816107c5015281816108c0015281816109ae01528181610b8301528181610f0a015281816113e1015281816114cf015281816115bb015281816116ab015281816117990152818161187d01528181611ad901528181611bc601528181611cb301528181611da0015281816120090152818161218c015261227901526148786000f3fe608060405234801561001057600080fd5b50600436106101c45760003560e01c80638456cb59116100f9578063dc2b21c111610097578063f0527ac611610071578063f0527ac6146103d7578063f206d32a146103df578063fb1bd8c4146103f2578063ffd9b9071461040557600080fd5b8063dc2b21c11461039e578063e6492d7b146103b1578063eb9606df146103c457600080fd5b8063a50cf2c8116100d3578063a50cf2c814610331578063a70bc54214610358578063b53472ef1461036b578063c12c21c01461037e57600080fd5b80638456cb59146103035780639c55a0541461030b5780639f1c50691461031e57600080fd5b806350e036ff1161016657806354fd4d501161014057806354fd4d50146102b25780635c975abb146102ba5780636f307dc3146102d05780637bccacee146102f057600080fd5b806350e036ff1461027657806352438e541461028c578063526a41e81461029f57600080fd5b80633e7c88d6116101a25780633e7c88d6146102355780633f4ba83a14610248578063456e0742146102505780635094cb4f1461026357600080fd5b806324147708146101c95780632954018c146101de5780632f7a18811461022d575b600080fd5b6101dc6101d7366004614307565b610418565b005b60005461020390610100900473ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b6102036106fe565b6101dc610243366004614334565b610797565b6101dc610892565b6101dc61025e366004614307565b610980565b61020361027136600461436d565b610b36565b61027e610b49565b604051908152602001610224565b6101dc61029a366004614307565b610b55565b6101dc6102ad366004614394565b610edc565b61027e600281565b60005460ff166040519015158152602001610224565b6002546102039073ffffffffffffffffffffffffffffffffffffffff1681565b6101dc6102fe3660046143c2565b6113b3565b6101dc6114a1565b6101dc61031936600461440e565b61158d565b6101dc61032c36600461442b565b61167d565b6102037f000000000000000000000000000000000000000000000000000000000000000081565b6101dc610366366004614334565b61176b565b6101dc610379366004614307565b61184f565b6001546102039073ffffffffffffffffffffffffffffffffffffffff1681565b6101dc6103ac366004614459565b611aab565b6101dc6103bf366004614307565b611b98565b6101dc6103d236600461448f565b611c85565b6101dc611d72565b6101dc6103ed3660046144ac565b611fdb565b6101dc610400366004614307565b61215e565b6101dc61041336600461451d565b61224b565b6040517f5f259aba0000000000000000000000000000000000000000000000000000000081523360048201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1690635f259aba90602401602060405180830381865afa1580156104a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104c6919061453a565b6104fc576040517f61081c1500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006105078261233e565b90506000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639fd12b776040518163ffffffff1660e01b8152600401602060405180830381865afa158015610578573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061059c9190614557565b90508181166106f9576001546040517fa366f496000000000000000000000000000000000000000000000000000000008152918317600483018190529173ffffffffffffffffffffffffffffffffffffffff9091169063a366f49690602401600060405180830381600087803b15801561061557600080fd5b505af1158015610629573d6000803e3d6000fd5b505050506106356106fe565b6040517fffd9b9070000000000000000000000000000000000000000000000000000000081526001600482015273ffffffffffffffffffffffffffffffffffffffff919091169063ffd9b90790602401600060405180830381600087803b15801561069f57600080fd5b505af11580156106b3573d6000803e3d6000fd5b505060405173ffffffffffffffffffffffffffffffffffffffff861692507ff17b849746e74d7186170c9553d4bbf60b4f8bb1ed81fe50c099b934fb078f059150600090a25b505050565b600154604080517f2f7a1881000000000000000000000000000000000000000000000000000000008152905160009273ffffffffffffffffffffffffffffffffffffffff1691632f7a18819160048083019260209291908290030181865afa15801561076e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610792919061457b565b905090565b6040517f5f259aba0000000000000000000000000000000000000000000000000000000081523360048201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1690635f259aba90602401602060405180830381865afa158015610821573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610845919061453a565b61087b576040517f61081c1500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6108848261241e565b61088e82826127f8565b5050565b6040517fd4eb5db00000000000000000000000000000000000000000000000000000000081523360048201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff169063d4eb5db090602401602060405180830381865afa15801561091c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610940919061453a565b610976576040517f10332dee00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61097e612a15565b565b6040517f5f259aba0000000000000000000000000000000000000000000000000000000081523360048201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1690635f259aba90602401602060405180830381865afa158015610a0a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a2e919061453a565b610a64576040517f61081c1500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610a6d81612af6565b6001546040517f9f5f86ae00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff838116600483015290911690639f5f86ae90602401600060405180830381600087803b158015610ada57600080fd5b505af1158015610aee573d6000803e3d6000fd5b505060405173ffffffffffffffffffffffffffffffffffffffff841692507f5a0b7d0f9c24b39256e112a0584b4c5ce38d8f1dee2e7c56f15b852604cdc8869150600090a250565b6000610b43600383612cb8565b92915050565b60006107926003612ccb565b6040517f5f259aba0000000000000000000000000000000000000000000000000000000081523360048201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1690635f259aba90602401602060405180830381865afa158015610bdf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c03919061453a565b610c39576040517f61081c1500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff8116610c86576040517fb2335f2e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001546040517ffdd5764500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8381166004830152600092169063fdd5764590602401602060405180830381865afa158015610cf7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d1b919061457b565b905073ffffffffffffffffffffffffffffffffffffffff8116610d6a576040517f1170cc2e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001546040517f6e98e5e400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff83811660048301526000602483015290911690636e98e5e490604401600060405180830381600087803b158015610dde57600080fd5b505af1158015610df2573d6000803e3d6000fd5b50506001546040517f6e98e5e40000000000000000000000000000000000000000000000000000000081526000600482015273ffffffffffffffffffffffffffffffffffffffff86811660248301529091169250636e98e5e49150604401600060405180830381600087803b158015610e6a57600080fd5b505af1158015610e7e573d6000803e3d6000fd5b50505050610e96826003612cd590919063ffffffff16565b5060405173ffffffffffffffffffffffffffffffffffffffff8316907fab9f405bf0c19b97f65a7031634db41569cd2f0e0376a610a1e977f9ab22b58f90600090a25050565b6040517f5f259aba0000000000000000000000000000000000000000000000000000000081523360048201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1690635f259aba90602401602060405180830381865afa158015610f66573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f8a919061453a565b610fc0576040517f61081c1500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610fc982612af6565b6000806000610fd66106fe565b73ffffffffffffffffffffffffffffffffffffffff1663cff0ab966040518163ffffffff1660e01b8152600401606060405180830381865afa158015611020573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110449190614598565b9250925092506000806110556106fe565b73ffffffffffffffffffffffffffffffffffffffff1663860aefcf6040518163ffffffff1660e01b81526004016040805180830381865afa15801561109e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110c291906145e5565b9150915060006110d06106fe565b73ffffffffffffffffffffffffffffffffffffffff16639be0536a6040518163ffffffff1660e01b8152600401600060405180830381865afa15801561111a573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526111609190810190614643565b9050600061116c6106fe565b73ffffffffffffffffffffffffffffffffffffffff1663b1836d326040518163ffffffff1660e01b8152600401602060405180830381865afa1580156111b6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111da919061453a565b600154604080517f2630c12f000000000000000000000000000000000000000000000000000000008152905192935073ffffffffffffffffffffffffffffffffffffffff909116916311ca4fc2918c918491632630c12f9160048083019260209291908290030181865afa158015611256573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061127a919061457b565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815273ffffffffffffffffffffffffffffffffffffffff928316600482015291166024820152604401600060405180830381600087803b1580156112e757600080fd5b505af11580156112fb573d6000803e3d6000fd5b5050505087156113675761130e87612cf7565b6113188484612f5d565b61132186613152565b60005b82518110156113575761134f83828151811061134257611342614726565b60200260200101516132a3565b600101611324565b50801561136757611367856133c9565b60405173ffffffffffffffffffffffffffffffffffffffff8a16907fa8b21f72cb83bce808df32dc2330217d744a1c22f3e9e44e4b11bbf049d37d9d90600090a2505050505050505050565b6040517f5f259aba0000000000000000000000000000000000000000000000000000000081523360048201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1690635f259aba90602401602060405180830381865afa15801561143d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611461919061453a565b611497576040517f61081c1500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61088e828261357b565b6040517f3a41ec640000000000000000000000000000000000000000000000000000000081523360048201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1690633a41ec6490602401602060405180830381865afa15801561152b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061154f919061453a565b611585576040517fd794b1e700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61097e6139c3565b6040517f5f259aba0000000000000000000000000000000000000000000000000000000081523360048201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1690635f259aba90602401602060405180830381865afa158015611617573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061163b919061453a565b611671576040517f61081c1500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61167a81612cf7565b50565b6040517f5f259aba0000000000000000000000000000000000000000000000000000000081523360048201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1690635f259aba90602401602060405180830381865afa158015611707573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061172b919061453a565b611761576040517f61081c1500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61088e8282612f5d565b6040517f5f259aba0000000000000000000000000000000000000000000000000000000081523360048201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1690635f259aba90602401602060405180830381865afa1580156117f5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611819919061453a565b610884576040517f61081c1500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f5f259aba0000000000000000000000000000000000000000000000000000000081523360048201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1690635f259aba90602401602060405180830381865afa1580156118d9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118fd919061453a565b611933576040517f61081c1500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061193e8261233e565b90506000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639fd12b776040518163ffffffff1660e01b8152600401602060405180830381865afa1580156119af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119d39190614557565b9050818116156106f9576001546040517fa366f496000000000000000000000000000000000000000000000000000000008152918318600483018190529173ffffffffffffffffffffffffffffffffffffffff9091169063a366f49690602401600060405180830381600087803b158015611a4d57600080fd5b505af1158015611a61573d6000803e3d6000fd5b505060405173ffffffffffffffffffffffffffffffffffffffff861692507fbeceb48aeaa805aeae57be163cca6249077a18734e408a85aa74e875c43738099150600090a2505050565b6040517f5f259aba0000000000000000000000000000000000000000000000000000000081523360048201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1690635f259aba90602401602060405180830381865afa158015611b35573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b59919061453a565b611b8f576040517f61081c1500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61167a81613a83565b6040517f5f259aba0000000000000000000000000000000000000000000000000000000081523360048201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1690635f259aba90602401602060405180830381865afa158015611c22573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c46919061453a565b611c7c576040517f61081c1500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61167a81613b3d565b6040517f5f259aba0000000000000000000000000000000000000000000000000000000081523360048201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1690635f259aba90602401602060405180830381865afa158015611d0f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d33919061453a565b611d69576040517f61081c1500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61167a816133c9565b6040517f5f259aba0000000000000000000000000000000000000000000000000000000081523360048201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1690635f259aba90602401602060405180830381865afa158015611dfc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e20919061453a565b611e56576040517f61081c1500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008060019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663fca513a86040518163ffffffff1660e01b8152600401602060405180830381865afa158015611ec4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ee8919061457b565b60015490915073ffffffffffffffffffffffffffffffffffffffff166311ca4fc2611f116106fe565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e084901b16815273ffffffffffffffffffffffffffffffffffffffff91821660048201529084166024820152604401600060405180830381600087803b158015611f7f57600080fd5b505af1158015611f93573d6000803e3d6000fd5b505060405173ffffffffffffffffffffffffffffffffffffffff841692507f3f82447be465b0b5a4a9e54c74d5f6ae73f2e9537f2cc1590a340524703d09619150600090a250565b6040517f5f259aba0000000000000000000000000000000000000000000000000000000081523360048201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1690635f259aba90602401602060405180830381865afa158015612065573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612089919061453a565b6120bf576040517f61081c1500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61271061ffff86161015806120e357506127106120dc8585614784565b61ffff1610155b806120fd57506127106120f68383614784565b61ffff1610155b15612134576040517f0b361d6900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6121578585612145866127106147aa565b85612152866127106147aa565b613c5c565b5050505050565b6040517f5f259aba0000000000000000000000000000000000000000000000000000000081523360048201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1690635f259aba90602401602060405180830381865afa1580156121e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061220c919061453a565b612242576040517f61081c1500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61167a816132a3565b6040517f5f259aba0000000000000000000000000000000000000000000000000000000081523360048201527f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1690635f259aba90602401602060405180830381865afa1580156122d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122f9919061453a565b61232f576040517f61081c1500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61167a81613152565b3b151590565b6001546040517ff67c5bd000000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8381166004830152600092169063f67c5bd090602401602060405180830381865afa1580156123af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123d39190614557565b90508015806123e25750806001145b15612419576040517f700ca0af00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b919050565b73ffffffffffffffffffffffffffffffffffffffff811661246b576040517fb2335f2e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff81163b6124d6576040517fdf4c572d00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff821660048201526024015b60405180910390fd5b6040517f70a0823100000000000000000000000000000000000000000000000000000000815230600482015273ffffffffffffffffffffffffffffffffffffffff8216906370a0823190602401602060405180830381865afa92505050801561257a575060408051601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016820190925261257791810190614557565b60015b6125b0576040517f528ca31d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16632630c12f6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561261e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612642919061457b565b6040517ff9a65030000000000000000000000000000000000000000000000000000000008152670de0b6b3a7640000600482015273ffffffffffffffffffffffffffffffffffffffff8381166024830152919091169063f9a6503090604401602060405180830381865afa9250505080156126f8575060408051601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682019092526126f591810190614557565b60015b61272e576040517f67a7cd4300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b506001546040517fd48bfca700000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff83811660048301529091169063d48bfca790602401600060405180830381600087803b15801561279c57600080fd5b505af11580156127b0573d6000803e3d6000fd5b505060405173ffffffffffffffffffffffffffffffffffffffff841692507fbeceb48aeaa805aeae57be163cca6249077a18734e408a85aa74e875c43738099150600090a250565b60025473ffffffffffffffffffffffffffffffffffffffff8381169116141561284d576040517f3b899cf900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001546040517f172c48c70000000000000000000000000000000000000000000000000000000081526000600482018190529173ffffffffffffffffffffffffffffffffffffffff169063172c48c7906024016040805180830381865afa1580156128bc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128e091906147cd565b91505061ffff821615806128fb57508061ffff168261ffff16115b15612932576040517f33c6608d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001546040517fa70bc54200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff858116600483015261ffff851660248301529091169063a70bc54290604401600060405180830381600087803b1580156129a957600080fd5b505af11580156129bd573d6000803e3d6000fd5b505060405161ffff8516815273ffffffffffffffffffffffffffffffffffffffff861692507f94525be3f877fb3bb3d260299de56a31f86aaacb06ccba90e4fbedcb693ac650915060200160405180910390a2505050565b60005460ff16612a81576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f5061757361626c653a206e6f742070617573656400000000000000000000000060448201526064016124cd565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a1565b73ffffffffffffffffffffffffffffffffffffffff8116612b43576040517fb2335f2e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff81163b612ba9576040517fdf4c572d00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff821660048201526024016124cd565b8073ffffffffffffffffffffffffffffffffffffffff1663c12c21c06040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015612c2e575060408051601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201909252612c2b9181019061457b565b60015b612c64576040517fe9eddd1700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60015473ffffffffffffffffffffffffffffffffffffffff82811691161461088e576040517fe9eddd1700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000612cc48383613e92565b9392505050565b6000610b43825490565b6000612cc48373ffffffffffffffffffffffffffffffffffffffff8416613ebc565b6000612d016106fe565b73ffffffffffffffffffffffffffffffffffffffff1663cff0ab966040518163ffffffff1660e01b8152600401606060405180830381865afa158015612d4b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612d6f9190614598565b505090506000612d7d6106fe565b73ffffffffffffffffffffffffffffffffffffffff1663860aefcf6040518163ffffffff1660e01b81526004016040805180830381865afa158015612dc6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612dea91906145e5565b915050806fffffffffffffffffffffffffffffffff16836fffffffffffffffffffffffffffffffff161015612e4b576040517f9aadd6f000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b826fffffffffffffffffffffffffffffffff16826fffffffffffffffffffffffffffffffff16146106f957612e7e6106fe565b6040517f9c55a0540000000000000000000000000000000000000000000000000000000081526fffffffffffffffffffffffffffffffff8516600482015273ffffffffffffffffffffffffffffffffffffffff9190911690639c55a05490602401600060405180830381600087803b158015612ef957600080fd5b505af1158015612f0d573d6000803e3d6000fd5b50506040516fffffffffffffffffffffffffffffffff861681527fa030eec20ae970821387224ec3bb15b4bd22b89bfb86dc4d2b3827aa3d99e48d925060200190505b60405180910390a1505050565b6000612f676106fe565b73ffffffffffffffffffffffffffffffffffffffff1663cff0ab966040518163ffffffff1660e01b8152600401606060405180830381865afa158015612fb1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612fd59190614598565b50509050816fffffffffffffffffffffffffffffffff16836fffffffffffffffffffffffffffffffff16118061302e5750806fffffffffffffffffffffffffffffffff16826fffffffffffffffffffffffffffffffff16115b15613065576040517f9aadd6f000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61306d6106fe565b6040517f601d66f60000000000000000000000000000000000000000000000000000000081526fffffffffffffffffffffffffffffffff80861660048301528416602482015273ffffffffffffffffffffffffffffffffffffffff919091169063601d66f690604401600060405180830381600087803b1580156130f057600080fd5b505af1158015613104573d6000803e3d6000fd5b5050604080516fffffffffffffffffffffffffffffffff8088168252861660208201527f4d4981437d0211f9e6843eb024d9ada1fa3a99514d4343d4aece106dd11524bb9350019050612f50565b600061315c6106fe565b73ffffffffffffffffffffffffffffffffffffffff1663cff0ab966040518163ffffffff1660e01b8152600401606060405180830381865afa1580156131a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131ca9190614598565b509150508015158215151461088e576131e16106fe565b6040517fffd9b907000000000000000000000000000000000000000000000000000000008152831515600482015273ffffffffffffffffffffffffffffffffffffffff919091169063ffd9b90790602401600060405180830381600087803b15801561324c57600080fd5b505af1158015613260573d6000803e3d6000fd5b505050507ff97ba903470ff3262b4a68a938fe81def401bac1bd742169d2e8d5c4ed2185d382604051613297911515815260200190565b60405180910390a15050565b73ffffffffffffffffffffffffffffffffffffffff81166132f0576040517fb2335f2e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6132f86106fe565b6040517fb55bb84b00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8381166004830152919091169063b55bb84b90602401600060405180830381600087803b15801561336357600080fd5b505af1158015613377573d6000803e3d6000fd5b505060405173ffffffffffffffffffffffffffffffffffffffff841681527fdac9a7995cbc0c0f01d78970fb6fd0b52fe0fe869eb6635e65cc1b5682b8325c925060200190505b60405180910390a150565b60006133d36106fe565b73ffffffffffffffffffffffffffffffffffffffff1663cff0ab966040518163ffffffff1660e01b8152600401606060405180830381865afa15801561341d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906134419190614598565b925050508064ffffffffff168264ffffffffff161461088e578164ffffffffff168164ffffffffff16118061347c57508164ffffffffff1642115b156134b3576040517fe4eaca7f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6134bb6106fe565b6040517feb9606df00000000000000000000000000000000000000000000000000000000815264ffffffffff8416600482015273ffffffffffffffffffffffffffffffffffffffff919091169063eb9606df90602401600060405180830381600087803b15801561352b57600080fd5b505af115801561353f573d6000803e3d6000fd5b505060405164ffffffffff851681527f0b3eb35ba750e7a7e4d26c9eee3d226f4e1f68c5568f4a3d051c94b241b02ac092506020019050613297565b73ffffffffffffffffffffffffffffffffffffffff82166135c8576040517fb2335f2e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff82163b61362e576040517fdf4c572d00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff831660048201526024016124cd565b61363781612af6565b60015473ffffffffffffffffffffffffffffffffffffffff8381169116148061369257506136636106fe565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b806136b7575060015473ffffffffffffffffffffffffffffffffffffffff8281169116145b806136f457506136c56106fe565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b1561372b576040517f727de5c600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001546040517fff68754300000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8381166004830152600092169063ff68754390602401602060405180830381865afa15801561379c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906137c0919061457b565b73ffffffffffffffffffffffffffffffffffffffff1614158061388c57506001546040517ffdd5764500000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8481166004830152600092169063fdd5764590602401602060405180830381865afa15801561384f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613873919061457b565b73ffffffffffffffffffffffffffffffffffffffff1614155b156138c3576040517f21ff1e7100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001546040517f6e98e5e400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8381166004830152848116602483015290911690636e98e5e490604401600060405180830381600087803b15801561393857600080fd5b505af115801561394c573d6000803e3d6000fd5b50505050613964826003613faf90919063ffffffff16565b508073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f4bcbefaef68b99503d502f5a6abe7bca2b183ab8ac55457013c77d084ebd130560405160405180910390a35050565b60005460ff1615613a30576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f5061757361626c653a207061757365640000000000000000000000000000000060448201526064016124cd565b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612acc3390565b6001546040517fdc2b21c100000000000000000000000000000000000000000000000000000000815260ff8316600482015273ffffffffffffffffffffffffffffffffffffffff9091169063dc2b21c190602401600060405180830381600087803b158015613af157600080fd5b505af1158015613b05573d6000803e3d6000fd5b505060405160ff841681527f73caacd705657a7d283e48ecf288b73bc517e3aea1bbc9da2fd54a979e8aa950925060200190506133be565b73ffffffffffffffffffffffffffffffffffffffff8116613b8a576040517fb2335f2e00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b613b926106fe565b6040517fdcf6548200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8381166004830152919091169063dcf6548290602401600060405180830381600087803b158015613bfd57600080fd5b505af1158015613c11573d6000803e3d6000fd5b505060405173ffffffffffffffffffffffffffffffffffffffff841681527f32e53e2e527af8518ae889e5f7e674bc83f7cf68e4cc059aceeaa0e64208b85b925060200190506133be565b6000613c6885856147aa565b6001546040517f172c48c700000000000000000000000000000000000000000000000000000000815260006004820181905292935073ffffffffffffffffffffffffffffffffffffffff9091169063172c48c7906024016040805180830381865afa158015613cdb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613cff91906147cd565b9150508061ffff168261ffff1614613d6e57613d1a82613fd1565b60025460405161ffff8416815273ffffffffffffffffffffffffffffffffffffffff909116907f94525be3f877fb3bb3d260299de56a31f86aaacb06ccba90e4fbedcb693ac6509060200160405180910390a25b6001546040517f944ac59f00000000000000000000000000000000000000000000000000000000815261ffff808a1660048301528089166024830152808816604483015280871660648301528516608482015273ffffffffffffffffffffffffffffffffffffffff9091169063944ac59f9060a401600060405180830381600087803b158015613dfd57600080fd5b505af1158015613e11573d6000803e3d6000fd5b505050507f2214a403d5f8d049e52eacca974c6dea01a471e41d6a18903bfaf7dbc709741f878787612710613e4691906147aa565b87613e53886127106147aa565b6040805161ffff96871681529486166020860152928516848401529084166060840152909216608082015290519081900360a00190a150505050505050565b6000826000018281548110613ea957613ea9614726565b9060005260206000200154905092915050565b60008181526001830160205260408120548015613fa5576000613ee06001836147fc565b8554909150600090613ef4906001906147fc565b9050818114613f59576000866000018281548110613f1457613f14614726565b9060005260206000200154905080876000018481548110613f3757613f37614726565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080613f6a57613f6a614813565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610b43565b6000915050610b43565b6000612cc48373ffffffffffffffffffffffffffffffffffffffff8416614296565b6001546002546040517fa70bc54200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff918216600482015261ffff8416602482015291169063a70bc54290604401600060405180830381600087803b15801561404a57600080fd5b505af115801561405e573d6000803e3d6000fd5b505050506000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663458936f56040518163ffffffff1660e01b8152600401602060405180830381865afa1580156140d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906140f59190614557565b905060015b818110156106f9576001546040517f172c48c700000000000000000000000000000000000000000000000000000000815260048101839052600091829173ffffffffffffffffffffffffffffffffffffffff9091169063172c48c7906024016040805180830381865afa158015614175573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061419991906147cd565b915091508461ffff168161ffff16111561428c576001546040517fa70bc54200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff848116600483015261ffff881660248301529091169063a70bc54290604401600060405180830381600087803b15801561422457600080fd5b505af1158015614238573d6000803e3d6000fd5b505060405161ffff8816815273ffffffffffffffffffffffffffffffffffffffff851692507f94525be3f877fb3bb3d260299de56a31f86aaacb06ccba90e4fbedcb693ac650915060200160405180910390a25b50506001016140fa565b60008181526001830160205260408120546142dd57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610b43565b506000610b43565b73ffffffffffffffffffffffffffffffffffffffff8116811461167a57600080fd5b60006020828403121561431957600080fd5b8135612cc4816142e5565b61ffff8116811461167a57600080fd5b6000806040838503121561434757600080fd5b8235614352816142e5565b9150602083013561436281614324565b809150509250929050565b60006020828403121561437f57600080fd5b5035919050565b801515811461167a57600080fd5b600080604083850312156143a757600080fd5b82356143b2816142e5565b9150602083013561436281614386565b600080604083850312156143d557600080fd5b82356143e0816142e5565b91506020830135614362816142e5565b6fffffffffffffffffffffffffffffffff8116811461167a57600080fd5b60006020828403121561442057600080fd5b8135612cc4816143f0565b6000806040838503121561443e57600080fd5b8235614449816143f0565b91506020830135614362816143f0565b60006020828403121561446b57600080fd5b813560ff81168114612cc457600080fd5b64ffffffffff8116811461167a57600080fd5b6000602082840312156144a157600080fd5b8135612cc48161447c565b600080600080600060a086880312156144c457600080fd5b85356144cf81614324565b945060208601356144df81614324565b935060408601356144ef81614324565b925060608601356144ff81614324565b9150608086013561450f81614324565b809150509295509295909350565b60006020828403121561452f57600080fd5b8135612cc481614386565b60006020828403121561454c57600080fd5b8151612cc481614386565b60006020828403121561456957600080fd5b5051919050565b8051612419816142e5565b60006020828403121561458d57600080fd5b8151612cc4816142e5565b6000806000606084860312156145ad57600080fd5b83516145b8816143f0565b60208501519093506145c981614386565b60408501519092506145da8161447c565b809150509250925092565b600080604083850312156145f857600080fd5b8251614603816143f0565b6020840151909250614362816143f0565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000602080838503121561465657600080fd5b825167ffffffffffffffff8082111561466e57600080fd5b818501915085601f83011261468257600080fd5b81518181111561469457614694614614565b8060051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f830116810181811085821117156146d7576146d7614614565b6040529182528482019250838101850191888311156146f557600080fd5b938501935b8285101561471a5761470b85614570565b845293850193928501926146fa565b98975050505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061ffff8083168185168083038211156147a1576147a1614755565b01949350505050565b600061ffff838116908316818110156147c5576147c5614755565b039392505050565b600080604083850312156147e057600080fd5b82516147eb816142e5565b602084015190925061436281614324565b60008282101561480e5761480e614755565b500390565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea264697066735822122046c364b67d38a3dd85b57e027716324d90dd1df102f265f0a0e2697babdb3f3b64736f6c634300080a003394525be3f877fb3bb3d260299de56a31f86aaacb06ccba90e4fbedcb693ac650";
|
|
331
|
-
|
|
332
|
-
type CreditManagerFactoryConstructorParams =
|
|
333
|
-
| [signer?: Signer]
|
|
334
|
-
| ConstructorParameters<typeof ContractFactory>;
|
|
335
|
-
|
|
336
|
-
const isSuperArgs = (
|
|
337
|
-
xs: CreditManagerFactoryConstructorParams
|
|
338
|
-
): xs is ConstructorParameters<typeof ContractFactory> => xs.length > 1;
|
|
339
|
-
|
|
340
|
-
export class CreditManagerFactory__factory extends ContractFactory {
|
|
341
|
-
constructor(...args: CreditManagerFactoryConstructorParams) {
|
|
342
|
-
if (isSuperArgs(args)) {
|
|
343
|
-
super(...args);
|
|
344
|
-
} else {
|
|
345
|
-
super(_abi, _bytecode, args[0]);
|
|
346
|
-
}
|
|
347
|
-
}
|
|
348
|
-
|
|
349
|
-
override deploy(
|
|
350
|
-
_pool: string,
|
|
351
|
-
opts: CreditManagerOptsStruct,
|
|
352
|
-
salt: BigNumberish,
|
|
353
|
-
overrides?: Overrides & { from?: string | Promise<string> }
|
|
354
|
-
): Promise<CreditManagerFactory> {
|
|
355
|
-
return super.deploy(
|
|
356
|
-
_pool,
|
|
357
|
-
opts,
|
|
358
|
-
salt,
|
|
359
|
-
overrides || {}
|
|
360
|
-
) as Promise<CreditManagerFactory>;
|
|
361
|
-
}
|
|
362
|
-
override getDeployTransaction(
|
|
363
|
-
_pool: string,
|
|
364
|
-
opts: CreditManagerOptsStruct,
|
|
365
|
-
salt: BigNumberish,
|
|
366
|
-
overrides?: Overrides & { from?: string | Promise<string> }
|
|
367
|
-
): TransactionRequest {
|
|
368
|
-
return super.getDeployTransaction(_pool, opts, salt, overrides || {});
|
|
369
|
-
}
|
|
370
|
-
override attach(address: string): CreditManagerFactory {
|
|
371
|
-
return super.attach(address) as CreditManagerFactory;
|
|
372
|
-
}
|
|
373
|
-
override connect(signer: Signer): CreditManagerFactory__factory {
|
|
374
|
-
return super.connect(signer) as CreditManagerFactory__factory;
|
|
375
|
-
}
|
|
376
|
-
|
|
377
|
-
static readonly bytecode = _bytecode;
|
|
378
|
-
static readonly abi = _abi;
|
|
379
|
-
static createInterface(): CreditManagerFactoryInterface {
|
|
380
|
-
return new utils.Interface(_abi) as CreditManagerFactoryInterface;
|
|
381
|
-
}
|
|
382
|
-
static connect(
|
|
383
|
-
address: string,
|
|
384
|
-
signerOrProvider: Signer | Provider
|
|
385
|
-
): CreditManagerFactory {
|
|
386
|
-
return new Contract(
|
|
387
|
-
address,
|
|
388
|
-
_abi,
|
|
389
|
-
signerOrProvider
|
|
390
|
-
) as CreditManagerFactory;
|
|
391
|
-
}
|
|
392
|
-
}
|