lynx-client 0.0.13 → 0.0.15
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/dist/cjs/index.js +10 -1
- package/dist/cjs/lib/contractsIntegration/EngineChipService/EngineChipService.js +289 -0
- package/dist/cjs/lib/contractsIntegration/EngineChipService/IEngineChipService.js +2 -0
- package/dist/cjs/lib/contractsIntegration/EngineChipService/index.js +5 -0
- package/dist/cjs/lib/contractsIntegration/OnBehalfTradingService/OnBehalfTradingService.js +25 -2
- package/dist/cjs/lib/contractsIntegration/OrderBookService/index.js +5 -0
- package/dist/cjs/lib/contractsIntegration/TradersPortalService/TradersPortalServiceService.js +6 -0
- package/dist/cjs/lib/contractsIntegration/TriggersService/index.js +5 -0
- package/dist/cjs/lib/contractsIntegration/WrappedNativeEngineChipHelperService/IWrappedNativeEngineChipHelperService.js +2 -0
- package/dist/cjs/lib/contractsIntegration/WrappedNativeEngineChipHelperService/WrappedNativeEngineChipHelperService.js +71 -0
- package/dist/cjs/lib/contractsIntegration/WrappedNativeEngineChipHelperService/index.js +5 -0
- package/dist/cjs/lib/contractsIntegration/deployedContractsConnector.js +34 -0
- package/dist/cjs/lib/typechain/contracts/Lynx/Chips/EngineChip/EngineChip.js +2 -0
- package/dist/cjs/lib/typechain/contracts/Peripheral/Chips/WrappedNativeEngineChipHelper.js +2 -0
- package/dist/cjs/lib/typechain/factories/contracts/Lynx/Chips/EngineChip/EngineChip__factory.js +989 -0
- package/dist/cjs/lib/typechain/factories/contracts/Lynx/Lex/LexPool/LexPoolV1__factory.js +1 -1
- package/dist/cjs/lib/typechain/factories/contracts/Lynx/Lex/PoolAccountant/PoolAccountantV1__factory.js +1 -1
- package/dist/cjs/lib/typechain/factories/contracts/Lynx/OnBehalfTrading/OnBehalfTradingV1__factory.js +195 -1
- package/dist/cjs/lib/typechain/factories/contracts/Lynx/OrderBook/OrderBookV1__factory.js +1 -1
- package/dist/cjs/lib/typechain/factories/contracts/Lynx/TradersPortal/TradersPortalV1__factory.js +27 -1
- package/dist/cjs/lib/typechain/factories/contracts/Lynx/TradingFloor/TradingFloorV1__factory.js +1 -1
- package/dist/cjs/lib/typechain/factories/contracts/Lynx/Triggers/TriggersV1__factory.js +79 -1
- package/dist/cjs/lib/typechain/factories/contracts/Peripheral/Chips/WrappedNativeEngineChipHelper__factory.js +133 -0
- package/dist/cjs/lib/typechain/factories/contracts/Peripheral/Lens/TradingFloorLens__factory.js +1 -1
- package/dist/cjs/lib/typechain/factories/contracts/Peripheral/Lens/TriggersAndPortalLens__factory.js +1 -1
- package/dist/esm/index.d.ts +10 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +10 -1
- package/dist/esm/lib/contractsIntegration/EngineChipService/EngineChipService.d.ts +27 -0
- package/dist/esm/lib/contractsIntegration/EngineChipService/EngineChipService.d.ts.map +1 -0
- package/dist/esm/lib/contractsIntegration/EngineChipService/EngineChipService.js +289 -0
- package/dist/esm/lib/contractsIntegration/EngineChipService/IEngineChipService.d.ts +83 -0
- package/dist/esm/lib/contractsIntegration/EngineChipService/IEngineChipService.d.ts.map +1 -0
- package/dist/esm/lib/contractsIntegration/EngineChipService/IEngineChipService.js +2 -0
- package/dist/esm/lib/contractsIntegration/EngineChipService/index.d.ts +3 -0
- package/dist/esm/lib/contractsIntegration/EngineChipService/index.d.ts.map +1 -0
- package/dist/esm/lib/contractsIntegration/EngineChipService/index.js +5 -0
- package/dist/esm/lib/contractsIntegration/OnBehalfTradingService/IOnBehalfTradingService.d.ts +6 -1
- package/dist/esm/lib/contractsIntegration/OnBehalfTradingService/IOnBehalfTradingService.d.ts.map +1 -1
- package/dist/esm/lib/contractsIntegration/OnBehalfTradingService/OnBehalfTradingService.d.ts.map +1 -1
- package/dist/esm/lib/contractsIntegration/OnBehalfTradingService/OnBehalfTradingService.js +25 -2
- package/dist/esm/lib/contractsIntegration/OrderBookService/index.d.ts +3 -0
- package/dist/esm/lib/contractsIntegration/OrderBookService/index.d.ts.map +1 -0
- package/dist/esm/lib/contractsIntegration/OrderBookService/index.js +5 -0
- package/dist/esm/lib/contractsIntegration/TradersPortalService/ITradersPortalService.d.ts +2 -0
- package/dist/esm/lib/contractsIntegration/TradersPortalService/ITradersPortalService.d.ts.map +1 -1
- package/dist/esm/lib/contractsIntegration/TradersPortalService/TradersPortalServiceService.d.ts.map +1 -1
- package/dist/esm/lib/contractsIntegration/TradersPortalService/TradersPortalServiceService.js +6 -0
- package/dist/esm/lib/contractsIntegration/TriggersService/index.d.ts +3 -0
- package/dist/esm/lib/contractsIntegration/TriggersService/index.d.ts.map +1 -0
- package/dist/esm/lib/contractsIntegration/TriggersService/index.js +5 -0
- package/dist/esm/lib/contractsIntegration/WrappedNativeEngineChipHelperService/IWrappedNativeEngineChipHelperService.d.ts +40 -0
- package/dist/esm/lib/contractsIntegration/WrappedNativeEngineChipHelperService/IWrappedNativeEngineChipHelperService.d.ts.map +1 -0
- package/dist/esm/lib/contractsIntegration/WrappedNativeEngineChipHelperService/IWrappedNativeEngineChipHelperService.js +2 -0
- package/dist/esm/lib/contractsIntegration/WrappedNativeEngineChipHelperService/WrappedNativeEngineChipHelperService.d.ts +22 -0
- package/dist/esm/lib/contractsIntegration/WrappedNativeEngineChipHelperService/WrappedNativeEngineChipHelperService.d.ts.map +1 -0
- package/dist/esm/lib/contractsIntegration/WrappedNativeEngineChipHelperService/WrappedNativeEngineChipHelperService.js +71 -0
- package/dist/esm/lib/contractsIntegration/WrappedNativeEngineChipHelperService/index.d.ts +3 -0
- package/dist/esm/lib/contractsIntegration/WrappedNativeEngineChipHelperService/index.d.ts.map +1 -0
- package/dist/esm/lib/contractsIntegration/WrappedNativeEngineChipHelperService/index.js +5 -0
- package/dist/esm/lib/contractsIntegration/deployedContractsConnector.d.ts +10 -0
- package/dist/esm/lib/contractsIntegration/deployedContractsConnector.d.ts.map +1 -1
- package/dist/esm/lib/contractsIntegration/deployedContractsConnector.js +34 -0
- package/dist/esm/lib/typechain/contracts/Lynx/Chips/EngineChip/EngineChip.d.ts +524 -0
- package/dist/esm/lib/typechain/contracts/Lynx/Chips/EngineChip/EngineChip.d.ts.map +1 -0
- package/dist/esm/lib/typechain/contracts/Lynx/Chips/EngineChip/EngineChip.js +2 -0
- package/dist/esm/lib/typechain/contracts/Lynx/OnBehalfTrading/OnBehalfTradingV1.d.ts +158 -2
- package/dist/esm/lib/typechain/contracts/Lynx/OnBehalfTrading/OnBehalfTradingV1.d.ts.map +1 -1
- package/dist/esm/lib/typechain/contracts/Lynx/TradersPortal/TradersPortalV1.d.ts +17 -1
- package/dist/esm/lib/typechain/contracts/Lynx/TradersPortal/TradersPortalV1.d.ts.map +1 -1
- package/dist/esm/lib/typechain/contracts/Lynx/Triggers/TriggersV1.d.ts +33 -1
- package/dist/esm/lib/typechain/contracts/Lynx/Triggers/TriggersV1.d.ts.map +1 -1
- package/dist/esm/lib/typechain/contracts/Peripheral/Chips/WrappedNativeEngineChipHelper.d.ts +56 -0
- package/dist/esm/lib/typechain/contracts/Peripheral/Chips/WrappedNativeEngineChipHelper.d.ts.map +1 -0
- package/dist/esm/lib/typechain/contracts/Peripheral/Chips/WrappedNativeEngineChipHelper.js +2 -0
- package/dist/esm/lib/typechain/factories/contracts/Lynx/Chips/EngineChip/EngineChip__factory.d.ts +756 -0
- package/dist/esm/lib/typechain/factories/contracts/Lynx/Chips/EngineChip/EngineChip__factory.d.ts.map +1 -0
- package/dist/esm/lib/typechain/factories/contracts/Lynx/Chips/EngineChip/EngineChip__factory.js +989 -0
- package/dist/esm/lib/typechain/factories/contracts/Lynx/Lex/LexPool/LexPoolV1__factory.d.ts +1 -1
- package/dist/esm/lib/typechain/factories/contracts/Lynx/Lex/LexPool/LexPoolV1__factory.js +1 -1
- package/dist/esm/lib/typechain/factories/contracts/Lynx/Lex/PoolAccountant/PoolAccountantV1__factory.d.ts +1 -1
- package/dist/esm/lib/typechain/factories/contracts/Lynx/Lex/PoolAccountant/PoolAccountantV1__factory.js +1 -1
- package/dist/esm/lib/typechain/factories/contracts/Lynx/OnBehalfTrading/OnBehalfTradingV1__factory.d.ts +155 -1
- package/dist/esm/lib/typechain/factories/contracts/Lynx/OnBehalfTrading/OnBehalfTradingV1__factory.d.ts.map +1 -1
- package/dist/esm/lib/typechain/factories/contracts/Lynx/OnBehalfTrading/OnBehalfTradingV1__factory.js +195 -1
- package/dist/esm/lib/typechain/factories/contracts/Lynx/OrderBook/OrderBookV1__factory.d.ts +1 -1
- package/dist/esm/lib/typechain/factories/contracts/Lynx/OrderBook/OrderBookV1__factory.js +1 -1
- package/dist/esm/lib/typechain/factories/contracts/Lynx/TradersPortal/TradersPortalV1__factory.d.ts +21 -1
- package/dist/esm/lib/typechain/factories/contracts/Lynx/TradersPortal/TradersPortalV1__factory.d.ts.map +1 -1
- package/dist/esm/lib/typechain/factories/contracts/Lynx/TradersPortal/TradersPortalV1__factory.js +27 -1
- package/dist/esm/lib/typechain/factories/contracts/Lynx/TradingFloor/TradingFloorV1__factory.d.ts +1 -1
- package/dist/esm/lib/typechain/factories/contracts/Lynx/TradingFloor/TradingFloorV1__factory.d.ts.map +1 -1
- package/dist/esm/lib/typechain/factories/contracts/Lynx/TradingFloor/TradingFloorV1__factory.js +1 -1
- package/dist/esm/lib/typechain/factories/contracts/Lynx/Triggers/TriggersV1__factory.d.ts +61 -1
- package/dist/esm/lib/typechain/factories/contracts/Lynx/Triggers/TriggersV1__factory.d.ts.map +1 -1
- package/dist/esm/lib/typechain/factories/contracts/Lynx/Triggers/TriggersV1__factory.js +79 -1
- package/dist/esm/lib/typechain/factories/contracts/Peripheral/Chips/WrappedNativeEngineChipHelper__factory.d.ts +96 -0
- package/dist/esm/lib/typechain/factories/contracts/Peripheral/Chips/WrappedNativeEngineChipHelper__factory.d.ts.map +1 -0
- package/dist/esm/lib/typechain/factories/contracts/Peripheral/Chips/WrappedNativeEngineChipHelper__factory.js +133 -0
- package/dist/esm/lib/typechain/factories/contracts/Peripheral/Lens/TradingFloorLens__factory.d.ts +1 -1
- package/dist/esm/lib/typechain/factories/contracts/Peripheral/Lens/TradingFloorLens__factory.js +1 -1
- package/dist/esm/lib/typechain/factories/contracts/Peripheral/Lens/TriggersAndPortalLens__factory.d.ts +1 -1
- package/dist/esm/lib/typechain/factories/contracts/Peripheral/Lens/TriggersAndPortalLens__factory.js +1 -1
- package/dist/types/index.d.ts +10 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/lib/contractsIntegration/EngineChipService/EngineChipService.d.ts +27 -0
- package/dist/types/lib/contractsIntegration/EngineChipService/EngineChipService.d.ts.map +1 -0
- package/dist/types/lib/contractsIntegration/EngineChipService/IEngineChipService.d.ts +83 -0
- package/dist/types/lib/contractsIntegration/EngineChipService/IEngineChipService.d.ts.map +1 -0
- package/dist/types/lib/contractsIntegration/EngineChipService/index.d.ts +3 -0
- package/dist/types/lib/contractsIntegration/EngineChipService/index.d.ts.map +1 -0
- package/dist/types/lib/contractsIntegration/OnBehalfTradingService/IOnBehalfTradingService.d.ts +6 -1
- package/dist/types/lib/contractsIntegration/OnBehalfTradingService/IOnBehalfTradingService.d.ts.map +1 -1
- package/dist/types/lib/contractsIntegration/OnBehalfTradingService/OnBehalfTradingService.d.ts.map +1 -1
- package/dist/types/lib/contractsIntegration/OrderBookService/index.d.ts +3 -0
- package/dist/types/lib/contractsIntegration/OrderBookService/index.d.ts.map +1 -0
- package/dist/types/lib/contractsIntegration/TradersPortalService/ITradersPortalService.d.ts +2 -0
- package/dist/types/lib/contractsIntegration/TradersPortalService/ITradersPortalService.d.ts.map +1 -1
- package/dist/types/lib/contractsIntegration/TradersPortalService/TradersPortalServiceService.d.ts.map +1 -1
- package/dist/types/lib/contractsIntegration/TriggersService/index.d.ts +3 -0
- package/dist/types/lib/contractsIntegration/TriggersService/index.d.ts.map +1 -0
- package/dist/types/lib/contractsIntegration/WrappedNativeEngineChipHelperService/IWrappedNativeEngineChipHelperService.d.ts +40 -0
- package/dist/types/lib/contractsIntegration/WrappedNativeEngineChipHelperService/IWrappedNativeEngineChipHelperService.d.ts.map +1 -0
- package/dist/types/lib/contractsIntegration/WrappedNativeEngineChipHelperService/WrappedNativeEngineChipHelperService.d.ts +22 -0
- package/dist/types/lib/contractsIntegration/WrappedNativeEngineChipHelperService/WrappedNativeEngineChipHelperService.d.ts.map +1 -0
- package/dist/types/lib/contractsIntegration/WrappedNativeEngineChipHelperService/index.d.ts +3 -0
- package/dist/types/lib/contractsIntegration/WrappedNativeEngineChipHelperService/index.d.ts.map +1 -0
- package/dist/types/lib/contractsIntegration/deployedContractsConnector.d.ts +10 -0
- package/dist/types/lib/contractsIntegration/deployedContractsConnector.d.ts.map +1 -1
- package/dist/types/lib/typechain/contracts/Lynx/Chips/EngineChip/EngineChip.d.ts +524 -0
- package/dist/types/lib/typechain/contracts/Lynx/Chips/EngineChip/EngineChip.d.ts.map +1 -0
- package/dist/types/lib/typechain/contracts/Lynx/OnBehalfTrading/OnBehalfTradingV1.d.ts +158 -2
- package/dist/types/lib/typechain/contracts/Lynx/OnBehalfTrading/OnBehalfTradingV1.d.ts.map +1 -1
- package/dist/types/lib/typechain/contracts/Lynx/TradersPortal/TradersPortalV1.d.ts +17 -1
- package/dist/types/lib/typechain/contracts/Lynx/TradersPortal/TradersPortalV1.d.ts.map +1 -1
- package/dist/types/lib/typechain/contracts/Lynx/Triggers/TriggersV1.d.ts +33 -1
- package/dist/types/lib/typechain/contracts/Lynx/Triggers/TriggersV1.d.ts.map +1 -1
- package/dist/types/lib/typechain/contracts/Peripheral/Chips/WrappedNativeEngineChipHelper.d.ts +56 -0
- package/dist/types/lib/typechain/contracts/Peripheral/Chips/WrappedNativeEngineChipHelper.d.ts.map +1 -0
- package/dist/types/lib/typechain/factories/contracts/Lynx/Chips/EngineChip/EngineChip__factory.d.ts +756 -0
- package/dist/types/lib/typechain/factories/contracts/Lynx/Chips/EngineChip/EngineChip__factory.d.ts.map +1 -0
- package/dist/types/lib/typechain/factories/contracts/Lynx/Lex/LexPool/LexPoolV1__factory.d.ts +1 -1
- package/dist/types/lib/typechain/factories/contracts/Lynx/Lex/PoolAccountant/PoolAccountantV1__factory.d.ts +1 -1
- package/dist/types/lib/typechain/factories/contracts/Lynx/OnBehalfTrading/OnBehalfTradingV1__factory.d.ts +155 -1
- package/dist/types/lib/typechain/factories/contracts/Lynx/OnBehalfTrading/OnBehalfTradingV1__factory.d.ts.map +1 -1
- package/dist/types/lib/typechain/factories/contracts/Lynx/OrderBook/OrderBookV1__factory.d.ts +1 -1
- package/dist/types/lib/typechain/factories/contracts/Lynx/TradersPortal/TradersPortalV1__factory.d.ts +21 -1
- package/dist/types/lib/typechain/factories/contracts/Lynx/TradersPortal/TradersPortalV1__factory.d.ts.map +1 -1
- package/dist/types/lib/typechain/factories/contracts/Lynx/TradingFloor/TradingFloorV1__factory.d.ts +1 -1
- package/dist/types/lib/typechain/factories/contracts/Lynx/TradingFloor/TradingFloorV1__factory.d.ts.map +1 -1
- package/dist/types/lib/typechain/factories/contracts/Lynx/Triggers/TriggersV1__factory.d.ts +61 -1
- package/dist/types/lib/typechain/factories/contracts/Lynx/Triggers/TriggersV1__factory.d.ts.map +1 -1
- package/dist/types/lib/typechain/factories/contracts/Peripheral/Chips/WrappedNativeEngineChipHelper__factory.d.ts +96 -0
- package/dist/types/lib/typechain/factories/contracts/Peripheral/Chips/WrappedNativeEngineChipHelper__factory.d.ts.map +1 -0
- package/dist/types/lib/typechain/factories/contracts/Peripheral/Lens/TradingFloorLens__factory.d.ts +1 -1
- package/dist/types/lib/typechain/factories/contracts/Peripheral/Lens/TriggersAndPortalLens__factory.d.ts +1 -1
- package/package.json +1 -1
|
@@ -14,7 +14,7 @@ export declare class TriggersV1__factory extends ContractFactory {
|
|
|
14
14
|
deploymentTransaction(): ContractTransactionResponse;
|
|
15
15
|
}>;
|
|
16
16
|
connect(runner: ContractRunner | null): TriggersV1__factory;
|
|
17
|
-
static readonly bytecode = "0x6101206040526003600755603c600855603c600955603c600a5560b4600b55610708600c556103e8620186a0600162000039919062000291565b620000459190620002bd565b600d556103e86200005b620186a0600262000291565b620000679190620002bd565b600e556003600f553480156200007c57600080fd5b5060405162004ee838038062004ee88339810160408190526200009f91620002f9565b806001600160a01b0316637b1039996040518163ffffffff1660e01b8152600401602060405180830381865afa158015620000de573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001049190620002f9565b606462000116620186a0600162000291565b620001229190620002bd565b606462000134620186a0600a62000291565b620001409190620002bd565b600080546001600160a01b0319163317905560805260a0526001600160a01b0390811660c0528116620001a85760405162461bcd60e51b815260206004820152600c60248201526b57524f4e475f504152414d5360a01b604482015260640160405180910390fd5b6001600160a01b03811660e081905260408051637b10399960e01b81529051637b103999916004808201926020929091908290030181865afa158015620001f3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002199190620002f9565b6001600160a01b031663776af5ba6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000257573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200027d9190620002f9565b6001600160a01b0316610100525062000320565b8082028115828204841417620002b757634e487b7160e01b600052601160045260246000fd5b92915050565b600082620002db57634e487b7160e01b600052601260045260246000fd5b500490565b6001600160a01b0381168114620002f657600080fd5b50565b6000602082840312156200030c57600080fd5b81516200031981620002e0565b9392505050565b60805160a05160c05160e05161010051614ab8620004306000396000818161076001528181610fc201528181611bb7015281816127100152612dd801526000818161039801528181610b3401528181610cd301528181611198015281816112f00152818161141b015281816115c901528181611817015281816118b1015281816119e101528181611ca201528181611e1001528181611eaa01528181611fd701528181612158015281816123080152818161242d01528181612508015281816127fb01528181612b4701528181612c9e01528181612ecd015261397d015260008181613339015261366101526000818161051501526136bc01526000818161098d0152613c460152614ab86000f3fe6080604052600436106103815760003560e01c8063776af5ba116101d1578063ad1f2b5611610102578063c4ae3168116100a0578063e9c714f21161006f578063e9c714f214610a37578063f851a44014610a4c578063fae5a83f14610a6c578063fd057e9414610a8c57600080fd5b8063c4ae3168146109cf578063d99dc0c1146109e4578063e231377014610a04578063e8051b0114610a2457600080fd5b8063b71f3cfe116100dc578063b71f3cfe14610943578063b81bfa051461095b578063b88750a91461097b578063bfc084d9146109af57600080fd5b8063ad1f2b56146108f4578063b187bd2614610909578063b71d1a0c1461092357600080fd5b80639abf17821161016f578063a5b6020811610149578063a5b602081461088f578063a5e02c8d146108a5578063a9f7c521146108c5578063aaf5eb68146108d857600080fd5b80639abf17821461081c5780639f918f451461083c578063a1d627a11461086f57600080fd5b806380193b26116101ab57806380193b26146107ae57806381405205146107c557806386c7f19a146107db5780638f062227146107fd57600080fd5b8063776af5ba1461074e5780637f31c2db146107825780637f588b911461079857600080fd5b8063392503e0116102b65780634cdb06a5116102545780636c1bb5ca116102235780636c1bb5ca146106e8578063718ddc14146107085780637670d9481461071b578063771ad70d1461073b57600080fd5b80634cdb06a51461065a5780634d3691511461067a5780635d2cdfea1461068d5780636447dc8b146106d557600080fd5b8063410c0b7c11610290578063410c0b7c146105fb57806345b6171314610611578063490580e3146106275780634bdf19731461064757600080fd5b8063392503e0146105bd5780633b321666146105d35780633be3d626146105e657600080fd5b806326b4120a1161032357806333a01d32116102fd57806333a01d321461050357806336930d0b1461053757806336b669f714610557578063382672571461059d57600080fd5b806326b4120a146104935780632f86d7c2146104b357806333511e5e146104d357600080fd5b8063221407af1161035f578063221407af1461042857806322ede93c1461043d57806325577e9f14610453578063267822471461047357600080fd5b80630d3b0b761461038657806310b4cc13146103d757806320cb5976146103fb575b600080fd5b34801561039257600080fd5b506103ba7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b3480156103e357600080fd5b506103ed600d5481565b6040519081526020016103ce565b34801561040757600080fd5b506103ed610416366004614157565b60106020526000908152604090205481565b61043b6104363660046141bb565b610aac565b005b34801561044957600080fd5b506103ed600e5481565b34801561045f57600080fd5b5061043b61046e366004614218565b610db3565b34801561047f57600080fd5b506001546103ba906001600160a01b031681565b34801561049f57600080fd5b5061043b6104ae366004614157565b610deb565b3480156104bf57600080fd5b5061043b6104ce366004614157565b610e82565b3480156104df57600080fd5b506104f36104ee366004614248565b610f1e565b60405190151581526020016103ce565b34801561050f57600080fd5b506103ed7f000000000000000000000000000000000000000000000000000000000000000081565b34801561054357600080fd5b5061043b610552366004614157565b610f31565b61056a6105653660046141bb565b6110e8565b60408051825181526020808401516001600160401b039081169183019190915292820151909216908201526060016103ce565b3480156105a957600080fd5b5061043b6105b8366004614157565b611119565b3480156105c957600080fd5b506103ed600c5481565b61043b6105e13660046141bb565b611399565b3480156105f257600080fd5b5061043b6116a7565b34801561060757600080fd5b506103ed600a5481565b34801561061d57600080fd5b506103ed60075481565b34801561063357600080fd5b5061043b610642366004614157565b611733565b61043b6106553660046141bb565b611786565b34801561066657600080fd5b5061043b610675366004614157565b611abd565b61043b6106883660046141bb565b611b26565b34801561069957600080fd5b506106c06106a8366004614157565b60056020526000908152604090205463ffffffff1681565b60405163ffffffff90911681526020016103ce565b61043b6106e33660046141bb565b611d7f565b3480156106f457600080fd5b5061043b610703366004614218565b6120a2565b61043b6107163660046141bb565b6120d6565b34801561072757600080fd5b5061043b610736366004614157565b61233f565b61043b6107493660046141bb565b61239c565b34801561075a57600080fd5b506103ba7f000000000000000000000000000000000000000000000000000000000000000081565b34801561078e57600080fd5b506103ed60085481565b3480156107a457600080fd5b506103ed60095481565b3480156107ba57600080fd5b506103ed620186a081565b3480156107d157600080fd5b506103ed600f5481565b3480156107e757600080fd5b506107f06125de565b6040516103ce9190614271565b34801561080957600080fd5b506011546104f390610100900460ff1681565b34801561082857600080fd5b5061043b610837366004614157565b6125ef565b34801561084857600080fd5b506106c0610857366004614157565b60046020526000908152604090205463ffffffff1681565b34801561087b57600080fd5b506006546103ba906001600160a01b031681565b34801561089b57600080fd5b506103ed600b5481565b3480156108b157600080fd5b5061043b6108c0366004614248565b61264c565b61043b6108d33660046141bb565b61267f565b3480156108e457600080fd5b506103ed670de0b6b3a764000081565b34801561090057600080fd5b506103ed606481565b34801561091557600080fd5b506011546104f39060ff1681565b34801561092f57600080fd5b5061043b61093e366004614248565b6128cb565b34801561094f57600080fd5b506103ed633b9aca0081565b34801561096757600080fd5b5061043b610976366004614157565b612973565b34801561098757600080fd5b506103ed7f000000000000000000000000000000000000000000000000000000000000000081565b3480156109bb57600080fd5b5061043b6109ca366004614157565b6129c6565b3480156109db57600080fd5b5061043b612a23565b3480156109f057600080fd5b5061043b6109ff366004614248565b612a95565b348015610a1057600080fd5b5061043b610a1f366004614157565b612ac8565b61043b610a323660046141bb565b612d47565b348015610a4357600080fd5b5061043b61303e565b348015610a5857600080fd5b506000546103ba906001600160a01b031681565b348015610a7857600080fd5b5061043b610a87366004614248565b61315c565b348015610a9857600080fd5b5061043b610aa7366004614157565b61329b565b601154610100900460ff1615610add5760405162461bcd60e51b8152600401610ad4906142b2565b60405180910390fd5b60115460ff1615610b005760405162461bcd60e51b8152600401610ad4906142d0565b610b0933610f1e565b610b255760405162461bcd60e51b8152600401610ad4906142f0565b610b2d613337565b60008060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166395be5050876040518263ffffffff1660e01b8152600401610b8091815260200190565b60a060405180830381865afa158015610b9d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bc1919061434c565b505092506001600160401b03169250925060008211610c1c5760405162461bcd60e51b81526020600482015260176024820152762727afa822a72224a723afa6a0a925a2aa2fa7a92222a960491b6044820152606401610ad4565b6004836005811115610c3057610c306143c4565b14610c705760405162461bcd60e51b815260206004820152601060248201526f1393d517d0d313d4d157d3505492d15560821b6044820152606401610ad4565b6000610c828261ffff163488886133ac565b9050610c928382600001516134bb565b602081015180610ca06135e7565b602083015160405163651d1d4160e11b8152600481018b90526001600160401b03918216602482015290821660448201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063ca3a3a8290606401600060405180830381600087803b158015610d1f57600080fd5b505af1158015610d33573d6000803e3d6000fd5b50505050856005811115610d4957610d496143c4565b6020848101518551604080516001600160401b038781168252909316938301939093528183015290518b9133917f5b5ec0827d50049e9f15c1d5c28dc87d620987ef82a18f0b98afac1c76076d3d9181900360600190a4505050505050610dae61365f565b505050565b6000546001600160a01b03163314610ddd5760405162461bcd60e51b8152600401610ad4906143da565b610de782826136ba565b5050565b6000546001600160a01b03163314610e155760405162461bcd60e51b8152600401610ad4906143da565b600b8190556040517f6d61726b65744f72646572546967687454696d6552616e67650000000000000081526019015b604051908190038120828252907f8cf3e35f6221b16e1670a3413180c9484bf5aa71787905909fa82a6a2662e9ab906020015b60405180910390a250565b6000546001600160a01b03163314610eac5760405162461bcd60e51b8152600401610ad4906143da565b6008548110610eeb5760405162461bcd60e51b815260206004820152600b60248201526a57524f4e475f56414c554560a81b6044820152606401610ad4565b60078190556040517f6d696e54726967676572506572696f64466f724d61726b65744f7264657273008152601f01610e44565b6000610f2b600283613781565b92915050565b601154610100900460ff1615610f595760405162461bcd60e51b8152600401610ad4906142b2565b60115460ff1615610f7c5760405162461bcd60e51b8152600401610ad4906142d0565b610f8533610f1e565b610fa15760405162461bcd60e51b8152600401610ad4906142f0565b610fa9613337565b60405163c608b6c160e01b8152600481018290526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063c608b6c19060240160a0604051808303816000875af1158015611013573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110379190614438565b9050600a5481604001516001600160401b031661105491906144e8565b4210156110735760405162461bcd60e51b8152600401610ad4906144fb565b80602001516003811115611089576110896143c4565b60608201516080830151604080516001600160401b039384168152929091166020830152849133917f7b5b2e57aed6ee99244bd22f2b43e33e9fcbf0d77a9f425d59ee2d74e1c3795d910160405180910390a4506110e561365f565b50565b6040805160608101825260008082526020820181905291810191909152611111843485856133ac565b949350505050565b601154610100900460ff16156111415760405162461bcd60e51b8152600401610ad4906142b2565b60115460ff16156111645760405162461bcd60e51b8152600401610ad4906142d0565b61116d33610f1e565b6111895760405162461bcd60e51b8152600401610ad4906142f0565b611191613337565b60008060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166395be5050856040518263ffffffff1660e01b81526004016111e491815260200190565b60a060405180830381865afa158015611201573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611225919061434c565b505092506001600160401b031692509250600082116112565760405162461bcd60e51b8152600401610ad490614521565b600483600581111561126a5761126a6143c4565b146112aa5760405162461bcd60e51b815260206004820152601060248201526f1393d517d0d313d4d157d3505492d15560821b6044820152606401610ad4565b600a546112b790836144e8565b4210156112d65760405162461bcd60e51b8152600401610ad4906144fb565b600d54604051634ebe5c3360e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691634ebe5c33916113299188916001919060040161454b565b600060405180830381600087803b15801561134357600080fd5b505af1158015611357573d6000803e3d6000fd5b505060405161ffff8416925086915033907f89a3ecf5024675f1d0abc6dc42608fc41216f103c12c2c84f8ca3938bd055f0390600090a45050506110e561365f565b601154610100900460ff16156113c15760405162461bcd60e51b8152600401610ad4906142b2565b60115460ff16156113e45760405162461bcd60e51b8152600401610ad4906142d0565b6113ed33610f1e565b6114095760405162461bcd60e51b8152600401610ad4906142f0565b611411613337565b60008060008060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166395be5050896040518263ffffffff1660e01b815260040161146791815260200190565b60a060405180830381865afa158015611484573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114a8919061434c565b9450945094506001600160401b031694509450600084116115045760405162461bcd60e51b81526020600482015260166024820152752727afa822a72224a723afa624a6a4aa2fa7a92222a960511b6044820152606401610ad4565b6002856005811115611518576115186143c4565b146115565760405162461bcd60e51b815260206004820152600e60248201526d1393d517d3d4115397d31253525560921b6044820152606401610ad4565b60006115688461ffff16348a8a6133ac565b90506115788582600001516137a6565b6020810151600061158f61ffff8716838688613870565b90506115996135e7565b600e54604051631ea9af6b60e01b8152600481018d90526001600160401b038316602482015260448101919091527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690631ea9af6b906064015b600060405180830381600087803b15801561161657600080fd5b505af115801561162a573d6000803e3d6000fd5b50505050876005811115611640576116406143c4565b6020848101518551604080516001600160401b038781168252909316938301939093528183015290518d9133917f60fab6e183a7c350210c0b457db01423b47aa3e72f5b735b8dbb3ecd3e8077439181900360600190a45050505050505050610dae61365f565b6000546001600160a01b031633146116d15760405162461bcd60e51b8152600401610ad4906143da565b6011805460ff610100808304821615810261ff001990931692909217928390556040517f8e47bd62470c6cba4d30c023548622607c9c84402a5655f2569b7934c36a9e4f936117299390049091161515815260200190565b60405180910390a1565b6000546001600160a01b0316331461175d5760405162461bcd60e51b8152600401610ad4906143da565b600f819055604051726d61785472696767657273506572426c6f636b60681b8152601301610e44565b601154610100900460ff16156117ae5760405162461bcd60e51b8152600401610ad4906142b2565b60115460ff16156117d15760405162461bcd60e51b8152600401610ad4906142d0565b6117da33610f1e565b6117f65760405162461bcd60e51b8152600401610ad4906142f0565b6117fe613337565b60405163095be50560e41b8152600481018490526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906395be50509060240160a060405180830381865afa158015611866573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061188a919061434c565b50506040516366307a4f60e01b815260048101889052909350600092506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691506366307a4f90602401608060405180830381865afa1580156118f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061191d9190614573565b905060008261ffff16116119435760405162461bcd60e51b8152600401610ad490614521565b600081606001516001600160401b0316116119885760405162461bcd60e51b81526020600482015260056024820152641393d7d4d360da1b6044820152606401610ad4565b60208101516001600160401b031660006119a861ffff85163488886133ac565b90506119b88282600001516137a6565b60208101516119c56135e7565b6020820151604051632029fcf560e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016916380a7f3d491611a1c918c916002919087906004016145fd565b600060405180830381600087803b158015611a3657600080fd5b505af1158015611a4a573d6000803e3d6000fd5b5050506020808401518451604080516001600160401b038088168252909316938301939093529181019190915261ffff87169150899033907fb03dbc9368faf0f8588dc8429c40a26ef9a637488f1ea5521a2ba2bfb5ff2016906060015b60405180910390a45050505050610dae61365f565b6000546001600160a01b03163314611ae75760405162461bcd60e51b8152600401610ad4906143da565b600e8190556040517f6f70656e506f736974696f6e43616e63656c6c6174696f6e466565467261637481526234b7b760e91b6020820152602301610e44565b601154610100900460ff1615611b4e5760405162461bcd60e51b8152600401610ad4906142b2565b60115460ff1615611b715760405162461bcd60e51b8152600401610ad4906142d0565b611b7a33610f1e565b611b965760405162461bcd60e51b8152600401610ad4906142f0565b611b9e613337565b60405163c608b6c160e01b8152600481018490526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063c608b6c19060240160a0604051808303816000875af1158015611c08573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c2c9190614438565b9050600281602001516003811115611c4657611c466143c4565b14611c895760405162461bcd60e51b815260206004820152601360248201527215541110551157d3d491115497d393d517d4d3606a1b6044820152606401610ad4565b60405163095be50560e41b8152600481018590526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906395be50509060240160a060405180830381865afa158015611cf1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d15919061434c565b5050925050506000611d2d8261ffff163487876133ac565b9050611d4a83604001516001600160401b031682600001516134bb565b611d526135e7565b600081602001519050611d72338886602001516002886060015186613963565b5050505050610dae61365f565b601154610100900460ff1615611da75760405162461bcd60e51b8152600401610ad4906142b2565b60115460ff1615611dca5760405162461bcd60e51b8152600401610ad4906142d0565b611dd333610f1e565b611def5760405162461bcd60e51b8152600401610ad4906142f0565b611df7613337565b60405163095be50560e41b8152600481018490526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906395be50509060240160a060405180830381865afa158015611e5f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e83919061434c565b50506040516366307a4f60e01b815260048101889052909350600092506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691506366307a4f90602401608060405180830381865afa158015611ef2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f169190614573565b905060008261ffff1611611f3c5760405162461bcd60e51b8152600401610ad490614521565b600081604001516001600160401b031611611f815760405162461bcd60e51b815260206004820152600560248201526404e4f5f54560dc1b6044820152606401610ad4565b80516001600160401b03166000611f9e61ffff85163488886133ac565b9050611fae8282600001516137a6565b6020810151611fbb6135e7565b6020820151604051632029fcf560e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016916380a7f3d491612012918c916001919087906004016145fd565b600060405180830381600087803b15801561202c57600080fd5b505af1158015612040573d6000803e3d6000fd5b5050506020808401518451604080516001600160401b038088168252909316938301939093529181019190915261ffff87169150899033907fbe700227f721a08f3b755aa3348a63564c2c07890aba73de46372f7bffcaa2e290606001611aa8565b6000546001600160a01b031633146120cc5760405162461bcd60e51b8152600401610ad4906143da565b610de78282613c44565b601154610100900460ff16156120fe5760405162461bcd60e51b8152600401610ad4906142b2565b60115460ff16156121215760405162461bcd60e51b8152600401610ad4906142d0565b61212a33610f1e565b6121465760405162461bcd60e51b8152600401610ad4906142f0565b61214e613337565b60008060008060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166395be5050896040518263ffffffff1660e01b81526004016121a491815260200190565b60a060405180830381865afa1580156121c1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121e5919061434c565b9450945094506001600160401b031694509450600084116122425760405162461bcd60e51b81526020600482015260176024820152762727afa822a72224a723afa6a0a925a2aa2fa7a92222a960491b6044820152606401610ad4565b6001856005811115612256576122566143c4565b146122955760405162461bcd60e51b815260206004820152600f60248201526e1393d517d3d4115397d3505492d155608a1b6044820152606401610ad4565b60006122a78461ffff16348a8a6133ac565b90506122b78582600001516134bb565b602081015160006122ce61ffff8716838688613870565b90506122d86135e7565b600e546040516303ad224560e61b8152600481018d90526001600160401b038316602482015260448101919091527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063eb489140906064016115fc565b6000546001600160a01b031633146123695760405162461bcd60e51b8152600401610ad4906143da565b600c8190556040517f74726967676572507269636546726573686e65737354696d6552616e676500008152601e01610e44565b601154610100900460ff16156123c45760405162461bcd60e51b8152600401610ad4906142b2565b60115460ff16156123e75760405162461bcd60e51b8152600401610ad4906142d0565b6123f033610f1e565b61240c5760405162461bcd60e51b8152600401610ad4906142f0565b612414613337565b60405163095be50560e41b8152600481018490526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906395be50509060240160a060405180830381865afa15801561247c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124a0919061434c565b50509250505060008161ffff16116124ca5760405162461bcd60e51b8152600401610ad490614521565b60006124dc8261ffff163486866133ac565b60208101519091506124ec6135e7565b6020820151604051632029fcf560e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016916380a7f3d491612543918a916003919087906004016145fd565b600060405180830381600087803b15801561255d57600080fd5b505af1158015612571573d6000803e3d6000fd5b505050506020828101518351604080516001600160401b0386811682529093169383019390935281830152905161ffff851691889133917f086bdd0cdd4ae322dd6112d05bdf96c020e6b90cc84ee2d39941bd716e18fb92919081900360600190a4505050610dae61365f565b60606125ea6002613d11565b905090565b6000546001600160a01b031633146126195760405162461bcd60e51b8152600401610ad4906143da565b600d8190556040517f6d61726b65744f7264657243616e63656c4665654672616374696f6e000000008152601c01610e44565b6000546001600160a01b031633146126765760405162461bcd60e51b8152600401610ad4906143da565b6110e581613d1e565b601154610100900460ff16156126a75760405162461bcd60e51b8152600401610ad4906142b2565b60115460ff16156126ca5760405162461bcd60e51b8152600401610ad4906142d0565b6126d333610f1e565b6126ef5760405162461bcd60e51b8152600401610ad4906142f0565b6126f7613337565b60405163c608b6c160e01b8152600481018490526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063c608b6c19060240160a0604051808303816000875af1158015612761573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127859190614438565b905060018160200151600381111561279f5761279f6143c4565b146127e25760405162461bcd60e51b815260206004820152601360248201527205550444154455f4f524445525f4e4f545f545606c1b6044820152606401610ad4565b60405163095be50560e41b8152600481018590526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906395be50509060240160a060405180830381865afa15801561284a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061286e919061434c565b50509250505060006128868261ffff163487876133ac565b90506128a383604001516001600160401b031682600001516134bb565b6128ab6135e7565b600081602001519050611d72338886602001516001886060015186613963565b6000546001600160a01b031633146129115760405162461bcd60e51b81526020600482015260096024820152682737ba1020b236b4b760b91b6044820152606401610ad4565b600180546001600160a01b038381166001600160a01b031983168117909355604080519190921680825260208201939093527fca4f2f25d0898edd99413412fb94012f9e54ec8142f9b093e7720646a95b16a991015b60405180910390a15050565b6000546001600160a01b0316331461299d5760405162461bcd60e51b8152600401610ad4906143da565b600a819055604051721b585c9ad95d13dc99195c9cd51a5b595bdd5d606a1b8152601301610e44565b6000546001600160a01b031633146129f05760405162461bcd60e51b8152600401610ad4906143da565b60098190556040517f6d696e54726967676572506572696f64466f724c696d69744f726465727300008152601e01610e44565b6000546001600160a01b03163314612a4d5760405162461bcd60e51b8152600401610ad4906143da565b6011805460ff8082161560ff1990921682179092556040519116151581527fda88b5dfaac55549d4ddddd43a09d4b911233df354952ebc9ac2041aa185343690602001611729565b6000546001600160a01b03163314612abf5760405162461bcd60e51b8152600401610ad4906143da565b6110e581613dac565b601154610100900460ff1615612af05760405162461bcd60e51b8152600401610ad4906142b2565b60115460ff1615612b135760405162461bcd60e51b8152600401610ad4906142d0565b612b1c33610f1e565b612b385760405162461bcd60e51b8152600401610ad4906142f0565b612b40613337565b60008060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166395be5050856040518263ffffffff1660e01b8152600401612b9391815260200190565b60a060405180830381865afa158015612bb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612bd4919061434c565b505092506001600160401b03169250925060008211612c055760405162461bcd60e51b8152600401610ad490614521565b6001836005811115612c1957612c196143c4565b14612c585760405162461bcd60e51b815260206004820152600f60248201526e1393d517d3d4115397d3505492d155608a1b6044820152606401610ad4565b600a54612c6590836144e8565b421015612c845760405162461bcd60e51b8152600401610ad4906144fb565b600d54604051636e01af8d60e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691636e01af8d91612cd791889160019190600401614649565b600060405180830381600087803b158015612cf157600080fd5b505af1158015612d05573d6000803e3d6000fd5b505060405161ffff8416925086915033907f5079795ec65f793d5a0ed74d8f8e1562b7795934b40612bf55cf0e5d55a3447990600090a45050506110e561365f565b601154610100900460ff1615612d6f5760405162461bcd60e51b8152600401610ad4906142b2565b60115460ff1615612d925760405162461bcd60e51b8152600401610ad4906142d0565b612d9b33610f1e565b612db75760405162461bcd60e51b8152600401610ad4906142f0565b612dbf613337565b60405163c608b6c160e01b8152600481018490526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063c608b6c19060240160a0604051808303816000875af1158015612e29573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e4d9190614438565b9050600381602001516003811115612e6757612e676143c4565b14612eb45760405162461bcd60e51b815260206004820152601a60248201527f5550444154455f4f524445525f4e4f545f54505f414e445f534c0000000000006044820152606401610ad4565b60405163095be50560e41b8152600481018590526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906395be50509060240160a060405180830381865afa158015612f1c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612f40919061434c565b5050925050506000612f588261ffff163487876133ac565b9050612f7583604001516001600160401b031682600001516134bb565b612f7d6135e7565b600081602001519050612f9d338886602001516001886060015186613963565b612fdc5760405162461bcd60e51b815260206004820152601060248201526f4641494c45445f54505f55504441544560801b6044820152606401610ad4565b612ff3338886602001516002886080015186613963565b6130325760405162461bcd60e51b815260206004820152601060248201526f4641494c45445f534c5f55504441544560801b6044820152606401610ad4565b50505050610dae61365f565b6001546001600160a01b03163314801561306257506001546001600160a01b031615155b6130ae5760405162461bcd60e51b815260206004820152601e60248201527f4e6f7420746865204558495354494e472070656e64696e672061646d696e00006044820152606401610ad4565b60008054600180546001600160a01b038082166001600160a01b031980861682179096559490911690915560408051919092168082526020820184905292917ff9ffabca9c8276e99321725bcb43fb076a6c66a54b7f21c4e8146d8519b417dc910160405180910390a1600154604080516001600160a01b03808516825290921660208301527fca4f2f25d0898edd99413412fb94012f9e54ec8142f9b093e7720646a95b16a99101612967565b6000546001600160a01b031633146131865760405162461bcd60e51b8152600401610ad4906143da565b806001600160a01b0316634535dc4c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156131c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131e89190614659565b6132265760405162461bcd60e51b815260206004820152600f60248201526e10a83934b1b2ab30b634b230ba37b960891b6044820152606401610ad4565b600680546001600160a01b0319166001600160a01b0383161790556040516d283934b1b2ab30b634b230ba37b960911b8152600e016040519081900381206001600160a01b0383168252907f943e9d45a11aaae5d87503e3bc248665d9807856e5cf2bdb4a988bee4442278190602001610e77565b6000546001600160a01b031633146132c55760405162461bcd60e51b8152600401610ad4906143da565b60075481116133045760405162461bcd60e51b815260206004820152600b60248201526a57524f4e475f56414c554560a81b6044820152606401610ad4565b60088190556040517f6d617854726967676572506572696f64466f724d61726b65744f7264657273008152601f01610e44565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f83d08ba6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561339257600080fd5b505af11580156133a6573d6000803e3d6000fd5b50505050565b60408051606081018252600080825260208201819052918101829052906133d586868686613e45565b60008781526004602090815260408220549083015192935063ffffffff1691613407906001600160401b031683613ee0565b90508083604001516001600160401b031611156134665760405162461bcd60e51b815260206004820152601960248201527f434f4e464944454e43455f52414e47455f544f4f5f57494445000000000000006044820152606401610ad4565b82514210156134af5760405162461bcd60e51b815260206004820152601560248201527411955515549157d4149250d157d4915413d4951151605a1b6044820152606401610ad4565b50909695505050505050565b6000600754836134cb91906144e8565b90506000600854846134dd91906144e8565b90508142101561352f5760405162461bcd60e51b815260206004820152601d60248201527f4d41524b45545f4f524445525f545249474745525f544f4f5f534f4f4e0000006044820152606401610ad4565b8042111561357f5760405162461bcd60e51b815260206004820152601d60248201527f4d41524b45545f4f524445525f545249474745525f544f4f5f4c4154450000006044820152606401610ad4565b81831015801561358f5750808311155b6133a65760405162461bcd60e51b8152602060048201526024808201527f4d41524b45545f4f524445525f50524943455f4f55545f4f465f54494d455f4660448201526352414d4560e01b6064820152608401610ad4565b43600090815260106020526040902054600f5481106136415760405162461bcd60e51b81526020600482015260166024820152754d41585f54524947474552535f5045525f424c4f434b60501b6044820152606401610ad4565b61364c8160016144e8565b4360009081526010602052604090205550565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166340da020f6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561339257600080fd5b7f00000000000000000000000000000000000000000000000000000000000000008163ffffffff1611156137225760405162461bcd60e51b815260206004820152600f60248201526e0a6a0a48a8288bea89e9ebe90928e9608b1b6044820152606401610ad4565b600082815260056020908152604091829020805463ffffffff191663ffffffff8516908117909155915191825283917ffe5fd0852fab5f8ba593533cf24a4b4b235704c0e06956d0a58cc2ca0a4b6b4491015b60405180910390a25050565b6001600160a01b038116600090815260018301602052604081205415155b9392505050565b6000600954836137b691906144e8565b9050804210156138085760405162461bcd60e51b815260206004820152601c60248201527f4c494d49545f4f524445525f545249474745525f544f4f5f534f4f4e000000006044820152606401610ad4565b808210156138645760405162461bcd60e51b815260206004820152602360248201527f4c494d49545f4f524445525f50524943455f4f55545f4f465f54494d455f4652604482015262414d4560e81b6064820152608401610ad4565b610dae82600c54613efa565b6000620186a08363ffffffff1611156138cb5760405162461bcd60e51b815260206004820152601960248201527f5350524541445f524544554354494f4e5f544f4f5f48494748000000000000006044820152606401610ad4565b600085815260056020526040812054620186a0906138f9906001600160401b0388169063ffffffff16614674565b613903919061468b565b90506000620186a061391b63ffffffff8716846146ad565b6001600160401b031661392e919061468b565b61393890836146d8565b90508361394e5761394981876146d8565b613958565b61395881876146f8565b979650505050505050565b60405163c07f992160e01b81526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063c07f9921906139b8908990889088908890600401614718565b600060405180830381600087803b1580156139d257600080fd5b505af19250505080156139e3575060015b613bde576139ef614728565b806308c379a003613a755750613a03614744565b80613a0e5750613a77565b856003811115613a2057613a206143c4565b87896001600160a01b03167f889460050d9a293fbe31b6ce00a37ae62020cb8c8a19cf31e9496cb13246f6e2888888876000604051613a639594939291906147cd565b60405180910390a46000915050613c3a565b505b3d808015613aa1576040519150601f19603f3d011682016040523d82523d6000602084013e613aa6565b606091505b50632eb752bf60e21b613ab88261484f565b6001600160e01b03191603613b9f576001856002811115613adb57613adb6143c4565b14613b1e5760405162461bcd60e51b815260206004820152601360248201527204341505f4552524f525f4e4f545f4f4e5f545606c1b6044820152606401610ad4565b60248101516044820151876003811115613b3a57613b3a6143c4565b898b6001600160a01b03167f889460050d9a293fbe31b6ce00a37ae62020cb8c8a19cf31e9496cb13246f6e28a8a8a886011811115613b7b57613b7b6143c4565b604051613b8b9493929190614886565b60405180910390a460009350505050613c3a565b60405162461bcd60e51b81526020600482015260146024820152732aa725a727aba72fa1aaa9aa27a6afa2a92927a960611b6044820152606401610ad4565b846003811115613bf057613bf06143c4565b86886001600160a01b03167ff0ac91a20375484f5a80315763782e4fe4b42bd038b08ba4939ff1a506974edf878787604051613c2e939291906148d5565b60405180910390a45060015b9695505050505050565b7f00000000000000000000000000000000000000000000000000000000000000008163ffffffff161115613cba5760405162461bcd60e51b815260206004820152601c60248201527f434f4e464944454e43455f4652414354494f4e5f544f4f5f48494748000000006044820152606401610ad4565b600082815260046020908152604091829020805463ffffffff191663ffffffff8516908117909155915191825283917f88e6fad616d859d6fba20e93ab2acbf0756b6bc2d90c6002000f709f510cadb09101613775565b6060600061379f83613f88565b613d2781610f1e565b613d695760405162461bcd60e51b81526020600482015260136024820152721050d0d3d5539517d393d517d0531313d5d151606a1b6044820152606401610ad4565b613d74600282613fe4565b506040516001600160a01b038216907fc985d67a353004ba149a223b2b9e5c13cca6610b11cb45b4aa029c880d8f7cb590600090a250565b613db581610f1e565b15613e025760405162461bcd60e51b815260206004820152601760248201527f4143434f554e545f414c52454144595f414c4c4f5745440000000000000000006044820152606401610ad4565b613e0d600282613ff9565b506040516001600160a01b038216907fc5944eab072face4b169928723314c5978080e99ed8f8527faedb18c06664c3590600090a250565b6040805160608101825260008082526020820181905281830152600654915163f4a6a09360e01b815290916001600160a01b03169063f4a6a093908690613e9490899088908890600401614929565b60606040518083038185885af1158015613eb2573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190613ed791906149d1565b95945050505050565b6000620186a0613ef08385614674565b61379f919061468b565b6000613f068242614a43565b905080831015613f485760405162461bcd60e51b815260206004820152600d60248201526c14149250d157d513d3d7d3d311609a1b6044820152606401610ad4565b42831115610dae5760405162461bcd60e51b815260206004820152600d60248201526c50524943455f544f4f5f4e455760981b6044820152606401610ad4565b606081600001805480602002602001604051908101604052809291908181526020018280548015613fd857602002820191906000526020600020905b815481526020019060010190808311613fc4575b50505050509050919050565b600061379f836001600160a01b03841661400e565b600061379f836001600160a01b038416614108565b600081815260018301602052604081205480156140f7576000614032600183614a43565b855490915060009061404690600190614a43565b90508082146140ab57600086600001828154811061406657614066614a56565b906000526020600020015490508087600001848154811061408957614089614a56565b6000918252602080832090910192909255918252600188019052604090208390555b85548690806140bc576140bc614a6c565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610f2b565b6000915050610f2b565b5092915050565b600081815260018301602052604081205461414f57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610f2b565b506000610f2b565b60006020828403121561416957600080fd5b5035919050565b60008083601f84011261418257600080fd5b5081356001600160401b0381111561419957600080fd5b6020830191508360208260051b85010111156141b457600080fd5b9250929050565b6000806000604084860312156141d057600080fd5b8335925060208401356001600160401b038111156141ed57600080fd5b6141f986828701614170565b9497909650939450505050565b63ffffffff811681146110e557600080fd5b6000806040838503121561422b57600080fd5b82359150602083013561423d81614206565b809150509250929050565b60006020828403121561425a57600080fd5b81356001600160a01b038116811461379f57600080fd5b6020808252825182820181905260009190848201906040850190845b818110156134af5783516001600160a01b03168352928401929184019160010161428d565b602080825260049082015263444f4e4560e01b604082015260600190565b60208082526006908201526514105554d15160d21b604082015260600190565b6020808252601690820152752727aa2fa0a62627aba2a22faa27afaa2924a3a3a2a960511b604082015260600190565b80516001600160401b038116811461433757600080fd5b919050565b8051801515811461433757600080fd5b600080600080600060a0868803121561436457600080fd5b85516006811061437357600080fd5b945061438160208701614320565b9350604086015161ffff8116811461439857600080fd5b92506143a66060870161433c565b915060808601516143b681614206565b809150509295509295909350565b634e487b7160e01b600052602160045260246000fd5b6020808252600a908201526927a7262cafa0a226a4a760b11b604082015260600190565b601f8201601f191681016001600160401b038111828210171561443157634e487b7160e01b600052604160045260246000fd5b6040525050565b600060a0828403121561444a57600080fd5b60405160a081018181106001600160401b038211171561447a57634e487b7160e01b600052604160045260246000fd5b6040528251815260208301516004811061449357600080fd5b60208201526144a460408401614320565b60408201526144b560608401614320565b60608201526144c660808401614320565b60808201529392505050565b634e487b7160e01b600052601160045260246000fd5b80820180821115610f2b57610f2b6144d2565b6020808252600c908201526b15d0525517d512535153d55560a21b604082015260600190565b60208082526010908201526f2727afa9aaa1a42fa827a9a4aa24a7a760811b604082015260600190565b8381526060810160028410614562576145626143c4565b602082019390935260400152919050565b60006080828403121561458557600080fd5b604051608081018181106001600160401b03821117156145b557634e487b7160e01b600052604160045260246000fd5b6040526145c183614320565b81526145cf60208401614320565b60208201526145e060408401614320565b60408201526145f160608401614320565b60608201529392505050565b8481526080810160048510614614576146146143c4565b60208201949094526001600160401b0392831660408201529116606090910152919050565b600381106110e5576110e56143c4565b8381526060810161456284614639565b60006020828403121561466b57600080fd5b61379f8261433c565b8082028115828204841417610f2b57610f2b6144d2565b6000826146a857634e487b7160e01b600052601260045260246000fd5b500490565b6001600160401b038181168382160280821691908281146146d0576146d06144d2565b505092915050565b6001600160401b03828116828216039080821115614101576141016144d2565b6001600160401b03818116838216019080821115614101576141016144d2565b8481526080810161461485614639565b600060033d11156147415760046000803e5060005160e01c5b90565b600060443d10156147525790565b6040516003193d81016004833e81513d6001600160401b03816024840111818411171561478157505050505090565b82850191508151818111156147995750505050505090565b843d87010160208285010111156147b35750505050505090565b6147c2602082860101876143fe565b509095945050505050565b6147d686614639565b858152600060206001600160401b03808816602085015280871660408501525060a0606084015284518060a085015260005b818110156148245786810183015185820160c001528201614808565b50600060c0828601015260c0601f19601f830116850101925050508260808301529695505050505050565b805160208201516001600160e01b0319808216929190600483101561487e5780818460040360031b1b83161693505b505050919050565b61488f85614639565b9384526001600160401b0392831660208501529116604083015260a0606083018190526009908301526821a0a82fa2a92927a960b91b60c0830152608082015260e00190565b606081016148e285614639565b9381526001600160401b039283166020820152911660409091015290565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6000604082018583526020604060208501528185835260608501905060608660051b86010192508660005b878110156149c357868503605f190183528135368a9003601e1901811261497a57600080fd5b890184810190356001600160401b0381111561499557600080fd5b8036038213156149a457600080fd5b6149af878284614900565b965050509183019190830190600101614954565b509298975050505050505050565b6000606082840312156149e357600080fd5b604051606081018181106001600160401b0382111715614a1357634e487b7160e01b600052604160045260246000fd5b60405282518152614a2660208401614320565b6020820152614a3760408401614320565b60408201529392505050565b81810381811115610f2b57610f2b6144d2565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fdfea26469706673582212202d99aceb1f91e429aab13002d34ccdfaeec0119b2e260404e0b6685d8d7f9c3664736f6c63430008180033";
|
|
17
|
+
static readonly bytecode = "0x6101206040526003600755603c600855603c600955603c600a5560b4600b55610708600c556103e8620186a06001620000399190620002b1565b620000459190620002dd565b600d556103e86200005b620186a06002620002b1565b620000679190620002dd565b600e55620186a06200007b816005620002b1565b620000879190620002dd565b600f5560036010553480156200009c57600080fd5b506040516200536238038062005362833981016040819052620000bf9162000319565b806001600160a01b0316637b1039996040518163ffffffff1660e01b8152600401602060405180830381865afa158015620000fe573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000124919062000319565b606462000136620186a06001620002b1565b620001429190620002dd565b606462000154620186a0600a620002b1565b620001609190620002dd565b600080546001600160a01b0319163317905560805260a0526001600160a01b0390811660c0528116620001c85760405162461bcd60e51b815260206004820152600c60248201526b57524f4e475f504152414d5360a01b604482015260640160405180910390fd5b6001600160a01b03811660e081905260408051637b10399960e01b81529051637b103999916004808201926020929091908290030181865afa15801562000213573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000239919062000319565b6001600160a01b031663776af5ba6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000277573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200029d919062000319565b6001600160a01b0316610100525062000340565b8082028115828204841417620002d757634e487b7160e01b600052601160045260246000fd5b92915050565b600082620002fb57634e487b7160e01b600052601260045260246000fd5b500490565b6001600160a01b03811681146200031657600080fd5b50565b6000602082840312156200032c57600080fd5b8151620003398162000300565b9392505050565b60805160a05160c05160e05161010051614f0b6200045760003960008181610815015281816110ef01528181611dbc0152818161292e01526130820152600081816103da01528181610c7f01528181610e1e015281816112c50152818161141d01528181611548015281816116f60152818161177301528181611a1c01528181611ab601528181611be601528181611eb10152818161202e015281816120c8015281816121f501528181612376015281816125260152818161264b0152818161272601528181612a2301528181612df101528181612f48015281816131810152613d870152600081816135f3015261391b0152600081816105570152613976015260008181610a8f01526140500152614f0b6000f3fe6080604052600436106103c35760003560e01c80637f31c2db116101f2578063b187bd261161010d578063e0b7d50b116100a0578063f5f5ba721161006f578063f5f5ba7214610b64578063f851a44014610b97578063fae5a83f14610bb7578063fd057e9414610bd757600080fd5b8063e0b7d50b14610b06578063e231377014610b1c578063e8051b0114610b3c578063e9c714f214610b4f57600080fd5b8063b88750a9116100dc578063b88750a914610a7d578063bfc084d914610ab1578063c4ae316814610ad1578063d99dc0c114610ae657600080fd5b8063b187bd2614610a0b578063b71d1a0c14610a25578063b71f3cfe14610a45578063b81bfa0514610a5d57600080fd5b80639f918f4511610185578063a9f7c52111610154578063a9f7c521146109a7578063aaf5eb68146109ba578063ad1f2b56146109d6578063af74c382146109eb57600080fd5b80639f918f451461091e578063a1d627a114610951578063a5b6020814610971578063a5e02c8d1461098757600080fd5b806386c7f19a116101c157806386c7f19a146108905780638aa10435146108b25780638f062227146108df5780639abf1782146108fe57600080fd5b80637f31c2db146108375780637f588b911461084d57806380193b2614610863578063814052051461087a57600080fd5b80633b321666116102e25780635d2cdfea11610275578063718ddc1411610244578063718ddc14146107bd5780637670d948146107d0578063771ad70d146107f0578063776af5ba1461080357600080fd5b80635d2cdfea1461070c578063614d08f8146107545780636447dc8b1461078a5780636c1bb5ca1461079d57600080fd5b8063490580e3116102b1578063490580e3146106a65780634bdf1973146106c65780634cdb06a5146106d95780634d369151146106f957600080fd5b80633b321666146106525780633be3d62614610665578063410c0b7c1461067a57806345b617131461069057600080fd5b80632f86d7c21161035a57806336b669f71161032957806336b669f71461059957806338267257146105df57806338b90333146105ff578063392503e01461063c57600080fd5b80632f86d7c2146104f557806333511e5e1461051557806333a01d321461054557806336930d0b1461057957600080fd5b806322ede93c1161039657806322ede93c1461047f57806325577e9f1461049557806326782247146104b557806326b4120a146104d557600080fd5b80630d3b0b76146103c857806310b4cc131461041957806320cb59761461043d578063221407af1461046a575b600080fd5b3480156103d457600080fd5b506103fc7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561042557600080fd5b5061042f600d5481565b604051908152602001610410565b34801561044957600080fd5b5061042f610458366004614561565b60116020526000908152604090205481565b61047d6104783660046145c5565b610bf7565b005b34801561048b57600080fd5b5061042f600e5481565b3480156104a157600080fd5b5061047d6104b0366004614622565b610efe565b3480156104c157600080fd5b506001546103fc906001600160a01b031681565b3480156104e157600080fd5b5061047d6104f0366004614561565b610f36565b34801561050157600080fd5b5061047d610510366004614561565b610fcd565b34801561052157600080fd5b50610535610530366004614652565b61104b565b6040519015158152602001610410565b34801561055157600080fd5b5061042f7f000000000000000000000000000000000000000000000000000000000000000081565b34801561058557600080fd5b5061047d610594366004614561565b61105e565b6105ac6105a73660046145c5565b611215565b60408051825181526020808401516001600160401b03908116918301919091529282015190921690820152606001610410565b3480156105eb57600080fd5b5061047d6105fa366004614561565b611246565b34801561060b57600080fd5b5061062f604051806040016040528060048152602001633130303160e01b81525081565b60405161041091906146c1565b34801561064857600080fd5b5061042f600c5481565b61047d6106603660046145c5565b6114c6565b34801561067157600080fd5b5061047d6118ac565b34801561068657600080fd5b5061042f600a5481565b34801561069c57600080fd5b5061042f60075481565b3480156106b257600080fd5b5061047d6106c1366004614561565b611938565b61047d6106d43660046145c5565b61198b565b3480156106e557600080fd5b5061047d6106f4366004614561565b611cc2565b61047d6107073660046145c5565b611d2b565b34801561071857600080fd5b5061073f610727366004614561565b60056020526000908152604090205463ffffffff1681565b60405163ffffffff9091168152602001610410565b34801561076057600080fd5b5061062f6040518060400160405280600a8152602001695472696767657273563160b01b81525081565b61047d6107983660046145c5565b611f9d565b3480156107a957600080fd5b5061047d6107b8366004614622565b6122c0565b61047d6107cb3660046145c5565b6122f4565b3480156107dc57600080fd5b5061047d6107eb366004614561565b61255d565b61047d6107fe3660046145c5565b6125ba565b34801561080f57600080fd5b506103fc7f000000000000000000000000000000000000000000000000000000000000000081565b34801561084357600080fd5b5061042f60085481565b34801561085957600080fd5b5061042f60095481565b34801561086f57600080fd5b5061042f620186a081565b34801561088657600080fd5b5061042f60105481565b34801561089c57600080fd5b506108a56127fc565b60405161041091906146d4565b3480156108be57600080fd5b506040805180820190915260048152633130303160e01b602082015261062f565b3480156108eb57600080fd5b5060125461053590610100900460ff1681565b34801561090a57600080fd5b5061047d610919366004614561565b61280d565b34801561092a57600080fd5b5061073f610939366004614561565b60046020526000908152604090205463ffffffff1681565b34801561095d57600080fd5b506006546103fc906001600160a01b031681565b34801561097d57600080fd5b5061042f600b5481565b34801561099357600080fd5b5061047d6109a2366004614652565b61286a565b61047d6109b53660046145c5565b61289d565b3480156109c657600080fd5b5061042f670de0b6b3a764000081565b3480156109e257600080fd5b5061042f606481565b3480156109f757600080fd5b5061047d610a06366004614561565b612b01565b348015610a1757600080fd5b506012546105359060ff1681565b348015610a3157600080fd5b5061047d610a40366004614652565b612b75565b348015610a5157600080fd5b5061042f633b9aca0081565b348015610a6957600080fd5b5061047d610a78366004614561565b612c1d565b348015610a8957600080fd5b5061042f7f000000000000000000000000000000000000000000000000000000000000000081565b348015610abd57600080fd5b5061047d610acc366004614561565b612c70565b348015610add57600080fd5b5061047d612ccd565b348015610af257600080fd5b5061047d610b01366004614652565b612d3f565b348015610b1257600080fd5b5061042f600f5481565b348015610b2857600080fd5b5061047d610b37366004614561565b612d72565b61047d610b4a3660046145c5565b612ff1565b348015610b5b57600080fd5b5061047d613316565b348015610b7057600080fd5b5060408051808201909152600a8152695472696767657273563160b01b602082015261062f565b348015610ba357600080fd5b506000546103fc906001600160a01b031681565b348015610bc357600080fd5b5061047d610bd2366004614652565b613434565b348015610be357600080fd5b5061047d610bf2366004614561565b613573565b601254610100900460ff1615610c285760405162461bcd60e51b8152600401610c1f90614715565b60405180910390fd5b60125460ff1615610c4b5760405162461bcd60e51b8152600401610c1f90614733565b610c543361104b565b610c705760405162461bcd60e51b8152600401610c1f90614753565b610c786135f1565b60008060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166395be5050876040518263ffffffff1660e01b8152600401610ccb91815260200190565b60a060405180830381865afa158015610ce8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d0c91906147af565b505092506001600160401b03169250925060008211610d675760405162461bcd60e51b81526020600482015260176024820152762727afa822a72224a723afa6a0a925a2aa2fa7a92222a960491b6044820152606401610c1f565b6004836005811115610d7b57610d7b614827565b14610dbb5760405162461bcd60e51b815260206004820152601060248201526f1393d517d0d313d4d157d3505492d15560821b6044820152606401610c1f565b6000610dcd8261ffff16348888613666565b9050610ddd838260000151613775565b602081015180610deb6138a1565b602083015160405163651d1d4160e11b8152600481018b90526001600160401b03918216602482015290821660448201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063ca3a3a8290606401600060405180830381600087803b158015610e6a57600080fd5b505af1158015610e7e573d6000803e3d6000fd5b50505050856005811115610e9457610e94614827565b6020848101518551604080516001600160401b038781168252909316938301939093528183015290518b9133917f5b5ec0827d50049e9f15c1d5c28dc87d620987ef82a18f0b98afac1c76076d3d9181900360600190a4505050505050610ef9613919565b505050565b6000546001600160a01b03163314610f285760405162461bcd60e51b8152600401610c1f9061483d565b610f328282613974565b5050565b6000546001600160a01b03163314610f605760405162461bcd60e51b8152600401610c1f9061483d565b600b8190556040517f6d61726b65744f72646572546967687454696d6552616e67650000000000000081526019015b604051908190038120828252907f8cf3e35f6221b16e1670a3413180c9484bf5aa71787905909fa82a6a2662e9ab906020015b60405180910390a250565b6000546001600160a01b03163314610ff75760405162461bcd60e51b8152600401610c1f9061483d565b60085481106110185760405162461bcd60e51b8152600401610c1f90614861565b60078190556040517f6d696e54726967676572506572696f64466f724d61726b65744f7264657273008152601f01610f8f565b6000611058600283613a3b565b92915050565b601254610100900460ff16156110865760405162461bcd60e51b8152600401610c1f90614715565b60125460ff16156110a95760405162461bcd60e51b8152600401610c1f90614733565b6110b23361104b565b6110ce5760405162461bcd60e51b8152600401610c1f90614753565b6110d66135f1565b60405163c608b6c160e01b8152600481018290526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063c608b6c19060240160a0604051808303816000875af1158015611140573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116491906148c0565b9050600a5481604001516001600160401b03166111819190614970565b4210156111a05760405162461bcd60e51b8152600401610c1f90614983565b806020015160038111156111b6576111b6614827565b60608201516080830151604080516001600160401b039384168152929091166020830152849133917f7b5b2e57aed6ee99244bd22f2b43e33e9fcbf0d77a9f425d59ee2d74e1c3795d910160405180910390a450611212613919565b50565b604080516060810182526000808252602082018190529181019190915261123e84348585613666565b949350505050565b601254610100900460ff161561126e5760405162461bcd60e51b8152600401610c1f90614715565b60125460ff16156112915760405162461bcd60e51b8152600401610c1f90614733565b61129a3361104b565b6112b65760405162461bcd60e51b8152600401610c1f90614753565b6112be6135f1565b60008060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166395be5050856040518263ffffffff1660e01b815260040161131191815260200190565b60a060405180830381865afa15801561132e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061135291906147af565b505092506001600160401b031692509250600082116113835760405162461bcd60e51b8152600401610c1f906149a9565b600483600581111561139757611397614827565b146113d75760405162461bcd60e51b815260206004820152601060248201526f1393d517d0d313d4d157d3505492d15560821b6044820152606401610c1f565b600a546113e49083614970565b4210156114035760405162461bcd60e51b8152600401610c1f90614983565b600d54604051634ebe5c3360e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691634ebe5c3391611456918891600191906004016149d3565b600060405180830381600087803b15801561147057600080fd5b505af1158015611484573d6000803e3d6000fd5b505060405161ffff8416925086915033907f89a3ecf5024675f1d0abc6dc42608fc41216f103c12c2c84f8ca3938bd055f0390600090a4505050611212613919565b601254610100900460ff16156114ee5760405162461bcd60e51b8152600401610c1f90614715565b60125460ff16156115115760405162461bcd60e51b8152600401610c1f90614733565b61151a3361104b565b6115365760405162461bcd60e51b8152600401610c1f90614753565b61153e6135f1565b60008060008060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166395be5050896040518263ffffffff1660e01b815260040161159491815260200190565b60a060405180830381865afa1580156115b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115d591906147af565b9450945094506001600160401b031694509450600084116116315760405162461bcd60e51b81526020600482015260166024820152752727afa822a72224a723afa624a6a4aa2fa7a92222a960511b6044820152606401610c1f565b600285600581111561164557611645614827565b146116835760405162461bcd60e51b815260206004820152600e60248201526d1393d517d3d4115397d31253525560921b6044820152606401610c1f565b60006116958461ffff16348a8a613666565b90506116a5858260000151613a60565b602081015160006116bc61ffff8716838688613b2a565b90506116c66138a1565b600e54604051631ea9af6b60e01b8152600481018d90526001600160401b038316602482015260448101919091527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690631ea9af6b906064015b600060405180830381600087803b15801561174357600080fd5b505af1158015611757573d6000803e3d6000fd5b50506040516366307a4f60e01b8152600481018e9052600092507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031691506366307a4f90602401608060405180830381865afa1580156117c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117e791906149fb565b60408101519091506001600160401b03161561180e5761180e816040015183886001613c1d565b60608101516001600160401b03161561183257611832816060015183886000613c1d565b88600581111561184457611844614827565b6020858101518651604080516001600160401b038881168252909316938301939093528183015290518e9133917f60fab6e183a7c350210c0b457db01423b47aa3e72f5b735b8dbb3ecd3e8077439181900360600190a4505050505050505050610ef9613919565b6000546001600160a01b031633146118d65760405162461bcd60e51b8152600401610c1f9061483d565b6012805460ff610100808304821615810261ff001990931692909217928390556040517f8e47bd62470c6cba4d30c023548622607c9c84402a5655f2569b7934c36a9e4f9361192e9390049091161515815260200190565b60405180910390a1565b6000546001600160a01b031633146119625760405162461bcd60e51b8152600401610c1f9061483d565b6010819055604051726d61785472696767657273506572426c6f636b60681b8152601301610f8f565b601254610100900460ff16156119b35760405162461bcd60e51b8152600401610c1f90614715565b60125460ff16156119d65760405162461bcd60e51b8152600401610c1f90614733565b6119df3361104b565b6119fb5760405162461bcd60e51b8152600401610c1f90614753565b611a036135f1565b60405163095be50560e41b8152600481018490526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906395be50509060240160a060405180830381865afa158015611a6b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a8f91906147af565b50506040516366307a4f60e01b815260048101889052909350600092506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691506366307a4f90602401608060405180830381865afa158015611afe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b2291906149fb565b905060008261ffff1611611b485760405162461bcd60e51b8152600401610c1f906149a9565b600081606001516001600160401b031611611b8d5760405162461bcd60e51b81526020600482015260056024820152641393d7d4d360da1b6044820152606401610c1f565b60208101516001600160401b03166000611bad61ffff8516348888613666565b9050611bbd828260000151613a60565b6020810151611bca6138a1565b6020820151604051632029fcf560e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016916380a7f3d491611c21918c91600291908790600401614a85565b600060405180830381600087803b158015611c3b57600080fd5b505af1158015611c4f573d6000803e3d6000fd5b5050506020808401518451604080516001600160401b038088168252909316938301939093529181019190915261ffff87169150899033907fb03dbc9368faf0f8588dc8429c40a26ef9a637488f1ea5521a2ba2bfb5ff2016906060015b60405180910390a45050505050610ef9613919565b6000546001600160a01b03163314611cec5760405162461bcd60e51b8152600401610c1f9061483d565b600e8190556040517f6f70656e506f736974696f6e43616e63656c6c6174696f6e466565467261637481526234b7b760e91b6020820152602301610f8f565b601254610100900460ff1615611d535760405162461bcd60e51b8152600401610c1f90614715565b60125460ff1615611d765760405162461bcd60e51b8152600401610c1f90614733565b611d7f3361104b565b611d9b5760405162461bcd60e51b8152600401610c1f90614753565b611da36135f1565b60405163c608b6c160e01b8152600481018490526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063c608b6c19060240160a0604051808303816000875af1158015611e0d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e3191906148c0565b9050600281602001516003811115611e4b57611e4b614827565b14611e8e5760405162461bcd60e51b815260206004820152601360248201527215541110551157d3d491115497d393d517d4d3606a1b6044820152606401610c1f565b60405163095be50560e41b81526004810185905260009081906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906395be50509060240160a060405180830381865afa158015611ef8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f1c91906147af565b509350935050506000611f358361ffff16348888613666565b9050611f5284604001516001600160401b03168260000151613775565b611f6784606001518260200151846000613c1d565b611f6f6138a1565b600081602001519050611f8f338987602001516002896060015186613d6d565b505050505050610ef9613919565b601254610100900460ff1615611fc55760405162461bcd60e51b8152600401610c1f90614715565b60125460ff1615611fe85760405162461bcd60e51b8152600401610c1f90614733565b611ff13361104b565b61200d5760405162461bcd60e51b8152600401610c1f90614753565b6120156135f1565b60405163095be50560e41b8152600481018490526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906395be50509060240160a060405180830381865afa15801561207d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120a191906147af565b50506040516366307a4f60e01b815260048101889052909350600092506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691506366307a4f90602401608060405180830381865afa158015612110573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061213491906149fb565b905060008261ffff161161215a5760405162461bcd60e51b8152600401610c1f906149a9565b600081604001516001600160401b03161161219f5760405162461bcd60e51b815260206004820152600560248201526404e4f5f54560dc1b6044820152606401610c1f565b80516001600160401b031660006121bc61ffff8516348888613666565b90506121cc828260000151613a60565b60208101516121d96138a1565b6020820151604051632029fcf560e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016916380a7f3d491612230918c91600191908790600401614a85565b600060405180830381600087803b15801561224a57600080fd5b505af115801561225e573d6000803e3d6000fd5b5050506020808401518451604080516001600160401b038088168252909316938301939093529181019190915261ffff87169150899033907fbe700227f721a08f3b755aa3348a63564c2c07890aba73de46372f7bffcaa2e290606001611cad565b6000546001600160a01b031633146122ea5760405162461bcd60e51b8152600401610c1f9061483d565b610f32828261404e565b601254610100900460ff161561231c5760405162461bcd60e51b8152600401610c1f90614715565b60125460ff161561233f5760405162461bcd60e51b8152600401610c1f90614733565b6123483361104b565b6123645760405162461bcd60e51b8152600401610c1f90614753565b61236c6135f1565b60008060008060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166395be5050896040518263ffffffff1660e01b81526004016123c291815260200190565b60a060405180830381865afa1580156123df573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061240391906147af565b9450945094506001600160401b031694509450600084116124605760405162461bcd60e51b81526020600482015260176024820152762727afa822a72224a723afa6a0a925a2aa2fa7a92222a960491b6044820152606401610c1f565b600185600581111561247457612474614827565b146124b35760405162461bcd60e51b815260206004820152600f60248201526e1393d517d3d4115397d3505492d155608a1b6044820152606401610c1f565b60006124c58461ffff16348a8a613666565b90506124d5858260000151613775565b602081015160006124ec61ffff8716838688613b2a565b90506124f66138a1565b600e546040516303ad224560e61b8152600481018d90526001600160401b038316602482015260448101919091527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063eb48914090606401611729565b6000546001600160a01b031633146125875760405162461bcd60e51b8152600401610c1f9061483d565b600c8190556040517f74726967676572507269636546726573686e65737354696d6552616e676500008152601e01610f8f565b601254610100900460ff16156125e25760405162461bcd60e51b8152600401610c1f90614715565b60125460ff16156126055760405162461bcd60e51b8152600401610c1f90614733565b61260e3361104b565b61262a5760405162461bcd60e51b8152600401610c1f90614753565b6126326135f1565b60405163095be50560e41b8152600481018490526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906395be50509060240160a060405180830381865afa15801561269a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126be91906147af565b50509250505060008161ffff16116126e85760405162461bcd60e51b8152600401610c1f906149a9565b60006126fa8261ffff16348686613666565b602081015190915061270a6138a1565b6020820151604051632029fcf560e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016916380a7f3d491612761918a91600391908790600401614a85565b600060405180830381600087803b15801561277b57600080fd5b505af115801561278f573d6000803e3d6000fd5b505050506020828101518351604080516001600160401b0386811682529093169383019390935281830152905161ffff851691889133917f086bdd0cdd4ae322dd6112d05bdf96c020e6b90cc84ee2d39941bd716e18fb92919081900360600190a4505050610ef9613919565b6060612808600261411b565b905090565b6000546001600160a01b031633146128375760405162461bcd60e51b8152600401610c1f9061483d565b600d8190556040517f6d61726b65744f7264657243616e63656c4665654672616374696f6e000000008152601c01610f8f565b6000546001600160a01b031633146128945760405162461bcd60e51b8152600401610c1f9061483d565b61121281614128565b601254610100900460ff16156128c55760405162461bcd60e51b8152600401610c1f90614715565b60125460ff16156128e85760405162461bcd60e51b8152600401610c1f90614733565b6128f13361104b565b61290d5760405162461bcd60e51b8152600401610c1f90614753565b6129156135f1565b60405163c608b6c160e01b8152600481018490526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063c608b6c19060240160a0604051808303816000875af115801561297f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129a391906148c0565b90506001816020015160038111156129bd576129bd614827565b14612a005760405162461bcd60e51b815260206004820152601360248201527205550444154455f4f524445525f4e4f545f545606c1b6044820152606401610c1f565b60405163095be50560e41b81526004810185905260009081906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906395be50509060240160a060405180830381865afa158015612a6a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a8e91906147af565b509350935050506000612aa78361ffff16348888613666565b9050612ac484604001516001600160401b03168260000151613775565b612ad984606001518260200151846001613c1d565b612ae16138a1565b600081602001519050611f8f338987602001516001896060015186613d6d565b6000546001600160a01b03163314612b2b5760405162461bcd60e51b8152600401610c1f9061483d565b60008111612b4b5760405162461bcd60e51b8152600401610c1f90614861565b600f819055604051733634b6b4ba39a6b0b933b4b7233930b1ba34b7b760611b8152601401610f8f565b6000546001600160a01b03163314612bbb5760405162461bcd60e51b81526020600482015260096024820152682737ba1020b236b4b760b91b6044820152606401610c1f565b600180546001600160a01b038381166001600160a01b031983168117909355604080519190921680825260208201939093527fca4f2f25d0898edd99413412fb94012f9e54ec8142f9b093e7720646a95b16a991015b60405180910390a15050565b6000546001600160a01b03163314612c475760405162461bcd60e51b8152600401610c1f9061483d565b600a819055604051721b585c9ad95d13dc99195c9cd51a5b595bdd5d606a1b8152601301610f8f565b6000546001600160a01b03163314612c9a5760405162461bcd60e51b8152600401610c1f9061483d565b60098190556040517f6d696e54726967676572506572696f64466f724c696d69744f726465727300008152601e01610f8f565b6000546001600160a01b03163314612cf75760405162461bcd60e51b8152600401610c1f9061483d565b6012805460ff8082161560ff1990921682179092556040519116151581527fda88b5dfaac55549d4ddddd43a09d4b911233df354952ebc9ac2041aa18534369060200161192e565b6000546001600160a01b03163314612d695760405162461bcd60e51b8152600401610c1f9061483d565b611212816141b6565b601254610100900460ff1615612d9a5760405162461bcd60e51b8152600401610c1f90614715565b60125460ff1615612dbd5760405162461bcd60e51b8152600401610c1f90614733565b612dc63361104b565b612de25760405162461bcd60e51b8152600401610c1f90614753565b612dea6135f1565b60008060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166395be5050856040518263ffffffff1660e01b8152600401612e3d91815260200190565b60a060405180830381865afa158015612e5a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e7e91906147af565b505092506001600160401b03169250925060008211612eaf5760405162461bcd60e51b8152600401610c1f906149a9565b6001836005811115612ec357612ec3614827565b14612f025760405162461bcd60e51b815260206004820152600f60248201526e1393d517d3d4115397d3505492d155608a1b6044820152606401610c1f565b600a54612f0f9083614970565b421015612f2e5760405162461bcd60e51b8152600401610c1f90614983565b600d54604051636e01af8d60e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691636e01af8d91612f8191889160019190600401614ad1565b600060405180830381600087803b158015612f9b57600080fd5b505af1158015612faf573d6000803e3d6000fd5b505060405161ffff8416925086915033907f5079795ec65f793d5a0ed74d8f8e1562b7795934b40612bf55cf0e5d55a3447990600090a4505050611212613919565b601254610100900460ff16156130195760405162461bcd60e51b8152600401610c1f90614715565b60125460ff161561303c5760405162461bcd60e51b8152600401610c1f90614733565b6130453361104b565b6130615760405162461bcd60e51b8152600401610c1f90614753565b6130696135f1565b60405163c608b6c160e01b8152600481018490526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063c608b6c19060240160a0604051808303816000875af11580156130d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130f791906148c0565b905060038160200151600381111561311157613111614827565b1461315e5760405162461bcd60e51b815260206004820152601a60248201527f5550444154455f4f524445525f4e4f545f54505f414e445f534c0000000000006044820152606401610c1f565b60405163095be50560e41b81526004810185905260009081906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906395be50509060240160a060405180830381865afa1580156131c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131ec91906147af565b5093509350505060006132058361ffff16348888613666565b905061322284604001516001600160401b03168260000151613775565b61323784606001518260200151846001613c1d565b61324c84608001518260200151846000613c1d565b6132546138a1565b600081602001519050613274338987602001516001896060015186613d6d565b6132b35760405162461bcd60e51b815260206004820152601060248201526f4641494c45445f54505f55504441544560801b6044820152606401610c1f565b6132ca338987602001516002896080015186613d6d565b6133095760405162461bcd60e51b815260206004820152601060248201526f4641494c45445f534c5f55504441544560801b6044820152606401610c1f565b5050505050610ef9613919565b6001546001600160a01b03163314801561333a57506001546001600160a01b031615155b6133865760405162461bcd60e51b815260206004820152601e60248201527f4e6f7420746865204558495354494e472070656e64696e672061646d696e00006044820152606401610c1f565b60008054600180546001600160a01b038082166001600160a01b031980861682179096559490911690915560408051919092168082526020820184905292917ff9ffabca9c8276e99321725bcb43fb076a6c66a54b7f21c4e8146d8519b417dc910160405180910390a1600154604080516001600160a01b03808516825290921660208301527fca4f2f25d0898edd99413412fb94012f9e54ec8142f9b093e7720646a95b16a99101612c11565b6000546001600160a01b0316331461345e5760405162461bcd60e51b8152600401610c1f9061483d565b806001600160a01b0316634535dc4c6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561349c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906134c09190614ae1565b6134fe5760405162461bcd60e51b815260206004820152600f60248201526e10a83934b1b2ab30b634b230ba37b960891b6044820152606401610c1f565b600680546001600160a01b0319166001600160a01b0383161790556040516d283934b1b2ab30b634b230ba37b960911b8152600e016040519081900381206001600160a01b0383168252907f943e9d45a11aaae5d87503e3bc248665d9807856e5cf2bdb4a988bee4442278190602001610fc2565b6000546001600160a01b0316331461359d5760405162461bcd60e51b8152600401610c1f9061483d565b60075481116135be5760405162461bcd60e51b8152600401610c1f90614861565b60088190556040517f6d617854726967676572506572696f64466f724d61726b65744f7264657273008152601f01610f8f565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f83d08ba6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561364c57600080fd5b505af1158015613660573d6000803e3d6000fd5b50505050565b604080516060810182526000808252602082018190529181018290529061368f8686868661424f565b60008781526004602090815260408220549083015192935063ffffffff16916136c1906001600160401b0316836142ea565b90508083604001516001600160401b031611156137205760405162461bcd60e51b815260206004820152601960248201527f434f4e464944454e43455f52414e47455f544f4f5f57494445000000000000006044820152606401610c1f565b82514210156137695760405162461bcd60e51b815260206004820152601560248201527411955515549157d4149250d157d4915413d4951151605a1b6044820152606401610c1f565b50909695505050505050565b6000600754836137859190614970565b90506000600854846137979190614970565b9050814210156137e95760405162461bcd60e51b815260206004820152601d60248201527f4d41524b45545f4f524445525f545249474745525f544f4f5f534f4f4e0000006044820152606401610c1f565b804211156138395760405162461bcd60e51b815260206004820152601d60248201527f4d41524b45545f4f524445525f545249474745525f544f4f5f4c4154450000006044820152606401610c1f565b8183101580156138495750808311155b6136605760405162461bcd60e51b8152602060048201526024808201527f4d41524b45545f4f524445525f50524943455f4f55545f4f465f54494d455f4660448201526352414d4560e01b6064820152608401610c1f565b4360009081526011602052604090205460105481106138fb5760405162461bcd60e51b81526020600482015260166024820152754d41585f54524947474552535f5045525f424c4f434b60501b6044820152606401610c1f565b613906816001614970565b4360009081526011602052604090205550565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166340da020f6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561364c57600080fd5b7f00000000000000000000000000000000000000000000000000000000000000008163ffffffff1611156139dc5760405162461bcd60e51b815260206004820152600f60248201526e0a6a0a48a8288bea89e9ebe90928e9608b1b6044820152606401610c1f565b600082815260056020908152604091829020805463ffffffff191663ffffffff8516908117909155915191825283917ffe5fd0852fab5f8ba593533cf24a4b4b235704c0e06956d0a58cc2ca0a4b6b4491015b60405180910390a25050565b6001600160a01b038116600090815260018301602052604081205415155b9392505050565b600060095483613a709190614970565b905080421015613ac25760405162461bcd60e51b815260206004820152601c60248201527f4c494d49545f4f524445525f545249474745525f544f4f5f534f4f4e000000006044820152606401610c1f565b80821015613b1e5760405162461bcd60e51b815260206004820152602360248201527f4c494d49545f4f524445525f50524943455f4f55545f4f465f54494d455f4652604482015262414d4560e81b6064820152608401610c1f565b610ef982600c54614304565b6000620186a08363ffffffff161115613b855760405162461bcd60e51b815260206004820152601960248201527f5350524541445f524544554354494f4e5f544f4f5f48494748000000000000006044820152606401610c1f565b600085815260056020526040812054620186a090613bb3906001600160401b0388169063ffffffff16614afc565b613bbd9190614b13565b90506000620186a0613bd563ffffffff871684614b35565b6001600160401b0316613be89190614b13565b613bf29083614b60565b905083613c0857613c038187614b60565b613c12565b613c128187614b80565b979650505050505050565b6001600160401b03841615613660576000613c55846001600160401b0316600019600f5414613c4e57600f546142ea565b60006142ea565b90508115613ce45782613c8557613c75816001600160401b038616614ba0565b856001600160401b031610613ca4565b613c98816001600160401b038616614970565b856001600160401b0316115b613cdf5760405162461bcd60e51b815260206004820152600c60248201526b54505f544f4f5f434c4f534560a01b6044820152606401610c1f565b613d66565b82613d0c57613cfc816001600160401b038616614970565b856001600160401b031611613d2b565b613d1f816001600160401b038616614ba0565b856001600160401b0316105b613d665760405162461bcd60e51b815260206004820152600c60248201526b534c5f544f4f5f434c4f534560a01b6044820152606401610c1f565b5050505050565b60405163c07f992160e01b81526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063c07f992190613dc2908990889088908890600401614bb3565b600060405180830381600087803b158015613ddc57600080fd5b505af1925050508015613ded575060015b613fe857613df9614bc3565b806308c379a003613e7f5750613e0d614bdf565b80613e185750613e81565b856003811115613e2a57613e2a614827565b87896001600160a01b03167f889460050d9a293fbe31b6ce00a37ae62020cb8c8a19cf31e9496cb13246f6e2888888876000604051613e6d959493929190614c68565b60405180910390a46000915050614044565b505b3d808015613eab576040519150601f19603f3d011682016040523d82523d6000602084013e613eb0565b606091505b50632eb752bf60e21b613ec282614cb5565b6001600160e01b03191603613fa9576001856002811115613ee557613ee5614827565b14613f285760405162461bcd60e51b815260206004820152601360248201527204341505f4552524f525f4e4f545f4f4e5f545606c1b6044820152606401610c1f565b60248101516044820151876003811115613f4457613f44614827565b898b6001600160a01b03167f889460050d9a293fbe31b6ce00a37ae62020cb8c8a19cf31e9496cb13246f6e28a8a8a886011811115613f8557613f85614827565b604051613f959493929190614cec565b60405180910390a460009350505050614044565b60405162461bcd60e51b81526020600482015260146024820152732aa725a727aba72fa1aaa9aa27a6afa2a92927a960611b6044820152606401610c1f565b846003811115613ffa57613ffa614827565b86886001600160a01b03167ff0ac91a20375484f5a80315763782e4fe4b42bd038b08ba4939ff1a506974edf87878760405161403893929190614d3b565b60405180910390a45060015b9695505050505050565b7f00000000000000000000000000000000000000000000000000000000000000008163ffffffff1611156140c45760405162461bcd60e51b815260206004820152601c60248201527f434f4e464944454e43455f4652414354494f4e5f544f4f5f48494748000000006044820152606401610c1f565b600082815260046020908152604091829020805463ffffffff191663ffffffff8516908117909155915191825283917f88e6fad616d859d6fba20e93ab2acbf0756b6bc2d90c6002000f709f510cadb09101613a2f565b60606000613a5983614392565b6141318161104b565b6141735760405162461bcd60e51b81526020600482015260136024820152721050d0d3d5539517d393d517d0531313d5d151606a1b6044820152606401610c1f565b61417e6002826143ee565b506040516001600160a01b038216907fc985d67a353004ba149a223b2b9e5c13cca6610b11cb45b4aa029c880d8f7cb590600090a250565b6141bf8161104b565b1561420c5760405162461bcd60e51b815260206004820152601760248201527f4143434f554e545f414c52454144595f414c4c4f5745440000000000000000006044820152606401610c1f565b614217600282614403565b506040516001600160a01b038216907fc5944eab072face4b169928723314c5978080e99ed8f8527faedb18c06664c3590600090a250565b6040805160608101825260008082526020820181905281830152600654915163f4a6a09360e01b815290916001600160a01b03169063f4a6a09390869061429e90899088908890600401614d8f565b60606040518083038185885af11580156142bc573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906142e19190614e37565b95945050505050565b6000620186a06142fa8385614afc565b613a599190614b13565b60006143108242614ba0565b9050808310156143525760405162461bcd60e51b815260206004820152600d60248201526c14149250d157d513d3d7d3d311609a1b6044820152606401610c1f565b42831115610ef95760405162461bcd60e51b815260206004820152600d60248201526c50524943455f544f4f5f4e455760981b6044820152606401610c1f565b6060816000018054806020026020016040519081016040528092919081815260200182805480156143e257602002820191906000526020600020905b8154815260200190600101908083116143ce575b50505050509050919050565b6000613a59836001600160a01b038416614418565b6000613a59836001600160a01b038416614512565b6000818152600183016020526040812054801561450157600061443c600183614ba0565b855490915060009061445090600190614ba0565b90508082146144b557600086600001828154811061447057614470614ea9565b906000526020600020015490508087600001848154811061449357614493614ea9565b6000918252602080832090910192909255918252600188019052604090208390555b85548690806144c6576144c6614ebf565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050611058565b6000915050611058565b5092915050565b600081815260018301602052604081205461455957508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155611058565b506000611058565b60006020828403121561457357600080fd5b5035919050565b60008083601f84011261458c57600080fd5b5081356001600160401b038111156145a357600080fd5b6020830191508360208260051b85010111156145be57600080fd5b9250929050565b6000806000604084860312156145da57600080fd5b8335925060208401356001600160401b038111156145f757600080fd5b6146038682870161457a565b9497909650939450505050565b63ffffffff8116811461121257600080fd5b6000806040838503121561463557600080fd5b82359150602083013561464781614610565b809150509250929050565b60006020828403121561466457600080fd5b81356001600160a01b0381168114613a5957600080fd5b6000815180845260005b818110156146a157602081850181015186830182015201614685565b506000602082860101526020601f19601f83011685010191505092915050565b602081526000613a59602083018461467b565b6020808252825182820181905260009190848201906040850190845b818110156137695783516001600160a01b0316835292840192918401916001016146f0565b602080825260049082015263444f4e4560e01b604082015260600190565b60208082526006908201526514105554d15160d21b604082015260600190565b6020808252601690820152752727aa2fa0a62627aba2a22faa27afaa2924a3a3a2a960511b604082015260600190565b80516001600160401b038116811461479a57600080fd5b919050565b8051801515811461479a57600080fd5b600080600080600060a086880312156147c757600080fd5b8551600681106147d657600080fd5b94506147e460208701614783565b9350604086015161ffff811681146147fb57600080fd5b92506148096060870161479f565b9150608086015161481981614610565b809150509295509295909350565b634e487b7160e01b600052602160045260246000fd5b6020808252600a908201526927a7262cafa0a226a4a760b11b604082015260600190565b6020808252600b908201526a57524f4e475f56414c554560a81b604082015260600190565b601f8201601f191681016001600160401b03811182821017156148b957634e487b7160e01b600052604160045260246000fd5b6040525050565b600060a082840312156148d257600080fd5b60405160a081018181106001600160401b038211171561490257634e487b7160e01b600052604160045260246000fd5b6040528251815260208301516004811061491b57600080fd5b602082015261492c60408401614783565b604082015261493d60608401614783565b606082015261494e60808401614783565b60808201529392505050565b634e487b7160e01b600052601160045260246000fd5b808201808211156110585761105861495a565b6020808252600c908201526b15d0525517d512535153d55560a21b604082015260600190565b60208082526010908201526f2727afa9aaa1a42fa827a9a4aa24a7a760811b604082015260600190565b83815260608101600284106149ea576149ea614827565b602082019390935260400152919050565b600060808284031215614a0d57600080fd5b604051608081018181106001600160401b0382111715614a3d57634e487b7160e01b600052604160045260246000fd5b604052614a4983614783565b8152614a5760208401614783565b6020820152614a6860408401614783565b6040820152614a7960608401614783565b60608201529392505050565b8481526080810160048510614a9c57614a9c614827565b60208201949094526001600160401b0392831660408201529116606090910152919050565b6003811061121257611212614827565b838152606081016149ea84614ac1565b600060208284031215614af357600080fd5b613a598261479f565b80820281158282048414176110585761105861495a565b600082614b3057634e487b7160e01b600052601260045260246000fd5b500490565b6001600160401b03818116838216028082169190828114614b5857614b5861495a565b505092915050565b6001600160401b0382811682821603908082111561450b5761450b61495a565b6001600160401b0381811683821601908082111561450b5761450b61495a565b818103818111156110585761105861495a565b84815260808101614a9c85614ac1565b600060033d1115614bdc5760046000803e5060005160e01c5b90565b600060443d1015614bed5790565b6040516003193d81016004833e81513d6001600160401b038160248401118184111715614c1c57505050505090565b8285019150815181811115614c345750505050505090565b843d8701016020828501011115614c4e5750505050505090565b614c5d60208286010187614886565b509095945050505050565b614c7186614ac1565b85815260006001600160401b03808716602084015280861660408401525060a06060830152614ca360a083018561467b565b90508260808301529695505050505050565b805160208201516001600160e01b03198082169291906004831015614ce45780818460040360031b1b83161693505b505050919050565b614cf585614ac1565b9384526001600160401b0392831660208501529116604083015260a0606083018190526009908301526821a0a82fa2a92927a960b91b60c0830152608082015260e00190565b60608101614d4885614ac1565b9381526001600160401b039283166020820152911660409091015290565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6000604082018583526020604060208501528185835260608501905060608660051b86010192508660005b87811015614e2957868503605f190183528135368a9003601e19018112614de057600080fd5b890184810190356001600160401b03811115614dfb57600080fd5b803603821315614e0a57600080fd5b614e15878284614d66565b965050509183019190830190600101614dba565b509298975050505050505050565b600060608284031215614e4957600080fd5b604051606081018181106001600160401b0382111715614e7957634e487b7160e01b600052604160045260246000fd5b60405282518152614e8c60208401614783565b6020820152614e9d60408401614783565b60408201529392505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fdfea2646970667358221220b31047840e898facc8a37271da1ef3caa6595e12c7975fd0e31e1ce463838ae864736f6c63430008180033";
|
|
18
18
|
static readonly abi: readonly [{
|
|
19
19
|
readonly inputs: readonly [{
|
|
20
20
|
readonly internalType: "contract ITradingFloorV1";
|
|
@@ -488,6 +488,26 @@ export declare class TriggersV1__factory extends ContractFactory {
|
|
|
488
488
|
}];
|
|
489
489
|
readonly stateMutability: "view";
|
|
490
490
|
readonly type: "function";
|
|
491
|
+
}, {
|
|
492
|
+
readonly inputs: readonly [];
|
|
493
|
+
readonly name: "CONTRACT_NAME";
|
|
494
|
+
readonly outputs: readonly [{
|
|
495
|
+
readonly internalType: "string";
|
|
496
|
+
readonly name: "";
|
|
497
|
+
readonly type: "string";
|
|
498
|
+
}];
|
|
499
|
+
readonly stateMutability: "view";
|
|
500
|
+
readonly type: "function";
|
|
501
|
+
}, {
|
|
502
|
+
readonly inputs: readonly [];
|
|
503
|
+
readonly name: "CONTRACT_VERSION";
|
|
504
|
+
readonly outputs: readonly [{
|
|
505
|
+
readonly internalType: "string";
|
|
506
|
+
readonly name: "";
|
|
507
|
+
readonly type: "string";
|
|
508
|
+
}];
|
|
509
|
+
readonly stateMutability: "view";
|
|
510
|
+
readonly type: "function";
|
|
491
511
|
}, {
|
|
492
512
|
readonly inputs: readonly [];
|
|
493
513
|
readonly name: "FRACTION_SCALE";
|
|
@@ -594,6 +614,26 @@ export declare class TriggersV1__factory extends ContractFactory {
|
|
|
594
614
|
}];
|
|
595
615
|
readonly stateMutability: "view";
|
|
596
616
|
readonly type: "function";
|
|
617
|
+
}, {
|
|
618
|
+
readonly inputs: readonly [];
|
|
619
|
+
readonly name: "getContractName";
|
|
620
|
+
readonly outputs: readonly [{
|
|
621
|
+
readonly internalType: "string";
|
|
622
|
+
readonly name: "";
|
|
623
|
+
readonly type: "string";
|
|
624
|
+
}];
|
|
625
|
+
readonly stateMutability: "pure";
|
|
626
|
+
readonly type: "function";
|
|
627
|
+
}, {
|
|
628
|
+
readonly inputs: readonly [];
|
|
629
|
+
readonly name: "getContractVersion";
|
|
630
|
+
readonly outputs: readonly [{
|
|
631
|
+
readonly internalType: "string";
|
|
632
|
+
readonly name: "";
|
|
633
|
+
readonly type: "string";
|
|
634
|
+
}];
|
|
635
|
+
readonly stateMutability: "pure";
|
|
636
|
+
readonly type: "function";
|
|
597
637
|
}, {
|
|
598
638
|
readonly inputs: readonly [{
|
|
599
639
|
readonly internalType: "uint256";
|
|
@@ -659,6 +699,16 @@ export declare class TriggersV1__factory extends ContractFactory {
|
|
|
659
699
|
}];
|
|
660
700
|
readonly stateMutability: "view";
|
|
661
701
|
readonly type: "function";
|
|
702
|
+
}, {
|
|
703
|
+
readonly inputs: readonly [];
|
|
704
|
+
readonly name: "limitsMarginFraction";
|
|
705
|
+
readonly outputs: readonly [{
|
|
706
|
+
readonly internalType: "uint256";
|
|
707
|
+
readonly name: "";
|
|
708
|
+
readonly type: "uint256";
|
|
709
|
+
}];
|
|
710
|
+
readonly stateMutability: "view";
|
|
711
|
+
readonly type: "function";
|
|
662
712
|
}, {
|
|
663
713
|
readonly inputs: readonly [];
|
|
664
714
|
readonly name: "marketOrderCancelFeeFraction";
|
|
@@ -783,6 +833,16 @@ export declare class TriggersV1__factory extends ContractFactory {
|
|
|
783
833
|
}];
|
|
784
834
|
readonly stateMutability: "view";
|
|
785
835
|
readonly type: "function";
|
|
836
|
+
}, {
|
|
837
|
+
readonly inputs: readonly [{
|
|
838
|
+
readonly internalType: "uint256";
|
|
839
|
+
readonly name: "_limitsMarginFraction";
|
|
840
|
+
readonly type: "uint256";
|
|
841
|
+
}];
|
|
842
|
+
readonly name: "setLimitsMarginFraction";
|
|
843
|
+
readonly outputs: readonly [];
|
|
844
|
+
readonly stateMutability: "nonpayable";
|
|
845
|
+
readonly type: "function";
|
|
786
846
|
}, {
|
|
787
847
|
readonly inputs: readonly [{
|
|
788
848
|
readonly internalType: "uint256";
|
package/dist/esm/lib/typechain/factories/contracts/Lynx/Triggers/TriggersV1__factory.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TriggersV1__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../lib/typechain/factories/contracts/Lynx/Triggers/TriggersV1__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EACV,UAAU,EACV,mBAAmB,EACpB,MAAM,gDAAgD,CAAC;
|
|
1
|
+
{"version":3,"file":"TriggersV1__factory.d.ts","sourceRoot":"","sources":["../../../../../../../../lib/typechain/factories/contracts/Lynx/Triggers/TriggersV1__factory.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,eAAe,EACf,2BAA2B,EAE5B,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EACV,MAAM,EACN,WAAW,EACX,yBAAyB,EACzB,cAAc,EACf,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EACV,UAAU,EACV,mBAAmB,EACpB,MAAM,gDAAgD,CAAC;AAk+CxD,KAAK,2BAA2B,GAC5B,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,GACjB,qBAAqB,CAAC,OAAO,eAAe,CAAC,CAAC;AAMlD,qBAAa,mBAAoB,SAAQ,eAAe;gBAC1C,GAAG,IAAI,EAAE,2BAA2B;IAQvC,oBAAoB,CAC3B,aAAa,EAAE,WAAW,EAC1B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAClD,OAAO,CAAC,yBAAyB,CAAC;IAG5B,MAAM,CACb,aAAa,EAAE,WAAW,EAC1B,SAAS,CAAC,EAAE,mBAAmB,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAEI,OAAO,CAC5D,UAAU,GAAG;QACX,qBAAqB,IAAI,2BAA2B,CAAC;KACtD,CACF;IAEM,OAAO,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,GAAG,mBAAmB;IAIpE,MAAM,CAAC,QAAQ,CAAC,QAAQ,4szCAAa;IACrC,MAAM,CAAC,QAAQ,CAAC,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAQ;IAC3B,MAAM,CAAC,eAAe,IAAI,mBAAmB;IAG7C,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,UAAU;CAG5E"}
|
|
@@ -596,6 +596,32 @@ const _abi = [
|
|
|
596
596
|
stateMutability: "view",
|
|
597
597
|
type: "function",
|
|
598
598
|
},
|
|
599
|
+
{
|
|
600
|
+
inputs: [],
|
|
601
|
+
name: "CONTRACT_NAME",
|
|
602
|
+
outputs: [
|
|
603
|
+
{
|
|
604
|
+
internalType: "string",
|
|
605
|
+
name: "",
|
|
606
|
+
type: "string",
|
|
607
|
+
},
|
|
608
|
+
],
|
|
609
|
+
stateMutability: "view",
|
|
610
|
+
type: "function",
|
|
611
|
+
},
|
|
612
|
+
{
|
|
613
|
+
inputs: [],
|
|
614
|
+
name: "CONTRACT_VERSION",
|
|
615
|
+
outputs: [
|
|
616
|
+
{
|
|
617
|
+
internalType: "string",
|
|
618
|
+
name: "",
|
|
619
|
+
type: "string",
|
|
620
|
+
},
|
|
621
|
+
],
|
|
622
|
+
stateMutability: "view",
|
|
623
|
+
type: "function",
|
|
624
|
+
},
|
|
599
625
|
{
|
|
600
626
|
inputs: [],
|
|
601
627
|
name: "FRACTION_SCALE",
|
|
@@ -733,6 +759,32 @@ const _abi = [
|
|
|
733
759
|
stateMutability: "view",
|
|
734
760
|
type: "function",
|
|
735
761
|
},
|
|
762
|
+
{
|
|
763
|
+
inputs: [],
|
|
764
|
+
name: "getContractName",
|
|
765
|
+
outputs: [
|
|
766
|
+
{
|
|
767
|
+
internalType: "string",
|
|
768
|
+
name: "",
|
|
769
|
+
type: "string",
|
|
770
|
+
},
|
|
771
|
+
],
|
|
772
|
+
stateMutability: "pure",
|
|
773
|
+
type: "function",
|
|
774
|
+
},
|
|
775
|
+
{
|
|
776
|
+
inputs: [],
|
|
777
|
+
name: "getContractVersion",
|
|
778
|
+
outputs: [
|
|
779
|
+
{
|
|
780
|
+
internalType: "string",
|
|
781
|
+
name: "",
|
|
782
|
+
type: "string",
|
|
783
|
+
},
|
|
784
|
+
],
|
|
785
|
+
stateMutability: "pure",
|
|
786
|
+
type: "function",
|
|
787
|
+
},
|
|
736
788
|
{
|
|
737
789
|
inputs: [
|
|
738
790
|
{
|
|
@@ -819,6 +871,19 @@ const _abi = [
|
|
|
819
871
|
stateMutability: "view",
|
|
820
872
|
type: "function",
|
|
821
873
|
},
|
|
874
|
+
{
|
|
875
|
+
inputs: [],
|
|
876
|
+
name: "limitsMarginFraction",
|
|
877
|
+
outputs: [
|
|
878
|
+
{
|
|
879
|
+
internalType: "uint256",
|
|
880
|
+
name: "",
|
|
881
|
+
type: "uint256",
|
|
882
|
+
},
|
|
883
|
+
],
|
|
884
|
+
stateMutability: "view",
|
|
885
|
+
type: "function",
|
|
886
|
+
},
|
|
822
887
|
{
|
|
823
888
|
inputs: [],
|
|
824
889
|
name: "marketOrderCancelFeeFraction",
|
|
@@ -981,6 +1046,19 @@ const _abi = [
|
|
|
981
1046
|
stateMutability: "view",
|
|
982
1047
|
type: "function",
|
|
983
1048
|
},
|
|
1049
|
+
{
|
|
1050
|
+
inputs: [
|
|
1051
|
+
{
|
|
1052
|
+
internalType: "uint256",
|
|
1053
|
+
name: "_limitsMarginFraction",
|
|
1054
|
+
type: "uint256",
|
|
1055
|
+
},
|
|
1056
|
+
],
|
|
1057
|
+
name: "setLimitsMarginFraction",
|
|
1058
|
+
outputs: [],
|
|
1059
|
+
stateMutability: "nonpayable",
|
|
1060
|
+
type: "function",
|
|
1061
|
+
},
|
|
984
1062
|
{
|
|
985
1063
|
inputs: [
|
|
986
1064
|
{
|
|
@@ -1427,7 +1505,7 @@ const _abi = [
|
|
|
1427
1505
|
type: "function",
|
|
1428
1506
|
},
|
|
1429
1507
|
];
|
|
1430
|
-
const _bytecode = "0x6101206040526003600755603c600855603c600955603c600a5560b4600b55610708600c556103e8620186a0600162000039919062000291565b620000459190620002bd565b600d556103e86200005b620186a0600262000291565b620000679190620002bd565b600e556003600f553480156200007c57600080fd5b5060405162004ee838038062004ee88339810160408190526200009f91620002f9565b806001600160a01b0316637b1039996040518163ffffffff1660e01b8152600401602060405180830381865afa158015620000de573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001049190620002f9565b606462000116620186a0600162000291565b620001229190620002bd565b606462000134620186a0600a62000291565b620001409190620002bd565b600080546001600160a01b0319163317905560805260a0526001600160a01b0390811660c0528116620001a85760405162461bcd60e51b815260206004820152600c60248201526b57524f4e475f504152414d5360a01b604482015260640160405180910390fd5b6001600160a01b03811660e081905260408051637b10399960e01b81529051637b103999916004808201926020929091908290030181865afa158015620001f3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002199190620002f9565b6001600160a01b031663776af5ba6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000257573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200027d9190620002f9565b6001600160a01b0316610100525062000320565b8082028115828204841417620002b757634e487b7160e01b600052601160045260246000fd5b92915050565b600082620002db57634e487b7160e01b600052601260045260246000fd5b500490565b6001600160a01b0381168114620002f657600080fd5b50565b6000602082840312156200030c57600080fd5b81516200031981620002e0565b9392505050565b60805160a05160c05160e05161010051614ab8620004306000396000818161076001528181610fc201528181611bb7015281816127100152612dd801526000818161039801528181610b3401528181610cd301528181611198015281816112f00152818161141b015281816115c901528181611817015281816118b1015281816119e101528181611ca201528181611e1001528181611eaa01528181611fd701528181612158015281816123080152818161242d01528181612508015281816127fb01528181612b4701528181612c9e01528181612ecd015261397d015260008181613339015261366101526000818161051501526136bc01526000818161098d0152613c460152614ab86000f3fe6080604052600436106103815760003560e01c8063776af5ba116101d1578063ad1f2b5611610102578063c4ae3168116100a0578063e9c714f21161006f578063e9c714f214610a37578063f851a44014610a4c578063fae5a83f14610a6c578063fd057e9414610a8c57600080fd5b8063c4ae3168146109cf578063d99dc0c1146109e4578063e231377014610a04578063e8051b0114610a2457600080fd5b8063b71f3cfe116100dc578063b71f3cfe14610943578063b81bfa051461095b578063b88750a91461097b578063bfc084d9146109af57600080fd5b8063ad1f2b56146108f4578063b187bd2614610909578063b71d1a0c1461092357600080fd5b80639abf17821161016f578063a5b6020811610149578063a5b602081461088f578063a5e02c8d146108a5578063a9f7c521146108c5578063aaf5eb68146108d857600080fd5b80639abf17821461081c5780639f918f451461083c578063a1d627a11461086f57600080fd5b806380193b26116101ab57806380193b26146107ae57806381405205146107c557806386c7f19a146107db5780638f062227146107fd57600080fd5b8063776af5ba1461074e5780637f31c2db146107825780637f588b911461079857600080fd5b8063392503e0116102b65780634cdb06a5116102545780636c1bb5ca116102235780636c1bb5ca146106e8578063718ddc14146107085780637670d9481461071b578063771ad70d1461073b57600080fd5b80634cdb06a51461065a5780634d3691511461067a5780635d2cdfea1461068d5780636447dc8b146106d557600080fd5b8063410c0b7c11610290578063410c0b7c146105fb57806345b6171314610611578063490580e3146106275780634bdf19731461064757600080fd5b8063392503e0146105bd5780633b321666146105d35780633be3d626146105e657600080fd5b806326b4120a1161032357806333a01d32116102fd57806333a01d321461050357806336930d0b1461053757806336b669f714610557578063382672571461059d57600080fd5b806326b4120a146104935780632f86d7c2146104b357806333511e5e146104d357600080fd5b8063221407af1161035f578063221407af1461042857806322ede93c1461043d57806325577e9f14610453578063267822471461047357600080fd5b80630d3b0b761461038657806310b4cc13146103d757806320cb5976146103fb575b600080fd5b34801561039257600080fd5b506103ba7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b3480156103e357600080fd5b506103ed600d5481565b6040519081526020016103ce565b34801561040757600080fd5b506103ed610416366004614157565b60106020526000908152604090205481565b61043b6104363660046141bb565b610aac565b005b34801561044957600080fd5b506103ed600e5481565b34801561045f57600080fd5b5061043b61046e366004614218565b610db3565b34801561047f57600080fd5b506001546103ba906001600160a01b031681565b34801561049f57600080fd5b5061043b6104ae366004614157565b610deb565b3480156104bf57600080fd5b5061043b6104ce366004614157565b610e82565b3480156104df57600080fd5b506104f36104ee366004614248565b610f1e565b60405190151581526020016103ce565b34801561050f57600080fd5b506103ed7f000000000000000000000000000000000000000000000000000000000000000081565b34801561054357600080fd5b5061043b610552366004614157565b610f31565b61056a6105653660046141bb565b6110e8565b60408051825181526020808401516001600160401b039081169183019190915292820151909216908201526060016103ce565b3480156105a957600080fd5b5061043b6105b8366004614157565b611119565b3480156105c957600080fd5b506103ed600c5481565b61043b6105e13660046141bb565b611399565b3480156105f257600080fd5b5061043b6116a7565b34801561060757600080fd5b506103ed600a5481565b34801561061d57600080fd5b506103ed60075481565b34801561063357600080fd5b5061043b610642366004614157565b611733565b61043b6106553660046141bb565b611786565b34801561066657600080fd5b5061043b610675366004614157565b611abd565b61043b6106883660046141bb565b611b26565b34801561069957600080fd5b506106c06106a8366004614157565b60056020526000908152604090205463ffffffff1681565b60405163ffffffff90911681526020016103ce565b61043b6106e33660046141bb565b611d7f565b3480156106f457600080fd5b5061043b610703366004614218565b6120a2565b61043b6107163660046141bb565b6120d6565b34801561072757600080fd5b5061043b610736366004614157565b61233f565b61043b6107493660046141bb565b61239c565b34801561075a57600080fd5b506103ba7f000000000000000000000000000000000000000000000000000000000000000081565b34801561078e57600080fd5b506103ed60085481565b3480156107a457600080fd5b506103ed60095481565b3480156107ba57600080fd5b506103ed620186a081565b3480156107d157600080fd5b506103ed600f5481565b3480156107e757600080fd5b506107f06125de565b6040516103ce9190614271565b34801561080957600080fd5b506011546104f390610100900460ff1681565b34801561082857600080fd5b5061043b610837366004614157565b6125ef565b34801561084857600080fd5b506106c0610857366004614157565b60046020526000908152604090205463ffffffff1681565b34801561087b57600080fd5b506006546103ba906001600160a01b031681565b34801561089b57600080fd5b506103ed600b5481565b3480156108b157600080fd5b5061043b6108c0366004614248565b61264c565b61043b6108d33660046141bb565b61267f565b3480156108e457600080fd5b506103ed670de0b6b3a764000081565b34801561090057600080fd5b506103ed606481565b34801561091557600080fd5b506011546104f39060ff1681565b34801561092f57600080fd5b5061043b61093e366004614248565b6128cb565b34801561094f57600080fd5b506103ed633b9aca0081565b34801561096757600080fd5b5061043b610976366004614157565b612973565b34801561098757600080fd5b506103ed7f000000000000000000000000000000000000000000000000000000000000000081565b3480156109bb57600080fd5b5061043b6109ca366004614157565b6129c6565b3480156109db57600080fd5b5061043b612a23565b3480156109f057600080fd5b5061043b6109ff366004614248565b612a95565b348015610a1057600080fd5b5061043b610a1f366004614157565b612ac8565b61043b610a323660046141bb565b612d47565b348015610a4357600080fd5b5061043b61303e565b348015610a5857600080fd5b506000546103ba906001600160a01b031681565b348015610a7857600080fd5b5061043b610a87366004614248565b61315c565b348015610a9857600080fd5b5061043b610aa7366004614157565b61329b565b601154610100900460ff1615610add5760405162461bcd60e51b8152600401610ad4906142b2565b60405180910390fd5b60115460ff1615610b005760405162461bcd60e51b8152600401610ad4906142d0565b610b0933610f1e565b610b255760405162461bcd60e51b8152600401610ad4906142f0565b610b2d613337565b60008060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166395be5050876040518263ffffffff1660e01b8152600401610b8091815260200190565b60a060405180830381865afa158015610b9d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bc1919061434c565b505092506001600160401b03169250925060008211610c1c5760405162461bcd60e51b81526020600482015260176024820152762727afa822a72224a723afa6a0a925a2aa2fa7a92222a960491b6044820152606401610ad4565b6004836005811115610c3057610c306143c4565b14610c705760405162461bcd60e51b815260206004820152601060248201526f1393d517d0d313d4d157d3505492d15560821b6044820152606401610ad4565b6000610c828261ffff163488886133ac565b9050610c928382600001516134bb565b602081015180610ca06135e7565b602083015160405163651d1d4160e11b8152600481018b90526001600160401b03918216602482015290821660448201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063ca3a3a8290606401600060405180830381600087803b158015610d1f57600080fd5b505af1158015610d33573d6000803e3d6000fd5b50505050856005811115610d4957610d496143c4565b6020848101518551604080516001600160401b038781168252909316938301939093528183015290518b9133917f5b5ec0827d50049e9f15c1d5c28dc87d620987ef82a18f0b98afac1c76076d3d9181900360600190a4505050505050610dae61365f565b505050565b6000546001600160a01b03163314610ddd5760405162461bcd60e51b8152600401610ad4906143da565b610de782826136ba565b5050565b6000546001600160a01b03163314610e155760405162461bcd60e51b8152600401610ad4906143da565b600b8190556040517f6d61726b65744f72646572546967687454696d6552616e67650000000000000081526019015b604051908190038120828252907f8cf3e35f6221b16e1670a3413180c9484bf5aa71787905909fa82a6a2662e9ab906020015b60405180910390a250565b6000546001600160a01b03163314610eac5760405162461bcd60e51b8152600401610ad4906143da565b6008548110610eeb5760405162461bcd60e51b815260206004820152600b60248201526a57524f4e475f56414c554560a81b6044820152606401610ad4565b60078190556040517f6d696e54726967676572506572696f64466f724d61726b65744f7264657273008152601f01610e44565b6000610f2b600283613781565b92915050565b601154610100900460ff1615610f595760405162461bcd60e51b8152600401610ad4906142b2565b60115460ff1615610f7c5760405162461bcd60e51b8152600401610ad4906142d0565b610f8533610f1e565b610fa15760405162461bcd60e51b8152600401610ad4906142f0565b610fa9613337565b60405163c608b6c160e01b8152600481018290526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063c608b6c19060240160a0604051808303816000875af1158015611013573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110379190614438565b9050600a5481604001516001600160401b031661105491906144e8565b4210156110735760405162461bcd60e51b8152600401610ad4906144fb565b80602001516003811115611089576110896143c4565b60608201516080830151604080516001600160401b039384168152929091166020830152849133917f7b5b2e57aed6ee99244bd22f2b43e33e9fcbf0d77a9f425d59ee2d74e1c3795d910160405180910390a4506110e561365f565b50565b6040805160608101825260008082526020820181905291810191909152611111843485856133ac565b949350505050565b601154610100900460ff16156111415760405162461bcd60e51b8152600401610ad4906142b2565b60115460ff16156111645760405162461bcd60e51b8152600401610ad4906142d0565b61116d33610f1e565b6111895760405162461bcd60e51b8152600401610ad4906142f0565b611191613337565b60008060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166395be5050856040518263ffffffff1660e01b81526004016111e491815260200190565b60a060405180830381865afa158015611201573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611225919061434c565b505092506001600160401b031692509250600082116112565760405162461bcd60e51b8152600401610ad490614521565b600483600581111561126a5761126a6143c4565b146112aa5760405162461bcd60e51b815260206004820152601060248201526f1393d517d0d313d4d157d3505492d15560821b6044820152606401610ad4565b600a546112b790836144e8565b4210156112d65760405162461bcd60e51b8152600401610ad4906144fb565b600d54604051634ebe5c3360e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691634ebe5c33916113299188916001919060040161454b565b600060405180830381600087803b15801561134357600080fd5b505af1158015611357573d6000803e3d6000fd5b505060405161ffff8416925086915033907f89a3ecf5024675f1d0abc6dc42608fc41216f103c12c2c84f8ca3938bd055f0390600090a45050506110e561365f565b601154610100900460ff16156113c15760405162461bcd60e51b8152600401610ad4906142b2565b60115460ff16156113e45760405162461bcd60e51b8152600401610ad4906142d0565b6113ed33610f1e565b6114095760405162461bcd60e51b8152600401610ad4906142f0565b611411613337565b60008060008060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166395be5050896040518263ffffffff1660e01b815260040161146791815260200190565b60a060405180830381865afa158015611484573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114a8919061434c565b9450945094506001600160401b031694509450600084116115045760405162461bcd60e51b81526020600482015260166024820152752727afa822a72224a723afa624a6a4aa2fa7a92222a960511b6044820152606401610ad4565b6002856005811115611518576115186143c4565b146115565760405162461bcd60e51b815260206004820152600e60248201526d1393d517d3d4115397d31253525560921b6044820152606401610ad4565b60006115688461ffff16348a8a6133ac565b90506115788582600001516137a6565b6020810151600061158f61ffff8716838688613870565b90506115996135e7565b600e54604051631ea9af6b60e01b8152600481018d90526001600160401b038316602482015260448101919091527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690631ea9af6b906064015b600060405180830381600087803b15801561161657600080fd5b505af115801561162a573d6000803e3d6000fd5b50505050876005811115611640576116406143c4565b6020848101518551604080516001600160401b038781168252909316938301939093528183015290518d9133917f60fab6e183a7c350210c0b457db01423b47aa3e72f5b735b8dbb3ecd3e8077439181900360600190a45050505050505050610dae61365f565b6000546001600160a01b031633146116d15760405162461bcd60e51b8152600401610ad4906143da565b6011805460ff610100808304821615810261ff001990931692909217928390556040517f8e47bd62470c6cba4d30c023548622607c9c84402a5655f2569b7934c36a9e4f936117299390049091161515815260200190565b60405180910390a1565b6000546001600160a01b0316331461175d5760405162461bcd60e51b8152600401610ad4906143da565b600f819055604051726d61785472696767657273506572426c6f636b60681b8152601301610e44565b601154610100900460ff16156117ae5760405162461bcd60e51b8152600401610ad4906142b2565b60115460ff16156117d15760405162461bcd60e51b8152600401610ad4906142d0565b6117da33610f1e565b6117f65760405162461bcd60e51b8152600401610ad4906142f0565b6117fe613337565b60405163095be50560e41b8152600481018490526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906395be50509060240160a060405180830381865afa158015611866573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061188a919061434c565b50506040516366307a4f60e01b815260048101889052909350600092506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691506366307a4f90602401608060405180830381865afa1580156118f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061191d9190614573565b905060008261ffff16116119435760405162461bcd60e51b8152600401610ad490614521565b600081606001516001600160401b0316116119885760405162461bcd60e51b81526020600482015260056024820152641393d7d4d360da1b6044820152606401610ad4565b60208101516001600160401b031660006119a861ffff85163488886133ac565b90506119b88282600001516137a6565b60208101516119c56135e7565b6020820151604051632029fcf560e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016916380a7f3d491611a1c918c916002919087906004016145fd565b600060405180830381600087803b158015611a3657600080fd5b505af1158015611a4a573d6000803e3d6000fd5b5050506020808401518451604080516001600160401b038088168252909316938301939093529181019190915261ffff87169150899033907fb03dbc9368faf0f8588dc8429c40a26ef9a637488f1ea5521a2ba2bfb5ff2016906060015b60405180910390a45050505050610dae61365f565b6000546001600160a01b03163314611ae75760405162461bcd60e51b8152600401610ad4906143da565b600e8190556040517f6f70656e506f736974696f6e43616e63656c6c6174696f6e466565467261637481526234b7b760e91b6020820152602301610e44565b601154610100900460ff1615611b4e5760405162461bcd60e51b8152600401610ad4906142b2565b60115460ff1615611b715760405162461bcd60e51b8152600401610ad4906142d0565b611b7a33610f1e565b611b965760405162461bcd60e51b8152600401610ad4906142f0565b611b9e613337565b60405163c608b6c160e01b8152600481018490526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063c608b6c19060240160a0604051808303816000875af1158015611c08573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c2c9190614438565b9050600281602001516003811115611c4657611c466143c4565b14611c895760405162461bcd60e51b815260206004820152601360248201527215541110551157d3d491115497d393d517d4d3606a1b6044820152606401610ad4565b60405163095be50560e41b8152600481018590526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906395be50509060240160a060405180830381865afa158015611cf1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d15919061434c565b5050925050506000611d2d8261ffff163487876133ac565b9050611d4a83604001516001600160401b031682600001516134bb565b611d526135e7565b600081602001519050611d72338886602001516002886060015186613963565b5050505050610dae61365f565b601154610100900460ff1615611da75760405162461bcd60e51b8152600401610ad4906142b2565b60115460ff1615611dca5760405162461bcd60e51b8152600401610ad4906142d0565b611dd333610f1e565b611def5760405162461bcd60e51b8152600401610ad4906142f0565b611df7613337565b60405163095be50560e41b8152600481018490526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906395be50509060240160a060405180830381865afa158015611e5f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e83919061434c565b50506040516366307a4f60e01b815260048101889052909350600092506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691506366307a4f90602401608060405180830381865afa158015611ef2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f169190614573565b905060008261ffff1611611f3c5760405162461bcd60e51b8152600401610ad490614521565b600081604001516001600160401b031611611f815760405162461bcd60e51b815260206004820152600560248201526404e4f5f54560dc1b6044820152606401610ad4565b80516001600160401b03166000611f9e61ffff85163488886133ac565b9050611fae8282600001516137a6565b6020810151611fbb6135e7565b6020820151604051632029fcf560e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016916380a7f3d491612012918c916001919087906004016145fd565b600060405180830381600087803b15801561202c57600080fd5b505af1158015612040573d6000803e3d6000fd5b5050506020808401518451604080516001600160401b038088168252909316938301939093529181019190915261ffff87169150899033907fbe700227f721a08f3b755aa3348a63564c2c07890aba73de46372f7bffcaa2e290606001611aa8565b6000546001600160a01b031633146120cc5760405162461bcd60e51b8152600401610ad4906143da565b610de78282613c44565b601154610100900460ff16156120fe5760405162461bcd60e51b8152600401610ad4906142b2565b60115460ff16156121215760405162461bcd60e51b8152600401610ad4906142d0565b61212a33610f1e565b6121465760405162461bcd60e51b8152600401610ad4906142f0565b61214e613337565b60008060008060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166395be5050896040518263ffffffff1660e01b81526004016121a491815260200190565b60a060405180830381865afa1580156121c1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121e5919061434c565b9450945094506001600160401b031694509450600084116122425760405162461bcd60e51b81526020600482015260176024820152762727afa822a72224a723afa6a0a925a2aa2fa7a92222a960491b6044820152606401610ad4565b6001856005811115612256576122566143c4565b146122955760405162461bcd60e51b815260206004820152600f60248201526e1393d517d3d4115397d3505492d155608a1b6044820152606401610ad4565b60006122a78461ffff16348a8a6133ac565b90506122b78582600001516134bb565b602081015160006122ce61ffff8716838688613870565b90506122d86135e7565b600e546040516303ad224560e61b8152600481018d90526001600160401b038316602482015260448101919091527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063eb489140906064016115fc565b6000546001600160a01b031633146123695760405162461bcd60e51b8152600401610ad4906143da565b600c8190556040517f74726967676572507269636546726573686e65737354696d6552616e676500008152601e01610e44565b601154610100900460ff16156123c45760405162461bcd60e51b8152600401610ad4906142b2565b60115460ff16156123e75760405162461bcd60e51b8152600401610ad4906142d0565b6123f033610f1e565b61240c5760405162461bcd60e51b8152600401610ad4906142f0565b612414613337565b60405163095be50560e41b8152600481018490526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906395be50509060240160a060405180830381865afa15801561247c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124a0919061434c565b50509250505060008161ffff16116124ca5760405162461bcd60e51b8152600401610ad490614521565b60006124dc8261ffff163486866133ac565b60208101519091506124ec6135e7565b6020820151604051632029fcf560e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016916380a7f3d491612543918a916003919087906004016145fd565b600060405180830381600087803b15801561255d57600080fd5b505af1158015612571573d6000803e3d6000fd5b505050506020828101518351604080516001600160401b0386811682529093169383019390935281830152905161ffff851691889133917f086bdd0cdd4ae322dd6112d05bdf96c020e6b90cc84ee2d39941bd716e18fb92919081900360600190a4505050610dae61365f565b60606125ea6002613d11565b905090565b6000546001600160a01b031633146126195760405162461bcd60e51b8152600401610ad4906143da565b600d8190556040517f6d61726b65744f7264657243616e63656c4665654672616374696f6e000000008152601c01610e44565b6000546001600160a01b031633146126765760405162461bcd60e51b8152600401610ad4906143da565b6110e581613d1e565b601154610100900460ff16156126a75760405162461bcd60e51b8152600401610ad4906142b2565b60115460ff16156126ca5760405162461bcd60e51b8152600401610ad4906142d0565b6126d333610f1e565b6126ef5760405162461bcd60e51b8152600401610ad4906142f0565b6126f7613337565b60405163c608b6c160e01b8152600481018490526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063c608b6c19060240160a0604051808303816000875af1158015612761573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127859190614438565b905060018160200151600381111561279f5761279f6143c4565b146127e25760405162461bcd60e51b815260206004820152601360248201527205550444154455f4f524445525f4e4f545f545606c1b6044820152606401610ad4565b60405163095be50560e41b8152600481018590526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906395be50509060240160a060405180830381865afa15801561284a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061286e919061434c565b50509250505060006128868261ffff163487876133ac565b90506128a383604001516001600160401b031682600001516134bb565b6128ab6135e7565b600081602001519050611d72338886602001516001886060015186613963565b6000546001600160a01b031633146129115760405162461bcd60e51b81526020600482015260096024820152682737ba1020b236b4b760b91b6044820152606401610ad4565b600180546001600160a01b038381166001600160a01b031983168117909355604080519190921680825260208201939093527fca4f2f25d0898edd99413412fb94012f9e54ec8142f9b093e7720646a95b16a991015b60405180910390a15050565b6000546001600160a01b0316331461299d5760405162461bcd60e51b8152600401610ad4906143da565b600a819055604051721b585c9ad95d13dc99195c9cd51a5b595bdd5d606a1b8152601301610e44565b6000546001600160a01b031633146129f05760405162461bcd60e51b8152600401610ad4906143da565b60098190556040517f6d696e54726967676572506572696f64466f724c696d69744f726465727300008152601e01610e44565b6000546001600160a01b03163314612a4d5760405162461bcd60e51b8152600401610ad4906143da565b6011805460ff8082161560ff1990921682179092556040519116151581527fda88b5dfaac55549d4ddddd43a09d4b911233df354952ebc9ac2041aa185343690602001611729565b6000546001600160a01b03163314612abf5760405162461bcd60e51b8152600401610ad4906143da565b6110e581613dac565b601154610100900460ff1615612af05760405162461bcd60e51b8152600401610ad4906142b2565b60115460ff1615612b135760405162461bcd60e51b8152600401610ad4906142d0565b612b1c33610f1e565b612b385760405162461bcd60e51b8152600401610ad4906142f0565b612b40613337565b60008060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166395be5050856040518263ffffffff1660e01b8152600401612b9391815260200190565b60a060405180830381865afa158015612bb0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612bd4919061434c565b505092506001600160401b03169250925060008211612c055760405162461bcd60e51b8152600401610ad490614521565b6001836005811115612c1957612c196143c4565b14612c585760405162461bcd60e51b815260206004820152600f60248201526e1393d517d3d4115397d3505492d155608a1b6044820152606401610ad4565b600a54612c6590836144e8565b421015612c845760405162461bcd60e51b8152600401610ad4906144fb565b600d54604051636e01af8d60e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691636e01af8d91612cd791889160019190600401614649565b600060405180830381600087803b158015612cf157600080fd5b505af1158015612d05573d6000803e3d6000fd5b505060405161ffff8416925086915033907f5079795ec65f793d5a0ed74d8f8e1562b7795934b40612bf55cf0e5d55a3447990600090a45050506110e561365f565b601154610100900460ff1615612d6f5760405162461bcd60e51b8152600401610ad4906142b2565b60115460ff1615612d925760405162461bcd60e51b8152600401610ad4906142d0565b612d9b33610f1e565b612db75760405162461bcd60e51b8152600401610ad4906142f0565b612dbf613337565b60405163c608b6c160e01b8152600481018490526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063c608b6c19060240160a0604051808303816000875af1158015612e29573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e4d9190614438565b9050600381602001516003811115612e6757612e676143c4565b14612eb45760405162461bcd60e51b815260206004820152601a60248201527f5550444154455f4f524445525f4e4f545f54505f414e445f534c0000000000006044820152606401610ad4565b60405163095be50560e41b8152600481018590526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906395be50509060240160a060405180830381865afa158015612f1c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612f40919061434c565b5050925050506000612f588261ffff163487876133ac565b9050612f7583604001516001600160401b031682600001516134bb565b612f7d6135e7565b600081602001519050612f9d338886602001516001886060015186613963565b612fdc5760405162461bcd60e51b815260206004820152601060248201526f4641494c45445f54505f55504441544560801b6044820152606401610ad4565b612ff3338886602001516002886080015186613963565b6130325760405162461bcd60e51b815260206004820152601060248201526f4641494c45445f534c5f55504441544560801b6044820152606401610ad4565b50505050610dae61365f565b6001546001600160a01b03163314801561306257506001546001600160a01b031615155b6130ae5760405162461bcd60e51b815260206004820152601e60248201527f4e6f7420746865204558495354494e472070656e64696e672061646d696e00006044820152606401610ad4565b60008054600180546001600160a01b038082166001600160a01b031980861682179096559490911690915560408051919092168082526020820184905292917ff9ffabca9c8276e99321725bcb43fb076a6c66a54b7f21c4e8146d8519b417dc910160405180910390a1600154604080516001600160a01b03808516825290921660208301527fca4f2f25d0898edd99413412fb94012f9e54ec8142f9b093e7720646a95b16a99101612967565b6000546001600160a01b031633146131865760405162461bcd60e51b8152600401610ad4906143da565b806001600160a01b0316634535dc4c6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156131c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131e89190614659565b6132265760405162461bcd60e51b815260206004820152600f60248201526e10a83934b1b2ab30b634b230ba37b960891b6044820152606401610ad4565b600680546001600160a01b0319166001600160a01b0383161790556040516d283934b1b2ab30b634b230ba37b960911b8152600e016040519081900381206001600160a01b0383168252907f943e9d45a11aaae5d87503e3bc248665d9807856e5cf2bdb4a988bee4442278190602001610e77565b6000546001600160a01b031633146132c55760405162461bcd60e51b8152600401610ad4906143da565b60075481116133045760405162461bcd60e51b815260206004820152600b60248201526a57524f4e475f56414c554560a81b6044820152606401610ad4565b60088190556040517f6d617854726967676572506572696f64466f724d61726b65744f7264657273008152601f01610e44565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f83d08ba6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561339257600080fd5b505af11580156133a6573d6000803e3d6000fd5b50505050565b60408051606081018252600080825260208201819052918101829052906133d586868686613e45565b60008781526004602090815260408220549083015192935063ffffffff1691613407906001600160401b031683613ee0565b90508083604001516001600160401b031611156134665760405162461bcd60e51b815260206004820152601960248201527f434f4e464944454e43455f52414e47455f544f4f5f57494445000000000000006044820152606401610ad4565b82514210156134af5760405162461bcd60e51b815260206004820152601560248201527411955515549157d4149250d157d4915413d4951151605a1b6044820152606401610ad4565b50909695505050505050565b6000600754836134cb91906144e8565b90506000600854846134dd91906144e8565b90508142101561352f5760405162461bcd60e51b815260206004820152601d60248201527f4d41524b45545f4f524445525f545249474745525f544f4f5f534f4f4e0000006044820152606401610ad4565b8042111561357f5760405162461bcd60e51b815260206004820152601d60248201527f4d41524b45545f4f524445525f545249474745525f544f4f5f4c4154450000006044820152606401610ad4565b81831015801561358f5750808311155b6133a65760405162461bcd60e51b8152602060048201526024808201527f4d41524b45545f4f524445525f50524943455f4f55545f4f465f54494d455f4660448201526352414d4560e01b6064820152608401610ad4565b43600090815260106020526040902054600f5481106136415760405162461bcd60e51b81526020600482015260166024820152754d41585f54524947474552535f5045525f424c4f434b60501b6044820152606401610ad4565b61364c8160016144e8565b4360009081526010602052604090205550565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166340da020f6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561339257600080fd5b7f00000000000000000000000000000000000000000000000000000000000000008163ffffffff1611156137225760405162461bcd60e51b815260206004820152600f60248201526e0a6a0a48a8288bea89e9ebe90928e9608b1b6044820152606401610ad4565b600082815260056020908152604091829020805463ffffffff191663ffffffff8516908117909155915191825283917ffe5fd0852fab5f8ba593533cf24a4b4b235704c0e06956d0a58cc2ca0a4b6b4491015b60405180910390a25050565b6001600160a01b038116600090815260018301602052604081205415155b9392505050565b6000600954836137b691906144e8565b9050804210156138085760405162461bcd60e51b815260206004820152601c60248201527f4c494d49545f4f524445525f545249474745525f544f4f5f534f4f4e000000006044820152606401610ad4565b808210156138645760405162461bcd60e51b815260206004820152602360248201527f4c494d49545f4f524445525f50524943455f4f55545f4f465f54494d455f4652604482015262414d4560e81b6064820152608401610ad4565b610dae82600c54613efa565b6000620186a08363ffffffff1611156138cb5760405162461bcd60e51b815260206004820152601960248201527f5350524541445f524544554354494f4e5f544f4f5f48494748000000000000006044820152606401610ad4565b600085815260056020526040812054620186a0906138f9906001600160401b0388169063ffffffff16614674565b613903919061468b565b90506000620186a061391b63ffffffff8716846146ad565b6001600160401b031661392e919061468b565b61393890836146d8565b90508361394e5761394981876146d8565b613958565b61395881876146f8565b979650505050505050565b60405163c07f992160e01b81526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063c07f9921906139b8908990889088908890600401614718565b600060405180830381600087803b1580156139d257600080fd5b505af19250505080156139e3575060015b613bde576139ef614728565b806308c379a003613a755750613a03614744565b80613a0e5750613a77565b856003811115613a2057613a206143c4565b87896001600160a01b03167f889460050d9a293fbe31b6ce00a37ae62020cb8c8a19cf31e9496cb13246f6e2888888876000604051613a639594939291906147cd565b60405180910390a46000915050613c3a565b505b3d808015613aa1576040519150601f19603f3d011682016040523d82523d6000602084013e613aa6565b606091505b50632eb752bf60e21b613ab88261484f565b6001600160e01b03191603613b9f576001856002811115613adb57613adb6143c4565b14613b1e5760405162461bcd60e51b815260206004820152601360248201527204341505f4552524f525f4e4f545f4f4e5f545606c1b6044820152606401610ad4565b60248101516044820151876003811115613b3a57613b3a6143c4565b898b6001600160a01b03167f889460050d9a293fbe31b6ce00a37ae62020cb8c8a19cf31e9496cb13246f6e28a8a8a886011811115613b7b57613b7b6143c4565b604051613b8b9493929190614886565b60405180910390a460009350505050613c3a565b60405162461bcd60e51b81526020600482015260146024820152732aa725a727aba72fa1aaa9aa27a6afa2a92927a960611b6044820152606401610ad4565b846003811115613bf057613bf06143c4565b86886001600160a01b03167ff0ac91a20375484f5a80315763782e4fe4b42bd038b08ba4939ff1a506974edf878787604051613c2e939291906148d5565b60405180910390a45060015b9695505050505050565b7f00000000000000000000000000000000000000000000000000000000000000008163ffffffff161115613cba5760405162461bcd60e51b815260206004820152601c60248201527f434f4e464944454e43455f4652414354494f4e5f544f4f5f48494748000000006044820152606401610ad4565b600082815260046020908152604091829020805463ffffffff191663ffffffff8516908117909155915191825283917f88e6fad616d859d6fba20e93ab2acbf0756b6bc2d90c6002000f709f510cadb09101613775565b6060600061379f83613f88565b613d2781610f1e565b613d695760405162461bcd60e51b81526020600482015260136024820152721050d0d3d5539517d393d517d0531313d5d151606a1b6044820152606401610ad4565b613d74600282613fe4565b506040516001600160a01b038216907fc985d67a353004ba149a223b2b9e5c13cca6610b11cb45b4aa029c880d8f7cb590600090a250565b613db581610f1e565b15613e025760405162461bcd60e51b815260206004820152601760248201527f4143434f554e545f414c52454144595f414c4c4f5745440000000000000000006044820152606401610ad4565b613e0d600282613ff9565b506040516001600160a01b038216907fc5944eab072face4b169928723314c5978080e99ed8f8527faedb18c06664c3590600090a250565b6040805160608101825260008082526020820181905281830152600654915163f4a6a09360e01b815290916001600160a01b03169063f4a6a093908690613e9490899088908890600401614929565b60606040518083038185885af1158015613eb2573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190613ed791906149d1565b95945050505050565b6000620186a0613ef08385614674565b61379f919061468b565b6000613f068242614a43565b905080831015613f485760405162461bcd60e51b815260206004820152600d60248201526c14149250d157d513d3d7d3d311609a1b6044820152606401610ad4565b42831115610dae5760405162461bcd60e51b815260206004820152600d60248201526c50524943455f544f4f5f4e455760981b6044820152606401610ad4565b606081600001805480602002602001604051908101604052809291908181526020018280548015613fd857602002820191906000526020600020905b815481526020019060010190808311613fc4575b50505050509050919050565b600061379f836001600160a01b03841661400e565b600061379f836001600160a01b038416614108565b600081815260018301602052604081205480156140f7576000614032600183614a43565b855490915060009061404690600190614a43565b90508082146140ab57600086600001828154811061406657614066614a56565b906000526020600020015490508087600001848154811061408957614089614a56565b6000918252602080832090910192909255918252600188019052604090208390555b85548690806140bc576140bc614a6c565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610f2b565b6000915050610f2b565b5092915050565b600081815260018301602052604081205461414f57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610f2b565b506000610f2b565b60006020828403121561416957600080fd5b5035919050565b60008083601f84011261418257600080fd5b5081356001600160401b0381111561419957600080fd5b6020830191508360208260051b85010111156141b457600080fd5b9250929050565b6000806000604084860312156141d057600080fd5b8335925060208401356001600160401b038111156141ed57600080fd5b6141f986828701614170565b9497909650939450505050565b63ffffffff811681146110e557600080fd5b6000806040838503121561422b57600080fd5b82359150602083013561423d81614206565b809150509250929050565b60006020828403121561425a57600080fd5b81356001600160a01b038116811461379f57600080fd5b6020808252825182820181905260009190848201906040850190845b818110156134af5783516001600160a01b03168352928401929184019160010161428d565b602080825260049082015263444f4e4560e01b604082015260600190565b60208082526006908201526514105554d15160d21b604082015260600190565b6020808252601690820152752727aa2fa0a62627aba2a22faa27afaa2924a3a3a2a960511b604082015260600190565b80516001600160401b038116811461433757600080fd5b919050565b8051801515811461433757600080fd5b600080600080600060a0868803121561436457600080fd5b85516006811061437357600080fd5b945061438160208701614320565b9350604086015161ffff8116811461439857600080fd5b92506143a66060870161433c565b915060808601516143b681614206565b809150509295509295909350565b634e487b7160e01b600052602160045260246000fd5b6020808252600a908201526927a7262cafa0a226a4a760b11b604082015260600190565b601f8201601f191681016001600160401b038111828210171561443157634e487b7160e01b600052604160045260246000fd5b6040525050565b600060a0828403121561444a57600080fd5b60405160a081018181106001600160401b038211171561447a57634e487b7160e01b600052604160045260246000fd5b6040528251815260208301516004811061449357600080fd5b60208201526144a460408401614320565b60408201526144b560608401614320565b60608201526144c660808401614320565b60808201529392505050565b634e487b7160e01b600052601160045260246000fd5b80820180821115610f2b57610f2b6144d2565b6020808252600c908201526b15d0525517d512535153d55560a21b604082015260600190565b60208082526010908201526f2727afa9aaa1a42fa827a9a4aa24a7a760811b604082015260600190565b8381526060810160028410614562576145626143c4565b602082019390935260400152919050565b60006080828403121561458557600080fd5b604051608081018181106001600160401b03821117156145b557634e487b7160e01b600052604160045260246000fd5b6040526145c183614320565b81526145cf60208401614320565b60208201526145e060408401614320565b60408201526145f160608401614320565b60608201529392505050565b8481526080810160048510614614576146146143c4565b60208201949094526001600160401b0392831660408201529116606090910152919050565b600381106110e5576110e56143c4565b8381526060810161456284614639565b60006020828403121561466b57600080fd5b61379f8261433c565b8082028115828204841417610f2b57610f2b6144d2565b6000826146a857634e487b7160e01b600052601260045260246000fd5b500490565b6001600160401b038181168382160280821691908281146146d0576146d06144d2565b505092915050565b6001600160401b03828116828216039080821115614101576141016144d2565b6001600160401b03818116838216019080821115614101576141016144d2565b8481526080810161461485614639565b600060033d11156147415760046000803e5060005160e01c5b90565b600060443d10156147525790565b6040516003193d81016004833e81513d6001600160401b03816024840111818411171561478157505050505090565b82850191508151818111156147995750505050505090565b843d87010160208285010111156147b35750505050505090565b6147c2602082860101876143fe565b509095945050505050565b6147d686614639565b858152600060206001600160401b03808816602085015280871660408501525060a0606084015284518060a085015260005b818110156148245786810183015185820160c001528201614808565b50600060c0828601015260c0601f19601f830116850101925050508260808301529695505050505050565b805160208201516001600160e01b0319808216929190600483101561487e5780818460040360031b1b83161693505b505050919050565b61488f85614639565b9384526001600160401b0392831660208501529116604083015260a0606083018190526009908301526821a0a82fa2a92927a960b91b60c0830152608082015260e00190565b606081016148e285614639565b9381526001600160401b039283166020820152911660409091015290565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6000604082018583526020604060208501528185835260608501905060608660051b86010192508660005b878110156149c357868503605f190183528135368a9003601e1901811261497a57600080fd5b890184810190356001600160401b0381111561499557600080fd5b8036038213156149a457600080fd5b6149af878284614900565b965050509183019190830190600101614954565b509298975050505050505050565b6000606082840312156149e357600080fd5b604051606081018181106001600160401b0382111715614a1357634e487b7160e01b600052604160045260246000fd5b60405282518152614a2660208401614320565b6020820152614a3760408401614320565b60408201529392505050565b81810381811115610f2b57610f2b6144d2565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fdfea26469706673582212202d99aceb1f91e429aab13002d34ccdfaeec0119b2e260404e0b6685d8d7f9c3664736f6c63430008180033";
|
|
1508
|
+
const _bytecode = "0x6101206040526003600755603c600855603c600955603c600a5560b4600b55610708600c556103e8620186a06001620000399190620002b1565b620000459190620002dd565b600d556103e86200005b620186a06002620002b1565b620000679190620002dd565b600e55620186a06200007b816005620002b1565b620000879190620002dd565b600f5560036010553480156200009c57600080fd5b506040516200536238038062005362833981016040819052620000bf9162000319565b806001600160a01b0316637b1039996040518163ffffffff1660e01b8152600401602060405180830381865afa158015620000fe573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000124919062000319565b606462000136620186a06001620002b1565b620001429190620002dd565b606462000154620186a0600a620002b1565b620001609190620002dd565b600080546001600160a01b0319163317905560805260a0526001600160a01b0390811660c0528116620001c85760405162461bcd60e51b815260206004820152600c60248201526b57524f4e475f504152414d5360a01b604482015260640160405180910390fd5b6001600160a01b03811660e081905260408051637b10399960e01b81529051637b103999916004808201926020929091908290030181865afa15801562000213573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000239919062000319565b6001600160a01b031663776af5ba6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000277573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200029d919062000319565b6001600160a01b0316610100525062000340565b8082028115828204841417620002d757634e487b7160e01b600052601160045260246000fd5b92915050565b600082620002fb57634e487b7160e01b600052601260045260246000fd5b500490565b6001600160a01b03811681146200031657600080fd5b50565b6000602082840312156200032c57600080fd5b8151620003398162000300565b9392505050565b60805160a05160c05160e05161010051614f0b6200045760003960008181610815015281816110ef01528181611dbc0152818161292e01526130820152600081816103da01528181610c7f01528181610e1e015281816112c50152818161141d01528181611548015281816116f60152818161177301528181611a1c01528181611ab601528181611be601528181611eb10152818161202e015281816120c8015281816121f501528181612376015281816125260152818161264b0152818161272601528181612a2301528181612df101528181612f48015281816131810152613d870152600081816135f3015261391b0152600081816105570152613976015260008181610a8f01526140500152614f0b6000f3fe6080604052600436106103c35760003560e01c80637f31c2db116101f2578063b187bd261161010d578063e0b7d50b116100a0578063f5f5ba721161006f578063f5f5ba7214610b64578063f851a44014610b97578063fae5a83f14610bb7578063fd057e9414610bd757600080fd5b8063e0b7d50b14610b06578063e231377014610b1c578063e8051b0114610b3c578063e9c714f214610b4f57600080fd5b8063b88750a9116100dc578063b88750a914610a7d578063bfc084d914610ab1578063c4ae316814610ad1578063d99dc0c114610ae657600080fd5b8063b187bd2614610a0b578063b71d1a0c14610a25578063b71f3cfe14610a45578063b81bfa0514610a5d57600080fd5b80639f918f4511610185578063a9f7c52111610154578063a9f7c521146109a7578063aaf5eb68146109ba578063ad1f2b56146109d6578063af74c382146109eb57600080fd5b80639f918f451461091e578063a1d627a114610951578063a5b6020814610971578063a5e02c8d1461098757600080fd5b806386c7f19a116101c157806386c7f19a146108905780638aa10435146108b25780638f062227146108df5780639abf1782146108fe57600080fd5b80637f31c2db146108375780637f588b911461084d57806380193b2614610863578063814052051461087a57600080fd5b80633b321666116102e25780635d2cdfea11610275578063718ddc1411610244578063718ddc14146107bd5780637670d948146107d0578063771ad70d146107f0578063776af5ba1461080357600080fd5b80635d2cdfea1461070c578063614d08f8146107545780636447dc8b1461078a5780636c1bb5ca1461079d57600080fd5b8063490580e3116102b1578063490580e3146106a65780634bdf1973146106c65780634cdb06a5146106d95780634d369151146106f957600080fd5b80633b321666146106525780633be3d62614610665578063410c0b7c1461067a57806345b617131461069057600080fd5b80632f86d7c21161035a57806336b669f71161032957806336b669f71461059957806338267257146105df57806338b90333146105ff578063392503e01461063c57600080fd5b80632f86d7c2146104f557806333511e5e1461051557806333a01d321461054557806336930d0b1461057957600080fd5b806322ede93c1161039657806322ede93c1461047f57806325577e9f1461049557806326782247146104b557806326b4120a146104d557600080fd5b80630d3b0b76146103c857806310b4cc131461041957806320cb59761461043d578063221407af1461046a575b600080fd5b3480156103d457600080fd5b506103fc7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561042557600080fd5b5061042f600d5481565b604051908152602001610410565b34801561044957600080fd5b5061042f610458366004614561565b60116020526000908152604090205481565b61047d6104783660046145c5565b610bf7565b005b34801561048b57600080fd5b5061042f600e5481565b3480156104a157600080fd5b5061047d6104b0366004614622565b610efe565b3480156104c157600080fd5b506001546103fc906001600160a01b031681565b3480156104e157600080fd5b5061047d6104f0366004614561565b610f36565b34801561050157600080fd5b5061047d610510366004614561565b610fcd565b34801561052157600080fd5b50610535610530366004614652565b61104b565b6040519015158152602001610410565b34801561055157600080fd5b5061042f7f000000000000000000000000000000000000000000000000000000000000000081565b34801561058557600080fd5b5061047d610594366004614561565b61105e565b6105ac6105a73660046145c5565b611215565b60408051825181526020808401516001600160401b03908116918301919091529282015190921690820152606001610410565b3480156105eb57600080fd5b5061047d6105fa366004614561565b611246565b34801561060b57600080fd5b5061062f604051806040016040528060048152602001633130303160e01b81525081565b60405161041091906146c1565b34801561064857600080fd5b5061042f600c5481565b61047d6106603660046145c5565b6114c6565b34801561067157600080fd5b5061047d6118ac565b34801561068657600080fd5b5061042f600a5481565b34801561069c57600080fd5b5061042f60075481565b3480156106b257600080fd5b5061047d6106c1366004614561565b611938565b61047d6106d43660046145c5565b61198b565b3480156106e557600080fd5b5061047d6106f4366004614561565b611cc2565b61047d6107073660046145c5565b611d2b565b34801561071857600080fd5b5061073f610727366004614561565b60056020526000908152604090205463ffffffff1681565b60405163ffffffff9091168152602001610410565b34801561076057600080fd5b5061062f6040518060400160405280600a8152602001695472696767657273563160b01b81525081565b61047d6107983660046145c5565b611f9d565b3480156107a957600080fd5b5061047d6107b8366004614622565b6122c0565b61047d6107cb3660046145c5565b6122f4565b3480156107dc57600080fd5b5061047d6107eb366004614561565b61255d565b61047d6107fe3660046145c5565b6125ba565b34801561080f57600080fd5b506103fc7f000000000000000000000000000000000000000000000000000000000000000081565b34801561084357600080fd5b5061042f60085481565b34801561085957600080fd5b5061042f60095481565b34801561086f57600080fd5b5061042f620186a081565b34801561088657600080fd5b5061042f60105481565b34801561089c57600080fd5b506108a56127fc565b60405161041091906146d4565b3480156108be57600080fd5b506040805180820190915260048152633130303160e01b602082015261062f565b3480156108eb57600080fd5b5060125461053590610100900460ff1681565b34801561090a57600080fd5b5061047d610919366004614561565b61280d565b34801561092a57600080fd5b5061073f610939366004614561565b60046020526000908152604090205463ffffffff1681565b34801561095d57600080fd5b506006546103fc906001600160a01b031681565b34801561097d57600080fd5b5061042f600b5481565b34801561099357600080fd5b5061047d6109a2366004614652565b61286a565b61047d6109b53660046145c5565b61289d565b3480156109c657600080fd5b5061042f670de0b6b3a764000081565b3480156109e257600080fd5b5061042f606481565b3480156109f757600080fd5b5061047d610a06366004614561565b612b01565b348015610a1757600080fd5b506012546105359060ff1681565b348015610a3157600080fd5b5061047d610a40366004614652565b612b75565b348015610a5157600080fd5b5061042f633b9aca0081565b348015610a6957600080fd5b5061047d610a78366004614561565b612c1d565b348015610a8957600080fd5b5061042f7f000000000000000000000000000000000000000000000000000000000000000081565b348015610abd57600080fd5b5061047d610acc366004614561565b612c70565b348015610add57600080fd5b5061047d612ccd565b348015610af257600080fd5b5061047d610b01366004614652565b612d3f565b348015610b1257600080fd5b5061042f600f5481565b348015610b2857600080fd5b5061047d610b37366004614561565b612d72565b61047d610b4a3660046145c5565b612ff1565b348015610b5b57600080fd5b5061047d613316565b348015610b7057600080fd5b5060408051808201909152600a8152695472696767657273563160b01b602082015261062f565b348015610ba357600080fd5b506000546103fc906001600160a01b031681565b348015610bc357600080fd5b5061047d610bd2366004614652565b613434565b348015610be357600080fd5b5061047d610bf2366004614561565b613573565b601254610100900460ff1615610c285760405162461bcd60e51b8152600401610c1f90614715565b60405180910390fd5b60125460ff1615610c4b5760405162461bcd60e51b8152600401610c1f90614733565b610c543361104b565b610c705760405162461bcd60e51b8152600401610c1f90614753565b610c786135f1565b60008060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166395be5050876040518263ffffffff1660e01b8152600401610ccb91815260200190565b60a060405180830381865afa158015610ce8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d0c91906147af565b505092506001600160401b03169250925060008211610d675760405162461bcd60e51b81526020600482015260176024820152762727afa822a72224a723afa6a0a925a2aa2fa7a92222a960491b6044820152606401610c1f565b6004836005811115610d7b57610d7b614827565b14610dbb5760405162461bcd60e51b815260206004820152601060248201526f1393d517d0d313d4d157d3505492d15560821b6044820152606401610c1f565b6000610dcd8261ffff16348888613666565b9050610ddd838260000151613775565b602081015180610deb6138a1565b602083015160405163651d1d4160e11b8152600481018b90526001600160401b03918216602482015290821660448201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063ca3a3a8290606401600060405180830381600087803b158015610e6a57600080fd5b505af1158015610e7e573d6000803e3d6000fd5b50505050856005811115610e9457610e94614827565b6020848101518551604080516001600160401b038781168252909316938301939093528183015290518b9133917f5b5ec0827d50049e9f15c1d5c28dc87d620987ef82a18f0b98afac1c76076d3d9181900360600190a4505050505050610ef9613919565b505050565b6000546001600160a01b03163314610f285760405162461bcd60e51b8152600401610c1f9061483d565b610f328282613974565b5050565b6000546001600160a01b03163314610f605760405162461bcd60e51b8152600401610c1f9061483d565b600b8190556040517f6d61726b65744f72646572546967687454696d6552616e67650000000000000081526019015b604051908190038120828252907f8cf3e35f6221b16e1670a3413180c9484bf5aa71787905909fa82a6a2662e9ab906020015b60405180910390a250565b6000546001600160a01b03163314610ff75760405162461bcd60e51b8152600401610c1f9061483d565b60085481106110185760405162461bcd60e51b8152600401610c1f90614861565b60078190556040517f6d696e54726967676572506572696f64466f724d61726b65744f7264657273008152601f01610f8f565b6000611058600283613a3b565b92915050565b601254610100900460ff16156110865760405162461bcd60e51b8152600401610c1f90614715565b60125460ff16156110a95760405162461bcd60e51b8152600401610c1f90614733565b6110b23361104b565b6110ce5760405162461bcd60e51b8152600401610c1f90614753565b6110d66135f1565b60405163c608b6c160e01b8152600481018290526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063c608b6c19060240160a0604051808303816000875af1158015611140573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061116491906148c0565b9050600a5481604001516001600160401b03166111819190614970565b4210156111a05760405162461bcd60e51b8152600401610c1f90614983565b806020015160038111156111b6576111b6614827565b60608201516080830151604080516001600160401b039384168152929091166020830152849133917f7b5b2e57aed6ee99244bd22f2b43e33e9fcbf0d77a9f425d59ee2d74e1c3795d910160405180910390a450611212613919565b50565b604080516060810182526000808252602082018190529181019190915261123e84348585613666565b949350505050565b601254610100900460ff161561126e5760405162461bcd60e51b8152600401610c1f90614715565b60125460ff16156112915760405162461bcd60e51b8152600401610c1f90614733565b61129a3361104b565b6112b65760405162461bcd60e51b8152600401610c1f90614753565b6112be6135f1565b60008060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166395be5050856040518263ffffffff1660e01b815260040161131191815260200190565b60a060405180830381865afa15801561132e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061135291906147af565b505092506001600160401b031692509250600082116113835760405162461bcd60e51b8152600401610c1f906149a9565b600483600581111561139757611397614827565b146113d75760405162461bcd60e51b815260206004820152601060248201526f1393d517d0d313d4d157d3505492d15560821b6044820152606401610c1f565b600a546113e49083614970565b4210156114035760405162461bcd60e51b8152600401610c1f90614983565b600d54604051634ebe5c3360e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691634ebe5c3391611456918891600191906004016149d3565b600060405180830381600087803b15801561147057600080fd5b505af1158015611484573d6000803e3d6000fd5b505060405161ffff8416925086915033907f89a3ecf5024675f1d0abc6dc42608fc41216f103c12c2c84f8ca3938bd055f0390600090a4505050611212613919565b601254610100900460ff16156114ee5760405162461bcd60e51b8152600401610c1f90614715565b60125460ff16156115115760405162461bcd60e51b8152600401610c1f90614733565b61151a3361104b565b6115365760405162461bcd60e51b8152600401610c1f90614753565b61153e6135f1565b60008060008060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166395be5050896040518263ffffffff1660e01b815260040161159491815260200190565b60a060405180830381865afa1580156115b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115d591906147af565b9450945094506001600160401b031694509450600084116116315760405162461bcd60e51b81526020600482015260166024820152752727afa822a72224a723afa624a6a4aa2fa7a92222a960511b6044820152606401610c1f565b600285600581111561164557611645614827565b146116835760405162461bcd60e51b815260206004820152600e60248201526d1393d517d3d4115397d31253525560921b6044820152606401610c1f565b60006116958461ffff16348a8a613666565b90506116a5858260000151613a60565b602081015160006116bc61ffff8716838688613b2a565b90506116c66138a1565b600e54604051631ea9af6b60e01b8152600481018d90526001600160401b038316602482015260448101919091527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690631ea9af6b906064015b600060405180830381600087803b15801561174357600080fd5b505af1158015611757573d6000803e3d6000fd5b50506040516366307a4f60e01b8152600481018e9052600092507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031691506366307a4f90602401608060405180830381865afa1580156117c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117e791906149fb565b60408101519091506001600160401b03161561180e5761180e816040015183886001613c1d565b60608101516001600160401b03161561183257611832816060015183886000613c1d565b88600581111561184457611844614827565b6020858101518651604080516001600160401b038881168252909316938301939093528183015290518e9133917f60fab6e183a7c350210c0b457db01423b47aa3e72f5b735b8dbb3ecd3e8077439181900360600190a4505050505050505050610ef9613919565b6000546001600160a01b031633146118d65760405162461bcd60e51b8152600401610c1f9061483d565b6012805460ff610100808304821615810261ff001990931692909217928390556040517f8e47bd62470c6cba4d30c023548622607c9c84402a5655f2569b7934c36a9e4f9361192e9390049091161515815260200190565b60405180910390a1565b6000546001600160a01b031633146119625760405162461bcd60e51b8152600401610c1f9061483d565b6010819055604051726d61785472696767657273506572426c6f636b60681b8152601301610f8f565b601254610100900460ff16156119b35760405162461bcd60e51b8152600401610c1f90614715565b60125460ff16156119d65760405162461bcd60e51b8152600401610c1f90614733565b6119df3361104b565b6119fb5760405162461bcd60e51b8152600401610c1f90614753565b611a036135f1565b60405163095be50560e41b8152600481018490526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906395be50509060240160a060405180830381865afa158015611a6b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a8f91906147af565b50506040516366307a4f60e01b815260048101889052909350600092506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691506366307a4f90602401608060405180830381865afa158015611afe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b2291906149fb565b905060008261ffff1611611b485760405162461bcd60e51b8152600401610c1f906149a9565b600081606001516001600160401b031611611b8d5760405162461bcd60e51b81526020600482015260056024820152641393d7d4d360da1b6044820152606401610c1f565b60208101516001600160401b03166000611bad61ffff8516348888613666565b9050611bbd828260000151613a60565b6020810151611bca6138a1565b6020820151604051632029fcf560e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016916380a7f3d491611c21918c91600291908790600401614a85565b600060405180830381600087803b158015611c3b57600080fd5b505af1158015611c4f573d6000803e3d6000fd5b5050506020808401518451604080516001600160401b038088168252909316938301939093529181019190915261ffff87169150899033907fb03dbc9368faf0f8588dc8429c40a26ef9a637488f1ea5521a2ba2bfb5ff2016906060015b60405180910390a45050505050610ef9613919565b6000546001600160a01b03163314611cec5760405162461bcd60e51b8152600401610c1f9061483d565b600e8190556040517f6f70656e506f736974696f6e43616e63656c6c6174696f6e466565467261637481526234b7b760e91b6020820152602301610f8f565b601254610100900460ff1615611d535760405162461bcd60e51b8152600401610c1f90614715565b60125460ff1615611d765760405162461bcd60e51b8152600401610c1f90614733565b611d7f3361104b565b611d9b5760405162461bcd60e51b8152600401610c1f90614753565b611da36135f1565b60405163c608b6c160e01b8152600481018490526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063c608b6c19060240160a0604051808303816000875af1158015611e0d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e3191906148c0565b9050600281602001516003811115611e4b57611e4b614827565b14611e8e5760405162461bcd60e51b815260206004820152601360248201527215541110551157d3d491115497d393d517d4d3606a1b6044820152606401610c1f565b60405163095be50560e41b81526004810185905260009081906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906395be50509060240160a060405180830381865afa158015611ef8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f1c91906147af565b509350935050506000611f358361ffff16348888613666565b9050611f5284604001516001600160401b03168260000151613775565b611f6784606001518260200151846000613c1d565b611f6f6138a1565b600081602001519050611f8f338987602001516002896060015186613d6d565b505050505050610ef9613919565b601254610100900460ff1615611fc55760405162461bcd60e51b8152600401610c1f90614715565b60125460ff1615611fe85760405162461bcd60e51b8152600401610c1f90614733565b611ff13361104b565b61200d5760405162461bcd60e51b8152600401610c1f90614753565b6120156135f1565b60405163095be50560e41b8152600481018490526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906395be50509060240160a060405180830381865afa15801561207d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120a191906147af565b50506040516366307a4f60e01b815260048101889052909350600092506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691506366307a4f90602401608060405180830381865afa158015612110573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061213491906149fb565b905060008261ffff161161215a5760405162461bcd60e51b8152600401610c1f906149a9565b600081604001516001600160401b03161161219f5760405162461bcd60e51b815260206004820152600560248201526404e4f5f54560dc1b6044820152606401610c1f565b80516001600160401b031660006121bc61ffff8516348888613666565b90506121cc828260000151613a60565b60208101516121d96138a1565b6020820151604051632029fcf560e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016916380a7f3d491612230918c91600191908790600401614a85565b600060405180830381600087803b15801561224a57600080fd5b505af115801561225e573d6000803e3d6000fd5b5050506020808401518451604080516001600160401b038088168252909316938301939093529181019190915261ffff87169150899033907fbe700227f721a08f3b755aa3348a63564c2c07890aba73de46372f7bffcaa2e290606001611cad565b6000546001600160a01b031633146122ea5760405162461bcd60e51b8152600401610c1f9061483d565b610f32828261404e565b601254610100900460ff161561231c5760405162461bcd60e51b8152600401610c1f90614715565b60125460ff161561233f5760405162461bcd60e51b8152600401610c1f90614733565b6123483361104b565b6123645760405162461bcd60e51b8152600401610c1f90614753565b61236c6135f1565b60008060008060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166395be5050896040518263ffffffff1660e01b81526004016123c291815260200190565b60a060405180830381865afa1580156123df573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061240391906147af565b9450945094506001600160401b031694509450600084116124605760405162461bcd60e51b81526020600482015260176024820152762727afa822a72224a723afa6a0a925a2aa2fa7a92222a960491b6044820152606401610c1f565b600185600581111561247457612474614827565b146124b35760405162461bcd60e51b815260206004820152600f60248201526e1393d517d3d4115397d3505492d155608a1b6044820152606401610c1f565b60006124c58461ffff16348a8a613666565b90506124d5858260000151613775565b602081015160006124ec61ffff8716838688613b2a565b90506124f66138a1565b600e546040516303ad224560e61b8152600481018d90526001600160401b038316602482015260448101919091527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063eb48914090606401611729565b6000546001600160a01b031633146125875760405162461bcd60e51b8152600401610c1f9061483d565b600c8190556040517f74726967676572507269636546726573686e65737354696d6552616e676500008152601e01610f8f565b601254610100900460ff16156125e25760405162461bcd60e51b8152600401610c1f90614715565b60125460ff16156126055760405162461bcd60e51b8152600401610c1f90614733565b61260e3361104b565b61262a5760405162461bcd60e51b8152600401610c1f90614753565b6126326135f1565b60405163095be50560e41b8152600481018490526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906395be50509060240160a060405180830381865afa15801561269a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126be91906147af565b50509250505060008161ffff16116126e85760405162461bcd60e51b8152600401610c1f906149a9565b60006126fa8261ffff16348686613666565b602081015190915061270a6138a1565b6020820151604051632029fcf560e21b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016916380a7f3d491612761918a91600391908790600401614a85565b600060405180830381600087803b15801561277b57600080fd5b505af115801561278f573d6000803e3d6000fd5b505050506020828101518351604080516001600160401b0386811682529093169383019390935281830152905161ffff851691889133917f086bdd0cdd4ae322dd6112d05bdf96c020e6b90cc84ee2d39941bd716e18fb92919081900360600190a4505050610ef9613919565b6060612808600261411b565b905090565b6000546001600160a01b031633146128375760405162461bcd60e51b8152600401610c1f9061483d565b600d8190556040517f6d61726b65744f7264657243616e63656c4665654672616374696f6e000000008152601c01610f8f565b6000546001600160a01b031633146128945760405162461bcd60e51b8152600401610c1f9061483d565b61121281614128565b601254610100900460ff16156128c55760405162461bcd60e51b8152600401610c1f90614715565b60125460ff16156128e85760405162461bcd60e51b8152600401610c1f90614733565b6128f13361104b565b61290d5760405162461bcd60e51b8152600401610c1f90614753565b6129156135f1565b60405163c608b6c160e01b8152600481018490526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063c608b6c19060240160a0604051808303816000875af115801561297f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129a391906148c0565b90506001816020015160038111156129bd576129bd614827565b14612a005760405162461bcd60e51b815260206004820152601360248201527205550444154455f4f524445525f4e4f545f545606c1b6044820152606401610c1f565b60405163095be50560e41b81526004810185905260009081906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906395be50509060240160a060405180830381865afa158015612a6a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a8e91906147af565b509350935050506000612aa78361ffff16348888613666565b9050612ac484604001516001600160401b03168260000151613775565b612ad984606001518260200151846001613c1d565b612ae16138a1565b600081602001519050611f8f338987602001516001896060015186613d6d565b6000546001600160a01b03163314612b2b5760405162461bcd60e51b8152600401610c1f9061483d565b60008111612b4b5760405162461bcd60e51b8152600401610c1f90614861565b600f819055604051733634b6b4ba39a6b0b933b4b7233930b1ba34b7b760611b8152601401610f8f565b6000546001600160a01b03163314612bbb5760405162461bcd60e51b81526020600482015260096024820152682737ba1020b236b4b760b91b6044820152606401610c1f565b600180546001600160a01b038381166001600160a01b031983168117909355604080519190921680825260208201939093527fca4f2f25d0898edd99413412fb94012f9e54ec8142f9b093e7720646a95b16a991015b60405180910390a15050565b6000546001600160a01b03163314612c475760405162461bcd60e51b8152600401610c1f9061483d565b600a819055604051721b585c9ad95d13dc99195c9cd51a5b595bdd5d606a1b8152601301610f8f565b6000546001600160a01b03163314612c9a5760405162461bcd60e51b8152600401610c1f9061483d565b60098190556040517f6d696e54726967676572506572696f64466f724c696d69744f726465727300008152601e01610f8f565b6000546001600160a01b03163314612cf75760405162461bcd60e51b8152600401610c1f9061483d565b6012805460ff8082161560ff1990921682179092556040519116151581527fda88b5dfaac55549d4ddddd43a09d4b911233df354952ebc9ac2041aa18534369060200161192e565b6000546001600160a01b03163314612d695760405162461bcd60e51b8152600401610c1f9061483d565b611212816141b6565b601254610100900460ff1615612d9a5760405162461bcd60e51b8152600401610c1f90614715565b60125460ff1615612dbd5760405162461bcd60e51b8152600401610c1f90614733565b612dc63361104b565b612de25760405162461bcd60e51b8152600401610c1f90614753565b612dea6135f1565b60008060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166395be5050856040518263ffffffff1660e01b8152600401612e3d91815260200190565b60a060405180830381865afa158015612e5a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e7e91906147af565b505092506001600160401b03169250925060008211612eaf5760405162461bcd60e51b8152600401610c1f906149a9565b6001836005811115612ec357612ec3614827565b14612f025760405162461bcd60e51b815260206004820152600f60248201526e1393d517d3d4115397d3505492d155608a1b6044820152606401610c1f565b600a54612f0f9083614970565b421015612f2e5760405162461bcd60e51b8152600401610c1f90614983565b600d54604051636e01af8d60e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691636e01af8d91612f8191889160019190600401614ad1565b600060405180830381600087803b158015612f9b57600080fd5b505af1158015612faf573d6000803e3d6000fd5b505060405161ffff8416925086915033907f5079795ec65f793d5a0ed74d8f8e1562b7795934b40612bf55cf0e5d55a3447990600090a4505050611212613919565b601254610100900460ff16156130195760405162461bcd60e51b8152600401610c1f90614715565b60125460ff161561303c5760405162461bcd60e51b8152600401610c1f90614733565b6130453361104b565b6130615760405162461bcd60e51b8152600401610c1f90614753565b6130696135f1565b60405163c608b6c160e01b8152600481018490526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063c608b6c19060240160a0604051808303816000875af11580156130d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130f791906148c0565b905060038160200151600381111561311157613111614827565b1461315e5760405162461bcd60e51b815260206004820152601a60248201527f5550444154455f4f524445525f4e4f545f54505f414e445f534c0000000000006044820152606401610c1f565b60405163095be50560e41b81526004810185905260009081906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906395be50509060240160a060405180830381865afa1580156131c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131ec91906147af565b5093509350505060006132058361ffff16348888613666565b905061322284604001516001600160401b03168260000151613775565b61323784606001518260200151846001613c1d565b61324c84608001518260200151846000613c1d565b6132546138a1565b600081602001519050613274338987602001516001896060015186613d6d565b6132b35760405162461bcd60e51b815260206004820152601060248201526f4641494c45445f54505f55504441544560801b6044820152606401610c1f565b6132ca338987602001516002896080015186613d6d565b6133095760405162461bcd60e51b815260206004820152601060248201526f4641494c45445f534c5f55504441544560801b6044820152606401610c1f565b5050505050610ef9613919565b6001546001600160a01b03163314801561333a57506001546001600160a01b031615155b6133865760405162461bcd60e51b815260206004820152601e60248201527f4e6f7420746865204558495354494e472070656e64696e672061646d696e00006044820152606401610c1f565b60008054600180546001600160a01b038082166001600160a01b031980861682179096559490911690915560408051919092168082526020820184905292917ff9ffabca9c8276e99321725bcb43fb076a6c66a54b7f21c4e8146d8519b417dc910160405180910390a1600154604080516001600160a01b03808516825290921660208301527fca4f2f25d0898edd99413412fb94012f9e54ec8142f9b093e7720646a95b16a99101612c11565b6000546001600160a01b0316331461345e5760405162461bcd60e51b8152600401610c1f9061483d565b806001600160a01b0316634535dc4c6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561349c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906134c09190614ae1565b6134fe5760405162461bcd60e51b815260206004820152600f60248201526e10a83934b1b2ab30b634b230ba37b960891b6044820152606401610c1f565b600680546001600160a01b0319166001600160a01b0383161790556040516d283934b1b2ab30b634b230ba37b960911b8152600e016040519081900381206001600160a01b0383168252907f943e9d45a11aaae5d87503e3bc248665d9807856e5cf2bdb4a988bee4442278190602001610fc2565b6000546001600160a01b0316331461359d5760405162461bcd60e51b8152600401610c1f9061483d565b60075481116135be5760405162461bcd60e51b8152600401610c1f90614861565b60088190556040517f6d617854726967676572506572696f64466f724d61726b65744f7264657273008152601f01610f8f565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f83d08ba6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561364c57600080fd5b505af1158015613660573d6000803e3d6000fd5b50505050565b604080516060810182526000808252602082018190529181018290529061368f8686868661424f565b60008781526004602090815260408220549083015192935063ffffffff16916136c1906001600160401b0316836142ea565b90508083604001516001600160401b031611156137205760405162461bcd60e51b815260206004820152601960248201527f434f4e464944454e43455f52414e47455f544f4f5f57494445000000000000006044820152606401610c1f565b82514210156137695760405162461bcd60e51b815260206004820152601560248201527411955515549157d4149250d157d4915413d4951151605a1b6044820152606401610c1f565b50909695505050505050565b6000600754836137859190614970565b90506000600854846137979190614970565b9050814210156137e95760405162461bcd60e51b815260206004820152601d60248201527f4d41524b45545f4f524445525f545249474745525f544f4f5f534f4f4e0000006044820152606401610c1f565b804211156138395760405162461bcd60e51b815260206004820152601d60248201527f4d41524b45545f4f524445525f545249474745525f544f4f5f4c4154450000006044820152606401610c1f565b8183101580156138495750808311155b6136605760405162461bcd60e51b8152602060048201526024808201527f4d41524b45545f4f524445525f50524943455f4f55545f4f465f54494d455f4660448201526352414d4560e01b6064820152608401610c1f565b4360009081526011602052604090205460105481106138fb5760405162461bcd60e51b81526020600482015260166024820152754d41585f54524947474552535f5045525f424c4f434b60501b6044820152606401610c1f565b613906816001614970565b4360009081526011602052604090205550565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166340da020f6040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561364c57600080fd5b7f00000000000000000000000000000000000000000000000000000000000000008163ffffffff1611156139dc5760405162461bcd60e51b815260206004820152600f60248201526e0a6a0a48a8288bea89e9ebe90928e9608b1b6044820152606401610c1f565b600082815260056020908152604091829020805463ffffffff191663ffffffff8516908117909155915191825283917ffe5fd0852fab5f8ba593533cf24a4b4b235704c0e06956d0a58cc2ca0a4b6b4491015b60405180910390a25050565b6001600160a01b038116600090815260018301602052604081205415155b9392505050565b600060095483613a709190614970565b905080421015613ac25760405162461bcd60e51b815260206004820152601c60248201527f4c494d49545f4f524445525f545249474745525f544f4f5f534f4f4e000000006044820152606401610c1f565b80821015613b1e5760405162461bcd60e51b815260206004820152602360248201527f4c494d49545f4f524445525f50524943455f4f55545f4f465f54494d455f4652604482015262414d4560e81b6064820152608401610c1f565b610ef982600c54614304565b6000620186a08363ffffffff161115613b855760405162461bcd60e51b815260206004820152601960248201527f5350524541445f524544554354494f4e5f544f4f5f48494748000000000000006044820152606401610c1f565b600085815260056020526040812054620186a090613bb3906001600160401b0388169063ffffffff16614afc565b613bbd9190614b13565b90506000620186a0613bd563ffffffff871684614b35565b6001600160401b0316613be89190614b13565b613bf29083614b60565b905083613c0857613c038187614b60565b613c12565b613c128187614b80565b979650505050505050565b6001600160401b03841615613660576000613c55846001600160401b0316600019600f5414613c4e57600f546142ea565b60006142ea565b90508115613ce45782613c8557613c75816001600160401b038616614ba0565b856001600160401b031610613ca4565b613c98816001600160401b038616614970565b856001600160401b0316115b613cdf5760405162461bcd60e51b815260206004820152600c60248201526b54505f544f4f5f434c4f534560a01b6044820152606401610c1f565b613d66565b82613d0c57613cfc816001600160401b038616614970565b856001600160401b031611613d2b565b613d1f816001600160401b038616614ba0565b856001600160401b0316105b613d665760405162461bcd60e51b815260206004820152600c60248201526b534c5f544f4f5f434c4f534560a01b6044820152606401610c1f565b5050505050565b60405163c07f992160e01b81526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063c07f992190613dc2908990889088908890600401614bb3565b600060405180830381600087803b158015613ddc57600080fd5b505af1925050508015613ded575060015b613fe857613df9614bc3565b806308c379a003613e7f5750613e0d614bdf565b80613e185750613e81565b856003811115613e2a57613e2a614827565b87896001600160a01b03167f889460050d9a293fbe31b6ce00a37ae62020cb8c8a19cf31e9496cb13246f6e2888888876000604051613e6d959493929190614c68565b60405180910390a46000915050614044565b505b3d808015613eab576040519150601f19603f3d011682016040523d82523d6000602084013e613eb0565b606091505b50632eb752bf60e21b613ec282614cb5565b6001600160e01b03191603613fa9576001856002811115613ee557613ee5614827565b14613f285760405162461bcd60e51b815260206004820152601360248201527204341505f4552524f525f4e4f545f4f4e5f545606c1b6044820152606401610c1f565b60248101516044820151876003811115613f4457613f44614827565b898b6001600160a01b03167f889460050d9a293fbe31b6ce00a37ae62020cb8c8a19cf31e9496cb13246f6e28a8a8a886011811115613f8557613f85614827565b604051613f959493929190614cec565b60405180910390a460009350505050614044565b60405162461bcd60e51b81526020600482015260146024820152732aa725a727aba72fa1aaa9aa27a6afa2a92927a960611b6044820152606401610c1f565b846003811115613ffa57613ffa614827565b86886001600160a01b03167ff0ac91a20375484f5a80315763782e4fe4b42bd038b08ba4939ff1a506974edf87878760405161403893929190614d3b565b60405180910390a45060015b9695505050505050565b7f00000000000000000000000000000000000000000000000000000000000000008163ffffffff1611156140c45760405162461bcd60e51b815260206004820152601c60248201527f434f4e464944454e43455f4652414354494f4e5f544f4f5f48494748000000006044820152606401610c1f565b600082815260046020908152604091829020805463ffffffff191663ffffffff8516908117909155915191825283917f88e6fad616d859d6fba20e93ab2acbf0756b6bc2d90c6002000f709f510cadb09101613a2f565b60606000613a5983614392565b6141318161104b565b6141735760405162461bcd60e51b81526020600482015260136024820152721050d0d3d5539517d393d517d0531313d5d151606a1b6044820152606401610c1f565b61417e6002826143ee565b506040516001600160a01b038216907fc985d67a353004ba149a223b2b9e5c13cca6610b11cb45b4aa029c880d8f7cb590600090a250565b6141bf8161104b565b1561420c5760405162461bcd60e51b815260206004820152601760248201527f4143434f554e545f414c52454144595f414c4c4f5745440000000000000000006044820152606401610c1f565b614217600282614403565b506040516001600160a01b038216907fc5944eab072face4b169928723314c5978080e99ed8f8527faedb18c06664c3590600090a250565b6040805160608101825260008082526020820181905281830152600654915163f4a6a09360e01b815290916001600160a01b03169063f4a6a09390869061429e90899088908890600401614d8f565b60606040518083038185885af11580156142bc573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906142e19190614e37565b95945050505050565b6000620186a06142fa8385614afc565b613a599190614b13565b60006143108242614ba0565b9050808310156143525760405162461bcd60e51b815260206004820152600d60248201526c14149250d157d513d3d7d3d311609a1b6044820152606401610c1f565b42831115610ef95760405162461bcd60e51b815260206004820152600d60248201526c50524943455f544f4f5f4e455760981b6044820152606401610c1f565b6060816000018054806020026020016040519081016040528092919081815260200182805480156143e257602002820191906000526020600020905b8154815260200190600101908083116143ce575b50505050509050919050565b6000613a59836001600160a01b038416614418565b6000613a59836001600160a01b038416614512565b6000818152600183016020526040812054801561450157600061443c600183614ba0565b855490915060009061445090600190614ba0565b90508082146144b557600086600001828154811061447057614470614ea9565b906000526020600020015490508087600001848154811061449357614493614ea9565b6000918252602080832090910192909255918252600188019052604090208390555b85548690806144c6576144c6614ebf565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050611058565b6000915050611058565b5092915050565b600081815260018301602052604081205461455957508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155611058565b506000611058565b60006020828403121561457357600080fd5b5035919050565b60008083601f84011261458c57600080fd5b5081356001600160401b038111156145a357600080fd5b6020830191508360208260051b85010111156145be57600080fd5b9250929050565b6000806000604084860312156145da57600080fd5b8335925060208401356001600160401b038111156145f757600080fd5b6146038682870161457a565b9497909650939450505050565b63ffffffff8116811461121257600080fd5b6000806040838503121561463557600080fd5b82359150602083013561464781614610565b809150509250929050565b60006020828403121561466457600080fd5b81356001600160a01b0381168114613a5957600080fd5b6000815180845260005b818110156146a157602081850181015186830182015201614685565b506000602082860101526020601f19601f83011685010191505092915050565b602081526000613a59602083018461467b565b6020808252825182820181905260009190848201906040850190845b818110156137695783516001600160a01b0316835292840192918401916001016146f0565b602080825260049082015263444f4e4560e01b604082015260600190565b60208082526006908201526514105554d15160d21b604082015260600190565b6020808252601690820152752727aa2fa0a62627aba2a22faa27afaa2924a3a3a2a960511b604082015260600190565b80516001600160401b038116811461479a57600080fd5b919050565b8051801515811461479a57600080fd5b600080600080600060a086880312156147c757600080fd5b8551600681106147d657600080fd5b94506147e460208701614783565b9350604086015161ffff811681146147fb57600080fd5b92506148096060870161479f565b9150608086015161481981614610565b809150509295509295909350565b634e487b7160e01b600052602160045260246000fd5b6020808252600a908201526927a7262cafa0a226a4a760b11b604082015260600190565b6020808252600b908201526a57524f4e475f56414c554560a81b604082015260600190565b601f8201601f191681016001600160401b03811182821017156148b957634e487b7160e01b600052604160045260246000fd5b6040525050565b600060a082840312156148d257600080fd5b60405160a081018181106001600160401b038211171561490257634e487b7160e01b600052604160045260246000fd5b6040528251815260208301516004811061491b57600080fd5b602082015261492c60408401614783565b604082015261493d60608401614783565b606082015261494e60808401614783565b60808201529392505050565b634e487b7160e01b600052601160045260246000fd5b808201808211156110585761105861495a565b6020808252600c908201526b15d0525517d512535153d55560a21b604082015260600190565b60208082526010908201526f2727afa9aaa1a42fa827a9a4aa24a7a760811b604082015260600190565b83815260608101600284106149ea576149ea614827565b602082019390935260400152919050565b600060808284031215614a0d57600080fd5b604051608081018181106001600160401b0382111715614a3d57634e487b7160e01b600052604160045260246000fd5b604052614a4983614783565b8152614a5760208401614783565b6020820152614a6860408401614783565b6040820152614a7960608401614783565b60608201529392505050565b8481526080810160048510614a9c57614a9c614827565b60208201949094526001600160401b0392831660408201529116606090910152919050565b6003811061121257611212614827565b838152606081016149ea84614ac1565b600060208284031215614af357600080fd5b613a598261479f565b80820281158282048414176110585761105861495a565b600082614b3057634e487b7160e01b600052601260045260246000fd5b500490565b6001600160401b03818116838216028082169190828114614b5857614b5861495a565b505092915050565b6001600160401b0382811682821603908082111561450b5761450b61495a565b6001600160401b0381811683821601908082111561450b5761450b61495a565b818103818111156110585761105861495a565b84815260808101614a9c85614ac1565b600060033d1115614bdc5760046000803e5060005160e01c5b90565b600060443d1015614bed5790565b6040516003193d81016004833e81513d6001600160401b038160248401118184111715614c1c57505050505090565b8285019150815181811115614c345750505050505090565b843d8701016020828501011115614c4e5750505050505090565b614c5d60208286010187614886565b509095945050505050565b614c7186614ac1565b85815260006001600160401b03808716602084015280861660408401525060a06060830152614ca360a083018561467b565b90508260808301529695505050505050565b805160208201516001600160e01b03198082169291906004831015614ce45780818460040360031b1b83161693505b505050919050565b614cf585614ac1565b9384526001600160401b0392831660208501529116604083015260a0606083018190526009908301526821a0a82fa2a92927a960b91b60c0830152608082015260e00190565b60608101614d4885614ac1565b9381526001600160401b039283166020820152911660409091015290565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6000604082018583526020604060208501528185835260608501905060608660051b86010192508660005b87811015614e2957868503605f190183528135368a9003601e19018112614de057600080fd5b890184810190356001600160401b03811115614dfb57600080fd5b803603821315614e0a57600080fd5b614e15878284614d66565b965050509183019190830190600101614dba565b509298975050505050505050565b600060608284031215614e4957600080fd5b604051606081018181106001600160401b0382111715614e7957634e487b7160e01b600052604160045260246000fd5b60405282518152614e8c60208401614783565b6020820152614e9d60408401614783565b60408201529392505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fdfea2646970667358221220b31047840e898facc8a37271da1ef3caa6595e12c7975fd0e31e1ce463838ae864736f6c63430008180033";
|
|
1431
1509
|
const isSuperArgs = (xs) => xs.length > 1;
|
|
1432
1510
|
class TriggersV1__factory extends ethers_1.ContractFactory {
|
|
1433
1511
|
constructor(...args) {
|