@layerzerolabs/lz-evm-sdk-v1 1.5.15 → 1.5.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/artifacts/contracts/Endpoint.sol/Endpoint.json +2 -2
- package/artifacts/contracts/NonceContract.sol/NonceContract.json +2 -2
- package/artifacts/contracts/PriceFeed.sol/PriceFeed.json +2 -2
- package/artifacts/contracts/Relayer.sol/Relayer.json +2 -2
- package/artifacts/contracts/RelayerV2.sol/RelayerV2.json +2 -2
- package/artifacts/contracts/UltraLightNode.sol/UltraLightNode.json +2 -2
- package/artifacts/contracts/UltraLightNodeV2.sol/UltraLightNodeV2.json +2 -2
- package/artifacts/contracts/precrime/PreCrime.sol/PreCrime.json +52 -0
- package/artifacts/contracts/precrime/PreCrimeBase.sol/PreCrimeBase.json +52 -0
- package/artifacts/contracts/precrime/PreCrimeView.sol/PreCrimeView.json +52 -0
- package/artifacts/contracts/proof/FPValidator.sol/FPValidator.json +2 -2
- package/artifacts/contracts/proof/MPTValidator.sol/MPTValidator.json +2 -2
- package/artifacts/contracts/proof/MPTValidator01.sol/MPTValidator01.json +2 -2
- package/artifacts/contracts/proof/MPTValidatorStgV3.sol/MPTValidatorStgV3.json +2 -2
- package/artifacts/contracts/proof/MPTValidatorV2.sol/MPTValidatorV2.json +2 -2
- package/artifacts/contracts/proof/MPTValidatorV4.sol/MPTValidatorV4.json +2 -2
- package/artifacts/contracts/proof/MPTValidatorV5.sol/MPTValidatorV5.json +2 -2
- package/artifacts/contracts/proof/utility/Buffer.sol/Buffer.json +2 -2
- package/artifacts/contracts/proof/utility/LayerZeroPacket.sol/LayerZeroPacket.json +2 -2
- package/artifacts/contracts/proof/utility/RLPDecode.sol/RLPDecode.json +2 -2
- package/artifacts/contracts/proof/utility/UltraLightNodeEVMDecoder.sol/UltraLightNodeEVMDecoder.json +2 -2
- package/deployments/aavegotchi-testnet/DefaultProxyAdmin.json +20 -20
- package/deployments/aavegotchi-testnet/Endpoint.json +25 -25
- package/deployments/aavegotchi-testnet/FPValidator.json +15 -15
- package/deployments/aavegotchi-testnet/MPTValidator01.json +14 -14
- package/deployments/aavegotchi-testnet/NonceContract.json +11 -11
- package/deployments/aavegotchi-testnet/PriceFeed.json +28 -28
- package/deployments/aavegotchi-testnet/PriceFeed_Implementation.json +23 -23
- package/deployments/aavegotchi-testnet/PriceFeed_Proxy.json +27 -27
- package/deployments/aavegotchi-testnet/RelayerV2.json +42 -42
- package/deployments/aavegotchi-testnet/RelayerV2_Implementation.json +17 -17
- package/deployments/aavegotchi-testnet/RelayerV2_Proxy.json +39 -39
- package/deployments/aavegotchi-testnet/TreasuryV2.json +21 -21
- package/deployments/aavegotchi-testnet/UltraLightNodeV2.json +35 -35
- package/deployments/blockgen-testnet/DefaultProxyAdmin.json +273 -0
- package/deployments/blockgen-testnet/Endpoint.json +1282 -0
- package/deployments/blockgen-testnet/FPValidator.json +382 -0
- package/deployments/blockgen-testnet/MPTValidator01.json +395 -0
- package/deployments/blockgen-testnet/NonceContract.json +159 -0
- package/deployments/blockgen-testnet/PriceFeed.json +760 -0
- package/deployments/blockgen-testnet/PriceFeed_Implementation.json +776 -0
- package/deployments/blockgen-testnet/PriceFeed_Proxy.json +233 -0
- package/deployments/blockgen-testnet/RelayerV2.json +1169 -0
- package/deployments/blockgen-testnet/RelayerV2_Implementation.json +1270 -0
- package/deployments/blockgen-testnet/RelayerV2_Proxy.json +245 -0
- package/deployments/blockgen-testnet/TreasuryV2.json +458 -0
- package/deployments/blockgen-testnet/UltraLightNodeV2.json +1816 -0
- package/deployments/ethereum-sandbox-local/DefaultProxyAdmin.json +273 -0
- package/deployments/ethereum-sandbox-local/Endpoint.json +1282 -0
- package/deployments/ethereum-sandbox-local/FPValidator.json +382 -0
- package/deployments/ethereum-sandbox-local/MPTValidator01.json +395 -0
- package/deployments/ethereum-sandbox-local/NonceContract.json +159 -0
- package/deployments/ethereum-sandbox-local/PriceFeed.json +760 -0
- package/deployments/ethereum-sandbox-local/PriceFeed_Implementation.json +776 -0
- package/deployments/ethereum-sandbox-local/PriceFeed_Proxy.json +233 -0
- package/deployments/ethereum-sandbox-local/RelayerV2.json +1169 -0
- package/deployments/ethereum-sandbox-local/RelayerV2_Implementation.json +1270 -0
- package/deployments/ethereum-sandbox-local/RelayerV2_Proxy.json +245 -0
- package/deployments/ethereum-sandbox-local/TreasuryV2.json +458 -0
- package/deployments/ethereum-sandbox-local/UltraLightNodeV2.json +1816 -0
- package/deployments/meritcircle-testnet/DefaultProxyAdmin.json +273 -0
- package/deployments/meritcircle-testnet/Endpoint.json +1282 -0
- package/deployments/meritcircle-testnet/FPValidator.json +382 -0
- package/deployments/meritcircle-testnet/MPTValidator01.json +395 -0
- package/deployments/meritcircle-testnet/NonceContract.json +159 -0
- package/deployments/meritcircle-testnet/PriceFeed.json +760 -0
- package/deployments/meritcircle-testnet/PriceFeed_Implementation.json +776 -0
- package/deployments/meritcircle-testnet/PriceFeed_Proxy.json +233 -0
- package/deployments/meritcircle-testnet/RelayerV2.json +1169 -0
- package/deployments/meritcircle-testnet/RelayerV2_Implementation.json +1270 -0
- package/deployments/meritcircle-testnet/RelayerV2_Proxy.json +245 -0
- package/deployments/meritcircle-testnet/TreasuryV2.json +458 -0
- package/deployments/meritcircle-testnet/UltraLightNodeV2.json +1816 -0
- package/deployments/polygon-sandbox-local/DefaultProxyAdmin.json +273 -0
- package/deployments/polygon-sandbox-local/Endpoint.json +1282 -0
- package/deployments/polygon-sandbox-local/FPValidator.json +382 -0
- package/deployments/polygon-sandbox-local/MPTValidator01.json +395 -0
- package/deployments/polygon-sandbox-local/NonceContract.json +159 -0
- package/deployments/polygon-sandbox-local/PriceFeed.json +760 -0
- package/deployments/polygon-sandbox-local/PriceFeed_Implementation.json +776 -0
- package/deployments/polygon-sandbox-local/PriceFeed_Proxy.json +233 -0
- package/deployments/polygon-sandbox-local/RelayerV2.json +1169 -0
- package/deployments/polygon-sandbox-local/RelayerV2_Implementation.json +1270 -0
- package/deployments/polygon-sandbox-local/RelayerV2_Proxy.json +245 -0
- package/deployments/polygon-sandbox-local/TreasuryV2.json +458 -0
- package/deployments/polygon-sandbox-local/UltraLightNodeV2.json +1816 -0
- package/package.json +3 -3
|
@@ -1416,8 +1416,8 @@
|
|
|
1416
1416
|
"type": "function"
|
|
1417
1417
|
}
|
|
1418
1418
|
],
|
|
1419
|
-
"bytecode": "0x60e06040523480156200001157600080fd5b5060405162004e9938038062004e998339810160408190526200003491620001d2565b60016000908155620000456200019e565b600180546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506001600160a01b038316620000c55760405162461bcd60e51b8152600401620000bc906200023f565b60405180910390fd5b6001600160a01b038216620000ee5760405162461bcd60e51b8152600401620000bc9062000289565b6000839050806001600160a01b0316633408e4706040518163ffffffff1660e01b815260040160206040518083038186803b1580156200012d57600080fd5b505afa15801562000142573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200016891906200021b565b5060f09190911b6001600160f01b03191660a052606090811b6001600160601b031990811660805291901b1660c05250620002d8565b3390565b80516001600160a01b0381168114620001ba57600080fd5b919050565b805161ffff81168114620001ba57600080fd5b600080600060608486031215620001e7578283fd5b620001f284620001a2565b92506200020260208501620001a2565b91506200021260408501620001bf565b90509250925092565b6000602082840312156200022d578081fd5b6200023882620001bf565b9392505050565b6020808252602a908201527f4c617965725a65726f3a20656e64706f696e742063616e6e6f74206265207a65604082015269726f206164647265737360b01b606082015260800190565b6020808252602f908201527f4c617965725a65726f3a206e6f6e6365436f6e74726163742063616e6e6f742060408201526e6265207a65726f206164647265737360881b606082015260800190565b60805160601c60a05160f01c60c05160601c614b68620003316000398061080d5280610f6f52806123fd52508061117952806115d5528061218d525080610de152806115f9528061231a52806128d35250614b686000f3fe6080604052600436106102a75760003560e01c80638317814a11610164578063d543c774116100c6578063ed28580a1161008a578063f47a5feb11610064578063f47a5feb146107b6578063f58589a2146107cb578063f8e1734c146107eb576102a7565b8063ed28580a14610756578063f0f4426014610776578063f2fde38b14610796576102a7565b8063d543c774146106a9578063db00719b146106d6578063ddfdef5a146106f6578063ea216c2114610716578063eb0d4c3114610736576102a7565b8063959f594311610128578063b77d22ad11610102578063b77d22ad14610647578063b8e7e3e01461065c578063b9a99bed1461067c576102a7565b8063959f5943146105da578063987fa2d5146105fa578063a46622221461061a576102a7565b80638317814a146105505780638525b7111461057057806387078f9f146105905780638da5cb5b146105b0578063904d3b8d146105c5576102a7565b806352d2871f1161020d5780636a14ac82116101d1578063759c5b3b116101ab578063759c5b3b146104fb5780638140666e1461051b5780638207f79d14610530576102a7565b80636a14ac82146104a6578063704316e5146104c6578063715018a6146104e6576102a7565b806352d2871f1461040f57806352d3b5001461042f5780635b056da51461044f5780635e280f111461047157806369412bfa14610486576102a7565b80632cfacb061161026f57806340a7bb101161024957806340a7bb10146103b957806349148c37146103e75780634d3a0f7c146103fc576102a7565b80632cfacb06146103505780632f8134641461037257806331bd2430146103a4576102a7565b806302bd9743146102ac57806307b18bde146102d757806307b9ca7c146102f957806318da00111461030e5780632a819bbf14610323575b600080fd5b3480156102b857600080fd5b506102c161080b565b6040516102ce9190613ed3565b60405180910390f35b3480156102e357600080fd5b506102f76102f236600461371b565b61082f565b005b34801561030557600080fd5b506102c16109b9565b34801561031a57600080fd5b506102c16109c8565b34801561032f57600080fd5b5061034361033e366004613c5b565b6109d7565b6040516102ce9190613f68565b34801561035c57600080fd5b50610365610a7b565b6040516102ce9190613f0a565b34801561037e57600080fd5b5061039261038d36600461399f565b610a80565b6040516102ce969594939291906149a4565b3480156103b057600080fd5b50610365610adc565b3480156103c557600080fd5b506103d96103d43660046139e8565b610ae1565b6040516102ce9291906149ec565b3480156103f357600080fd5b50610365610dda565b6102f761040a3660046137d5565b610ddf565b34801561041b57600080fd5b5061034361042a366004613a92565b611212565b34801561043b57600080fd5b506102f761044a3660046136ff565b611501565b34801561045b57600080fd5b506104646115d3565b6040516102ce9190614871565b34801561047d57600080fd5b506102c16115f7565b34801561049257600080fd5b506103656104a13660046136ff565b61161b565b3480156104b257600080fd5b506102f76104c1366004613cda565b61163a565b3480156104d257600080fd5b506102f76104e1366004613bcf565b611982565b3480156104f257600080fd5b506102f7611a47565b34801561050757600080fd5b5061036561051636600461377e565b611af3565b34801561052757600080fd5b50610365611b1f565b34801561053c57600080fd5b506102f761054b3660046139bb565b611b24565b34801561055c57600080fd5b506102f761056b366004613c78565b611c76565b34801561057c57600080fd5b506102f761058b3660046137c3565b611d4d565b34801561059c57600080fd5b506102f76105ab366004613bb2565b611e4f565b3480156105bc57600080fd5b506102c1611f34565b3480156105d157600080fd5b50610365611f43565b3480156105e657600080fd5b506103656105f536600461399f565b611f48565b34801561060657600080fd5b506102f7610615366004613ad2565b611f5a565b34801561062657600080fd5b5061063a6106353660046139bb565b6123b6565b6040516102ce9190614806565b34801561065357600080fd5b506103656123c8565b34801561066857600080fd5b5061046461067736600461399f565b6123cd565b34801561068857600080fd5b5061069c610697366004613c09565b6123e3565b6040516102ce91906149fa565b3480156106b557600080fd5b506106c96106c4366004613c5b565b61248e565b6040516102ce9190613ee7565b3480156106e257600080fd5b506102c16106f1366004613c5b565b6124ae565b34801561070257600080fd5b50610392610711366004613746565b6124d4565b34801561072257600080fd5b5061036561073136600461399f565b61253b565b34801561074257600080fd5b506102f7610751366004613c5b565b61254d565b34801561076257600080fd5b506102f7610771366004613bb2565b61260b565b34801561078257600080fd5b506102f76107913660046136ff565b6126e4565b3480156107a257600080fd5b506102f76107b13660046136ff565b6127b6565b3480156107c257600080fd5b506103656128b9565b3480156107d757600080fd5b506103656107e63660046136ff565b6128bf565b3480156107f757600080fd5b506102f7610806366004613b42565b6128d1565b7f000000000000000000000000000000000000000000000000000000000000000081565b60026000541415610887576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b60026000556001600160a01b0382166108bb5760405162461bcd60e51b81526004016108b290614143565b60405180910390fd5b336000908152600460205260409020546108d59082612bc6565b336000908152600460205260408082209290925590516001600160a01b03841690839061090190613e4c565b60006040518083038185875af1925050503d806000811461093e576040519150601f19603f3d011682016040523d82523d6000602084013e610943565b606091505b50509050806109645760405162461bcd60e51b81526004016108b2906140c7565b826001600160a01b0316336001600160a01b03167f3bfd26201736b5cb14a562ab3cfc2bef76901726e3a78483d6288af47131e1d9846040516109a79190613f0a565b60405180910390a35050600160005550565b6002546001600160a01b031681565b6003546001600160a01b031681565b60086020908152600092835260408084208252918352918190208054825160026001831615610100026000190190921691909104601f810185900485028201850190935282815292909190830182828015610a735780601f10610a4857610100808354040283529160200191610a73565b820191906000526020600020905b815481529060010190602001808311610a5657829003601f168201915b505050505081565b600381565b6007602052600090815260409020805460019091015461ffff808316926001600160401b036201000082048116936001600160a01b03600160501b8404811694600160f01b9094049093169291811691600160401b9091041686565b600681565b6000806000610af08a8a612c23565b905060608415610b395785858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929350610bea92505050565b61ffff808c166000908152600860209081526040808320606087015190941683529281529082902080548351601f600260001961010060018616150201909316929092049182018490048402810184019094528084529091830182828015610be25780601f10610bb757610100808354040283529160200191610be2565b820191906000526020600020905b815481529060010190602001808311610bc557829003601f168201915b505050505090505b600082604001516001600160a01b031663c03f15298d85606001518e8e8e9050876040518663ffffffff1660e01b8152600401610c2b959493929190614933565b60206040518083038186803b158015610c4357600080fd5b505afa158015610c57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c7b9190613d6f565b905060008b905060008460a001516001600160a01b0316635553fb8e8f87606001518860800151866040518563ffffffff1660e01b8152600401610cc2949392919061496f565b60206040518083038186803b158015610cda57600080fd5b505afa158015610cee573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d129190613d6f565b600354604051635cbbbd7560e01b81529192506000916001600160a01b0390911690635cbbbd7590610d4c908e9088908790600401613ef2565b60206040518083038186803b158015610d6457600080fd5b505afa158015610d78573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d9c9190613d6f565b90508a610dac5780975087610db1565b809650865b50610dc682610dc08a87612d9b565b90612d9b565b975050505050505097509795505050505050565b600281565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163314610e275760405162461bcd60e51b81526004016108b290614653565b61ffff89166000908152600e60205260409020548b908a90610e5b5760405162461bcd60e51b81526004016108b290614015565b61ffff81166000908152600c6020526040812054606091908015801590610e845750601481018c145b610ea05760405162461bcd60e51b81526004016108b2906146d8565b6000808e8e8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050505083810160140151925090506001600160a01b0387811690831614610f0f5760405162461bcd60e51b81526004016108b2906143d4565b8e8e6000908592610f2293929190614a31565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604051636fe7b67360e01b8152929750506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691636fe7b6739150610fa99089908b908690600401614880565b602060405180830381600087803b158015610fc357600080fd5b505af1158015610fd7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ffb9190613da3565b935050505060008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052509394506110479250879150889050612c23565b9050600061108f86838986518d8d8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250612df592505050565b9050600061109e87848a612f98565b905060006110ae83838b8f613039565b905060006110c082610dc08686612d9b565b9050348111156110e25760405162461bcd60e51b81526004016108b2906140fe565b60006110ee3483612bc6565b905080156111745760008f6001600160a01b03168260405161110f90613e4c565b60006040518083038185875af1925050503d806000811461114c576040519150601f19603f3d011682016040523d82523d6000602084013e611151565b606091505b50509050806111725760405162461bcd60e51b81526004016108b290614227565b505b6000887f00000000000000000000000000000000000000000000000000000000000000008d8d8d8c6040516020016111b196959493929190613e4f565b60405160208183030381529060405290507fe9bded5f24a4168e4f3bf44e00298c993b22376aad8c58c7dda9718a54cbea82816040516111f19190613f68565b60405180910390a15050505050505050505050505050505050505050505050565b6001600160a01b038216600090815260066020908152604080832061ffff87168452909152902060609060018314156112a657805461ffff166112905761ffff80861660009081526007602090815260409182902054915161127993929092169101614871565b6040516020818303038152906040529150506114fa565b80546040516112799161ffff1690602001614871565b60028314156113195780546201000090046001600160401b03166112f85761ffff8516600090815260076020908152604091829020549151611279926201000090046001600160401b031691016149fa565b8054604051611279916201000090046001600160401b0316906020016149fa565b600383141561138f578054600160501b90046001600160a01b031661136d5761ffff851660009081526007602090815260409182902054915161127992600160501b90046001600160a01b03169101613ed3565b805460405161127991600160501b90046001600160a01b031690602001613ed3565b60048314156113f7578054600160f01b900461ffff166113da5761ffff80861660009081526007602090815260409182902054915161127993600160f01b9093049092169101614871565b805460405161127991600160f01b900461ffff1690602001614871565b60058314156114615760018101546001600160401b03166114435761ffff8516600090815260076020908152604091829020600101549151611279926001600160401b031691016149fa565b6001810154604051611279916001600160401b0316906020016149fa565b60068314156114e0576001810154600160401b90046001600160a01b03166114bb5761ffff851660009081526007602090815260409182902060010154915161127992600160401b90046001600160a01b03169101613ed3565b600181015460405161127991600160401b90046001600160a01b031690602001613ed3565b60405162461bcd60e51b81526004016108b290614090565b505b9392505050565b61150961318a565b6001600160a01b031661151a611f34565b6001600160a01b031614611563576040805162461bcd60e51b81526020600482018190526024820152600080516020614ae9833981519152604482015290519081900360640190fd5b6001600160a01b0381166115895760405162461bcd60e51b81526004016108b290614188565b600280546001600160a01b0319166001600160a01b0383169081179091556040517f33d644987381deff4408951d55afa136f124e22a7810b163b2aaa3ebef770f6490600090a250565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b6001600160a01b0381166000908152600460205260409020545b919050565b61164261318a565b6001600160a01b0316611653611f34565b6001600160a01b03161461169c576040805162461bcd60e51b81526020600482018190526024820152600080516020614ae9833981519152604482015290519081900360640190fd5b61ffff8088166000908152600a60205260409020548116908716118015906116c8575060008661ffff16115b6116e45760405162461bcd60e51b81526004016108b2906144f4565b6000856001600160401b03161161170d5760405162461bcd60e51b81526004016108b290614770565b6001600160a01b0384166117335760405162461bcd60e51b81526004016108b2906141e5565b61ffff8088166000908152600b602090815260408083209387168352929052205460ff166117735760405162461bcd60e51b81526004016108b290613fcf565b6000826001600160401b03161161179c5760405162461bcd60e51b81526004016108b29061468a565b6001600160a01b0381166117c25760405162461bcd60e51b81526004016108b2906142e0565b6040518060c001604052808761ffff168152602001866001600160401b03168152602001856001600160a01b031681526020018461ffff168152602001836001600160401b03168152602001826001600160a01b0316815250600760008961ffff1661ffff16815260200190815260200160002060008201518160000160006101000a81548161ffff021916908361ffff16021790555060208201518160000160026101000a8154816001600160401b0302191690836001600160401b03160217905550604082015181600001600a6101000a8154816001600160a01b0302191690836001600160a01b03160217905550606082015181600001601e6101000a81548161ffff021916908361ffff16021790555060808201518160010160006101000a8154816001600160401b0302191690836001600160401b0316021790555060a08201518160010160086101000a8154816001600160a01b0302191690836001600160a01b031602179055509050508661ffff167f5a76432853a0871c4e780def7f3ffc7912339b53f022ac31127fe5ff84a36fa1878787878787604051611971969594939291906149a4565b60405180910390a250505050505050565b336000908152600d6020908152604080832061ffff88168452825280832086845282528083208484529091529020548281106119d05760405162461bcd60e51b81526004016108b290614454565b336000818152600d6020908152604080832061ffff8a1680855290835281842089855283528184208785529092529182902086905590517f74bbc026808dcba59692d6a8bb20596849ca718e10e2432c6cdf48af865bc5d990611a3890889087908990613f13565b60405180910390a35050505050565b611a4f61318a565b6001600160a01b0316611a60611f34565b6001600160a01b031614611aa9576040805162461bcd60e51b81526020600482018190526024820152600080516020614ae9833981519152604482015290519081900360640190fd5b6001546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600180546001600160a01b0319169055565b600d60209081526000948552604080862082529385528385208152918452828420909152825290205481565b600481565b611b2c61318a565b6001600160a01b0316611b3d611f34565b6001600160a01b031614611b86576040805162461bcd60e51b81526020600482018190526024820152600080516020614ae9833981519152604482015290519081900360640190fd5b6001600160a01b038116611bac5760405162461bcd60e51b81526004016108b29061440b565b61ffff8083166000908152600a60205260409020548116908110611be25760405162461bcd60e51b81526004016108b290614611565b61ffff8381166000818152600a60209081526040808320805461ffff191660019790970195861696871790556009825280832095835294905283902080546001600160a01b0319166001600160a01b03861617905591519091907f802d55279d51813cb7a9a98e8fd2d7bec5346cb830901c11b85d1650cb857e9a90611c69908590613ed3565b60405180910390a2505050565b611c7e61318a565b6001600160a01b0316611c8f611f34565b6001600160a01b031614611cd8576040805162461bcd60e51b81526020600482018190526024820152600080516020614ae9833981519152604482015290519081900360640190fd5b61ffff8085166000908152600860209081526040808320938716835292905220611d03908383613508565b508261ffff168461ffff167f4a5695eee2a74d548d5f5c485a3de99ace99e3b664c8e30a90f49be6ebb549328484604051611d3f929190613f54565b60405180910390a350505050565b60026000541415611da5576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b60026000556003546001600160a01b03163314611dd45760405162461bcd60e51b81526004016108b290614059565b600554611de19082612bc6565b600555600254611dfb906001600160a01b0316838361318e565b816001600160a01b0316336001600160a01b03167f3a20c8c3cd1848485ae8261a52398bb9b26f195b717306b3cf7f058e62c095d583604051611e3e9190613f0a565b60405180910390a350506001600055565b611e5761318a565b6001600160a01b0316611e68611f34565b6001600160a01b031614611eb1576040805162461bcd60e51b81526020600482018190526024820152600080516020614ae9833981519152604482015290519081900360640190fd5b61ffff82166000908152600c602052604090205415611ee25760405162461bcd60e51b81526004016108b290614720565b61ffff82166000818152600c602052604090819020839055517f0611bb2107e385b79ec826fff8ecc1c1248a7aae3c875c96668f8cfbf173422090611f28908490613f0a565b60405180910390a25050565b6001546001600160a01b031690565b600581565b600c6020526000908152604090205481565b6000611f668888612c23565b60408101519091506001600160a01b03163314611f955760405162461bcd60e51b81526004016108b29061439d565b611f9d613594565b61ffff89166000908152600c602052604090205480611fce5760405162461bcd60e51b81526004016108b2906146d8565b60a08301516001600160a01b03166000908152600d6020908152604080832061ffff8e16845282528083208a845282528083208984529091529020548015801590612026575083602001516001600160401b03168110155b6120425760405162461bcd60e51b81526004016108b2906147bd565b61ffff808c1660009081526009602090815260408083208851909416835292905281902054905163b71e0f7160e01b81526001600160a01b0390911690819063b71e0f719061209b908b908b908b908990600401613f29565b600060405180830381600087803b1580156120b557600080fd5b505af11580156120c9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526120f191908101906138c4565b60a081015161ffff8e166000908152600e6020526040902054919550149150508015612120575060a082015115155b61213c5760405162461bcd60e51b81526004016108b290614321565b8961ffff16826000015161ffff16146121675760405162461bcd60e51b81526004016108b290614366565b808260800151511461218b5760405162461bcd60e51b81526004016108b290614544565b7f000000000000000000000000000000000000000000000000000000000000000061ffff16826020015161ffff16146121d65760405162461bcd60e51b81526004016108b2906144bd565b886001600160a01b031682606001516001600160a01b03161461220b5760405162461bcd60e51b81526004016108b2906142a9565b612214896131e5565b6122855781606001516001600160a01b0316826000015161ffff167fa2786598bd84ae4a299103996359e6cb4333404583256079dfc279386baf5832846080015185604001518660c001518051906020012060405161227593929190613fa1565b60405180910390a35050506123ad565b6000826080015183606001516040516020016122a2929190613e15565b604051602081830303815290604052905082606001516001600160a01b0316836000015161ffff167f2bd2d8a84b748439fd50d79a49502b4eb5faa25b864da6a9ab5c150704be9a4d856080015186604001518760c001518051906020012060405161231093929190613fa1565b60405180910390a37f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663c2fa48138c838d87604001518e8960c001516040518763ffffffff1660e01b8152600401612376969594939291906148d3565b600060405180830381600087803b15801561239057600080fd5b505af11580156123a4573d6000803e3d6000fd5b50505050505050505b50505050505050565b6123be6135d2565b6114fa8383612c23565b600181565b600a6020526000908152604090205461ffff1681565b60405163c533338f60e01b81526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063c533338f90612436908790879087906004016148b5565b60206040518083038186803b15801561244e57600080fd5b505afa158015612462573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124869190613da3565b949350505050565b600b60209081526000928352604080842090915290825290205460ff1681565b60096020908152600092835260408084209091529082529020546001600160a01b031681565b60066020908152600092835260408084209091529082529020805460019091015461ffff808316926001600160401b036201000082048116936001600160a01b03600160501b8404811694600160f01b9094049093169291811691600160401b9091041686565b600e6020526000908152604090205481565b61255561318a565b6001600160a01b0316612566611f34565b6001600160a01b0316146125af576040805162461bcd60e51b81526020600482018190526024820152600080516020614ae9833981519152604482015290519081900360640190fd5b61ffff8083166000818152600b602090815260408083209486168352939052829020805460ff1916600117905590517fec23bee6f88cfecebb09d6aaaed66f0ce110debc1f61117c8270a7116597df9a90611f28908490614871565b61261361318a565b6001600160a01b0316612624611f34565b6001600160a01b03161461266d576040805162461bcd60e51b81526020600482018190526024820152600080516020614ae9833981519152604482015290519081900360640190fd5b61ffff82166000908152600e60205260409020541561269e5760405162461bcd60e51b81526004016108b2906145d0565b61ffff82166000818152600e602052604090819020839055517f0dad975e1d2fbe771c95cdcc7be9a1e61181de7173abe0a32b8f8f83140873e590611f28908490613f0a565b6126ec61318a565b6001600160a01b03166126fd611f34565b6001600160a01b031614612746576040805162461bcd60e51b81526020600482018190526024820152600080516020614ae9833981519152604482015290519081900360640190fd5b6001600160a01b03811661276c5760405162461bcd60e51b81526004016108b290614586565b600380546001600160a01b0319166001600160a01b0383169081179091556040517fcb7ef3e545f5cdb893f5c568ba710fe08f336375a2d9fd66e161033f8fc09ef390600090a250565b6127be61318a565b6001600160a01b03166127cf611f34565b6001600160a01b031614612818576040805162461bcd60e51b81526020600482018190526024820152600080516020614ae9833981519152604482015290519081900360640190fd5b6001600160a01b03811661285d5760405162461bcd60e51b8152600401808060200182810382526026815260200180614ac36026913960400191505060405180910390fd5b6001546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600180546001600160a01b0319166001600160a01b0392909216919091179055565b60055481565b60046020526000908152604090205481565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031633146129195760405162461bcd60e51b81526004016108b290614653565b6001600160a01b038416600090815260066020908152604080832061ffff89168452909152902060018414156129a95760006129578385018561399f565b61ffff8089166000908152600a602052604090205491925090811690821611156129935760405162461bcd60e51b81526004016108b2906144f4565b815461ffff191661ffff91909116178155612b7a565b60028414156129ea5760006129c083850185613d87565b82546001600160401b03909116620100000269ffffffffffffffff00001990911617825550612b7a565b6003841415612a41576000612a01838501856136ff565b82546001600160a01b03909116600160501b027fffff0000000000000000000000000000000000000000ffffffffffffffffffff90911617825550612b7a565b6004841415612ae0576000612a588385018561399f565b61ffff8089166000908152600b602090815260408083209385168352929052205490915060ff1680612a8c575061ffff8116155b612aa85760405162461bcd60e51b81526004016108b290613fcf565b815461ffff909116600160f01b027dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff909116178155612b7a565b6005841415612b20576000612af783850185613d87565b60018301805467ffffffffffffffff19166001600160401b039290921691909117905550612b7a565b60068414156114e0576000612b37838501856136ff565b6001830180546001600160a01b03909216600160401b027fffffffff0000000000000000000000000000000000000000ffffffffffffffff909216919091179055505b83856001600160a01b03167ffc01bf86212a14151d51d1be5c2ac64d67d5ec823dfc6f53298d7ce3f3d3d2528585604051612bb6929190613f54565b60405180910390a3505050505050565b600082821115612c1d576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b612c2b6135d2565b6001600160a01b03808316600090815260066020908152604080832061ffff808916808652918452828520835160c081018552815480841682526001600160401b03620100008204811683890152600160501b82048a1683880152600160f01b909104841660608301526001909201549182166080820152600160401b90910490961660a087015290845260079092529091208251909116612cd057805461ffff1682525b60208201516001600160401b0316612cf95780546201000090046001600160401b031660208301525b60408201516001600160a01b0316612d23578054600160501b90046001600160a01b031660408301525b606082015161ffff16612d43578054600160f01b900461ffff1660608301525b60808201516001600160401b0316612d695760018101546001600160401b031660808301525b60a08201516001600160a01b03166114f85760010154600160401b90046001600160a01b031660a08201529392505050565b6000828201838110156114fa576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000815160001415612eb25761ffff808716600090815260086020908152604080832060608a015190941683529281529082902080548351601f600260001961010060018616150201909316929092049182018490048402810184019094528084529091830182828015612eaa5780601f10612e7f57610100808354040283529160200191612eaa565b820191906000526020600020905b815481529060010190602001808311612e8d57829003601f168201915b505050505091505b60408086015160608701519151635886ea6560e01b8152909182916001600160a01b03831691635886ea6591612ef2918c918b908b908b90600401614933565b602060405180830381600087803b158015612f0c57600080fd5b505af1158015612f20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612f449190613d6f565b9250612f5082846131eb565b7fb0c632f55f1e1b3b2c3d82f41ee4716bb4c00f0f5d84cdafc141581bb8757a4f848860600151604051612f85929190613f7b565b60405180910390a1505095945050505050565b60a08201516060830151608084015160405163c5e193cd60e01b8152600093926001600160a01b0384169263c5e193cd92612fdb928a929091899060040161496f565b602060405180830381600087803b158015612ff557600080fd5b505af1158015613009573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061302d9190613d6f565b91506114f881836131eb565b6000806001600160a01b038316158061305b57506002546001600160a01b0316155b600354604051635cbbbd7560e01b81529192506000916001600160a01b0390911690635cbbbd7590613096908515908b908b90600401613ef2565b60206040518083038186803b1580156130ae57600080fd5b505afa1580156130c2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130e69190613d6f565b90508015613180578115613113576003546001600160a01b031661310a81836131eb565b81935050613180565b846001600160a01b0316846001600160a01b0316148061313b57506001600160a01b03841632145b6131575760405162461bcd60e51b81526004016108b29061425e565b60025461316f906001600160a01b031685308461322e565b60055461317c9082612d9b565b6005555b5050949350505050565b3390565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b1790526131e090849061328e565b505050565b3b151590565b6001600160a01b03821660009081526004602052604090205461320e9082612d9b565b6001600160a01b0390921660009081526004602052604090209190915550565b604080516001600160a01b0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b17905261328890859061328e565b50505050565b60006132e3826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b031661333f9092919063ffffffff16565b8051909150156131e05780806020019051602081101561330257600080fd5b50516131e05760405162461bcd60e51b815260040180806020018281038252602a815260200180614b09602a913960400191505060405180910390fd5b6060612486848460008585613353856131e5565b6133a4576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b600080866001600160a01b031685876040518082805190602001908083835b602083106133e25780518252601f1990920191602091820191016133c3565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114613444576040519150601f19603f3d011682016040523d82523d6000602084013e613449565b606091505b5091509150613459828286613464565b979650505050505050565b606083156134735750816114fa565b8251156134835782518084602001fd5b8160405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156134cd5781810151838201526020016134b5565b50505050905090810190601f1680156134fa5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b828054600181600116156101000203166002900490600052602060002090601f01602090048101928261353e5760008555613584565b82601f106135575782800160ff19823516178555613584565b82800160010185558215613584579182015b82811115613584578235825591602001919060010190613569565b50613590929150613607565b5090565b6040805160e08101825260008082526020820181905291810182905260608082018390526080820181905260a082019290925260c081019190915290565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a081019190915290565b5b808211156135905760008155600101613608565b803561163581614a85565b805161163581614a85565b60008083601f840112613643578182fd5b5081356001600160401b03811115613659578182fd5b60208301915083602082850101111561367157600080fd5b9250929050565b600082601f830112613688578081fd5b81516001600160401b0381111561369b57fe5b6136ae601f8201601f1916602001614a0e565b8181528460208386010111156136c2578283fd5b612486826020830160208701614a59565b803561163581614a9d565b805161163581614a9d565b803561163581614aad565b805161163581614aad565b600060208284031215613710578081fd5b81356114fa81614a85565b6000806040838503121561372d578081fd5b823561373881614a85565b946020939093013593505050565b60008060408385031215613758578182fd5b823561376381614a85565b9150602083013561377381614a9d565b809150509250929050565b60008060008060808587031215613793578182fd5b843561379e81614a85565b935060208501356137ae81614a9d565b93969395505050506040820135916060013590565b6000806040838503121561372d578182fd5b60008060008060008060008060008060006101008c8e0312156137f6578687fd5b6137ff8c61361c565b9a5061380d60208d016136e9565b995061381b60408d016136d3565b98506001600160401b038060608e01351115613835578788fd5b6138458e60608f01358f01613632565b909950975060808d013581101561385a578687fd5b61386a8e60808f01358f01613632565b909750955061387b60a08e0161361c565b945061388960c08e0161361c565b93508060e08e0135111561389b578283fd5b506138ac8d60e08e01358e01613632565b81935080925050509295989b509295989b9093969950565b6000602082840312156138d5578081fd5b81516001600160401b03808211156138eb578283fd5b9083019060e082860312156138fe578283fd5b61390860e0614a0e565b613911836136de565b815261391f602084016136de565b6020820152613930604084016136f4565b604082015261394160608401613627565b6060820152608083015182811115613957578485fd5b61396387828601613678565b60808301525060a083015160a082015260c083015182811115613984578485fd5b61399087828601613678565b60c08301525095945050505050565b6000602082840312156139b0578081fd5b81356114fa81614a9d565b600080604083850312156139cd578182fd5b82356139d881614a9d565b9150602083013561377381614a85565b600080600080600080600060a0888a031215613a02578081fd5b8735613a0d81614a9d565b96506020880135613a1d81614a85565b955060408801356001600160401b0380821115613a38578283fd5b613a448b838c01613632565b909750955060608a013591508115158214613a5d578283fd5b90935060808901359080821115613a72578283fd5b50613a7f8a828b01613632565b989b979a50959850939692959293505050565b600080600060608486031215613aa6578081fd5b8335613ab181614a9d565b92506020840135613ac181614a85565b929592945050506040919091013590565b600080600080600080600060c0888a031215613aec578081fd5b8735613af781614a9d565b96506020880135613b0781614a85565b955060408801359450606088013593506080880135925060a08801356001600160401b03811115613b36578182fd5b613a7f8a828b01613632565b600080600080600060808688031215613b59578283fd5b8535613b6481614a9d565b94506020860135613b7481614a85565b93506040860135925060608601356001600160401b03811115613b95578182fd5b613ba188828901613632565b969995985093965092949392505050565b60008060408385031215613bc4578182fd5b823561373881614a9d565b60008060008060808587031215613be4578182fd5b8435613bef81614a9d565b966020860135965060408601359560600135945092505050565b600080600060408486031215613c1d578081fd5b8335613c2881614a9d565b925060208401356001600160401b03811115613c42578182fd5b613c4e86828701613632565b9497909650939450505050565b60008060408385031215613c6d578182fd5b823561376381614a9d565b60008060008060608587031215613c8d578182fd5b8435613c9881614a9d565b93506020850135613ca881614a9d565b925060408501356001600160401b03811115613cc2578283fd5b613cce87828801613632565b95989497509550505050565b600080600080600080600060e0888a031215613cf4578081fd5b8735613cff81614a9d565b96506020880135613d0f81614a9d565b95506040880135613d1f81614aad565b94506060880135613d2f81614a85565b93506080880135613d3f81614a9d565b925060a0880135613d4f81614aad565b915060c0880135613d5f81614a85565b8091505092959891949750929550565b600060208284031215613d80578081fd5b5051919050565b600060208284031215613d98578081fd5b81356114fa81614aad565b600060208284031215613db4578081fd5b81516114fa81614aad565b60008284528282602086013780602084860101526020601f19601f85011685010190509392505050565b60008151808452613e01816020860160208601614a59565b601f01601f19169290920160200192915050565b60008351613e27818460208801614a59565b60609390931b6bffffffffffffffffffffffff19169190920190815260140192915050565b90565b60006001600160401b0360c01b8860c01b16825261ffff60f01b808860f01b1660088401526bffffffffffffffffffffffff198760601b16600a840152808660f01b16601e840152508351613eab816020850160208801614a59565b80830190508351613ec3816020840160208801614a59565b0160200198975050505050505050565b6001600160a01b0391909116815260200190565b901515815260200190565b92151583526020830191909152604082015260600190565b90815260200190565b9283526020830191909152604082015260600190565b600085825260606020830152613f43606083018587613dbf565b905082604083015295945050505050565b600060208252612486602083018486613dbf565b6000602082526114fa6020830184613de9565b600060408252613f8e6040830185613de9565b905061ffff831660208301529392505050565b600060608252613fb46060830186613de9565b6001600160401b039490941660208301525060400152919050565b60208082526026908201527f4c617965725a65726f3a20696e76616c6964206f7574626f756e642070726f6f60408201526566207479706560d01b606082015260800190565b60208082526024908201527f4c617965725a65726f3a20647374436861696e496420646f6573206e6f7420656040820152631e1a5cdd60e21b606082015260800190565b60208082526018908201527f4c617965725a65726f3a206f6e6c792074726561737572790000000000000000604082015260600190565b6020808252601e908201527f4c617965725a65726f3a20496e76616c696420636f6e66696720747970650000604082015260600190565b6020808252601a908201527f4c617965725a65726f3a207769746864726177206661696c6564000000000000604082015260600190565b60208082526025908201527f4c617965725a65726f3a206e6f7420656e6f756768206e617469766520666f72604082015264206665657360d81b606082015260800190565b60208082526025908201527f4c617965725a65726f3a205f746f2063616e6e6f74206265207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526031908201527f4c617965725a65726f3a205f6c617965725a65726f546f6b656e2063616e6e6f60408201527f74206265207a65726f2061646472657373000000000000000000000000000000606082015260800190565b60208082526022908201527f4c617965725a65726f3a20696e76616c69642072656c61796572206164647265604082015261737360f01b606082015260800190565b6020808252601b908201527f4c617965725a65726f3a206661696c656420746f20726566756e640000000000604082015260600190565b6020808252602b908201527f4c617965725a65726f3a206d75737420626520706169642062792073656e646560408201526a391037b91037b934b3b4b760a91b606082015260800190565b6020808252601d908201527f4c617965725a65726f3a20696e76616c69642064737441646472657373000000604082015260600190565b60208082526021908201527f4c617965725a65726f3a20696e76616c6964206f7261636c65206164647265736040820152607360f81b606082015260800190565b60208082526025908201527f4c617965725a65726f3a20696e76616c6964205f7061636b65742e756c6e4164604082015264647265737360d81b606082015260800190565b6020808252601e908201527f4c617965725a65726f3a20696e76616c696420737263436861696e2049640000604082015260600190565b6020808252601a908201527f4c617965725a65726f3a20696e76616c69642072656c61796572000000000000604082015260600190565b6020808252601a908201527f4c617965725a65726f3a2077726f6e6720706174682064617461000000000000604082015260600190565b60208082526029908201527f4c617965725a65726f3a206c6962726172792063616e6e6f74206265207a65726040820152686f206164647265737360b81b606082015260800190565b60208082526043908201527f4c617965725a65726f3a206f7261636c6520646174612063616e206f6e6c792060408201527f75706461746520696620697420686173206d6f726520636f6e6669726d6174696060820152626f6e7360e81b608082015260a00190565b6020808252601e908201527f4c617965725a65726f3a20696e76616c696420647374436861696e2049640000604082015260600190565b60208082526030908201527f4c617965725a65726f3a20696e76616c696420696e626f756e642070726f6f6660408201526f103634b13930b93c903b32b939b4b7b760811b606082015260800190565b60208082526022908201527f4c617965725a65726f3a20696e76616c696420737263416464726573732073696040820152617a6560f01b606082015260800190565b6020808252602a908201527f4c617965725a65726f3a2074726561737572792063616e6e6f74206265207a65604082015269726f206164647265737360b01b606082015260800190565b60208082526021908201527f4c617965725a65726f3a2072656d6f746520756c6e20616c72656164792073656040820152601d60fa1b606082015260800190565b60208082526022908201527f4c617965725a65726f3a2063616e206e6f7420616464206e6577206c69627261604082015261727960f01b606082015260800190565b60208082526018908201527f4c617965725a65726f3a206f6e6c7920656e64706f696e740000000000000000604082015260600190565b6020808252602e908201527f4c617965725a65726f3a20696e76616c6964206f7574626f756e6420626c6f6360408201526d359031b7b73334b936b0ba34b7b760911b606082015260800190565b60208082526028908201527f4c617965725a65726f3a20696e636f72726563742072656d6f746520616464726040820152676573732073697a6560c01b606082015260800190565b60208082526030908201527f4c617965725a65726f3a2072656d6f746520636861696e20616464726573732060408201526f1cda5e9948185b1c9958591e481cd95d60821b606082015260800190565b6020808252602d908201527f4c617965725a65726f3a20696e76616c696420696e626f756e6420626c6f636b60408201526c1031b7b73334b936b0ba34b7b760991b606082015260800190565b60208082526029908201527f4c617965725a65726f3a206e6f7420656e6f75676820626c6f636b20636f6e6660408201526869726d6174696f6e7360b81b606082015260800190565b600060c08201905061ffff80845116835260208401516001600160401b038082166020860152604086015191506001600160a01b0380831660408701528360608801511660608701528160808801511660808701528060a08801511660a08701525050505092915050565b61ffff91909116815260200190565b600061ffff851682526001600160a01b0384166020830152606060408301526148ac6060830184613de9565b95945050505050565b600061ffff85168252604060208301526148ac604083018486613dbf565b600061ffff8816825260c060208301526148f060c0830188613de9565b6001600160a01b03871660408401526001600160401b038616606084015284608084015282810360a08401526149268185613de9565b9998505050505050505050565b600061ffff80881683528087166020840152506001600160a01b038516604083015283606083015260a0608083015261345960a0830184613de9565b61ffff94851681529290931660208301526001600160401b031660408201526001600160a01b03909116606082015260800190565b61ffff96871681526001600160401b0395861660208201526001600160a01b03948516604082015292909516606083015290921660808301529190911660a082015260c00190565b918252602082015260400190565b6001600160401b0391909116815260200190565b6040518181016001600160401b0381118282101715614a2957fe5b604052919050565b60008085851115614a40578182fd5b83861115614a4c578182fd5b5050820193919092039150565b60005b83811015614a74578181015183820152602001614a5c565b838111156132885750506000910152565b6001600160a01b0381168114614a9a57600080fd5b50565b61ffff81168114614a9a57600080fd5b6001600160401b0381168114614a9a57600080fdfe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725361666545524332303a204552433230206f7065726174696f6e20646964206e6f742073756363656564a2646970667358221220b4788ab87c68e1ee06cf21fe087be1337979d85196e78caf4ac53ab1b2ef705464736f6c63430007060033",
|
|
1420
|
-
"deployedBytecode": "0x6080604052600436106102a75760003560e01c80638317814a11610164578063d543c774116100c6578063ed28580a1161008a578063f47a5feb11610064578063f47a5feb146107b6578063f58589a2146107cb578063f8e1734c146107eb576102a7565b8063ed28580a14610756578063f0f4426014610776578063f2fde38b14610796576102a7565b8063d543c774146106a9578063db00719b146106d6578063ddfdef5a146106f6578063ea216c2114610716578063eb0d4c3114610736576102a7565b8063959f594311610128578063b77d22ad11610102578063b77d22ad14610647578063b8e7e3e01461065c578063b9a99bed1461067c576102a7565b8063959f5943146105da578063987fa2d5146105fa578063a46622221461061a576102a7565b80638317814a146105505780638525b7111461057057806387078f9f146105905780638da5cb5b146105b0578063904d3b8d146105c5576102a7565b806352d2871f1161020d5780636a14ac82116101d1578063759c5b3b116101ab578063759c5b3b146104fb5780638140666e1461051b5780638207f79d14610530576102a7565b80636a14ac82146104a6578063704316e5146104c6578063715018a6146104e6576102a7565b806352d2871f1461040f57806352d3b5001461042f5780635b056da51461044f5780635e280f111461047157806369412bfa14610486576102a7565b80632cfacb061161026f57806340a7bb101161024957806340a7bb10146103b957806349148c37146103e75780634d3a0f7c146103fc576102a7565b80632cfacb06146103505780632f8134641461037257806331bd2430146103a4576102a7565b806302bd9743146102ac57806307b18bde146102d757806307b9ca7c146102f957806318da00111461030e5780632a819bbf14610323575b600080fd5b3480156102b857600080fd5b506102c161080b565b6040516102ce9190613ed3565b60405180910390f35b3480156102e357600080fd5b506102f76102f236600461371b565b61082f565b005b34801561030557600080fd5b506102c16109b9565b34801561031a57600080fd5b506102c16109c8565b34801561032f57600080fd5b5061034361033e366004613c5b565b6109d7565b6040516102ce9190613f68565b34801561035c57600080fd5b50610365610a7b565b6040516102ce9190613f0a565b34801561037e57600080fd5b5061039261038d36600461399f565b610a80565b6040516102ce969594939291906149a4565b3480156103b057600080fd5b50610365610adc565b3480156103c557600080fd5b506103d96103d43660046139e8565b610ae1565b6040516102ce9291906149ec565b3480156103f357600080fd5b50610365610dda565b6102f761040a3660046137d5565b610ddf565b34801561041b57600080fd5b5061034361042a366004613a92565b611212565b34801561043b57600080fd5b506102f761044a3660046136ff565b611501565b34801561045b57600080fd5b506104646115d3565b6040516102ce9190614871565b34801561047d57600080fd5b506102c16115f7565b34801561049257600080fd5b506103656104a13660046136ff565b61161b565b3480156104b257600080fd5b506102f76104c1366004613cda565b61163a565b3480156104d257600080fd5b506102f76104e1366004613bcf565b611982565b3480156104f257600080fd5b506102f7611a47565b34801561050757600080fd5b5061036561051636600461377e565b611af3565b34801561052757600080fd5b50610365611b1f565b34801561053c57600080fd5b506102f761054b3660046139bb565b611b24565b34801561055c57600080fd5b506102f761056b366004613c78565b611c76565b34801561057c57600080fd5b506102f761058b3660046137c3565b611d4d565b34801561059c57600080fd5b506102f76105ab366004613bb2565b611e4f565b3480156105bc57600080fd5b506102c1611f34565b3480156105d157600080fd5b50610365611f43565b3480156105e657600080fd5b506103656105f536600461399f565b611f48565b34801561060657600080fd5b506102f7610615366004613ad2565b611f5a565b34801561062657600080fd5b5061063a6106353660046139bb565b6123b6565b6040516102ce9190614806565b34801561065357600080fd5b506103656123c8565b34801561066857600080fd5b5061046461067736600461399f565b6123cd565b34801561068857600080fd5b5061069c610697366004613c09565b6123e3565b6040516102ce91906149fa565b3480156106b557600080fd5b506106c96106c4366004613c5b565b61248e565b6040516102ce9190613ee7565b3480156106e257600080fd5b506102c16106f1366004613c5b565b6124ae565b34801561070257600080fd5b50610392610711366004613746565b6124d4565b34801561072257600080fd5b5061036561073136600461399f565b61253b565b34801561074257600080fd5b506102f7610751366004613c5b565b61254d565b34801561076257600080fd5b506102f7610771366004613bb2565b61260b565b34801561078257600080fd5b506102f76107913660046136ff565b6126e4565b3480156107a257600080fd5b506102f76107b13660046136ff565b6127b6565b3480156107c257600080fd5b506103656128b9565b3480156107d757600080fd5b506103656107e63660046136ff565b6128bf565b3480156107f757600080fd5b506102f7610806366004613b42565b6128d1565b7f000000000000000000000000000000000000000000000000000000000000000081565b60026000541415610887576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b60026000556001600160a01b0382166108bb5760405162461bcd60e51b81526004016108b290614143565b60405180910390fd5b336000908152600460205260409020546108d59082612bc6565b336000908152600460205260408082209290925590516001600160a01b03841690839061090190613e4c565b60006040518083038185875af1925050503d806000811461093e576040519150601f19603f3d011682016040523d82523d6000602084013e610943565b606091505b50509050806109645760405162461bcd60e51b81526004016108b2906140c7565b826001600160a01b0316336001600160a01b03167f3bfd26201736b5cb14a562ab3cfc2bef76901726e3a78483d6288af47131e1d9846040516109a79190613f0a565b60405180910390a35050600160005550565b6002546001600160a01b031681565b6003546001600160a01b031681565b60086020908152600092835260408084208252918352918190208054825160026001831615610100026000190190921691909104601f810185900485028201850190935282815292909190830182828015610a735780601f10610a4857610100808354040283529160200191610a73565b820191906000526020600020905b815481529060010190602001808311610a5657829003601f168201915b505050505081565b600381565b6007602052600090815260409020805460019091015461ffff808316926001600160401b036201000082048116936001600160a01b03600160501b8404811694600160f01b9094049093169291811691600160401b9091041686565b600681565b6000806000610af08a8a612c23565b905060608415610b395785858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929350610bea92505050565b61ffff808c166000908152600860209081526040808320606087015190941683529281529082902080548351601f600260001961010060018616150201909316929092049182018490048402810184019094528084529091830182828015610be25780601f10610bb757610100808354040283529160200191610be2565b820191906000526020600020905b815481529060010190602001808311610bc557829003601f168201915b505050505090505b600082604001516001600160a01b031663c03f15298d85606001518e8e8e9050876040518663ffffffff1660e01b8152600401610c2b959493929190614933565b60206040518083038186803b158015610c4357600080fd5b505afa158015610c57573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c7b9190613d6f565b905060008b905060008460a001516001600160a01b0316635553fb8e8f87606001518860800151866040518563ffffffff1660e01b8152600401610cc2949392919061496f565b60206040518083038186803b158015610cda57600080fd5b505afa158015610cee573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d129190613d6f565b600354604051635cbbbd7560e01b81529192506000916001600160a01b0390911690635cbbbd7590610d4c908e9088908790600401613ef2565b60206040518083038186803b158015610d6457600080fd5b505afa158015610d78573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d9c9190613d6f565b90508a610dac5780975087610db1565b809650865b50610dc682610dc08a87612d9b565b90612d9b565b975050505050505097509795505050505050565b600281565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163314610e275760405162461bcd60e51b81526004016108b290614653565b61ffff89166000908152600e60205260409020548b908a90610e5b5760405162461bcd60e51b81526004016108b290614015565b61ffff81166000908152600c6020526040812054606091908015801590610e845750601481018c145b610ea05760405162461bcd60e51b81526004016108b2906146d8565b6000808e8e8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050505083810160140151925090506001600160a01b0387811690831614610f0f5760405162461bcd60e51b81526004016108b2906143d4565b8e8e6000908592610f2293929190614a31565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604051636fe7b67360e01b8152929750506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691636fe7b6739150610fa99089908b908690600401614880565b602060405180830381600087803b158015610fc357600080fd5b505af1158015610fd7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ffb9190613da3565b935050505060008a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052509394506110479250879150889050612c23565b9050600061108f86838986518d8d8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250612df592505050565b9050600061109e87848a612f98565b905060006110ae83838b8f613039565b905060006110c082610dc08686612d9b565b9050348111156110e25760405162461bcd60e51b81526004016108b2906140fe565b60006110ee3483612bc6565b905080156111745760008f6001600160a01b03168260405161110f90613e4c565b60006040518083038185875af1925050503d806000811461114c576040519150601f19603f3d011682016040523d82523d6000602084013e611151565b606091505b50509050806111725760405162461bcd60e51b81526004016108b290614227565b505b6000887f00000000000000000000000000000000000000000000000000000000000000008d8d8d8c6040516020016111b196959493929190613e4f565b60405160208183030381529060405290507fe9bded5f24a4168e4f3bf44e00298c993b22376aad8c58c7dda9718a54cbea82816040516111f19190613f68565b60405180910390a15050505050505050505050505050505050505050505050565b6001600160a01b038216600090815260066020908152604080832061ffff87168452909152902060609060018314156112a657805461ffff166112905761ffff80861660009081526007602090815260409182902054915161127993929092169101614871565b6040516020818303038152906040529150506114fa565b80546040516112799161ffff1690602001614871565b60028314156113195780546201000090046001600160401b03166112f85761ffff8516600090815260076020908152604091829020549151611279926201000090046001600160401b031691016149fa565b8054604051611279916201000090046001600160401b0316906020016149fa565b600383141561138f578054600160501b90046001600160a01b031661136d5761ffff851660009081526007602090815260409182902054915161127992600160501b90046001600160a01b03169101613ed3565b805460405161127991600160501b90046001600160a01b031690602001613ed3565b60048314156113f7578054600160f01b900461ffff166113da5761ffff80861660009081526007602090815260409182902054915161127993600160f01b9093049092169101614871565b805460405161127991600160f01b900461ffff1690602001614871565b60058314156114615760018101546001600160401b03166114435761ffff8516600090815260076020908152604091829020600101549151611279926001600160401b031691016149fa565b6001810154604051611279916001600160401b0316906020016149fa565b60068314156114e0576001810154600160401b90046001600160a01b03166114bb5761ffff851660009081526007602090815260409182902060010154915161127992600160401b90046001600160a01b03169101613ed3565b600181015460405161127991600160401b90046001600160a01b031690602001613ed3565b60405162461bcd60e51b81526004016108b290614090565b505b9392505050565b61150961318a565b6001600160a01b031661151a611f34565b6001600160a01b031614611563576040805162461bcd60e51b81526020600482018190526024820152600080516020614ae9833981519152604482015290519081900360640190fd5b6001600160a01b0381166115895760405162461bcd60e51b81526004016108b290614188565b600280546001600160a01b0319166001600160a01b0383169081179091556040517f33d644987381deff4408951d55afa136f124e22a7810b163b2aaa3ebef770f6490600090a250565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b6001600160a01b0381166000908152600460205260409020545b919050565b61164261318a565b6001600160a01b0316611653611f34565b6001600160a01b03161461169c576040805162461bcd60e51b81526020600482018190526024820152600080516020614ae9833981519152604482015290519081900360640190fd5b61ffff8088166000908152600a60205260409020548116908716118015906116c8575060008661ffff16115b6116e45760405162461bcd60e51b81526004016108b2906144f4565b6000856001600160401b03161161170d5760405162461bcd60e51b81526004016108b290614770565b6001600160a01b0384166117335760405162461bcd60e51b81526004016108b2906141e5565b61ffff8088166000908152600b602090815260408083209387168352929052205460ff166117735760405162461bcd60e51b81526004016108b290613fcf565b6000826001600160401b03161161179c5760405162461bcd60e51b81526004016108b29061468a565b6001600160a01b0381166117c25760405162461bcd60e51b81526004016108b2906142e0565b6040518060c001604052808761ffff168152602001866001600160401b03168152602001856001600160a01b031681526020018461ffff168152602001836001600160401b03168152602001826001600160a01b0316815250600760008961ffff1661ffff16815260200190815260200160002060008201518160000160006101000a81548161ffff021916908361ffff16021790555060208201518160000160026101000a8154816001600160401b0302191690836001600160401b03160217905550604082015181600001600a6101000a8154816001600160a01b0302191690836001600160a01b03160217905550606082015181600001601e6101000a81548161ffff021916908361ffff16021790555060808201518160010160006101000a8154816001600160401b0302191690836001600160401b0316021790555060a08201518160010160086101000a8154816001600160a01b0302191690836001600160a01b031602179055509050508661ffff167f5a76432853a0871c4e780def7f3ffc7912339b53f022ac31127fe5ff84a36fa1878787878787604051611971969594939291906149a4565b60405180910390a250505050505050565b336000908152600d6020908152604080832061ffff88168452825280832086845282528083208484529091529020548281106119d05760405162461bcd60e51b81526004016108b290614454565b336000818152600d6020908152604080832061ffff8a1680855290835281842089855283528184208785529092529182902086905590517f74bbc026808dcba59692d6a8bb20596849ca718e10e2432c6cdf48af865bc5d990611a3890889087908990613f13565b60405180910390a35050505050565b611a4f61318a565b6001600160a01b0316611a60611f34565b6001600160a01b031614611aa9576040805162461bcd60e51b81526020600482018190526024820152600080516020614ae9833981519152604482015290519081900360640190fd5b6001546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600180546001600160a01b0319169055565b600d60209081526000948552604080862082529385528385208152918452828420909152825290205481565b600481565b611b2c61318a565b6001600160a01b0316611b3d611f34565b6001600160a01b031614611b86576040805162461bcd60e51b81526020600482018190526024820152600080516020614ae9833981519152604482015290519081900360640190fd5b6001600160a01b038116611bac5760405162461bcd60e51b81526004016108b29061440b565b61ffff8083166000908152600a60205260409020548116908110611be25760405162461bcd60e51b81526004016108b290614611565b61ffff8381166000818152600a60209081526040808320805461ffff191660019790970195861696871790556009825280832095835294905283902080546001600160a01b0319166001600160a01b03861617905591519091907f802d55279d51813cb7a9a98e8fd2d7bec5346cb830901c11b85d1650cb857e9a90611c69908590613ed3565b60405180910390a2505050565b611c7e61318a565b6001600160a01b0316611c8f611f34565b6001600160a01b031614611cd8576040805162461bcd60e51b81526020600482018190526024820152600080516020614ae9833981519152604482015290519081900360640190fd5b61ffff8085166000908152600860209081526040808320938716835292905220611d03908383613508565b508261ffff168461ffff167f4a5695eee2a74d548d5f5c485a3de99ace99e3b664c8e30a90f49be6ebb549328484604051611d3f929190613f54565b60405180910390a350505050565b60026000541415611da5576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b60026000556003546001600160a01b03163314611dd45760405162461bcd60e51b81526004016108b290614059565b600554611de19082612bc6565b600555600254611dfb906001600160a01b0316838361318e565b816001600160a01b0316336001600160a01b03167f3a20c8c3cd1848485ae8261a52398bb9b26f195b717306b3cf7f058e62c095d583604051611e3e9190613f0a565b60405180910390a350506001600055565b611e5761318a565b6001600160a01b0316611e68611f34565b6001600160a01b031614611eb1576040805162461bcd60e51b81526020600482018190526024820152600080516020614ae9833981519152604482015290519081900360640190fd5b61ffff82166000908152600c602052604090205415611ee25760405162461bcd60e51b81526004016108b290614720565b61ffff82166000818152600c602052604090819020839055517f0611bb2107e385b79ec826fff8ecc1c1248a7aae3c875c96668f8cfbf173422090611f28908490613f0a565b60405180910390a25050565b6001546001600160a01b031690565b600581565b600c6020526000908152604090205481565b6000611f668888612c23565b60408101519091506001600160a01b03163314611f955760405162461bcd60e51b81526004016108b29061439d565b611f9d613594565b61ffff89166000908152600c602052604090205480611fce5760405162461bcd60e51b81526004016108b2906146d8565b60a08301516001600160a01b03166000908152600d6020908152604080832061ffff8e16845282528083208a845282528083208984529091529020548015801590612026575083602001516001600160401b03168110155b6120425760405162461bcd60e51b81526004016108b2906147bd565b61ffff808c1660009081526009602090815260408083208851909416835292905281902054905163b71e0f7160e01b81526001600160a01b0390911690819063b71e0f719061209b908b908b908b908990600401613f29565b600060405180830381600087803b1580156120b557600080fd5b505af11580156120c9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526120f191908101906138c4565b60a081015161ffff8e166000908152600e6020526040902054919550149150508015612120575060a082015115155b61213c5760405162461bcd60e51b81526004016108b290614321565b8961ffff16826000015161ffff16146121675760405162461bcd60e51b81526004016108b290614366565b808260800151511461218b5760405162461bcd60e51b81526004016108b290614544565b7f000000000000000000000000000000000000000000000000000000000000000061ffff16826020015161ffff16146121d65760405162461bcd60e51b81526004016108b2906144bd565b886001600160a01b031682606001516001600160a01b03161461220b5760405162461bcd60e51b81526004016108b2906142a9565b612214896131e5565b6122855781606001516001600160a01b0316826000015161ffff167fa2786598bd84ae4a299103996359e6cb4333404583256079dfc279386baf5832846080015185604001518660c001518051906020012060405161227593929190613fa1565b60405180910390a35050506123ad565b6000826080015183606001516040516020016122a2929190613e15565b604051602081830303815290604052905082606001516001600160a01b0316836000015161ffff167f2bd2d8a84b748439fd50d79a49502b4eb5faa25b864da6a9ab5c150704be9a4d856080015186604001518760c001518051906020012060405161231093929190613fa1565b60405180910390a37f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663c2fa48138c838d87604001518e8960c001516040518763ffffffff1660e01b8152600401612376969594939291906148d3565b600060405180830381600087803b15801561239057600080fd5b505af11580156123a4573d6000803e3d6000fd5b50505050505050505b50505050505050565b6123be6135d2565b6114fa8383612c23565b600181565b600a6020526000908152604090205461ffff1681565b60405163c533338f60e01b81526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063c533338f90612436908790879087906004016148b5565b60206040518083038186803b15801561244e57600080fd5b505afa158015612462573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124869190613da3565b949350505050565b600b60209081526000928352604080842090915290825290205460ff1681565b60096020908152600092835260408084209091529082529020546001600160a01b031681565b60066020908152600092835260408084209091529082529020805460019091015461ffff808316926001600160401b036201000082048116936001600160a01b03600160501b8404811694600160f01b9094049093169291811691600160401b9091041686565b600e6020526000908152604090205481565b61255561318a565b6001600160a01b0316612566611f34565b6001600160a01b0316146125af576040805162461bcd60e51b81526020600482018190526024820152600080516020614ae9833981519152604482015290519081900360640190fd5b61ffff8083166000818152600b602090815260408083209486168352939052829020805460ff1916600117905590517fec23bee6f88cfecebb09d6aaaed66f0ce110debc1f61117c8270a7116597df9a90611f28908490614871565b61261361318a565b6001600160a01b0316612624611f34565b6001600160a01b03161461266d576040805162461bcd60e51b81526020600482018190526024820152600080516020614ae9833981519152604482015290519081900360640190fd5b61ffff82166000908152600e60205260409020541561269e5760405162461bcd60e51b81526004016108b2906145d0565b61ffff82166000818152600e602052604090819020839055517f0dad975e1d2fbe771c95cdcc7be9a1e61181de7173abe0a32b8f8f83140873e590611f28908490613f0a565b6126ec61318a565b6001600160a01b03166126fd611f34565b6001600160a01b031614612746576040805162461bcd60e51b81526020600482018190526024820152600080516020614ae9833981519152604482015290519081900360640190fd5b6001600160a01b03811661276c5760405162461bcd60e51b81526004016108b290614586565b600380546001600160a01b0319166001600160a01b0383169081179091556040517fcb7ef3e545f5cdb893f5c568ba710fe08f336375a2d9fd66e161033f8fc09ef390600090a250565b6127be61318a565b6001600160a01b03166127cf611f34565b6001600160a01b031614612818576040805162461bcd60e51b81526020600482018190526024820152600080516020614ae9833981519152604482015290519081900360640190fd5b6001600160a01b03811661285d5760405162461bcd60e51b8152600401808060200182810382526026815260200180614ac36026913960400191505060405180910390fd5b6001546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600180546001600160a01b0319166001600160a01b0392909216919091179055565b60055481565b60046020526000908152604090205481565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031633146129195760405162461bcd60e51b81526004016108b290614653565b6001600160a01b038416600090815260066020908152604080832061ffff89168452909152902060018414156129a95760006129578385018561399f565b61ffff8089166000908152600a602052604090205491925090811690821611156129935760405162461bcd60e51b81526004016108b2906144f4565b815461ffff191661ffff91909116178155612b7a565b60028414156129ea5760006129c083850185613d87565b82546001600160401b03909116620100000269ffffffffffffffff00001990911617825550612b7a565b6003841415612a41576000612a01838501856136ff565b82546001600160a01b03909116600160501b027fffff0000000000000000000000000000000000000000ffffffffffffffffffff90911617825550612b7a565b6004841415612ae0576000612a588385018561399f565b61ffff8089166000908152600b602090815260408083209385168352929052205490915060ff1680612a8c575061ffff8116155b612aa85760405162461bcd60e51b81526004016108b290613fcf565b815461ffff909116600160f01b027dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff909116178155612b7a565b6005841415612b20576000612af783850185613d87565b60018301805467ffffffffffffffff19166001600160401b039290921691909117905550612b7a565b60068414156114e0576000612b37838501856136ff565b6001830180546001600160a01b03909216600160401b027fffffffff0000000000000000000000000000000000000000ffffffffffffffff909216919091179055505b83856001600160a01b03167ffc01bf86212a14151d51d1be5c2ac64d67d5ec823dfc6f53298d7ce3f3d3d2528585604051612bb6929190613f54565b60405180910390a3505050505050565b600082821115612c1d576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b612c2b6135d2565b6001600160a01b03808316600090815260066020908152604080832061ffff808916808652918452828520835160c081018552815480841682526001600160401b03620100008204811683890152600160501b82048a1683880152600160f01b909104841660608301526001909201549182166080820152600160401b90910490961660a087015290845260079092529091208251909116612cd057805461ffff1682525b60208201516001600160401b0316612cf95780546201000090046001600160401b031660208301525b60408201516001600160a01b0316612d23578054600160501b90046001600160a01b031660408301525b606082015161ffff16612d43578054600160f01b900461ffff1660608301525b60808201516001600160401b0316612d695760018101546001600160401b031660808301525b60a08201516001600160a01b03166114f85760010154600160401b90046001600160a01b031660a08201529392505050565b6000828201838110156114fa576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000815160001415612eb25761ffff808716600090815260086020908152604080832060608a015190941683529281529082902080548351601f600260001961010060018616150201909316929092049182018490048402810184019094528084529091830182828015612eaa5780601f10612e7f57610100808354040283529160200191612eaa565b820191906000526020600020905b815481529060010190602001808311612e8d57829003601f168201915b505050505091505b60408086015160608701519151635886ea6560e01b8152909182916001600160a01b03831691635886ea6591612ef2918c918b908b908b90600401614933565b602060405180830381600087803b158015612f0c57600080fd5b505af1158015612f20573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612f449190613d6f565b9250612f5082846131eb565b7fb0c632f55f1e1b3b2c3d82f41ee4716bb4c00f0f5d84cdafc141581bb8757a4f848860600151604051612f85929190613f7b565b60405180910390a1505095945050505050565b60a08201516060830151608084015160405163c5e193cd60e01b8152600093926001600160a01b0384169263c5e193cd92612fdb928a929091899060040161496f565b602060405180830381600087803b158015612ff557600080fd5b505af1158015613009573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061302d9190613d6f565b91506114f881836131eb565b6000806001600160a01b038316158061305b57506002546001600160a01b0316155b600354604051635cbbbd7560e01b81529192506000916001600160a01b0390911690635cbbbd7590613096908515908b908b90600401613ef2565b60206040518083038186803b1580156130ae57600080fd5b505afa1580156130c2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130e69190613d6f565b90508015613180578115613113576003546001600160a01b031661310a81836131eb565b81935050613180565b846001600160a01b0316846001600160a01b0316148061313b57506001600160a01b03841632145b6131575760405162461bcd60e51b81526004016108b29061425e565b60025461316f906001600160a01b031685308461322e565b60055461317c9082612d9b565b6005555b5050949350505050565b3390565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b1790526131e090849061328e565b505050565b3b151590565b6001600160a01b03821660009081526004602052604090205461320e9082612d9b565b6001600160a01b0390921660009081526004602052604090209190915550565b604080516001600160a01b0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b17905261328890859061328e565b50505050565b60006132e3826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b031661333f9092919063ffffffff16565b8051909150156131e05780806020019051602081101561330257600080fd5b50516131e05760405162461bcd60e51b815260040180806020018281038252602a815260200180614b09602a913960400191505060405180910390fd5b6060612486848460008585613353856131e5565b6133a4576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b600080866001600160a01b031685876040518082805190602001908083835b602083106133e25780518252601f1990920191602091820191016133c3565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114613444576040519150601f19603f3d011682016040523d82523d6000602084013e613449565b606091505b5091509150613459828286613464565b979650505050505050565b606083156134735750816114fa565b8251156134835782518084602001fd5b8160405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156134cd5781810151838201526020016134b5565b50505050905090810190601f1680156134fa5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b828054600181600116156101000203166002900490600052602060002090601f01602090048101928261353e5760008555613584565b82601f106135575782800160ff19823516178555613584565b82800160010185558215613584579182015b82811115613584578235825591602001919060010190613569565b50613590929150613607565b5090565b6040805160e08101825260008082526020820181905291810182905260608082018390526080820181905260a082019290925260c081019190915290565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a081019190915290565b5b808211156135905760008155600101613608565b803561163581614a85565b805161163581614a85565b60008083601f840112613643578182fd5b5081356001600160401b03811115613659578182fd5b60208301915083602082850101111561367157600080fd5b9250929050565b600082601f830112613688578081fd5b81516001600160401b0381111561369b57fe5b6136ae601f8201601f1916602001614a0e565b8181528460208386010111156136c2578283fd5b612486826020830160208701614a59565b803561163581614a9d565b805161163581614a9d565b803561163581614aad565b805161163581614aad565b600060208284031215613710578081fd5b81356114fa81614a85565b6000806040838503121561372d578081fd5b823561373881614a85565b946020939093013593505050565b60008060408385031215613758578182fd5b823561376381614a85565b9150602083013561377381614a9d565b809150509250929050565b60008060008060808587031215613793578182fd5b843561379e81614a85565b935060208501356137ae81614a9d565b93969395505050506040820135916060013590565b6000806040838503121561372d578182fd5b60008060008060008060008060008060006101008c8e0312156137f6578687fd5b6137ff8c61361c565b9a5061380d60208d016136e9565b995061381b60408d016136d3565b98506001600160401b038060608e01351115613835578788fd5b6138458e60608f01358f01613632565b909950975060808d013581101561385a578687fd5b61386a8e60808f01358f01613632565b909750955061387b60a08e0161361c565b945061388960c08e0161361c565b93508060e08e0135111561389b578283fd5b506138ac8d60e08e01358e01613632565b81935080925050509295989b509295989b9093969950565b6000602082840312156138d5578081fd5b81516001600160401b03808211156138eb578283fd5b9083019060e082860312156138fe578283fd5b61390860e0614a0e565b613911836136de565b815261391f602084016136de565b6020820152613930604084016136f4565b604082015261394160608401613627565b6060820152608083015182811115613957578485fd5b61396387828601613678565b60808301525060a083015160a082015260c083015182811115613984578485fd5b61399087828601613678565b60c08301525095945050505050565b6000602082840312156139b0578081fd5b81356114fa81614a9d565b600080604083850312156139cd578182fd5b82356139d881614a9d565b9150602083013561377381614a85565b600080600080600080600060a0888a031215613a02578081fd5b8735613a0d81614a9d565b96506020880135613a1d81614a85565b955060408801356001600160401b0380821115613a38578283fd5b613a448b838c01613632565b909750955060608a013591508115158214613a5d578283fd5b90935060808901359080821115613a72578283fd5b50613a7f8a828b01613632565b989b979a50959850939692959293505050565b600080600060608486031215613aa6578081fd5b8335613ab181614a9d565b92506020840135613ac181614a85565b929592945050506040919091013590565b600080600080600080600060c0888a031215613aec578081fd5b8735613af781614a9d565b96506020880135613b0781614a85565b955060408801359450606088013593506080880135925060a08801356001600160401b03811115613b36578182fd5b613a7f8a828b01613632565b600080600080600060808688031215613b59578283fd5b8535613b6481614a9d565b94506020860135613b7481614a85565b93506040860135925060608601356001600160401b03811115613b95578182fd5b613ba188828901613632565b969995985093965092949392505050565b60008060408385031215613bc4578182fd5b823561373881614a9d565b60008060008060808587031215613be4578182fd5b8435613bef81614a9d565b966020860135965060408601359560600135945092505050565b600080600060408486031215613c1d578081fd5b8335613c2881614a9d565b925060208401356001600160401b03811115613c42578182fd5b613c4e86828701613632565b9497909650939450505050565b60008060408385031215613c6d578182fd5b823561376381614a9d565b60008060008060608587031215613c8d578182fd5b8435613c9881614a9d565b93506020850135613ca881614a9d565b925060408501356001600160401b03811115613cc2578283fd5b613cce87828801613632565b95989497509550505050565b600080600080600080600060e0888a031215613cf4578081fd5b8735613cff81614a9d565b96506020880135613d0f81614a9d565b95506040880135613d1f81614aad565b94506060880135613d2f81614a85565b93506080880135613d3f81614a9d565b925060a0880135613d4f81614aad565b915060c0880135613d5f81614a85565b8091505092959891949750929550565b600060208284031215613d80578081fd5b5051919050565b600060208284031215613d98578081fd5b81356114fa81614aad565b600060208284031215613db4578081fd5b81516114fa81614aad565b60008284528282602086013780602084860101526020601f19601f85011685010190509392505050565b60008151808452613e01816020860160208601614a59565b601f01601f19169290920160200192915050565b60008351613e27818460208801614a59565b60609390931b6bffffffffffffffffffffffff19169190920190815260140192915050565b90565b60006001600160401b0360c01b8860c01b16825261ffff60f01b808860f01b1660088401526bffffffffffffffffffffffff198760601b16600a840152808660f01b16601e840152508351613eab816020850160208801614a59565b80830190508351613ec3816020840160208801614a59565b0160200198975050505050505050565b6001600160a01b0391909116815260200190565b901515815260200190565b92151583526020830191909152604082015260600190565b90815260200190565b9283526020830191909152604082015260600190565b600085825260606020830152613f43606083018587613dbf565b905082604083015295945050505050565b600060208252612486602083018486613dbf565b6000602082526114fa6020830184613de9565b600060408252613f8e6040830185613de9565b905061ffff831660208301529392505050565b600060608252613fb46060830186613de9565b6001600160401b039490941660208301525060400152919050565b60208082526026908201527f4c617965725a65726f3a20696e76616c6964206f7574626f756e642070726f6f60408201526566207479706560d01b606082015260800190565b60208082526024908201527f4c617965725a65726f3a20647374436861696e496420646f6573206e6f7420656040820152631e1a5cdd60e21b606082015260800190565b60208082526018908201527f4c617965725a65726f3a206f6e6c792074726561737572790000000000000000604082015260600190565b6020808252601e908201527f4c617965725a65726f3a20496e76616c696420636f6e66696720747970650000604082015260600190565b6020808252601a908201527f4c617965725a65726f3a207769746864726177206661696c6564000000000000604082015260600190565b60208082526025908201527f4c617965725a65726f3a206e6f7420656e6f756768206e617469766520666f72604082015264206665657360d81b606082015260800190565b60208082526025908201527f4c617965725a65726f3a205f746f2063616e6e6f74206265207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526031908201527f4c617965725a65726f3a205f6c617965725a65726f546f6b656e2063616e6e6f60408201527f74206265207a65726f2061646472657373000000000000000000000000000000606082015260800190565b60208082526022908201527f4c617965725a65726f3a20696e76616c69642072656c61796572206164647265604082015261737360f01b606082015260800190565b6020808252601b908201527f4c617965725a65726f3a206661696c656420746f20726566756e640000000000604082015260600190565b6020808252602b908201527f4c617965725a65726f3a206d75737420626520706169642062792073656e646560408201526a391037b91037b934b3b4b760a91b606082015260800190565b6020808252601d908201527f4c617965725a65726f3a20696e76616c69642064737441646472657373000000604082015260600190565b60208082526021908201527f4c617965725a65726f3a20696e76616c6964206f7261636c65206164647265736040820152607360f81b606082015260800190565b60208082526025908201527f4c617965725a65726f3a20696e76616c6964205f7061636b65742e756c6e4164604082015264647265737360d81b606082015260800190565b6020808252601e908201527f4c617965725a65726f3a20696e76616c696420737263436861696e2049640000604082015260600190565b6020808252601a908201527f4c617965725a65726f3a20696e76616c69642072656c61796572000000000000604082015260600190565b6020808252601a908201527f4c617965725a65726f3a2077726f6e6720706174682064617461000000000000604082015260600190565b60208082526029908201527f4c617965725a65726f3a206c6962726172792063616e6e6f74206265207a65726040820152686f206164647265737360b81b606082015260800190565b60208082526043908201527f4c617965725a65726f3a206f7261636c6520646174612063616e206f6e6c792060408201527f75706461746520696620697420686173206d6f726520636f6e6669726d6174696060820152626f6e7360e81b608082015260a00190565b6020808252601e908201527f4c617965725a65726f3a20696e76616c696420647374436861696e2049640000604082015260600190565b60208082526030908201527f4c617965725a65726f3a20696e76616c696420696e626f756e642070726f6f6660408201526f103634b13930b93c903b32b939b4b7b760811b606082015260800190565b60208082526022908201527f4c617965725a65726f3a20696e76616c696420737263416464726573732073696040820152617a6560f01b606082015260800190565b6020808252602a908201527f4c617965725a65726f3a2074726561737572792063616e6e6f74206265207a65604082015269726f206164647265737360b01b606082015260800190565b60208082526021908201527f4c617965725a65726f3a2072656d6f746520756c6e20616c72656164792073656040820152601d60fa1b606082015260800190565b60208082526022908201527f4c617965725a65726f3a2063616e206e6f7420616464206e6577206c69627261604082015261727960f01b606082015260800190565b60208082526018908201527f4c617965725a65726f3a206f6e6c7920656e64706f696e740000000000000000604082015260600190565b6020808252602e908201527f4c617965725a65726f3a20696e76616c6964206f7574626f756e6420626c6f6360408201526d359031b7b73334b936b0ba34b7b760911b606082015260800190565b60208082526028908201527f4c617965725a65726f3a20696e636f72726563742072656d6f746520616464726040820152676573732073697a6560c01b606082015260800190565b60208082526030908201527f4c617965725a65726f3a2072656d6f746520636861696e20616464726573732060408201526f1cda5e9948185b1c9958591e481cd95d60821b606082015260800190565b6020808252602d908201527f4c617965725a65726f3a20696e76616c696420696e626f756e6420626c6f636b60408201526c1031b7b73334b936b0ba34b7b760991b606082015260800190565b60208082526029908201527f4c617965725a65726f3a206e6f7420656e6f75676820626c6f636b20636f6e6660408201526869726d6174696f6e7360b81b606082015260800190565b600060c08201905061ffff80845116835260208401516001600160401b038082166020860152604086015191506001600160a01b0380831660408701528360608801511660608701528160808801511660808701528060a08801511660a08701525050505092915050565b61ffff91909116815260200190565b600061ffff851682526001600160a01b0384166020830152606060408301526148ac6060830184613de9565b95945050505050565b600061ffff85168252604060208301526148ac604083018486613dbf565b600061ffff8816825260c060208301526148f060c0830188613de9565b6001600160a01b03871660408401526001600160401b038616606084015284608084015282810360a08401526149268185613de9565b9998505050505050505050565b600061ffff80881683528087166020840152506001600160a01b038516604083015283606083015260a0608083015261345960a0830184613de9565b61ffff94851681529290931660208301526001600160401b031660408201526001600160a01b03909116606082015260800190565b61ffff96871681526001600160401b0395861660208201526001600160a01b03948516604082015292909516606083015290921660808301529190911660a082015260c00190565b918252602082015260400190565b6001600160401b0391909116815260200190565b6040518181016001600160401b0381118282101715614a2957fe5b604052919050565b60008085851115614a40578182fd5b83861115614a4c578182fd5b5050820193919092039150565b60005b83811015614a74578181015183820152602001614a5c565b838111156132885750506000910152565b6001600160a01b0381168114614a9a57600080fd5b50565b61ffff81168114614a9a57600080fd5b6001600160401b0381168114614a9a57600080fdfe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573734f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725361666545524332303a204552433230206f7065726174696f6e20646964206e6f742073756363656564a2646970667358221220b4788ab87c68e1ee06cf21fe087be1337979d85196e78caf4ac53ab1b2ef705464736f6c63430007060033",
|
|
1419
|
+
"bytecode": "0x60e06040523480156200001157600080fd5b50604051620055423803806200554283398101604081905262000034916200013f565b60016000908155620000456200011e565b600180546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506001600160a01b038316620000c55760405162461bcd60e51b8152600401620000bc9062000191565b60405180910390fd5b6001600160a01b038216620000ee5760405162461bcd60e51b8152600401620000bc90620001db565b60f01b6001600160f01b03191660a052606091821b6001600160601b0319908116608052911b1660c0526200022a565b3390565b80516001600160a01b03811681146200013a57600080fd5b919050565b60008060006060848603121562000154578283fd5b6200015f8462000122565b92506200016f6020850162000122565b9150604084015161ffff8116811462000186578182fd5b809150509250925092565b6020808252602a908201527f4c617965725a65726f3a20656e64706f696e742063616e6e6f74206265207a65604082015269726f206164647265737360b01b606082015260800190565b6020808252602f908201527f4c617965725a65726f3a206e6f6e6365436f6e74726163742063616e6e6f742060408201526e6265207a65726f206164647265737360881b606082015260800190565b60805160601c60a05160f01c60c05160601c6152bf620002836000398061084d5280611045528061267852508061124f528061175052806123ef525080610e9e5280611774528061257c5280612c0c52506152bf6000f3fe6080604052600436106102e75760003560e01c80638317814a11610184578063d543c774116100d6578063ed28580a1161008a578063f47a5feb11610064578063f47a5feb146107f6578063f58589a21461080b578063f8e1734c1461082b576102e7565b8063ed28580a14610796578063f0f44260146107b6578063f2fde38b146107d6576102e7565b8063ddfdef5a116100bb578063ddfdef5a14610736578063ea216c2114610756578063eb0d4c3114610776576102e7565b8063d543c774146106e9578063db00719b14610716576102e7565b8063959f594311610138578063b77d22ad11610112578063b77d22ad14610687578063b8e7e3e01461069c578063b9a99bed146106bc576102e7565b8063959f59431461061a578063987fa2d51461063a578063a46622221461065a576102e7565b806387078f9f1161016957806387078f9f146105d05780638da5cb5b146105f0578063904d3b8d14610605576102e7565b80638317814a146105905780638525b711146105b0576102e7565b806352d2871f1161023d5780636a14ac82116101f1578063759c5b3b116101cb578063759c5b3b1461053b5780638140666e1461055b5780638207f79d14610570576102e7565b80636a14ac82146104e6578063704316e514610506578063715018a614610526576102e7565b80635b056da5116102225780635b056da51461048f5780635e280f11146104b157806369412bfa146104c6576102e7565b806352d2871f1461044f57806352d3b5001461046f576102e7565b80632cfacb061161029f57806340a7bb101161027957806340a7bb10146103f957806349148c37146104275780634d3a0f7c1461043c576102e7565b80632cfacb06146103905780632f813464146103b257806331bd2430146103e4576102e7565b806307b9ca7c116102d057806307b9ca7c1461033957806318da00111461034e5780632a819bbf14610363576102e7565b806302bd9743146102ec57806307b18bde14610317575b600080fd5b3480156102f857600080fd5b5061030161084b565b60405161030e919061448c565b60405180910390f35b34801561032357600080fd5b50610337610332366004613c3a565b61086f565b005b34801561034557600080fd5b506103016109f9565b34801561035a57600080fd5b50610301610a08565b34801561036f57600080fd5b5061038361037e366004614180565b610a17565b60405161030e9190614521565b34801561039c57600080fd5b506103a5610ad9565b60405161030e91906144c3565b3480156103be57600080fd5b506103d26103cd366004613ec0565b610ade565b60405161030e96959493929190615117565b3480156103f057600080fd5b506103a5610b62565b34801561040557600080fd5b50610419610414366004613f09565b610b67565b60405161030e929190615160565b34801561043357600080fd5b506103a5610e97565b61033761044a366004613cf4565b610e9c565b34801561045b57600080fd5b5061038361046a366004613fb4565b6112e8565b34801561047b57600080fd5b5061033761048a366004613c1e565b611652565b34801561049b57600080fd5b506104a461174e565b60405161030e9190614fe2565b3480156104bd57600080fd5b50610301611772565b3480156104d257600080fd5b506103a56104e1366004613c1e565b611796565b3480156104f257600080fd5b50610337610501366004614200565b6117b5565b34801561051257600080fd5b506103376105213660046140f3565b611b17565b34801561053257600080fd5b50610337611bdc565b34801561054757600080fd5b506103a5610556366004613c9d565b611cb2565b34801561056757600080fd5b506103a5611cde565b34801561057c57600080fd5b5061033761058b366004613edc565b611ce3565b34801561059c57600080fd5b506103376105ab36600461419d565b611e7c565b3480156105bc57600080fd5b506103376105cb366004613ce2565b611f65565b3480156105dc57600080fd5b506103376105eb3660046140d6565b612067565b3480156105fc57600080fd5b5061030161215e565b34801561061157600080fd5b506103a561216d565b34801561062657600080fd5b506103a5610635366004613ec0565b612172565b34801561064657600080fd5b50610337610655366004613ff4565b612184565b34801561066657600080fd5b5061067a610675366004613edc565b612618565b60405161030e9190614f76565b34801561069357600080fd5b506103a561262a565b3480156106a857600080fd5b506104a46106b7366004613ec0565b61262f565b3480156106c857600080fd5b506106dc6106d736600461412d565b612645565b60405161030e919061516e565b3480156106f557600080fd5b50610709610704366004614180565b612709565b60405161030e91906144a0565b34801561072257600080fd5b50610301610731366004614180565b612729565b34801561074257600080fd5b506103d2610751366004613c65565b61274f565b34801561076257600080fd5b506103a5610771366004613ec0565b6127de565b34801561078257600080fd5b50610337610791366004614180565b6127f0565b3480156107a257600080fd5b506103376107b13660046140d6565b6128de565b3480156107c257600080fd5b506103376107d1366004613c1e565b6129c9565b3480156107e257600080fd5b506103376107f1366004613c1e565b612ac5565b34801561080257600080fd5b506103a5612bf2565b34801561081757600080fd5b506103a5610826366004613c1e565b612bf8565b34801561083757600080fd5b50610337610846366004614065565b612c0a565b7f000000000000000000000000000000000000000000000000000000000000000081565b600260005414156108c7576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b60026000556001600160a01b0382166108fb5760405162461bcd60e51b81526004016108f290614745565b60405180910390fd5b336000908152600460205260409020546109159082612f71565b336000908152600460205260408082209290925590516001600160a01b038416908390610941906143c1565b60006040518083038185875af1925050503d806000811461097e576040519150601f19603f3d011682016040523d82523d6000602084013e610983565b606091505b50509050806109a45760405162461bcd60e51b81526004016108f2906146b1565b826001600160a01b0316336001600160a01b03167f3bfd26201736b5cb14a562ab3cfc2bef76901726e3a78483d6288af47131e1d9846040516109e791906144c3565b60405180910390a35050600160005550565b6002546001600160a01b031681565b6003546001600160a01b031681565b60086020908152600092835260408084208252918352918190208054825160026001831615610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0190921691909104601f810185900485028201850190935282815292909190830182828015610ad15780601f10610aa657610100808354040283529160200191610ad1565b820191906000526020600020905b815481529060010190602001808311610ab457829003601f168201915b505050505081565b600381565b6007602052600090815260409020805460019091015461ffff8083169267ffffffffffffffff6201000082048116936001600160a01b036a010000000000000000000084048116947e010000000000000000000000000000000000000000000000000000000000009094049093169291811691680100000000000000009091041686565b600681565b6000806000610b768a8a612fce565b905060608415610bbf5785858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929350610c8e92505050565b61ffff808c166000908152600860209081526040808320606087015190941683529281529082902080548351601f60027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61010060018616150201909316929092049182018490048402810184019094528084529091830182828015610c865780601f10610c5b57610100808354040283529160200191610c86565b820191906000526020600020905b815481529060010190602001808311610c6957829003601f168201915b505050505090505b600082604001516001600160a01b031663c03f15298d85606001518e8e8e9050876040518663ffffffff1660e01b8152600401610ccf9594939291906150a5565b60206040518083038186803b158015610ce757600080fd5b505afa158015610cfb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d1f9190614295565b905060008b905060008460a001516001600160a01b0316635553fb8e8f87606001518860800151866040518563ffffffff1660e01b8152600401610d6694939291906150e1565b60206040518083038186803b158015610d7e57600080fd5b505afa158015610d92573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610db69190614295565b6003546040517f5cbbbd750000000000000000000000000000000000000000000000000000000081529192506000916001600160a01b0390911690635cbbbd7590610e09908e90889087906004016144ab565b60206040518083038186803b158015610e2157600080fd5b505afa158015610e35573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e599190614295565b90508a610e695780975087610e6e565b809650865b50610e8382610e7d8a87613199565b90613199565b975050505050505097509795505050505050565b600281565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163314610ee45760405162461bcd60e51b81526004016108f290614d6e565b61ffff89166000908152600e60205260409020548b908a90610f185760405162461bcd60e51b81526004016108f2906145e6565b61ffff81166000908152600c6020526040812054606091908015801590610f415750601481018c145b610f5d5760405162461bcd60e51b81526004016108f290614e02565b6000808e8e8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050505083810160140151925090506001600160a01b0387811690831614610fcc5760405162461bcd60e51b81526004016108f290614a4f565b8e8e6000908592610fdf939291906151a7565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040517f6fe7b673000000000000000000000000000000000000000000000000000000008152929750506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691636fe7b673915061107f9089908b908690600401614ff1565b602060405180830381600087803b15801561109957600080fd5b505af11580156110ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110d191906142c9565b935050505060008a8a8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525093945061111d9250879150889050612fce565b9050600061116586838986518d8d8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506131f392505050565b9050600061117487848a6133cd565b9050600061118483838b8f613487565b9050600061119682610e7d8686613199565b9050348111156111b85760405162461bcd60e51b81526004016108f2906146e8565b60006111c43483612f71565b9050801561124a5760008f6001600160a01b0316826040516111e5906143c1565b60006040518083038185875af1925050503d8060008114611222576040519150601f19603f3d011682016040523d82523d6000602084013e611227565b606091505b50509050806112485760405162461bcd60e51b81526004016108f29061485c565b505b6000887f00000000000000000000000000000000000000000000000000000000000000008d8d8d8c604051602001611287969594939291906143c4565b60405160208183030381529060405290507fe9bded5f24a4168e4f3bf44e00298c993b22376aad8c58c7dda9718a54cbea82816040516112c79190614521565b60405180910390a15050505050505050505050505050505050505050505050565b6001600160a01b038216600090815260066020908152604080832061ffff871684529091529020606090600183141561137c57805461ffff166113665761ffff80861660009081526007602090815260409182902054915161134f93929092169101614fe2565b60405160208183030381529060405291505061164b565b805460405161134f9161ffff1690602001614fe2565b60028314156113f257805462010000900467ffffffffffffffff166113d05761ffff851660009081526007602090815260409182902054915161134f9262010000900467ffffffffffffffff16910161516e565b805460405161134f9162010000900467ffffffffffffffff169060200161516e565b600383141561147d5780546a010000000000000000000090046001600160a01b03166114545761ffff851660009081526007602090815260409182902054915161134f926a010000000000000000000090046001600160a01b0316910161448c565b805460405161134f916a010000000000000000000090046001600160a01b03169060200161448c565b60048314156115365780547e01000000000000000000000000000000000000000000000000000000000000900461ffff166114fe5761ffff80861660009081526007602090815260409182902054915161134f937e010000000000000000000000000000000000000000000000000000000000009093049092169101614fe2565b805460405161134f917e01000000000000000000000000000000000000000000000000000000000000900461ffff1690602001614fe2565b60058314156115a357600181015467ffffffffffffffff166115845761ffff851660009081526007602090815260409182902060010154915161134f9267ffffffffffffffff16910161516e565b600181015460405161134f9167ffffffffffffffff169060200161516e565b60068314156116315760018101546801000000000000000090046001600160a01b03166116075761ffff851660009081526007602090815260409182902060010154915161134f926801000000000000000090046001600160a01b0316910161448c565b600181015460405161134f916801000000000000000090046001600160a01b03169060200161448c565b60405162461bcd60e51b81526004016108f29061467a565b505b9392505050565b61165a6135f1565b6001600160a01b031661166b61215e565b6001600160a01b0316146116c6576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b0381166116ec5760405162461bcd60e51b81526004016108f2906147a2565b600280547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0383169081179091556040517f33d644987381deff4408951d55afa136f124e22a7810b163b2aaa3ebef770f6490600090a250565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b6001600160a01b0381166000908152600460205260409020545b919050565b6117bd6135f1565b6001600160a01b03166117ce61215e565b6001600160a01b031614611829576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b61ffff8088166000908152600a6020526040902054811690871611801590611855575060008661ffff16115b6118715760405162461bcd60e51b81526004016108f290614b9d565b60008567ffffffffffffffff161161189b5760405162461bcd60e51b81526004016108f290614ebc565b6001600160a01b0384166118c15760405162461bcd60e51b81526004016108f2906147ff565b61ffff8088166000908152600b602090815260408083209387168352929052205460ff166119015760405162461bcd60e51b81526004016108f290614589565b60008267ffffffffffffffff161161192b5760405162461bcd60e51b81526004016108f290614da5565b6001600160a01b0381166119515760405162461bcd60e51b81526004016108f290614927565b6040518060c001604052808761ffff1681526020018667ffffffffffffffff168152602001856001600160a01b031681526020018461ffff1681526020018367ffffffffffffffff168152602001826001600160a01b0316815250600760008961ffff1661ffff16815260200190815260200160002060008201518160000160006101000a81548161ffff021916908361ffff16021790555060208201518160000160026101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550604082015181600001600a6101000a8154816001600160a01b0302191690836001600160a01b03160217905550606082015181600001601e6101000a81548161ffff021916908361ffff16021790555060808201518160010160006101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555060a08201518160010160086101000a8154816001600160a01b0302191690836001600160a01b031602179055509050508661ffff167f5a76432853a0871c4e780def7f3ffc7912339b53f022ac31127fe5ff84a36fa1878787878787604051611b0696959493929190615117565b60405180910390a250505050505050565b336000908152600d6020908152604080832061ffff8816845282528083208684528252808320848452909152902054828110611b655760405162461bcd60e51b81526004016108f290614ae3565b336000818152600d6020908152604080832061ffff8a1680855290835281842089855283528184208785529092529182902086905590517f74bbc026808dcba59692d6a8bb20596849ca718e10e2432c6cdf48af865bc5d990611bcd908890879089906144cc565b60405180910390a35050505050565b611be46135f1565b6001600160a01b0316611bf561215e565b6001600160a01b031614611c50576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600180547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b600d60209081526000948552604080862082529385528385208152918452828420909152825290205481565b600481565b611ceb6135f1565b6001600160a01b0316611cfc61215e565b6001600160a01b031614611d57576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b038116611d7d5760405162461bcd60e51b81526004016108f290614a86565b61ffff8083166000908152600a60205260409020548116908110611db35760405162461bcd60e51b81526004016108f290614d11565b61ffff8381166000818152600a6020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660019790970195861696871790556009825280832095835294905283902080547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b03861617905591519091907f802d55279d51813cb7a9a98e8fd2d7bec5346cb830901c11b85d1650cb857e9a90611e6f90859061448c565b60405180910390a2505050565b611e846135f1565b6001600160a01b0316611e9561215e565b6001600160a01b031614611ef0576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b61ffff8085166000908152600860209081526040808320938716835292905220611f1b9083836139e9565b508261ffff168461ffff167f4a5695eee2a74d548d5f5c485a3de99ace99e3b664c8e30a90f49be6ebb549328484604051611f5792919061450d565b60405180910390a350505050565b60026000541415611fbd576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b60026000556003546001600160a01b03163314611fec5760405162461bcd60e51b81526004016108f290614643565b600554611ff99082612f71565b600555600254612013906001600160a01b031683836135f5565b816001600160a01b0316336001600160a01b03167f3a20c8c3cd1848485ae8261a52398bb9b26f195b717306b3cf7f058e62c095d58360405161205691906144c3565b60405180910390a350506001600055565b61206f6135f1565b6001600160a01b031661208061215e565b6001600160a01b0316146120db576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b61ffff82166000908152600c60205260409020541561210c5760405162461bcd60e51b81526004016108f290614e5f565b61ffff82166000818152600c602052604090819020839055517f0611bb2107e385b79ec826fff8ecc1c1248a7aae3c875c96668f8cfbf1734220906121529084906144c3565b60405180910390a25050565b6001546001600160a01b031690565b600581565b600c6020526000908152604090205481565b60006121908888612fce565b60408101519091506001600160a01b031633146121bf5760405162461bcd60e51b81526004016108f290614a18565b6121c7613a93565b61ffff89166000908152600c6020526040902054806121f85760405162461bcd60e51b81526004016108f290614e02565b60a08301516001600160a01b03166000908152600d6020908152604080832061ffff8e16845282528083208a8452825280832089845290915290205480158015906122515750836020015167ffffffffffffffff168110155b61226d5760405162461bcd60e51b81526004016108f290614f19565b61ffff808c166000908152600960209081526040808320885190941683529290528190205490517fb71e0f710000000000000000000000000000000000000000000000000000000081526001600160a01b0390911690819063b71e0f71906122df908b908b908b9089906004016144e2565b600060405180830381600087803b1580156122f957600080fd5b505af115801561230d573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526123539190810190613de4565b60a081015161ffff8e166000908152600e6020526040902054919550149150508015612382575060a082015115155b61239e5760405162461bcd60e51b81526004016108f290614984565b8961ffff16826000015161ffff16146123c95760405162461bcd60e51b81526004016108f2906149e1565b80826080015151146123ed5760405162461bcd60e51b81526004016108f290614bfa565b7f000000000000000000000000000000000000000000000000000000000000000061ffff16826020015161ffff16146124385760405162461bcd60e51b81526004016108f290614b66565b886001600160a01b031682606001516001600160a01b03161461246d5760405162461bcd60e51b81526004016108f2906148f0565b6124768961367a565b6124e75781606001516001600160a01b0316826000015161ffff167fa2786598bd84ae4a299103996359e6cb4333404583256079dfc279386baf5832846080015185604001518660c00151805190602001206040516124d79392919061455a565b60405180910390a350505061260f565b600082608001518360600151604051602001612504929190614377565b604051602081830303815290604052905082606001516001600160a01b0316836000015161ffff167f2bd2d8a84b748439fd50d79a49502b4eb5faa25b864da6a9ab5c150704be9a4d856080015186604001518760c00151805190602001206040516125729392919061455a565b60405180910390a37f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663c2fa48138c838d87604001518e8960c001516040518763ffffffff1660e01b81526004016125d896959493929190615044565b600060405180830381600087803b1580156125f257600080fd5b505af1158015612606573d6000803e3d6000fd5b50505050505050505b50505050505050565b612620613ad1565b61164b8383612fce565b600181565b600a6020526000908152604090205461ffff1681565b6040517fc533338f0000000000000000000000000000000000000000000000000000000081526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063c533338f906126b190879087908790600401615026565b60206040518083038186803b1580156126c957600080fd5b505afa1580156126dd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061270191906142c9565b949350505050565b600b60209081526000928352604080842090915290825290205460ff1681565b60096020908152600092835260408084209091529082529020546001600160a01b031681565b60066020908152600092835260408084209091529082529020805460019091015461ffff8083169267ffffffffffffffff6201000082048116936001600160a01b036a010000000000000000000084048116947e010000000000000000000000000000000000000000000000000000000000009094049093169291811691680100000000000000009091041686565b600e6020526000908152604090205481565b6127f86135f1565b6001600160a01b031661280961215e565b6001600160a01b031614612864576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b61ffff8083166000818152600b60209081526040808320948616835293905282902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905590517fec23bee6f88cfecebb09d6aaaed66f0ce110debc1f61117c8270a7116597df9a90612152908490614fe2565b6128e66135f1565b6001600160a01b03166128f761215e565b6001600160a01b031614612952576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b61ffff82166000908152600e6020526040902054156129835760405162461bcd60e51b81526004016108f290614cb4565b61ffff82166000818152600e602052604090819020839055517f0dad975e1d2fbe771c95cdcc7be9a1e61181de7173abe0a32b8f8f83140873e5906121529084906144c3565b6129d16135f1565b6001600160a01b03166129e261215e565b6001600160a01b031614612a3d576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b038116612a635760405162461bcd60e51b81526004016108f290614c57565b600380547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0383169081179091556040517fcb7ef3e545f5cdb893f5c568ba710fe08f336375a2d9fd66e161033f8fc09ef390600090a250565b612acd6135f1565b6001600160a01b0316612ade61215e565b6001600160a01b031614612b39576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b038116612b7e5760405162461bcd60e51b815260040180806020018281038252602681526020018061523a6026913960400191505060405180910390fd5b6001546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0392909216919091179055565b60055481565b60046020526000908152604090205481565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163314612c525760405162461bcd60e51b81526004016108f290614d6e565b6001600160a01b038416600090815260066020908152604080832061ffff8916845290915290206001841415612cff576000612c9083850185613ec0565b61ffff8089166000908152600a60205260409020549192509081169082161115612ccc5760405162461bcd60e51b81526004016108f290614b9d565b81547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001661ffff91909116178155612f25565b6002841415612d56576000612d16838501856142ad565b825467ffffffffffffffff90911662010000027fffffffffffffffffffffffffffffffffffffffffffff0000000000000000ffff90911617825550612f25565b6003841415612db4576000612d6d83850185613c1e565b82546001600160a01b039091166a0100000000000000000000027fffff0000000000000000000000000000000000000000ffffffffffffffffffff90911617825550612f25565b6004841415612e6e576000612dcb83850185613ec0565b61ffff8089166000908152600b602090815260408083209385168352929052205490915060ff1680612dff575061ffff8116155b612e1b5760405162461bcd60e51b81526004016108f290614589565b815461ffff9091167e01000000000000000000000000000000000000000000000000000000000000027dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff909116178155612f25565b6005841415612ec6576000612e85838501856142ad565b6001830180547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001667ffffffffffffffff9290921691909117905550612f25565b6006841415611631576000612edd83850185613c1e565b6001830180546001600160a01b0390921668010000000000000000027fffffffff0000000000000000000000000000000000000000ffffffffffffffff909216919091179055505b83856001600160a01b03167ffc01bf86212a14151d51d1be5c2ac64d67d5ec823dfc6f53298d7ce3f3d3d2528585604051612f6192919061450d565b60405180910390a3505050505050565b600082821115612fc8576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b612fd6613ad1565b6001600160a01b03808316600090815260066020908152604080832061ffff808916808652918452828520835160c0810185528154808416825267ffffffffffffffff6201000082048116838901526a010000000000000000000082048a16838801527e010000000000000000000000000000000000000000000000000000000000009091048416606083015260019092015491821660808201526801000000000000000090910490961660a0870152908452600790925290912082519091166130a357805461ffff1682525b602082015167ffffffffffffffff166130ce57805462010000900467ffffffffffffffff1660208301525b60408201516001600160a01b03166130ff5780546a010000000000000000000090046001600160a01b031660408301525b606082015161ffff1661313a5780547e01000000000000000000000000000000000000000000000000000000000000900461ffff1660608301525b608082015167ffffffffffffffff1661316257600181015467ffffffffffffffff1660808301525b60a08201516001600160a01b031661164957600101546801000000000000000090046001600160a01b031660a08201529392505050565b60008282018381101561164b576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60008151600014156132ce5761ffff808716600090815260086020908152604080832060608a015190941683529281529082902080548351601f60027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff610100600186161502019093169290920491820184900484028101840190945280845290918301828280156132c65780601f1061329b576101008083540402835291602001916132c6565b820191906000526020600020905b8154815290600101906020018083116132a957829003601f168201915b505050505091505b604080860151606087015191517f5886ea65000000000000000000000000000000000000000000000000000000008152909182916001600160a01b03831691635886ea6591613327918c918b908b908b906004016150a5565b602060405180830381600087803b15801561334157600080fd5b505af1158015613355573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133799190614295565b92506133858284613680565b7fb0c632f55f1e1b3b2c3d82f41ee4716bb4c00f0f5d84cdafc141581bb8757a4f8488606001516040516133ba929190614534565b60405180910390a1505095945050505050565b60a0820151606083015160808401516040517fc5e193cd000000000000000000000000000000000000000000000000000000008152600093926001600160a01b0384169263c5e193cd92613429928a92909189906004016150e1565b602060405180830381600087803b15801561344357600080fd5b505af1158015613457573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061347b9190614295565b91506116498183613680565b6000806001600160a01b03831615806134a957506002546001600160a01b0316155b6003546040517f5cbbbd750000000000000000000000000000000000000000000000000000000081529192506000916001600160a01b0390911690635cbbbd75906134fd908515908b908b906004016144ab565b60206040518083038186803b15801561351557600080fd5b505afa158015613529573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061354d9190614295565b905080156135e757811561357a576003546001600160a01b03166135718183613680565b819350506135e7565b846001600160a01b0316846001600160a01b031614806135a257506001600160a01b03841632145b6135be5760405162461bcd60e51b81526004016108f290614893565b6002546135d6906001600160a01b03168530846136c3565b6005546135e39082613199565b6005555b5050949350505050565b3390565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb00000000000000000000000000000000000000000000000000000000179052613675908490613751565b505050565b3b151590565b6001600160a01b0382166000908152600460205260409020546136a39082613199565b6001600160a01b0390921660009081526004602052604090209190915550565b604080516001600160a01b0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f23b872dd0000000000000000000000000000000000000000000000000000000017905261374b908590613751565b50505050565b60006137a6826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166138029092919063ffffffff16565b805190915015613675578080602001905160208110156137c557600080fd5b50516136755760405162461bcd60e51b815260040180806020018281038252602a815260200180615260602a913960400191505060405180910390fd5b60606127018484600085856138168561367a565b613867576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b600080866001600160a01b031685876040518082805190602001908083835b602083106138c357805182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe09092019160209182019101613886565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114613925576040519150601f19603f3d011682016040523d82523d6000602084013e61392a565b606091505b509150915061393a828286613945565b979650505050505050565b6060831561395457508161164b565b8251156139645782518084602001fd5b8160405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156139ae578181015183820152602001613996565b50505050905090810190601f1680156139db5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b828054600181600116156101000203166002900490600052602060002090601f016020900481019282613a1f5760008555613a83565b82601f10613a56578280017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00823516178555613a83565b82800160010185558215613a83579182015b82811115613a83578235825591602001919060010190613a68565b50613a8f929150613b06565b5090565b6040805160e08101825260008082526020820181905291810182905260608082018390526080820181905260a082019290925260c081019190915290565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a081019190915290565b5b80821115613a8f5760008155600101613b07565b80356117b0816151fb565b80516117b0816151fb565b60008083601f840112613b42578182fd5b50813567ffffffffffffffff811115613b59578182fd5b602083019150836020828501011115613b7157600080fd5b9250929050565b600082601f830112613b88578081fd5b815167ffffffffffffffff811115613b9c57fe5b613bcd60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601615183565b818152846020838601011115613be1578283fd5b6127018260208301602087016151cf565b80356117b081615213565b80516117b081615213565b80356117b081615223565b80516117b081615223565b600060208284031215613c2f578081fd5b813561164b816151fb565b60008060408385031215613c4c578081fd5b8235613c57816151fb565b946020939093013593505050565b60008060408385031215613c77578182fd5b8235613c82816151fb565b91506020830135613c9281615213565b809150509250929050565b60008060008060808587031215613cb2578182fd5b8435613cbd816151fb565b93506020850135613ccd81615213565b93969395505050506040820135916060013590565b60008060408385031215613c4c578182fd5b60008060008060008060008060008060006101008c8e031215613d15578687fd5b613d1e8c613b1b565b9a50613d2c60208d01613c08565b9950613d3a60408d01613bf2565b985067ffffffffffffffff8060608e01351115613d55578788fd5b613d658e60608f01358f01613b31565b909950975060808d0135811015613d7a578687fd5b613d8a8e60808f01358f01613b31565b9097509550613d9b60a08e01613b1b565b9450613da960c08e01613b1b565b93508060e08e01351115613dbb578283fd5b50613dcc8d60e08e01358e01613b31565b81935080925050509295989b509295989b9093969950565b600060208284031215613df5578081fd5b815167ffffffffffffffff80821115613e0c578283fd5b9083019060e08286031215613e1f578283fd5b613e2960e0615183565b613e3283613bfd565b8152613e4060208401613bfd565b6020820152613e5160408401613c13565b6040820152613e6260608401613b26565b6060820152608083015182811115613e78578485fd5b613e8487828601613b78565b60808301525060a083015160a082015260c083015182811115613ea5578485fd5b613eb187828601613b78565b60c08301525095945050505050565b600060208284031215613ed1578081fd5b813561164b81615213565b60008060408385031215613eee578182fd5b8235613ef981615213565b91506020830135613c92816151fb565b600080600080600080600060a0888a031215613f23578081fd5b8735613f2e81615213565b96506020880135613f3e816151fb565b9550604088013567ffffffffffffffff80821115613f5a578283fd5b613f668b838c01613b31565b909750955060608a013591508115158214613f7f578283fd5b90935060808901359080821115613f94578283fd5b50613fa18a828b01613b31565b989b979a50959850939692959293505050565b600080600060608486031215613fc8578081fd5b8335613fd381615213565b92506020840135613fe3816151fb565b929592945050506040919091013590565b600080600080600080600060c0888a03121561400e578081fd5b873561401981615213565b96506020880135614029816151fb565b955060408801359450606088013593506080880135925060a088013567ffffffffffffffff811115614059578182fd5b613fa18a828b01613b31565b60008060008060006080868803121561407c578283fd5b853561408781615213565b94506020860135614097816151fb565b935060408601359250606086013567ffffffffffffffff8111156140b9578182fd5b6140c588828901613b31565b969995985093965092949392505050565b600080604083850312156140e8578182fd5b8235613c5781615213565b60008060008060808587031215614108578182fd5b843561411381615213565b966020860135965060408601359560600135945092505050565b600080600060408486031215614141578081fd5b833561414c81615213565b9250602084013567ffffffffffffffff811115614167578182fd5b61417386828701613b31565b9497909650939450505050565b60008060408385031215614192578182fd5b8235613c8281615213565b600080600080606085870312156141b2578182fd5b84356141bd81615213565b935060208501356141cd81615213565b9250604085013567ffffffffffffffff8111156141e8578283fd5b6141f487828801613b31565b95989497509550505050565b600080600080600080600060e0888a03121561421a578081fd5b873561422581615213565b9650602088013561423581615213565b9550604088013561424581615223565b94506060880135614255816151fb565b9350608088013561426581615213565b925060a088013561427581615223565b915060c0880135614285816151fb565b8091505092959891949750929550565b6000602082840312156142a6578081fd5b5051919050565b6000602082840312156142be578081fd5b813561164b81615223565b6000602082840312156142da578081fd5b815161164b81615223565b600082845282826020860137806020848601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f85011685010190509392505050565b600081518084526143458160208601602086016151cf565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b600083516143898184602088016151cf565b60609390931b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000169190920190815260140192915050565b90565b60007fffffffffffffffff0000000000000000000000000000000000000000000000008860c01b1682527fffff000000000000000000000000000000000000000000000000000000000000808860f01b1660088401527fffffffffffffffffffffffffffffffffffffffff0000000000000000000000008760601b16600a840152808660f01b16601e8401525083516144648160208501602088016151cf565b8083019050835161447c8160208401602088016151cf565b0160200198975050505050505050565b6001600160a01b0391909116815260200190565b901515815260200190565b92151583526020830191909152604082015260600190565b90815260200190565b9283526020830191909152604082015260600190565b6000858252606060208301526144fc6060830185876142e5565b905082604083015295945050505050565b6000602082526127016020830184866142e5565b60006020825261164b602083018461432d565b600060408252614547604083018561432d565b905061ffff831660208301529392505050565b60006060825261456d606083018661432d565b67ffffffffffffffff9490941660208301525060400152919050565b60208082526026908201527f4c617965725a65726f3a20696e76616c6964206f7574626f756e642070726f6f60408201527f6620747970650000000000000000000000000000000000000000000000000000606082015260800190565b60208082526024908201527f4c617965725a65726f3a20647374436861696e496420646f6573206e6f74206560408201527f7869737400000000000000000000000000000000000000000000000000000000606082015260800190565b60208082526018908201527f4c617965725a65726f3a206f6e6c792074726561737572790000000000000000604082015260600190565b6020808252601e908201527f4c617965725a65726f3a20496e76616c696420636f6e66696720747970650000604082015260600190565b6020808252601a908201527f4c617965725a65726f3a207769746864726177206661696c6564000000000000604082015260600190565b60208082526025908201527f4c617965725a65726f3a206e6f7420656e6f756768206e617469766520666f7260408201527f2066656573000000000000000000000000000000000000000000000000000000606082015260800190565b60208082526025908201527f4c617965725a65726f3a205f746f2063616e6e6f74206265207a65726f20616460408201527f6472657373000000000000000000000000000000000000000000000000000000606082015260800190565b60208082526031908201527f4c617965725a65726f3a205f6c617965725a65726f546f6b656e2063616e6e6f60408201527f74206265207a65726f2061646472657373000000000000000000000000000000606082015260800190565b60208082526022908201527f4c617965725a65726f3a20696e76616c69642072656c6179657220616464726560408201527f7373000000000000000000000000000000000000000000000000000000000000606082015260800190565b6020808252601b908201527f4c617965725a65726f3a206661696c656420746f20726566756e640000000000604082015260600190565b6020808252602b908201527f4c617965725a65726f3a206d75737420626520706169642062792073656e646560408201527f72206f72206f726967696e000000000000000000000000000000000000000000606082015260800190565b6020808252601d908201527f4c617965725a65726f3a20696e76616c69642064737441646472657373000000604082015260600190565b60208082526021908201527f4c617965725a65726f3a20696e76616c6964206f7261636c652061646472657360408201527f7300000000000000000000000000000000000000000000000000000000000000606082015260800190565b60208082526025908201527f4c617965725a65726f3a20696e76616c6964205f7061636b65742e756c6e416460408201527f6472657373000000000000000000000000000000000000000000000000000000606082015260800190565b6020808252601e908201527f4c617965725a65726f3a20696e76616c696420737263436861696e2049640000604082015260600190565b6020808252601a908201527f4c617965725a65726f3a20696e76616c69642072656c61796572000000000000604082015260600190565b6020808252601a908201527f4c617965725a65726f3a2077726f6e6720706174682064617461000000000000604082015260600190565b60208082526029908201527f4c617965725a65726f3a206c6962726172792063616e6e6f74206265207a657260408201527f6f20616464726573730000000000000000000000000000000000000000000000606082015260800190565b60208082526043908201527f4c617965725a65726f3a206f7261636c6520646174612063616e206f6e6c792060408201527f75706461746520696620697420686173206d6f726520636f6e6669726d61746960608201527f6f6e730000000000000000000000000000000000000000000000000000000000608082015260a00190565b6020808252601e908201527f4c617965725a65726f3a20696e76616c696420647374436861696e2049640000604082015260600190565b60208082526030908201527f4c617965725a65726f3a20696e76616c696420696e626f756e642070726f6f6660408201527f206c6962726172792076657273696f6e00000000000000000000000000000000606082015260800190565b60208082526022908201527f4c617965725a65726f3a20696e76616c6964207372634164647265737320736960408201527f7a65000000000000000000000000000000000000000000000000000000000000606082015260800190565b6020808252602a908201527f4c617965725a65726f3a2074726561737572792063616e6e6f74206265207a6560408201527f726f206164647265737300000000000000000000000000000000000000000000606082015260800190565b60208082526021908201527f4c617965725a65726f3a2072656d6f746520756c6e20616c726561647920736560408201527f7400000000000000000000000000000000000000000000000000000000000000606082015260800190565b60208082526022908201527f4c617965725a65726f3a2063616e206e6f7420616464206e6577206c6962726160408201527f7279000000000000000000000000000000000000000000000000000000000000606082015260800190565b60208082526018908201527f4c617965725a65726f3a206f6e6c7920656e64706f696e740000000000000000604082015260600190565b6020808252602e908201527f4c617965725a65726f3a20696e76616c6964206f7574626f756e6420626c6f6360408201527f6b20636f6e6669726d6174696f6e000000000000000000000000000000000000606082015260800190565b60208082526028908201527f4c617965725a65726f3a20696e636f72726563742072656d6f7465206164647260408201527f6573732073697a65000000000000000000000000000000000000000000000000606082015260800190565b60208082526030908201527f4c617965725a65726f3a2072656d6f746520636861696e20616464726573732060408201527f73697a6520616c72656164792073657400000000000000000000000000000000606082015260800190565b6020808252602d908201527f4c617965725a65726f3a20696e76616c696420696e626f756e6420626c6f636b60408201527f20636f6e6669726d6174696f6e00000000000000000000000000000000000000606082015260800190565b60208082526029908201527f4c617965725a65726f3a206e6f7420656e6f75676820626c6f636b20636f6e6660408201527f69726d6174696f6e730000000000000000000000000000000000000000000000606082015260800190565b600060c08201905061ffff808451168352602084015167ffffffffffffffff8082166020860152604086015191506001600160a01b0380831660408701528360608801511660608701528160808801511660808701528060a08801511660a08701525050505092915050565b61ffff91909116815260200190565b600061ffff851682526001600160a01b03841660208301526060604083015261501d606083018461432d565b95945050505050565b600061ffff851682526040602083015261501d6040830184866142e5565b600061ffff8816825260c0602083015261506160c083018861432d565b6001600160a01b038716604084015267ffffffffffffffff8616606084015284608084015282810360a0840152615098818561432d565b9998505050505050505050565b600061ffff80881683528087166020840152506001600160a01b038516604083015283606083015260a0608083015261393a60a083018461432d565b61ffff948516815292909316602083015267ffffffffffffffff1660408201526001600160a01b03909116606082015260800190565b61ffff968716815267ffffffffffffffff95861660208201526001600160a01b03948516604082015292909516606083015290921660808301529190911660a082015260c00190565b918252602082015260400190565b67ffffffffffffffff91909116815260200190565b60405181810167ffffffffffffffff8111828210171561519f57fe5b604052919050565b600080858511156151b6578182fd5b838611156151c2578182fd5b5050820193919092039150565b60005b838110156151ea5781810151838201526020016151d2565b8381111561374b5750506000910152565b6001600160a01b038116811461521057600080fd5b50565b61ffff8116811461521057600080fd5b67ffffffffffffffff8116811461521057600080fdfe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573735361666545524332303a204552433230206f7065726174696f6e20646964206e6f742073756363656564a2646970667358221220dc6fc63e061b7f8d887a5dcc9daf06630498d5f3c9e5ed30999f3b436f801b0664736f6c63430007060033",
|
|
1420
|
+
"deployedBytecode": "0x6080604052600436106102e75760003560e01c80638317814a11610184578063d543c774116100d6578063ed28580a1161008a578063f47a5feb11610064578063f47a5feb146107f6578063f58589a21461080b578063f8e1734c1461082b576102e7565b8063ed28580a14610796578063f0f44260146107b6578063f2fde38b146107d6576102e7565b8063ddfdef5a116100bb578063ddfdef5a14610736578063ea216c2114610756578063eb0d4c3114610776576102e7565b8063d543c774146106e9578063db00719b14610716576102e7565b8063959f594311610138578063b77d22ad11610112578063b77d22ad14610687578063b8e7e3e01461069c578063b9a99bed146106bc576102e7565b8063959f59431461061a578063987fa2d51461063a578063a46622221461065a576102e7565b806387078f9f1161016957806387078f9f146105d05780638da5cb5b146105f0578063904d3b8d14610605576102e7565b80638317814a146105905780638525b711146105b0576102e7565b806352d2871f1161023d5780636a14ac82116101f1578063759c5b3b116101cb578063759c5b3b1461053b5780638140666e1461055b5780638207f79d14610570576102e7565b80636a14ac82146104e6578063704316e514610506578063715018a614610526576102e7565b80635b056da5116102225780635b056da51461048f5780635e280f11146104b157806369412bfa146104c6576102e7565b806352d2871f1461044f57806352d3b5001461046f576102e7565b80632cfacb061161029f57806340a7bb101161027957806340a7bb10146103f957806349148c37146104275780634d3a0f7c1461043c576102e7565b80632cfacb06146103905780632f813464146103b257806331bd2430146103e4576102e7565b806307b9ca7c116102d057806307b9ca7c1461033957806318da00111461034e5780632a819bbf14610363576102e7565b806302bd9743146102ec57806307b18bde14610317575b600080fd5b3480156102f857600080fd5b5061030161084b565b60405161030e919061448c565b60405180910390f35b34801561032357600080fd5b50610337610332366004613c3a565b61086f565b005b34801561034557600080fd5b506103016109f9565b34801561035a57600080fd5b50610301610a08565b34801561036f57600080fd5b5061038361037e366004614180565b610a17565b60405161030e9190614521565b34801561039c57600080fd5b506103a5610ad9565b60405161030e91906144c3565b3480156103be57600080fd5b506103d26103cd366004613ec0565b610ade565b60405161030e96959493929190615117565b3480156103f057600080fd5b506103a5610b62565b34801561040557600080fd5b50610419610414366004613f09565b610b67565b60405161030e929190615160565b34801561043357600080fd5b506103a5610e97565b61033761044a366004613cf4565b610e9c565b34801561045b57600080fd5b5061038361046a366004613fb4565b6112e8565b34801561047b57600080fd5b5061033761048a366004613c1e565b611652565b34801561049b57600080fd5b506104a461174e565b60405161030e9190614fe2565b3480156104bd57600080fd5b50610301611772565b3480156104d257600080fd5b506103a56104e1366004613c1e565b611796565b3480156104f257600080fd5b50610337610501366004614200565b6117b5565b34801561051257600080fd5b506103376105213660046140f3565b611b17565b34801561053257600080fd5b50610337611bdc565b34801561054757600080fd5b506103a5610556366004613c9d565b611cb2565b34801561056757600080fd5b506103a5611cde565b34801561057c57600080fd5b5061033761058b366004613edc565b611ce3565b34801561059c57600080fd5b506103376105ab36600461419d565b611e7c565b3480156105bc57600080fd5b506103376105cb366004613ce2565b611f65565b3480156105dc57600080fd5b506103376105eb3660046140d6565b612067565b3480156105fc57600080fd5b5061030161215e565b34801561061157600080fd5b506103a561216d565b34801561062657600080fd5b506103a5610635366004613ec0565b612172565b34801561064657600080fd5b50610337610655366004613ff4565b612184565b34801561066657600080fd5b5061067a610675366004613edc565b612618565b60405161030e9190614f76565b34801561069357600080fd5b506103a561262a565b3480156106a857600080fd5b506104a46106b7366004613ec0565b61262f565b3480156106c857600080fd5b506106dc6106d736600461412d565b612645565b60405161030e919061516e565b3480156106f557600080fd5b50610709610704366004614180565b612709565b60405161030e91906144a0565b34801561072257600080fd5b50610301610731366004614180565b612729565b34801561074257600080fd5b506103d2610751366004613c65565b61274f565b34801561076257600080fd5b506103a5610771366004613ec0565b6127de565b34801561078257600080fd5b50610337610791366004614180565b6127f0565b3480156107a257600080fd5b506103376107b13660046140d6565b6128de565b3480156107c257600080fd5b506103376107d1366004613c1e565b6129c9565b3480156107e257600080fd5b506103376107f1366004613c1e565b612ac5565b34801561080257600080fd5b506103a5612bf2565b34801561081757600080fd5b506103a5610826366004613c1e565b612bf8565b34801561083757600080fd5b50610337610846366004614065565b612c0a565b7f000000000000000000000000000000000000000000000000000000000000000081565b600260005414156108c7576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b60026000556001600160a01b0382166108fb5760405162461bcd60e51b81526004016108f290614745565b60405180910390fd5b336000908152600460205260409020546109159082612f71565b336000908152600460205260408082209290925590516001600160a01b038416908390610941906143c1565b60006040518083038185875af1925050503d806000811461097e576040519150601f19603f3d011682016040523d82523d6000602084013e610983565b606091505b50509050806109a45760405162461bcd60e51b81526004016108f2906146b1565b826001600160a01b0316336001600160a01b03167f3bfd26201736b5cb14a562ab3cfc2bef76901726e3a78483d6288af47131e1d9846040516109e791906144c3565b60405180910390a35050600160005550565b6002546001600160a01b031681565b6003546001600160a01b031681565b60086020908152600092835260408084208252918352918190208054825160026001831615610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0190921691909104601f810185900485028201850190935282815292909190830182828015610ad15780601f10610aa657610100808354040283529160200191610ad1565b820191906000526020600020905b815481529060010190602001808311610ab457829003601f168201915b505050505081565b600381565b6007602052600090815260409020805460019091015461ffff8083169267ffffffffffffffff6201000082048116936001600160a01b036a010000000000000000000084048116947e010000000000000000000000000000000000000000000000000000000000009094049093169291811691680100000000000000009091041686565b600681565b6000806000610b768a8a612fce565b905060608415610bbf5785858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929350610c8e92505050565b61ffff808c166000908152600860209081526040808320606087015190941683529281529082902080548351601f60027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61010060018616150201909316929092049182018490048402810184019094528084529091830182828015610c865780601f10610c5b57610100808354040283529160200191610c86565b820191906000526020600020905b815481529060010190602001808311610c6957829003601f168201915b505050505090505b600082604001516001600160a01b031663c03f15298d85606001518e8e8e9050876040518663ffffffff1660e01b8152600401610ccf9594939291906150a5565b60206040518083038186803b158015610ce757600080fd5b505afa158015610cfb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d1f9190614295565b905060008b905060008460a001516001600160a01b0316635553fb8e8f87606001518860800151866040518563ffffffff1660e01b8152600401610d6694939291906150e1565b60206040518083038186803b158015610d7e57600080fd5b505afa158015610d92573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610db69190614295565b6003546040517f5cbbbd750000000000000000000000000000000000000000000000000000000081529192506000916001600160a01b0390911690635cbbbd7590610e09908e90889087906004016144ab565b60206040518083038186803b158015610e2157600080fd5b505afa158015610e35573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e599190614295565b90508a610e695780975087610e6e565b809650865b50610e8382610e7d8a87613199565b90613199565b975050505050505097509795505050505050565b600281565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163314610ee45760405162461bcd60e51b81526004016108f290614d6e565b61ffff89166000908152600e60205260409020548b908a90610f185760405162461bcd60e51b81526004016108f2906145e6565b61ffff81166000908152600c6020526040812054606091908015801590610f415750601481018c145b610f5d5760405162461bcd60e51b81526004016108f290614e02565b6000808e8e8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050505083810160140151925090506001600160a01b0387811690831614610fcc5760405162461bcd60e51b81526004016108f290614a4f565b8e8e6000908592610fdf939291906151a7565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040517f6fe7b673000000000000000000000000000000000000000000000000000000008152929750506001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001691636fe7b673915061107f9089908b908690600401614ff1565b602060405180830381600087803b15801561109957600080fd5b505af11580156110ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110d191906142c9565b935050505060008a8a8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525093945061111d9250879150889050612fce565b9050600061116586838986518d8d8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506131f392505050565b9050600061117487848a6133cd565b9050600061118483838b8f613487565b9050600061119682610e7d8686613199565b9050348111156111b85760405162461bcd60e51b81526004016108f2906146e8565b60006111c43483612f71565b9050801561124a5760008f6001600160a01b0316826040516111e5906143c1565b60006040518083038185875af1925050503d8060008114611222576040519150601f19603f3d011682016040523d82523d6000602084013e611227565b606091505b50509050806112485760405162461bcd60e51b81526004016108f29061485c565b505b6000887f00000000000000000000000000000000000000000000000000000000000000008d8d8d8c604051602001611287969594939291906143c4565b60405160208183030381529060405290507fe9bded5f24a4168e4f3bf44e00298c993b22376aad8c58c7dda9718a54cbea82816040516112c79190614521565b60405180910390a15050505050505050505050505050505050505050505050565b6001600160a01b038216600090815260066020908152604080832061ffff871684529091529020606090600183141561137c57805461ffff166113665761ffff80861660009081526007602090815260409182902054915161134f93929092169101614fe2565b60405160208183030381529060405291505061164b565b805460405161134f9161ffff1690602001614fe2565b60028314156113f257805462010000900467ffffffffffffffff166113d05761ffff851660009081526007602090815260409182902054915161134f9262010000900467ffffffffffffffff16910161516e565b805460405161134f9162010000900467ffffffffffffffff169060200161516e565b600383141561147d5780546a010000000000000000000090046001600160a01b03166114545761ffff851660009081526007602090815260409182902054915161134f926a010000000000000000000090046001600160a01b0316910161448c565b805460405161134f916a010000000000000000000090046001600160a01b03169060200161448c565b60048314156115365780547e01000000000000000000000000000000000000000000000000000000000000900461ffff166114fe5761ffff80861660009081526007602090815260409182902054915161134f937e010000000000000000000000000000000000000000000000000000000000009093049092169101614fe2565b805460405161134f917e01000000000000000000000000000000000000000000000000000000000000900461ffff1690602001614fe2565b60058314156115a357600181015467ffffffffffffffff166115845761ffff851660009081526007602090815260409182902060010154915161134f9267ffffffffffffffff16910161516e565b600181015460405161134f9167ffffffffffffffff169060200161516e565b60068314156116315760018101546801000000000000000090046001600160a01b03166116075761ffff851660009081526007602090815260409182902060010154915161134f926801000000000000000090046001600160a01b0316910161448c565b600181015460405161134f916801000000000000000090046001600160a01b03169060200161448c565b60405162461bcd60e51b81526004016108f29061467a565b505b9392505050565b61165a6135f1565b6001600160a01b031661166b61215e565b6001600160a01b0316146116c6576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b0381166116ec5760405162461bcd60e51b81526004016108f2906147a2565b600280547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0383169081179091556040517f33d644987381deff4408951d55afa136f124e22a7810b163b2aaa3ebef770f6490600090a250565b7f000000000000000000000000000000000000000000000000000000000000000081565b7f000000000000000000000000000000000000000000000000000000000000000081565b6001600160a01b0381166000908152600460205260409020545b919050565b6117bd6135f1565b6001600160a01b03166117ce61215e565b6001600160a01b031614611829576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b61ffff8088166000908152600a6020526040902054811690871611801590611855575060008661ffff16115b6118715760405162461bcd60e51b81526004016108f290614b9d565b60008567ffffffffffffffff161161189b5760405162461bcd60e51b81526004016108f290614ebc565b6001600160a01b0384166118c15760405162461bcd60e51b81526004016108f2906147ff565b61ffff8088166000908152600b602090815260408083209387168352929052205460ff166119015760405162461bcd60e51b81526004016108f290614589565b60008267ffffffffffffffff161161192b5760405162461bcd60e51b81526004016108f290614da5565b6001600160a01b0381166119515760405162461bcd60e51b81526004016108f290614927565b6040518060c001604052808761ffff1681526020018667ffffffffffffffff168152602001856001600160a01b031681526020018461ffff1681526020018367ffffffffffffffff168152602001826001600160a01b0316815250600760008961ffff1661ffff16815260200190815260200160002060008201518160000160006101000a81548161ffff021916908361ffff16021790555060208201518160000160026101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550604082015181600001600a6101000a8154816001600160a01b0302191690836001600160a01b03160217905550606082015181600001601e6101000a81548161ffff021916908361ffff16021790555060808201518160010160006101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555060a08201518160010160086101000a8154816001600160a01b0302191690836001600160a01b031602179055509050508661ffff167f5a76432853a0871c4e780def7f3ffc7912339b53f022ac31127fe5ff84a36fa1878787878787604051611b0696959493929190615117565b60405180910390a250505050505050565b336000908152600d6020908152604080832061ffff8816845282528083208684528252808320848452909152902054828110611b655760405162461bcd60e51b81526004016108f290614ae3565b336000818152600d6020908152604080832061ffff8a1680855290835281842089855283528184208785529092529182902086905590517f74bbc026808dcba59692d6a8bb20596849ca718e10e2432c6cdf48af865bc5d990611bcd908890879089906144cc565b60405180910390a35050505050565b611be46135f1565b6001600160a01b0316611bf561215e565b6001600160a01b031614611c50576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600180547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b600d60209081526000948552604080862082529385528385208152918452828420909152825290205481565b600481565b611ceb6135f1565b6001600160a01b0316611cfc61215e565b6001600160a01b031614611d57576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b038116611d7d5760405162461bcd60e51b81526004016108f290614a86565b61ffff8083166000908152600a60205260409020548116908110611db35760405162461bcd60e51b81526004016108f290614d11565b61ffff8381166000818152600a6020908152604080832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001660019790970195861696871790556009825280832095835294905283902080547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b03861617905591519091907f802d55279d51813cb7a9a98e8fd2d7bec5346cb830901c11b85d1650cb857e9a90611e6f90859061448c565b60405180910390a2505050565b611e846135f1565b6001600160a01b0316611e9561215e565b6001600160a01b031614611ef0576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b61ffff8085166000908152600860209081526040808320938716835292905220611f1b9083836139e9565b508261ffff168461ffff167f4a5695eee2a74d548d5f5c485a3de99ace99e3b664c8e30a90f49be6ebb549328484604051611f5792919061450d565b60405180910390a350505050565b60026000541415611fbd576040805162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015290519081900360640190fd5b60026000556003546001600160a01b03163314611fec5760405162461bcd60e51b81526004016108f290614643565b600554611ff99082612f71565b600555600254612013906001600160a01b031683836135f5565b816001600160a01b0316336001600160a01b03167f3a20c8c3cd1848485ae8261a52398bb9b26f195b717306b3cf7f058e62c095d58360405161205691906144c3565b60405180910390a350506001600055565b61206f6135f1565b6001600160a01b031661208061215e565b6001600160a01b0316146120db576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b61ffff82166000908152600c60205260409020541561210c5760405162461bcd60e51b81526004016108f290614e5f565b61ffff82166000818152600c602052604090819020839055517f0611bb2107e385b79ec826fff8ecc1c1248a7aae3c875c96668f8cfbf1734220906121529084906144c3565b60405180910390a25050565b6001546001600160a01b031690565b600581565b600c6020526000908152604090205481565b60006121908888612fce565b60408101519091506001600160a01b031633146121bf5760405162461bcd60e51b81526004016108f290614a18565b6121c7613a93565b61ffff89166000908152600c6020526040902054806121f85760405162461bcd60e51b81526004016108f290614e02565b60a08301516001600160a01b03166000908152600d6020908152604080832061ffff8e16845282528083208a8452825280832089845290915290205480158015906122515750836020015167ffffffffffffffff168110155b61226d5760405162461bcd60e51b81526004016108f290614f19565b61ffff808c166000908152600960209081526040808320885190941683529290528190205490517fb71e0f710000000000000000000000000000000000000000000000000000000081526001600160a01b0390911690819063b71e0f71906122df908b908b908b9089906004016144e2565b600060405180830381600087803b1580156122f957600080fd5b505af115801561230d573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682016040526123539190810190613de4565b60a081015161ffff8e166000908152600e6020526040902054919550149150508015612382575060a082015115155b61239e5760405162461bcd60e51b81526004016108f290614984565b8961ffff16826000015161ffff16146123c95760405162461bcd60e51b81526004016108f2906149e1565b80826080015151146123ed5760405162461bcd60e51b81526004016108f290614bfa565b7f000000000000000000000000000000000000000000000000000000000000000061ffff16826020015161ffff16146124385760405162461bcd60e51b81526004016108f290614b66565b886001600160a01b031682606001516001600160a01b03161461246d5760405162461bcd60e51b81526004016108f2906148f0565b6124768961367a565b6124e75781606001516001600160a01b0316826000015161ffff167fa2786598bd84ae4a299103996359e6cb4333404583256079dfc279386baf5832846080015185604001518660c00151805190602001206040516124d79392919061455a565b60405180910390a350505061260f565b600082608001518360600151604051602001612504929190614377565b604051602081830303815290604052905082606001516001600160a01b0316836000015161ffff167f2bd2d8a84b748439fd50d79a49502b4eb5faa25b864da6a9ab5c150704be9a4d856080015186604001518760c00151805190602001206040516125729392919061455a565b60405180910390a37f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663c2fa48138c838d87604001518e8960c001516040518763ffffffff1660e01b81526004016125d896959493929190615044565b600060405180830381600087803b1580156125f257600080fd5b505af1158015612606573d6000803e3d6000fd5b50505050505050505b50505050505050565b612620613ad1565b61164b8383612fce565b600181565b600a6020526000908152604090205461ffff1681565b6040517fc533338f0000000000000000000000000000000000000000000000000000000081526000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063c533338f906126b190879087908790600401615026565b60206040518083038186803b1580156126c957600080fd5b505afa1580156126dd573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061270191906142c9565b949350505050565b600b60209081526000928352604080842090915290825290205460ff1681565b60096020908152600092835260408084209091529082529020546001600160a01b031681565b60066020908152600092835260408084209091529082529020805460019091015461ffff8083169267ffffffffffffffff6201000082048116936001600160a01b036a010000000000000000000084048116947e010000000000000000000000000000000000000000000000000000000000009094049093169291811691680100000000000000009091041686565b600e6020526000908152604090205481565b6127f86135f1565b6001600160a01b031661280961215e565b6001600160a01b031614612864576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b61ffff8083166000818152600b60209081526040808320948616835293905282902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905590517fec23bee6f88cfecebb09d6aaaed66f0ce110debc1f61117c8270a7116597df9a90612152908490614fe2565b6128e66135f1565b6001600160a01b03166128f761215e565b6001600160a01b031614612952576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b61ffff82166000908152600e6020526040902054156129835760405162461bcd60e51b81526004016108f290614cb4565b61ffff82166000818152600e602052604090819020839055517f0dad975e1d2fbe771c95cdcc7be9a1e61181de7173abe0a32b8f8f83140873e5906121529084906144c3565b6129d16135f1565b6001600160a01b03166129e261215e565b6001600160a01b031614612a3d576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b038116612a635760405162461bcd60e51b81526004016108f290614c57565b600380547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0383169081179091556040517fcb7ef3e545f5cdb893f5c568ba710fe08f336375a2d9fd66e161033f8fc09ef390600090a250565b612acd6135f1565b6001600160a01b0316612ade61215e565b6001600160a01b031614612b39576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b038116612b7e5760405162461bcd60e51b815260040180806020018281038252602681526020018061523a6026913960400191505060405180910390fd5b6001546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600180547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0392909216919091179055565b60055481565b60046020526000908152604090205481565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163314612c525760405162461bcd60e51b81526004016108f290614d6e565b6001600160a01b038416600090815260066020908152604080832061ffff8916845290915290206001841415612cff576000612c9083850185613ec0565b61ffff8089166000908152600a60205260409020549192509081169082161115612ccc5760405162461bcd60e51b81526004016108f290614b9d565b81547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00001661ffff91909116178155612f25565b6002841415612d56576000612d16838501856142ad565b825467ffffffffffffffff90911662010000027fffffffffffffffffffffffffffffffffffffffffffff0000000000000000ffff90911617825550612f25565b6003841415612db4576000612d6d83850185613c1e565b82546001600160a01b039091166a0100000000000000000000027fffff0000000000000000000000000000000000000000ffffffffffffffffffff90911617825550612f25565b6004841415612e6e576000612dcb83850185613ec0565b61ffff8089166000908152600b602090815260408083209385168352929052205490915060ff1680612dff575061ffff8116155b612e1b5760405162461bcd60e51b81526004016108f290614589565b815461ffff9091167e01000000000000000000000000000000000000000000000000000000000000027dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff909116178155612f25565b6005841415612ec6576000612e85838501856142ad565b6001830180547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001667ffffffffffffffff9290921691909117905550612f25565b6006841415611631576000612edd83850185613c1e565b6001830180546001600160a01b0390921668010000000000000000027fffffffff0000000000000000000000000000000000000000ffffffffffffffff909216919091179055505b83856001600160a01b03167ffc01bf86212a14151d51d1be5c2ac64d67d5ec823dfc6f53298d7ce3f3d3d2528585604051612f6192919061450d565b60405180910390a3505050505050565b600082821115612fc8576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b612fd6613ad1565b6001600160a01b03808316600090815260066020908152604080832061ffff808916808652918452828520835160c0810185528154808416825267ffffffffffffffff6201000082048116838901526a010000000000000000000082048a16838801527e010000000000000000000000000000000000000000000000000000000000009091048416606083015260019092015491821660808201526801000000000000000090910490961660a0870152908452600790925290912082519091166130a357805461ffff1682525b602082015167ffffffffffffffff166130ce57805462010000900467ffffffffffffffff1660208301525b60408201516001600160a01b03166130ff5780546a010000000000000000000090046001600160a01b031660408301525b606082015161ffff1661313a5780547e01000000000000000000000000000000000000000000000000000000000000900461ffff1660608301525b608082015167ffffffffffffffff1661316257600181015467ffffffffffffffff1660808301525b60a08201516001600160a01b031661164957600101546801000000000000000090046001600160a01b031660a08201529392505050565b60008282018381101561164b576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60008151600014156132ce5761ffff808716600090815260086020908152604080832060608a015190941683529281529082902080548351601f60027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff610100600186161502019093169290920491820184900484028101840190945280845290918301828280156132c65780601f1061329b576101008083540402835291602001916132c6565b820191906000526020600020905b8154815290600101906020018083116132a957829003601f168201915b505050505091505b604080860151606087015191517f5886ea65000000000000000000000000000000000000000000000000000000008152909182916001600160a01b03831691635886ea6591613327918c918b908b908b906004016150a5565b602060405180830381600087803b15801561334157600080fd5b505af1158015613355573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133799190614295565b92506133858284613680565b7fb0c632f55f1e1b3b2c3d82f41ee4716bb4c00f0f5d84cdafc141581bb8757a4f8488606001516040516133ba929190614534565b60405180910390a1505095945050505050565b60a0820151606083015160808401516040517fc5e193cd000000000000000000000000000000000000000000000000000000008152600093926001600160a01b0384169263c5e193cd92613429928a92909189906004016150e1565b602060405180830381600087803b15801561344357600080fd5b505af1158015613457573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061347b9190614295565b91506116498183613680565b6000806001600160a01b03831615806134a957506002546001600160a01b0316155b6003546040517f5cbbbd750000000000000000000000000000000000000000000000000000000081529192506000916001600160a01b0390911690635cbbbd75906134fd908515908b908b906004016144ab565b60206040518083038186803b15801561351557600080fd5b505afa158015613529573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061354d9190614295565b905080156135e757811561357a576003546001600160a01b03166135718183613680565b819350506135e7565b846001600160a01b0316846001600160a01b031614806135a257506001600160a01b03841632145b6135be5760405162461bcd60e51b81526004016108f290614893565b6002546135d6906001600160a01b03168530846136c3565b6005546135e39082613199565b6005555b5050949350505050565b3390565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb00000000000000000000000000000000000000000000000000000000179052613675908490613751565b505050565b3b151590565b6001600160a01b0382166000908152600460205260409020546136a39082613199565b6001600160a01b0390921660009081526004602052604090209190915550565b604080516001600160a01b0380861660248301528416604482015260648082018490528251808303909101815260849091019091526020810180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f23b872dd0000000000000000000000000000000000000000000000000000000017905261374b908590613751565b50505050565b60006137a6826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166138029092919063ffffffff16565b805190915015613675578080602001905160208110156137c557600080fd5b50516136755760405162461bcd60e51b815260040180806020018281038252602a815260200180615260602a913960400191505060405180910390fd5b60606127018484600085856138168561367a565b613867576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b600080866001600160a01b031685876040518082805190602001908083835b602083106138c357805182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe09092019160209182019101613886565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114613925576040519150601f19603f3d011682016040523d82523d6000602084013e61392a565b606091505b509150915061393a828286613945565b979650505050505050565b6060831561395457508161164b565b8251156139645782518084602001fd5b8160405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156139ae578181015183820152602001613996565b50505050905090810190601f1680156139db5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b828054600181600116156101000203166002900490600052602060002090601f016020900481019282613a1f5760008555613a83565b82601f10613a56578280017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00823516178555613a83565b82800160010185558215613a83579182015b82811115613a83578235825591602001919060010190613a68565b50613a8f929150613b06565b5090565b6040805160e08101825260008082526020820181905291810182905260608082018390526080820181905260a082019290925260c081019190915290565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a081019190915290565b5b80821115613a8f5760008155600101613b07565b80356117b0816151fb565b80516117b0816151fb565b60008083601f840112613b42578182fd5b50813567ffffffffffffffff811115613b59578182fd5b602083019150836020828501011115613b7157600080fd5b9250929050565b600082601f830112613b88578081fd5b815167ffffffffffffffff811115613b9c57fe5b613bcd60207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f84011601615183565b818152846020838601011115613be1578283fd5b6127018260208301602087016151cf565b80356117b081615213565b80516117b081615213565b80356117b081615223565b80516117b081615223565b600060208284031215613c2f578081fd5b813561164b816151fb565b60008060408385031215613c4c578081fd5b8235613c57816151fb565b946020939093013593505050565b60008060408385031215613c77578182fd5b8235613c82816151fb565b91506020830135613c9281615213565b809150509250929050565b60008060008060808587031215613cb2578182fd5b8435613cbd816151fb565b93506020850135613ccd81615213565b93969395505050506040820135916060013590565b60008060408385031215613c4c578182fd5b60008060008060008060008060008060006101008c8e031215613d15578687fd5b613d1e8c613b1b565b9a50613d2c60208d01613c08565b9950613d3a60408d01613bf2565b985067ffffffffffffffff8060608e01351115613d55578788fd5b613d658e60608f01358f01613b31565b909950975060808d0135811015613d7a578687fd5b613d8a8e60808f01358f01613b31565b9097509550613d9b60a08e01613b1b565b9450613da960c08e01613b1b565b93508060e08e01351115613dbb578283fd5b50613dcc8d60e08e01358e01613b31565b81935080925050509295989b509295989b9093969950565b600060208284031215613df5578081fd5b815167ffffffffffffffff80821115613e0c578283fd5b9083019060e08286031215613e1f578283fd5b613e2960e0615183565b613e3283613bfd565b8152613e4060208401613bfd565b6020820152613e5160408401613c13565b6040820152613e6260608401613b26565b6060820152608083015182811115613e78578485fd5b613e8487828601613b78565b60808301525060a083015160a082015260c083015182811115613ea5578485fd5b613eb187828601613b78565b60c08301525095945050505050565b600060208284031215613ed1578081fd5b813561164b81615213565b60008060408385031215613eee578182fd5b8235613ef981615213565b91506020830135613c92816151fb565b600080600080600080600060a0888a031215613f23578081fd5b8735613f2e81615213565b96506020880135613f3e816151fb565b9550604088013567ffffffffffffffff80821115613f5a578283fd5b613f668b838c01613b31565b909750955060608a013591508115158214613f7f578283fd5b90935060808901359080821115613f94578283fd5b50613fa18a828b01613b31565b989b979a50959850939692959293505050565b600080600060608486031215613fc8578081fd5b8335613fd381615213565b92506020840135613fe3816151fb565b929592945050506040919091013590565b600080600080600080600060c0888a03121561400e578081fd5b873561401981615213565b96506020880135614029816151fb565b955060408801359450606088013593506080880135925060a088013567ffffffffffffffff811115614059578182fd5b613fa18a828b01613b31565b60008060008060006080868803121561407c578283fd5b853561408781615213565b94506020860135614097816151fb565b935060408601359250606086013567ffffffffffffffff8111156140b9578182fd5b6140c588828901613b31565b969995985093965092949392505050565b600080604083850312156140e8578182fd5b8235613c5781615213565b60008060008060808587031215614108578182fd5b843561411381615213565b966020860135965060408601359560600135945092505050565b600080600060408486031215614141578081fd5b833561414c81615213565b9250602084013567ffffffffffffffff811115614167578182fd5b61417386828701613b31565b9497909650939450505050565b60008060408385031215614192578182fd5b8235613c8281615213565b600080600080606085870312156141b2578182fd5b84356141bd81615213565b935060208501356141cd81615213565b9250604085013567ffffffffffffffff8111156141e8578283fd5b6141f487828801613b31565b95989497509550505050565b600080600080600080600060e0888a03121561421a578081fd5b873561422581615213565b9650602088013561423581615213565b9550604088013561424581615223565b94506060880135614255816151fb565b9350608088013561426581615213565b925060a088013561427581615223565b915060c0880135614285816151fb565b8091505092959891949750929550565b6000602082840312156142a6578081fd5b5051919050565b6000602082840312156142be578081fd5b813561164b81615223565b6000602082840312156142da578081fd5b815161164b81615223565b600082845282826020860137806020848601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f85011685010190509392505050565b600081518084526143458160208601602086016151cf565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b600083516143898184602088016151cf565b60609390931b7fffffffffffffffffffffffffffffffffffffffff000000000000000000000000169190920190815260140192915050565b90565b60007fffffffffffffffff0000000000000000000000000000000000000000000000008860c01b1682527fffff000000000000000000000000000000000000000000000000000000000000808860f01b1660088401527fffffffffffffffffffffffffffffffffffffffff0000000000000000000000008760601b16600a840152808660f01b16601e8401525083516144648160208501602088016151cf565b8083019050835161447c8160208401602088016151cf565b0160200198975050505050505050565b6001600160a01b0391909116815260200190565b901515815260200190565b92151583526020830191909152604082015260600190565b90815260200190565b9283526020830191909152604082015260600190565b6000858252606060208301526144fc6060830185876142e5565b905082604083015295945050505050565b6000602082526127016020830184866142e5565b60006020825261164b602083018461432d565b600060408252614547604083018561432d565b905061ffff831660208301529392505050565b60006060825261456d606083018661432d565b67ffffffffffffffff9490941660208301525060400152919050565b60208082526026908201527f4c617965725a65726f3a20696e76616c6964206f7574626f756e642070726f6f60408201527f6620747970650000000000000000000000000000000000000000000000000000606082015260800190565b60208082526024908201527f4c617965725a65726f3a20647374436861696e496420646f6573206e6f74206560408201527f7869737400000000000000000000000000000000000000000000000000000000606082015260800190565b60208082526018908201527f4c617965725a65726f3a206f6e6c792074726561737572790000000000000000604082015260600190565b6020808252601e908201527f4c617965725a65726f3a20496e76616c696420636f6e66696720747970650000604082015260600190565b6020808252601a908201527f4c617965725a65726f3a207769746864726177206661696c6564000000000000604082015260600190565b60208082526025908201527f4c617965725a65726f3a206e6f7420656e6f756768206e617469766520666f7260408201527f2066656573000000000000000000000000000000000000000000000000000000606082015260800190565b60208082526025908201527f4c617965725a65726f3a205f746f2063616e6e6f74206265207a65726f20616460408201527f6472657373000000000000000000000000000000000000000000000000000000606082015260800190565b60208082526031908201527f4c617965725a65726f3a205f6c617965725a65726f546f6b656e2063616e6e6f60408201527f74206265207a65726f2061646472657373000000000000000000000000000000606082015260800190565b60208082526022908201527f4c617965725a65726f3a20696e76616c69642072656c6179657220616464726560408201527f7373000000000000000000000000000000000000000000000000000000000000606082015260800190565b6020808252601b908201527f4c617965725a65726f3a206661696c656420746f20726566756e640000000000604082015260600190565b6020808252602b908201527f4c617965725a65726f3a206d75737420626520706169642062792073656e646560408201527f72206f72206f726967696e000000000000000000000000000000000000000000606082015260800190565b6020808252601d908201527f4c617965725a65726f3a20696e76616c69642064737441646472657373000000604082015260600190565b60208082526021908201527f4c617965725a65726f3a20696e76616c6964206f7261636c652061646472657360408201527f7300000000000000000000000000000000000000000000000000000000000000606082015260800190565b60208082526025908201527f4c617965725a65726f3a20696e76616c6964205f7061636b65742e756c6e416460408201527f6472657373000000000000000000000000000000000000000000000000000000606082015260800190565b6020808252601e908201527f4c617965725a65726f3a20696e76616c696420737263436861696e2049640000604082015260600190565b6020808252601a908201527f4c617965725a65726f3a20696e76616c69642072656c61796572000000000000604082015260600190565b6020808252601a908201527f4c617965725a65726f3a2077726f6e6720706174682064617461000000000000604082015260600190565b60208082526029908201527f4c617965725a65726f3a206c6962726172792063616e6e6f74206265207a657260408201527f6f20616464726573730000000000000000000000000000000000000000000000606082015260800190565b60208082526043908201527f4c617965725a65726f3a206f7261636c6520646174612063616e206f6e6c792060408201527f75706461746520696620697420686173206d6f726520636f6e6669726d61746960608201527f6f6e730000000000000000000000000000000000000000000000000000000000608082015260a00190565b6020808252601e908201527f4c617965725a65726f3a20696e76616c696420647374436861696e2049640000604082015260600190565b60208082526030908201527f4c617965725a65726f3a20696e76616c696420696e626f756e642070726f6f6660408201527f206c6962726172792076657273696f6e00000000000000000000000000000000606082015260800190565b60208082526022908201527f4c617965725a65726f3a20696e76616c6964207372634164647265737320736960408201527f7a65000000000000000000000000000000000000000000000000000000000000606082015260800190565b6020808252602a908201527f4c617965725a65726f3a2074726561737572792063616e6e6f74206265207a6560408201527f726f206164647265737300000000000000000000000000000000000000000000606082015260800190565b60208082526021908201527f4c617965725a65726f3a2072656d6f746520756c6e20616c726561647920736560408201527f7400000000000000000000000000000000000000000000000000000000000000606082015260800190565b60208082526022908201527f4c617965725a65726f3a2063616e206e6f7420616464206e6577206c6962726160408201527f7279000000000000000000000000000000000000000000000000000000000000606082015260800190565b60208082526018908201527f4c617965725a65726f3a206f6e6c7920656e64706f696e740000000000000000604082015260600190565b6020808252602e908201527f4c617965725a65726f3a20696e76616c6964206f7574626f756e6420626c6f6360408201527f6b20636f6e6669726d6174696f6e000000000000000000000000000000000000606082015260800190565b60208082526028908201527f4c617965725a65726f3a20696e636f72726563742072656d6f7465206164647260408201527f6573732073697a65000000000000000000000000000000000000000000000000606082015260800190565b60208082526030908201527f4c617965725a65726f3a2072656d6f746520636861696e20616464726573732060408201527f73697a6520616c72656164792073657400000000000000000000000000000000606082015260800190565b6020808252602d908201527f4c617965725a65726f3a20696e76616c696420696e626f756e6420626c6f636b60408201527f20636f6e6669726d6174696f6e00000000000000000000000000000000000000606082015260800190565b60208082526029908201527f4c617965725a65726f3a206e6f7420656e6f75676820626c6f636b20636f6e6660408201527f69726d6174696f6e730000000000000000000000000000000000000000000000606082015260800190565b600060c08201905061ffff808451168352602084015167ffffffffffffffff8082166020860152604086015191506001600160a01b0380831660408701528360608801511660608701528160808801511660808701528060a08801511660a08701525050505092915050565b61ffff91909116815260200190565b600061ffff851682526001600160a01b03841660208301526060604083015261501d606083018461432d565b95945050505050565b600061ffff851682526040602083015261501d6040830184866142e5565b600061ffff8816825260c0602083015261506160c083018861432d565b6001600160a01b038716604084015267ffffffffffffffff8616606084015284608084015282810360a0840152615098818561432d565b9998505050505050505050565b600061ffff80881683528087166020840152506001600160a01b038516604083015283606083015260a0608083015261393a60a083018461432d565b61ffff948516815292909316602083015267ffffffffffffffff1660408201526001600160a01b03909116606082015260800190565b61ffff968716815267ffffffffffffffff95861660208201526001600160a01b03948516604082015292909516606083015290921660808301529190911660a082015260c00190565b918252602082015260400190565b67ffffffffffffffff91909116815260200190565b60405181810167ffffffffffffffff8111828210171561519f57fe5b604052919050565b600080858511156151b6578182fd5b838611156151c2578182fd5b5050820193919092039150565b60005b838110156151ea5781810151838201526020016151d2565b8381111561374b5750506000910152565b6001600160a01b038116811461521057600080fd5b50565b61ffff8116811461521057600080fd5b67ffffffffffffffff8116811461521057600080fdfe4f776e61626c653a206e6577206f776e657220697320746865207a65726f20616464726573735361666545524332303a204552433230206f7065726174696f6e20646964206e6f742073756363656564a2646970667358221220dc6fc63e061b7f8d887a5dcc9daf06630498d5f3c9e5ed30999f3b436f801b0664736f6c63430007060033",
|
|
1421
1421
|
"linkReferences": {},
|
|
1422
1422
|
"deployedLinkReferences": {}
|
|
1423
1423
|
}
|
|
@@ -183,6 +183,19 @@
|
|
|
183
183
|
"stateMutability": "view",
|
|
184
184
|
"type": "function"
|
|
185
185
|
},
|
|
186
|
+
{
|
|
187
|
+
"inputs": [],
|
|
188
|
+
"name": "maxBatchSize",
|
|
189
|
+
"outputs": [
|
|
190
|
+
{
|
|
191
|
+
"internalType": "uint64",
|
|
192
|
+
"name": "",
|
|
193
|
+
"type": "uint64"
|
|
194
|
+
}
|
|
195
|
+
],
|
|
196
|
+
"stateMutability": "view",
|
|
197
|
+
"type": "function"
|
|
198
|
+
},
|
|
186
199
|
{
|
|
187
200
|
"inputs": [
|
|
188
201
|
{
|
|
@@ -234,6 +247,45 @@
|
|
|
234
247
|
"stateMutability": "view",
|
|
235
248
|
"type": "function"
|
|
236
249
|
},
|
|
250
|
+
{
|
|
251
|
+
"inputs": [],
|
|
252
|
+
"name": "precrimeAdmin",
|
|
253
|
+
"outputs": [
|
|
254
|
+
{
|
|
255
|
+
"internalType": "address",
|
|
256
|
+
"name": "",
|
|
257
|
+
"type": "address"
|
|
258
|
+
}
|
|
259
|
+
],
|
|
260
|
+
"stateMutability": "view",
|
|
261
|
+
"type": "function"
|
|
262
|
+
},
|
|
263
|
+
{
|
|
264
|
+
"inputs": [
|
|
265
|
+
{
|
|
266
|
+
"internalType": "uint64",
|
|
267
|
+
"name": "_maxBatchSize",
|
|
268
|
+
"type": "uint64"
|
|
269
|
+
}
|
|
270
|
+
],
|
|
271
|
+
"name": "setMaxBatchSize",
|
|
272
|
+
"outputs": [],
|
|
273
|
+
"stateMutability": "nonpayable",
|
|
274
|
+
"type": "function"
|
|
275
|
+
},
|
|
276
|
+
{
|
|
277
|
+
"inputs": [
|
|
278
|
+
{
|
|
279
|
+
"internalType": "address",
|
|
280
|
+
"name": "_precrimeAdmin",
|
|
281
|
+
"type": "address"
|
|
282
|
+
}
|
|
283
|
+
],
|
|
284
|
+
"name": "setPrecrimeAdmin",
|
|
285
|
+
"outputs": [],
|
|
286
|
+
"stateMutability": "nonpayable",
|
|
287
|
+
"type": "function"
|
|
288
|
+
},
|
|
237
289
|
{
|
|
238
290
|
"inputs": [
|
|
239
291
|
{
|
|
@@ -135,6 +135,19 @@
|
|
|
135
135
|
"stateMutability": "view",
|
|
136
136
|
"type": "function"
|
|
137
137
|
},
|
|
138
|
+
{
|
|
139
|
+
"inputs": [],
|
|
140
|
+
"name": "maxBatchSize",
|
|
141
|
+
"outputs": [
|
|
142
|
+
{
|
|
143
|
+
"internalType": "uint64",
|
|
144
|
+
"name": "",
|
|
145
|
+
"type": "uint64"
|
|
146
|
+
}
|
|
147
|
+
],
|
|
148
|
+
"stateMutability": "view",
|
|
149
|
+
"type": "function"
|
|
150
|
+
},
|
|
138
151
|
{
|
|
139
152
|
"inputs": [
|
|
140
153
|
{
|
|
@@ -186,6 +199,45 @@
|
|
|
186
199
|
"stateMutability": "view",
|
|
187
200
|
"type": "function"
|
|
188
201
|
},
|
|
202
|
+
{
|
|
203
|
+
"inputs": [],
|
|
204
|
+
"name": "precrimeAdmin",
|
|
205
|
+
"outputs": [
|
|
206
|
+
{
|
|
207
|
+
"internalType": "address",
|
|
208
|
+
"name": "",
|
|
209
|
+
"type": "address"
|
|
210
|
+
}
|
|
211
|
+
],
|
|
212
|
+
"stateMutability": "view",
|
|
213
|
+
"type": "function"
|
|
214
|
+
},
|
|
215
|
+
{
|
|
216
|
+
"inputs": [
|
|
217
|
+
{
|
|
218
|
+
"internalType": "uint64",
|
|
219
|
+
"name": "_maxBatchSize",
|
|
220
|
+
"type": "uint64"
|
|
221
|
+
}
|
|
222
|
+
],
|
|
223
|
+
"name": "setMaxBatchSize",
|
|
224
|
+
"outputs": [],
|
|
225
|
+
"stateMutability": "nonpayable",
|
|
226
|
+
"type": "function"
|
|
227
|
+
},
|
|
228
|
+
{
|
|
229
|
+
"inputs": [
|
|
230
|
+
{
|
|
231
|
+
"internalType": "address",
|
|
232
|
+
"name": "_precrimeAdmin",
|
|
233
|
+
"type": "address"
|
|
234
|
+
}
|
|
235
|
+
],
|
|
236
|
+
"name": "setPrecrimeAdmin",
|
|
237
|
+
"outputs": [],
|
|
238
|
+
"stateMutability": "nonpayable",
|
|
239
|
+
"type": "function"
|
|
240
|
+
},
|
|
189
241
|
{
|
|
190
242
|
"inputs": [],
|
|
191
243
|
"name": "version",
|
|
@@ -148,6 +148,19 @@
|
|
|
148
148
|
"stateMutability": "view",
|
|
149
149
|
"type": "function"
|
|
150
150
|
},
|
|
151
|
+
{
|
|
152
|
+
"inputs": [],
|
|
153
|
+
"name": "maxBatchSize",
|
|
154
|
+
"outputs": [
|
|
155
|
+
{
|
|
156
|
+
"internalType": "uint64",
|
|
157
|
+
"name": "",
|
|
158
|
+
"type": "uint64"
|
|
159
|
+
}
|
|
160
|
+
],
|
|
161
|
+
"stateMutability": "view",
|
|
162
|
+
"type": "function"
|
|
163
|
+
},
|
|
151
164
|
{
|
|
152
165
|
"inputs": [
|
|
153
166
|
{
|
|
@@ -199,6 +212,45 @@
|
|
|
199
212
|
"stateMutability": "view",
|
|
200
213
|
"type": "function"
|
|
201
214
|
},
|
|
215
|
+
{
|
|
216
|
+
"inputs": [],
|
|
217
|
+
"name": "precrimeAdmin",
|
|
218
|
+
"outputs": [
|
|
219
|
+
{
|
|
220
|
+
"internalType": "address",
|
|
221
|
+
"name": "",
|
|
222
|
+
"type": "address"
|
|
223
|
+
}
|
|
224
|
+
],
|
|
225
|
+
"stateMutability": "view",
|
|
226
|
+
"type": "function"
|
|
227
|
+
},
|
|
228
|
+
{
|
|
229
|
+
"inputs": [
|
|
230
|
+
{
|
|
231
|
+
"internalType": "uint64",
|
|
232
|
+
"name": "_maxBatchSize",
|
|
233
|
+
"type": "uint64"
|
|
234
|
+
}
|
|
235
|
+
],
|
|
236
|
+
"name": "setMaxBatchSize",
|
|
237
|
+
"outputs": [],
|
|
238
|
+
"stateMutability": "nonpayable",
|
|
239
|
+
"type": "function"
|
|
240
|
+
},
|
|
241
|
+
{
|
|
242
|
+
"inputs": [
|
|
243
|
+
{
|
|
244
|
+
"internalType": "address",
|
|
245
|
+
"name": "_precrimeAdmin",
|
|
246
|
+
"type": "address"
|
|
247
|
+
}
|
|
248
|
+
],
|
|
249
|
+
"name": "setPrecrimeAdmin",
|
|
250
|
+
"outputs": [],
|
|
251
|
+
"stateMutability": "nonpayable",
|
|
252
|
+
"type": "function"
|
|
253
|
+
},
|
|
202
254
|
{
|
|
203
255
|
"inputs": [
|
|
204
256
|
{
|