@venusprotocol/venus-periphery 1.2.0-slim-dev.2 → 1.2.0-slim-dev.3
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/Interfaces/IVBNB.sol/IVBNB.json +7 -0
- package/artifacts/contracts/PositionSwapper/PositionSwapper.sol/PositionSwapper.json +2 -2
- package/artifacts/contracts/SwapRouter/ISwapRouter.sol/ISwapRouter.json +189 -0
- package/artifacts/contracts/SwapRouter/SwapRouter.sol/SwapRouter.json +627 -0
- package/deployments/bscmainnet_addresses.json +3 -0
- package/deployments/bsctestnet_addresses.json +4 -1
- package/package.json +1 -1
|
@@ -653,8 +653,8 @@
|
|
|
653
653
|
"type": "receive"
|
|
654
654
|
}
|
|
655
655
|
],
|
|
656
|
-
"bytecode": "0x60c060405234801561000f575f80fd5b50604051612ead380380612ead83398101604081905261002e91610155565b6001600160a01b0382166100555760405163d92e233d60e01b815260040160405180910390fd5b6001600160a01b03811661007c5760405163d92e233d60e01b815260040160405180910390fd5b6001600160a01b03808316608052811660a05261009761009e565b50506101e9565b5f54610100900460ff16156100ce5760405162461bcd60e51b81526004016100c59061018f565b60405180910390fd5b5f5460ff90811614610120575f805460ff191660ff9081179091556040517f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249891610117916101da565b60405180910390a15b565b5f6001600160a01b0382165b92915050565b61013d81610122565b8114610147575f80fd5b50565b805161012e81610134565b5f8060408385031215610169576101695f80fd5b5f610174858561014a565b92505060206101858582860161014a565b9150509250929050565b6020808252810161012e81602781527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469602082015266616c697a696e6760c81b604082015260600190565b60ff821681526020810161012e565b60805160a051612c486102655f395f8181610273015281816110cb0152818161117201526118c701525f818161018401528181610cc001528181610d6f01528181610e340152818161153d015281816115ec015281816116b101528181611de701528181611e7b01528181611f0f015261203d0152612c485ff3fe6080604052600436106100f2575f3560e01c8063ab803a7611610087578063cf7ae74711610057578063cf7ae74714610295578063d92ae424146102b4578063e30c3978146102c7578063f2fde38b146102e4575f80fd5b8063ab803a7614610228578063b7d044b41461023c578063c2c800411461024f578063cdaa21b714610262575f80fd5b8063715018a6116100c2578063715018a6146101c657806379ba5097146101da5780638129fc1c146101ee5780638da5cb5b14610202575f80fd5b80631be19560146100fd57806329bbf7da1461011e5780635f82c67e1461017357806365567616146101b3575f80fd5b366100f957005b5f80fd5b348015610108575f80fd5b5061011c6101173660046124a5565b610303565b005b348015610129575f80fd5b5061015d6101383660046124d7565b60c960209081525f938452604080852082529284528284209052825290205460ff1681565b60405161016a919061252d565b60405180910390f35b34801561017e575f80fd5b506101a67f000000000000000000000000000000000000000000000000000000000000000081565b60405161016a919061254e565b61011c6101c136600461256d565b610401565b3480156101d1575f80fd5b5061011c610518565b3480156101e5575f80fd5b5061011c61052b565b3480156101f9575f80fd5b5061011c61056c565b34801561020d575f80fd5b506033546001600160a01b03165b60405161016a91906125e9565b348015610233575f80fd5b5061011c61063c565b61011c61024a3660046125f7565b610725565b61011c61025d3660046125f7565b61081f565b34801561026d575f80fd5b5061021b7f000000000000000000000000000000000000000000000000000000000000000081565b3480156102a0575f80fd5b5061011c6102af36600461266a565b610901565b61011c6102c236600461256d565b610a3c565b3480156102d2575f80fd5b506065546001600160a01b031661021b565b3480156102ef575f80fd5b5061011c6102fe3660046126be565b610b39565b61030b610baa565b6040516370a0823160e01b81525f906001600160a01b038316906370a08231906103399030906004016125e9565b602060405180830381865afa158015610354573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061037891906126e7565b905080156103fd576103a66103956033546001600160a01b031690565b6001600160a01b0384169083610bd4565b6033546001600160a01b03166001600160a01b0316826001600160a01b03167f6d25be279134f4ecaa4770aff0c3d916d9e7c5ef37b65ed95dbdba411f5d54d5836040516103f4919061270b565b60405180910390a35b5050565b610409610c2f565b815f0361042957604051631f2a200560e01b815260040160405180910390fd5b6040516305eff7ef60e21b81526001600160a01b038516906317bfdfbc906104559088906004016125e9565b6020604051808303815f875af1158015610471573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061049591906126e7565b8211156104b557604051634f9b783360e11b815260040160405180910390fd5b6104c28585858585610c58565b846001600160a01b03167f8af976c539635a1ce04ceed3e7074ccfeed7f41cec869ebb7f513addad09129e8585856040516104ff93929190612719565b60405180910390a26105116001609755565b5050505050565b610520610baa565b6105295f611460565b565b60655433906001600160a01b031681146105605760405162461bcd60e51b815260040161055790612789565b60405180910390fd5b61056981611460565b50565b5f54610100900460ff161580801561058a57505f54600160ff909116105b806105a35750303b1580156105a357505f5460ff166001145b6105bf5760405162461bcd60e51b8152600401610557906127e3565b5f805460ff1916600117905580156105e0575f805461ff0019166101001790555b6105e8611479565b6105f06114a7565b8015610569575f805461ff00191690556040517f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989061063190600190612806565b60405180910390a150565b610644610baa565b478015610569575f61065e6033546001600160a01b031690565b6001600160a01b03168260405161067490612814565b5f6040518083038185875af1925050503d805f81146106ae576040519150601f19603f3d011682016040523d82523d5f602084013e6106b3565b606091505b50509050806106d5576040516312171d8360e31b815260040160405180910390fd5b6033546001600160a01b03166001600160a01b03167f0a1dd7c5bdc40ecbdefc1bfda22f1dfb98c8fc3e3940aab73ad7fba37720d0a083604051610719919061270b565b60405180910390a25050565b61072d610c2f565b6040516370a0823160e01b81525f906001600160a01b038516906370a082319061075b9088906004016125e9565b602060405180830381865afa158015610776573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061079a91906126e7565b9050805f036107bc57604051636e71a00f60e11b815260040160405180910390fd5b6107c985858584866114d5565b846001600160a01b03167f737e1f3192d251f056cdde8166e2a30162c55da2fa8aadb02f70e576ab5332f185858460405161080693929190612719565b60405180910390a2506108196001609755565b50505050565b610827610c2f565b6040516305eff7ef60e21b81525f906001600160a01b038516906317bfdfbc906108559088906004016125e9565b6020604051808303815f875af1158015610871573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061089591906126e7565b9050805f036108b757604051634f9b783360e11b815260040160405180910390fd5b6108c48585858486610c58565b846001600160a01b03167f8af976c539635a1ce04ceed3e7074ccfeed7f41cec869ebb7f513addad09129e85858460405161080693929190612719565b610909610baa565b6001600160a01b038416158061092657506001600160a01b038316155b8061093857506001600160a01b038216155b156109565760405163d92e233d60e01b815260040160405180910390fd5b826001600160a01b0316846001600160a01b0316036109885760405163237f3f6360e11b815260040160405180910390fd5b6001600160a01b038085165f90815260c9602090815260408083208488168452825280832093861683529290528190205490517fdbd5515612e8e94fdd07c82da88d760b15ea2519640f14426e7fb1a3e2465e0e916109f29187918791879160ff1690879061281b565b60405180910390a16001600160a01b039384165f90815260c96020908152604080832095871683529481528482209390951681529190935220805460ff1916911515919091179055565b610a44610c2f565b815f03610a6457604051631f2a200560e01b815260040160405180910390fd5b6040516370a0823160e01b81526001600160a01b038516906370a0823190610a909088906004016125e9565b602060405180830381865afa158015610aab573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610acf91906126e7565b821115610aef57604051636e71a00f60e11b815260040160405180910390fd5b610afc85858585856114d5565b846001600160a01b03167f737e1f3192d251f056cdde8166e2a30162c55da2fa8aadb02f70e576ab5332f18585856040516104ff93929190612719565b610b41610baa565b606580546001600160a01b0383166001600160a01b03199091168117909155610b726033546001600160a01b031690565b6001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b6033546001600160a01b031633146105295760405162461bcd60e51b81526004016105579061289b565b610c2a8363a9059cbb60e01b8484604051602401610bf39291906128ab565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152611fa9565b505050565b600260975403610c515760405162461bcd60e51b8152600401610557906128f9565b6002609755565b6001600160a01b038085165f90815260c960209081526040808320878516845282528083209385168352929052205460ff16610ca75760405163681c44fd60e11b815260040160405180910390fd5b604051638e8f294b60e01b81525f906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690638e8f294b90610cf59088906004016125e9565b606060405180830381865afa158015610d10573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d349190612914565b5050905080610d585784604051635a9a1eb960e11b815260040161055791906125e9565b604051638e8f294b60e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690638e8f294b90610da49087906004016125e9565b606060405180830381865afa158015610dbf573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610de39190612914565b50909150819050610e095783604051635a9a1eb960e11b815260040161055791906125e9565b6001600160a01b0386163314801590610eac5750604051630217306760e31b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906310b9833890610e6b9089903390600401612956565b602060405180830381865afa158015610e86573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610eaa9190612971565b155b15610ecc573360405163472511eb60e11b815260040161055791906125e9565b610ed586612039565b5f846001600160a01b0316636f307dc36040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f12573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f36919061299a565b6040516370a0823160e01b815290915081905f906001600160a01b038316906370a0823190610f699030906004016125e9565b602060405180830381865afa158015610f84573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fa891906126e7565b90505f876001600160a01b031663856e5bb38b896040518363ffffffff1660e01b8152600401610fd99291906128ab565b6020604051808303815f875af1158015610ff5573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061101991906126e7565b9050801561103c578060405163158f1c0f60e01b8152600401610557919061270b565b5f82846001600160a01b03166370a08231306040518263ffffffff1660e01b815260040161106a91906125e9565b602060405180830381865afa158015611085573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110a991906126e7565b6110b391906129cc565b90506110c96001600160a01b03851688836120f9565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168a6001600160a01b0316036111f25760405163d2cd3cc960e01b815247906001600160a01b0389169063d2cd3cc9906111349089905f908790600401612719565b5f604051808303815f87803b15801561114b575f80fd5b505af115801561115d573d5f803e3d5ffd5b505050505f814761116e91906129cc565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663e5974619828f6040518363ffffffff1660e01b81526004016111bd91906125e9565b5f604051808303818588803b1580156111d4575f80fd5b505af11580156111e6573d5f803e3d5ffd5b50505050505050611443565b5f8a6001600160a01b0316636f307dc36040518163ffffffff1660e01b8152600401602060405180830381865afa15801561122f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611253919061299a565b90505f816001600160a01b03166370a08231306040518263ffffffff1660e01b815260040161128291906125e9565b602060405180830381865afa15801561129d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112c191906126e7565b60405163d2cd3cc960e01b81529091506001600160a01b038a169063d2cd3cc9906112f4908a9086908890600401612719565b5f604051808303815f87803b15801561130b575f80fd5b505af115801561131d573d5f803e3d5ffd5b505050505f81836001600160a01b03166370a08231306040518263ffffffff1660e01b815260040161134f91906125e9565b602060405180830381865afa15801561136a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061138e91906126e7565b61139891906129cc565b90506113ae6001600160a01b0384168e836120f9565b8c6001600160a01b0316632608f8188f836040518363ffffffff1660e01b81526004016113dc9291906128ab565b6020604051808303815f875af11580156113f8573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061141c91906126e7565b9450841561143f57846040516305e4427960e11b8152600401610557919061270b565b5050505b61144c8b612039565b5050505050505050505050565b6001609755565b606580546001600160a01b031916905561056981612180565b5f54610100900460ff1661149f5760405162461bcd60e51b815260040161055790612a26565b6105296121d1565b5f54610100900460ff166114cd5760405162461bcd60e51b815260040161055790612a26565b610529612200565b6001600160a01b038085165f90815260c960209081526040808320878516845282528083209385168352929052205460ff166115245760405163681c44fd60e11b815260040160405180910390fd5b604051638e8f294b60e01b81525f906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690638e8f294b906115729088906004016125e9565b606060405180830381865afa15801561158d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115b19190612914565b50509050806115d55784604051635a9a1eb960e11b815260040161055791906125e9565b604051638e8f294b60e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690638e8f294b906116219087906004016125e9565b606060405180830381865afa15801561163c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116609190612914565b509091508190506116865783604051635a9a1eb960e11b815260040161055791906125e9565b6001600160a01b03861633148015906117295750604051630217306760e31b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906310b98338906116e89089903390600401612956565b602060405180830381865afa158015611703573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117279190612971565b155b15611749573360405163472511eb60e11b815260040161055791906125e9565b61175285612226565b61175b86612039565b60405163b2a02ff160e01b81525f906001600160a01b0387169063b2a02ff19061178d9030908b908990600401612719565b6020604051808303815f875af11580156117a9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117cd91906126e7565b905080156117f05780604051634cec05ab60e01b8152600401610557919061270b565b5f856001600160a01b0316636f307dc36040518163ffffffff1660e01b8152600401602060405180830381865afa15801561182d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611851919061299a565b6040516370a0823160e01b815290915081905f906001600160a01b038316906370a08231906118849030906004016125e9565b602060405180830381865afa15801561189f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118c391906126e7565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316896001600160a01b031603611a235760405163db006a7560e01b815247906001600160a01b038b169063db006a759061192c908b9060040161270b565b6020604051808303815f875af1158015611948573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061196c91906126e7565b9450841561198f578460405163eeddaac560e01b8152600401610557919061270b565b5f61199a82476129cc565b9050805f036119bc5760405163080eb12160e41b815260040160405180910390fd5b60405163d2cd3cc960e01b81526001600160a01b0389169063d2cd3cc99083906119ee905f908a908490600401612719565b5f604051808303818588803b158015611a05575f80fd5b505af1158015611a17573d5f803e3d5ffd5b50505050505050611c92565b5f896001600160a01b0316636f307dc36040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a60573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a84919061299a565b90505f816001600160a01b03166370a08231306040518263ffffffff1660e01b8152600401611ab391906125e9565b602060405180830381865afa158015611ace573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611af291906126e7565b60405163db006a7560e01b81529091506001600160a01b038c169063db006a7590611b21908c9060040161270b565b6020604051808303815f875af1158015611b3d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b6191906126e7565b95508515611b84578560405163eeddaac560e01b8152600401610557919061270b565b5f81836001600160a01b03166370a08231306040518263ffffffff1660e01b8152600401611bb291906125e9565b602060405180830381865afa158015611bcd573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611bf191906126e7565b611bfb91906129cc565b9050805f03611c1d5760405163080eb12160e41b815260040160405180910390fd5b611c316001600160a01b0384168a836120f9565b60405163d2cd3cc960e01b81526001600160a01b038a169063d2cd3cc990611c619086908a908690600401612719565b5f604051808303815f87803b158015611c78575f80fd5b505af1158015611c8a573d5f803e3d5ffd5b505050505050505b5f81836001600160a01b03166370a08231306040518263ffffffff1660e01b8152600401611cc091906125e9565b602060405180830381865afa158015611cdb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cff91906126e7565b611d0991906129cc565b9050805f03611d2b5760405163080eb12160e41b815260040160405180910390fd5b611d3f6001600160a01b0384168a836120f9565b6040516323323e0360e01b81526001600160a01b038a16906323323e0390611d6d908e9085906004016128ab565b6020604051808303815f875af1158015611d89573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dad91906126e7565b94508415611dd0578460405163ac55121f60e01b8152600401610557919061270b565b60405163929fe9a160e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063929fe9a190611e1e908e908e90600401612a36565b602060405180830381865afa158015611e39573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e5d9190612971565b8015611ef3575060405163929fe9a160e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063929fe9a190611eb2908e908d90600401612a36565b602060405180830381865afa158015611ecd573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611ef19190612971565b155b156114435760405163124c8eb360e11b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906324991d6690611f46908e908d90600401612956565b6020604051808303815f875af1158015611f62573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611f8691906126e7565b945084156114435784604051631957d10560e31b8152600401610557919061270b565b5f611ffd826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166122ab9092919063ffffffff16565b905080515f148061201d57508080602001905181019061201d9190612971565b610c2a5760405162461bcd60e51b815260040161055790612a97565b5f807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635ec88c79846040518263ffffffff1660e01b815260040161208791906125e9565b606060405180830381865afa1580156120a2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906120c69190612aa7565b9250509150815f1415806120d957505f81115b15610c2a57816040516388785d6560e01b8152600401610557919061270b565b5f63095ea7b360e01b83836040516024016121159291906128ab565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152905061215384826122c3565b610819576121768463095ea7b360e01b855f604051602401610bf3929190612ae9565b6108198482611fa9565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166121f75760405162461bcd60e51b815260040161055790612a26565b61052933611460565b5f54610100900460ff166114595760405162461bcd60e51b815260040161055790612a26565b5f816001600160a01b031663a6afed956040518163ffffffff1660e01b81526004016020604051808303815f875af1158015612264573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061228891906126e7565b905080156103fd57806040516315fc6cbf60e21b8152600401610557919061270b565b60606122b984845f85612366565b90505b9392505050565b5f805f846001600160a01b0316846040516122de9190612b30565b5f604051808303815f865af19150503d805f8114612317576040519150601f19603f3d011682016040523d82523d5f602084013e61231c565b606091505b50915091508180156123465750805115806123465750808060200190518101906123469190612971565b801561235b57506001600160a01b0385163b15155b925050505b92915050565b6060824710156123885760405162461bcd60e51b815260040161055790612b7d565b5f80866001600160a01b031685876040516123a39190612b30565b5f6040518083038185875af1925050503d805f81146123dd576040519150601f19603f3d011682016040523d82523d5f602084013e6123e2565b606091505b50915091506123f387838387612400565b925050505b949350505050565b6060831561243e5782515f03612437576001600160a01b0385163b6124375760405162461bcd60e51b815260040161055790612bc0565b50816123f8565b6123f883838151156124535781518083602001fd5b8060405162461bcd60e51b81526004016105579190612c01565b5f6001600160a01b038216612360565b5f6123608261246d565b6124908161247d565b8114610569575f80fd5b803561236081612487565b5f602082840312156124b8576124b85f80fd5b5f6123f8848461249a565b6124908161246d565b8035612360816124c3565b5f805f606084860312156124ec576124ec5f80fd5b5f6124f786866124cc565b9350506020612508868287016124cc565b9250506040612519868287016124cc565b9150509250925092565b8015155b82525050565b602081016123608284612523565b5f6123608261247d565b6125278161253b565b602081016123608284612545565b80612490565b80356123608161255c565b5f805f805f60a08688031215612584576125845f80fd5b5f61258f88886124cc565b95505060206125a08882890161249a565b94505060406125b18882890161249a565b93505060606125c288828901612562565b92505060806125d38882890161249a565b9150509295509295909350565b6125278161246d565b6020810161236082846125e0565b5f805f806080858703121561260d5761260d5f80fd5b5f61261887876124cc565b94505060206126298782880161249a565b935050604061263a8782880161249a565b925050606061264b8782880161249a565b91505092959194509250565b801515612490565b803561236081612657565b5f805f8060808587031215612680576126805f80fd5b5f61268b87876124cc565b945050602061269c878288016124cc565b93505060406126ad878288016124cc565b925050606061264b8782880161265f565b5f602082840312156126d1576126d15f80fd5b5f6123f884846124cc565b80516123608161255c565b5f602082840312156126fa576126fa5f80fd5b5f6123f884846126dc565b80612527565b602081016123608284612705565b6060810161272782866125e0565b61273460208301856125e0565b6123f86040830184612705565b602981525f602082017f4f776e61626c6532537465703a2063616c6c6572206973206e6f7420746865208152683732bb9037bbb732b960b91b602082015291505b5060400190565b6020808252810161236081612741565b602e81525f602082017f496e697469616c697a61626c653a20636f6e747261637420697320616c72656181526d191e481a5b9a5d1a585b1a5e995960921b60208201529150612782565b6020808252810161236081612799565b5f60ff8216612360565b612527816127f3565b6020810161236082846127fd565b5f81612360565b60a0810161282982886125e0565b61283660208301876125e0565b61284360408301866125e0565b6128506060830185612523565b61285d6080830184612523565b9695505050505050565b60208082527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657291019081525f5b5060200190565b6020808252810161236081612867565b604081016128b982856125e0565b6122bc6020830184612705565b601f81525f602082017f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0081529150612894565b60208082528101612360816128c6565b805161236081612657565b5f805f60608486031215612929576129295f80fd5b5f6129348686612909565b9350506020612945868287016126dc565b925050604061251986828701612909565b6040810161296482856125e0565b6122bc60208301846125e0565b5f60208284031215612984576129845f80fd5b5f6123f88484612909565b8051612360816124c3565b5f602082840312156129ad576129ad5f80fd5b5f6123f8848461298f565b634e487b7160e01b5f52601160045260245ffd5b81810381811115612360576123606129b8565b602b81525f602082017f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206981526a6e697469616c697a696e6760a81b60208201529150612782565b60208082528101612360816129df565b60408101612a4482856125e0565b6122bc6020830184612545565b602a81525f602082017f5361666545524332303a204552433230206f7065726174696f6e20646964206e8152691bdd081cdd58d8d9595960b21b60208201529150612782565b6020808252810161236081612a51565b5f805f60608486031215612abc57612abc5f80fd5b5f612ac786866126dc565b9350506020612ad8868287016126dc565b9250506040612519868287016126dc565b60408101612af782856125e0565b6122bc60208301846127fd565b8281835e505f910152565b5f612b18825190565b612b26818560208601612b04565b9290920192915050565b5f6122bc8284612b0f565b602681525f602082017f416464726573733a20696e73756666696369656e742062616c616e636520666f8152651c8818d85b1b60d21b60208201529150612782565b6020808252810161236081612b3b565b601d81525f602082017f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000081529150612894565b6020808252810161236081612b8d565b5f612bd9825190565b808452602084019350612bf0818560208601612b04565b601f01601f19169290920192915050565b602080825281016122bc8184612bd056fea2646970667358221220c1e6cf6f23771bd09e99671bbb0547ee7d56386d82c4103ff3e0a89b23c1790464736f6c63430008190033",
|
|
657
|
-
"deployedBytecode": "0x6080604052600436106100f2575f3560e01c8063ab803a7611610087578063cf7ae74711610057578063cf7ae74714610295578063d92ae424146102b4578063e30c3978146102c7578063f2fde38b146102e4575f80fd5b8063ab803a7614610228578063b7d044b41461023c578063c2c800411461024f578063cdaa21b714610262575f80fd5b8063715018a6116100c2578063715018a6146101c657806379ba5097146101da5780638129fc1c146101ee5780638da5cb5b14610202575f80fd5b80631be19560146100fd57806329bbf7da1461011e5780635f82c67e1461017357806365567616146101b3575f80fd5b366100f957005b5f80fd5b348015610108575f80fd5b5061011c6101173660046124a5565b610303565b005b348015610129575f80fd5b5061015d6101383660046124d7565b60c960209081525f938452604080852082529284528284209052825290205460ff1681565b60405161016a919061252d565b60405180910390f35b34801561017e575f80fd5b506101a67f000000000000000000000000000000000000000000000000000000000000000081565b60405161016a919061254e565b61011c6101c136600461256d565b610401565b3480156101d1575f80fd5b5061011c610518565b3480156101e5575f80fd5b5061011c61052b565b3480156101f9575f80fd5b5061011c61056c565b34801561020d575f80fd5b506033546001600160a01b03165b60405161016a91906125e9565b348015610233575f80fd5b5061011c61063c565b61011c61024a3660046125f7565b610725565b61011c61025d3660046125f7565b61081f565b34801561026d575f80fd5b5061021b7f000000000000000000000000000000000000000000000000000000000000000081565b3480156102a0575f80fd5b5061011c6102af36600461266a565b610901565b61011c6102c236600461256d565b610a3c565b3480156102d2575f80fd5b506065546001600160a01b031661021b565b3480156102ef575f80fd5b5061011c6102fe3660046126be565b610b39565b61030b610baa565b6040516370a0823160e01b81525f906001600160a01b038316906370a08231906103399030906004016125e9565b602060405180830381865afa158015610354573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061037891906126e7565b905080156103fd576103a66103956033546001600160a01b031690565b6001600160a01b0384169083610bd4565b6033546001600160a01b03166001600160a01b0316826001600160a01b03167f6d25be279134f4ecaa4770aff0c3d916d9e7c5ef37b65ed95dbdba411f5d54d5836040516103f4919061270b565b60405180910390a35b5050565b610409610c2f565b815f0361042957604051631f2a200560e01b815260040160405180910390fd5b6040516305eff7ef60e21b81526001600160a01b038516906317bfdfbc906104559088906004016125e9565b6020604051808303815f875af1158015610471573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061049591906126e7565b8211156104b557604051634f9b783360e11b815260040160405180910390fd5b6104c28585858585610c58565b846001600160a01b03167f8af976c539635a1ce04ceed3e7074ccfeed7f41cec869ebb7f513addad09129e8585856040516104ff93929190612719565b60405180910390a26105116001609755565b5050505050565b610520610baa565b6105295f611460565b565b60655433906001600160a01b031681146105605760405162461bcd60e51b815260040161055790612789565b60405180910390fd5b61056981611460565b50565b5f54610100900460ff161580801561058a57505f54600160ff909116105b806105a35750303b1580156105a357505f5460ff166001145b6105bf5760405162461bcd60e51b8152600401610557906127e3565b5f805460ff1916600117905580156105e0575f805461ff0019166101001790555b6105e8611479565b6105f06114a7565b8015610569575f805461ff00191690556040517f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989061063190600190612806565b60405180910390a150565b610644610baa565b478015610569575f61065e6033546001600160a01b031690565b6001600160a01b03168260405161067490612814565b5f6040518083038185875af1925050503d805f81146106ae576040519150601f19603f3d011682016040523d82523d5f602084013e6106b3565b606091505b50509050806106d5576040516312171d8360e31b815260040160405180910390fd5b6033546001600160a01b03166001600160a01b03167f0a1dd7c5bdc40ecbdefc1bfda22f1dfb98c8fc3e3940aab73ad7fba37720d0a083604051610719919061270b565b60405180910390a25050565b61072d610c2f565b6040516370a0823160e01b81525f906001600160a01b038516906370a082319061075b9088906004016125e9565b602060405180830381865afa158015610776573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061079a91906126e7565b9050805f036107bc57604051636e71a00f60e11b815260040160405180910390fd5b6107c985858584866114d5565b846001600160a01b03167f737e1f3192d251f056cdde8166e2a30162c55da2fa8aadb02f70e576ab5332f185858460405161080693929190612719565b60405180910390a2506108196001609755565b50505050565b610827610c2f565b6040516305eff7ef60e21b81525f906001600160a01b038516906317bfdfbc906108559088906004016125e9565b6020604051808303815f875af1158015610871573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061089591906126e7565b9050805f036108b757604051634f9b783360e11b815260040160405180910390fd5b6108c48585858486610c58565b846001600160a01b03167f8af976c539635a1ce04ceed3e7074ccfeed7f41cec869ebb7f513addad09129e85858460405161080693929190612719565b610909610baa565b6001600160a01b038416158061092657506001600160a01b038316155b8061093857506001600160a01b038216155b156109565760405163d92e233d60e01b815260040160405180910390fd5b826001600160a01b0316846001600160a01b0316036109885760405163237f3f6360e11b815260040160405180910390fd5b6001600160a01b038085165f90815260c9602090815260408083208488168452825280832093861683529290528190205490517fdbd5515612e8e94fdd07c82da88d760b15ea2519640f14426e7fb1a3e2465e0e916109f29187918791879160ff1690879061281b565b60405180910390a16001600160a01b039384165f90815260c96020908152604080832095871683529481528482209390951681529190935220805460ff1916911515919091179055565b610a44610c2f565b815f03610a6457604051631f2a200560e01b815260040160405180910390fd5b6040516370a0823160e01b81526001600160a01b038516906370a0823190610a909088906004016125e9565b602060405180830381865afa158015610aab573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610acf91906126e7565b821115610aef57604051636e71a00f60e11b815260040160405180910390fd5b610afc85858585856114d5565b846001600160a01b03167f737e1f3192d251f056cdde8166e2a30162c55da2fa8aadb02f70e576ab5332f18585856040516104ff93929190612719565b610b41610baa565b606580546001600160a01b0383166001600160a01b03199091168117909155610b726033546001600160a01b031690565b6001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b6033546001600160a01b031633146105295760405162461bcd60e51b81526004016105579061289b565b610c2a8363a9059cbb60e01b8484604051602401610bf39291906128ab565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152611fa9565b505050565b600260975403610c515760405162461bcd60e51b8152600401610557906128f9565b6002609755565b6001600160a01b038085165f90815260c960209081526040808320878516845282528083209385168352929052205460ff16610ca75760405163681c44fd60e11b815260040160405180910390fd5b604051638e8f294b60e01b81525f906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690638e8f294b90610cf59088906004016125e9565b606060405180830381865afa158015610d10573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d349190612914565b5050905080610d585784604051635a9a1eb960e11b815260040161055791906125e9565b604051638e8f294b60e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690638e8f294b90610da49087906004016125e9565b606060405180830381865afa158015610dbf573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610de39190612914565b50909150819050610e095783604051635a9a1eb960e11b815260040161055791906125e9565b6001600160a01b0386163314801590610eac5750604051630217306760e31b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906310b9833890610e6b9089903390600401612956565b602060405180830381865afa158015610e86573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610eaa9190612971565b155b15610ecc573360405163472511eb60e11b815260040161055791906125e9565b610ed586612039565b5f846001600160a01b0316636f307dc36040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f12573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f36919061299a565b6040516370a0823160e01b815290915081905f906001600160a01b038316906370a0823190610f699030906004016125e9565b602060405180830381865afa158015610f84573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fa891906126e7565b90505f876001600160a01b031663856e5bb38b896040518363ffffffff1660e01b8152600401610fd99291906128ab565b6020604051808303815f875af1158015610ff5573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061101991906126e7565b9050801561103c578060405163158f1c0f60e01b8152600401610557919061270b565b5f82846001600160a01b03166370a08231306040518263ffffffff1660e01b815260040161106a91906125e9565b602060405180830381865afa158015611085573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110a991906126e7565b6110b391906129cc565b90506110c96001600160a01b03851688836120f9565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168a6001600160a01b0316036111f25760405163d2cd3cc960e01b815247906001600160a01b0389169063d2cd3cc9906111349089905f908790600401612719565b5f604051808303815f87803b15801561114b575f80fd5b505af115801561115d573d5f803e3d5ffd5b505050505f814761116e91906129cc565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663e5974619828f6040518363ffffffff1660e01b81526004016111bd91906125e9565b5f604051808303818588803b1580156111d4575f80fd5b505af11580156111e6573d5f803e3d5ffd5b50505050505050611443565b5f8a6001600160a01b0316636f307dc36040518163ffffffff1660e01b8152600401602060405180830381865afa15801561122f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611253919061299a565b90505f816001600160a01b03166370a08231306040518263ffffffff1660e01b815260040161128291906125e9565b602060405180830381865afa15801561129d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112c191906126e7565b60405163d2cd3cc960e01b81529091506001600160a01b038a169063d2cd3cc9906112f4908a9086908890600401612719565b5f604051808303815f87803b15801561130b575f80fd5b505af115801561131d573d5f803e3d5ffd5b505050505f81836001600160a01b03166370a08231306040518263ffffffff1660e01b815260040161134f91906125e9565b602060405180830381865afa15801561136a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061138e91906126e7565b61139891906129cc565b90506113ae6001600160a01b0384168e836120f9565b8c6001600160a01b0316632608f8188f836040518363ffffffff1660e01b81526004016113dc9291906128ab565b6020604051808303815f875af11580156113f8573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061141c91906126e7565b9450841561143f57846040516305e4427960e11b8152600401610557919061270b565b5050505b61144c8b612039565b5050505050505050505050565b6001609755565b606580546001600160a01b031916905561056981612180565b5f54610100900460ff1661149f5760405162461bcd60e51b815260040161055790612a26565b6105296121d1565b5f54610100900460ff166114cd5760405162461bcd60e51b815260040161055790612a26565b610529612200565b6001600160a01b038085165f90815260c960209081526040808320878516845282528083209385168352929052205460ff166115245760405163681c44fd60e11b815260040160405180910390fd5b604051638e8f294b60e01b81525f906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690638e8f294b906115729088906004016125e9565b606060405180830381865afa15801561158d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115b19190612914565b50509050806115d55784604051635a9a1eb960e11b815260040161055791906125e9565b604051638e8f294b60e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690638e8f294b906116219087906004016125e9565b606060405180830381865afa15801561163c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116609190612914565b509091508190506116865783604051635a9a1eb960e11b815260040161055791906125e9565b6001600160a01b03861633148015906117295750604051630217306760e31b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906310b98338906116e89089903390600401612956565b602060405180830381865afa158015611703573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117279190612971565b155b15611749573360405163472511eb60e11b815260040161055791906125e9565b61175285612226565b61175b86612039565b60405163b2a02ff160e01b81525f906001600160a01b0387169063b2a02ff19061178d9030908b908990600401612719565b6020604051808303815f875af11580156117a9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117cd91906126e7565b905080156117f05780604051634cec05ab60e01b8152600401610557919061270b565b5f856001600160a01b0316636f307dc36040518163ffffffff1660e01b8152600401602060405180830381865afa15801561182d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611851919061299a565b6040516370a0823160e01b815290915081905f906001600160a01b038316906370a08231906118849030906004016125e9565b602060405180830381865afa15801561189f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118c391906126e7565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316896001600160a01b031603611a235760405163db006a7560e01b815247906001600160a01b038b169063db006a759061192c908b9060040161270b565b6020604051808303815f875af1158015611948573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061196c91906126e7565b9450841561198f578460405163eeddaac560e01b8152600401610557919061270b565b5f61199a82476129cc565b9050805f036119bc5760405163080eb12160e41b815260040160405180910390fd5b60405163d2cd3cc960e01b81526001600160a01b0389169063d2cd3cc99083906119ee905f908a908490600401612719565b5f604051808303818588803b158015611a05575f80fd5b505af1158015611a17573d5f803e3d5ffd5b50505050505050611c92565b5f896001600160a01b0316636f307dc36040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a60573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a84919061299a565b90505f816001600160a01b03166370a08231306040518263ffffffff1660e01b8152600401611ab391906125e9565b602060405180830381865afa158015611ace573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611af291906126e7565b60405163db006a7560e01b81529091506001600160a01b038c169063db006a7590611b21908c9060040161270b565b6020604051808303815f875af1158015611b3d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b6191906126e7565b95508515611b84578560405163eeddaac560e01b8152600401610557919061270b565b5f81836001600160a01b03166370a08231306040518263ffffffff1660e01b8152600401611bb291906125e9565b602060405180830381865afa158015611bcd573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611bf191906126e7565b611bfb91906129cc565b9050805f03611c1d5760405163080eb12160e41b815260040160405180910390fd5b611c316001600160a01b0384168a836120f9565b60405163d2cd3cc960e01b81526001600160a01b038a169063d2cd3cc990611c619086908a908690600401612719565b5f604051808303815f87803b158015611c78575f80fd5b505af1158015611c8a573d5f803e3d5ffd5b505050505050505b5f81836001600160a01b03166370a08231306040518263ffffffff1660e01b8152600401611cc091906125e9565b602060405180830381865afa158015611cdb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cff91906126e7565b611d0991906129cc565b9050805f03611d2b5760405163080eb12160e41b815260040160405180910390fd5b611d3f6001600160a01b0384168a836120f9565b6040516323323e0360e01b81526001600160a01b038a16906323323e0390611d6d908e9085906004016128ab565b6020604051808303815f875af1158015611d89573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dad91906126e7565b94508415611dd0578460405163ac55121f60e01b8152600401610557919061270b565b60405163929fe9a160e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063929fe9a190611e1e908e908e90600401612a36565b602060405180830381865afa158015611e39573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e5d9190612971565b8015611ef3575060405163929fe9a160e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063929fe9a190611eb2908e908d90600401612a36565b602060405180830381865afa158015611ecd573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611ef19190612971565b155b156114435760405163124c8eb360e11b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906324991d6690611f46908e908d90600401612956565b6020604051808303815f875af1158015611f62573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611f8691906126e7565b945084156114435784604051631957d10560e31b8152600401610557919061270b565b5f611ffd826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166122ab9092919063ffffffff16565b905080515f148061201d57508080602001905181019061201d9190612971565b610c2a5760405162461bcd60e51b815260040161055790612a97565b5f807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635ec88c79846040518263ffffffff1660e01b815260040161208791906125e9565b606060405180830381865afa1580156120a2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906120c69190612aa7565b9250509150815f1415806120d957505f81115b15610c2a57816040516388785d6560e01b8152600401610557919061270b565b5f63095ea7b360e01b83836040516024016121159291906128ab565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152905061215384826122c3565b610819576121768463095ea7b360e01b855f604051602401610bf3929190612ae9565b6108198482611fa9565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166121f75760405162461bcd60e51b815260040161055790612a26565b61052933611460565b5f54610100900460ff166114595760405162461bcd60e51b815260040161055790612a26565b5f816001600160a01b031663a6afed956040518163ffffffff1660e01b81526004016020604051808303815f875af1158015612264573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061228891906126e7565b905080156103fd57806040516315fc6cbf60e21b8152600401610557919061270b565b60606122b984845f85612366565b90505b9392505050565b5f805f846001600160a01b0316846040516122de9190612b30565b5f604051808303815f865af19150503d805f8114612317576040519150601f19603f3d011682016040523d82523d5f602084013e61231c565b606091505b50915091508180156123465750805115806123465750808060200190518101906123469190612971565b801561235b57506001600160a01b0385163b15155b925050505b92915050565b6060824710156123885760405162461bcd60e51b815260040161055790612b7d565b5f80866001600160a01b031685876040516123a39190612b30565b5f6040518083038185875af1925050503d805f81146123dd576040519150601f19603f3d011682016040523d82523d5f602084013e6123e2565b606091505b50915091506123f387838387612400565b925050505b949350505050565b6060831561243e5782515f03612437576001600160a01b0385163b6124375760405162461bcd60e51b815260040161055790612bc0565b50816123f8565b6123f883838151156124535781518083602001fd5b8060405162461bcd60e51b81526004016105579190612c01565b5f6001600160a01b038216612360565b5f6123608261246d565b6124908161247d565b8114610569575f80fd5b803561236081612487565b5f602082840312156124b8576124b85f80fd5b5f6123f8848461249a565b6124908161246d565b8035612360816124c3565b5f805f606084860312156124ec576124ec5f80fd5b5f6124f786866124cc565b9350506020612508868287016124cc565b9250506040612519868287016124cc565b9150509250925092565b8015155b82525050565b602081016123608284612523565b5f6123608261247d565b6125278161253b565b602081016123608284612545565b80612490565b80356123608161255c565b5f805f805f60a08688031215612584576125845f80fd5b5f61258f88886124cc565b95505060206125a08882890161249a565b94505060406125b18882890161249a565b93505060606125c288828901612562565b92505060806125d38882890161249a565b9150509295509295909350565b6125278161246d565b6020810161236082846125e0565b5f805f806080858703121561260d5761260d5f80fd5b5f61261887876124cc565b94505060206126298782880161249a565b935050604061263a8782880161249a565b925050606061264b8782880161249a565b91505092959194509250565b801515612490565b803561236081612657565b5f805f8060808587031215612680576126805f80fd5b5f61268b87876124cc565b945050602061269c878288016124cc565b93505060406126ad878288016124cc565b925050606061264b8782880161265f565b5f602082840312156126d1576126d15f80fd5b5f6123f884846124cc565b80516123608161255c565b5f602082840312156126fa576126fa5f80fd5b5f6123f884846126dc565b80612527565b602081016123608284612705565b6060810161272782866125e0565b61273460208301856125e0565b6123f86040830184612705565b602981525f602082017f4f776e61626c6532537465703a2063616c6c6572206973206e6f7420746865208152683732bb9037bbb732b960b91b602082015291505b5060400190565b6020808252810161236081612741565b602e81525f602082017f496e697469616c697a61626c653a20636f6e747261637420697320616c72656181526d191e481a5b9a5d1a585b1a5e995960921b60208201529150612782565b6020808252810161236081612799565b5f60ff8216612360565b612527816127f3565b6020810161236082846127fd565b5f81612360565b60a0810161282982886125e0565b61283660208301876125e0565b61284360408301866125e0565b6128506060830185612523565b61285d6080830184612523565b9695505050505050565b60208082527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657291019081525f5b5060200190565b6020808252810161236081612867565b604081016128b982856125e0565b6122bc6020830184612705565b601f81525f602082017f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0081529150612894565b60208082528101612360816128c6565b805161236081612657565b5f805f60608486031215612929576129295f80fd5b5f6129348686612909565b9350506020612945868287016126dc565b925050604061251986828701612909565b6040810161296482856125e0565b6122bc60208301846125e0565b5f60208284031215612984576129845f80fd5b5f6123f88484612909565b8051612360816124c3565b5f602082840312156129ad576129ad5f80fd5b5f6123f8848461298f565b634e487b7160e01b5f52601160045260245ffd5b81810381811115612360576123606129b8565b602b81525f602082017f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206981526a6e697469616c697a696e6760a81b60208201529150612782565b60208082528101612360816129df565b60408101612a4482856125e0565b6122bc6020830184612545565b602a81525f602082017f5361666545524332303a204552433230206f7065726174696f6e20646964206e8152691bdd081cdd58d8d9595960b21b60208201529150612782565b6020808252810161236081612a51565b5f805f60608486031215612abc57612abc5f80fd5b5f612ac786866126dc565b9350506020612ad8868287016126dc565b9250506040612519868287016126dc565b60408101612af782856125e0565b6122bc60208301846127fd565b8281835e505f910152565b5f612b18825190565b612b26818560208601612b04565b9290920192915050565b5f6122bc8284612b0f565b602681525f602082017f416464726573733a20696e73756666696369656e742062616c616e636520666f8152651c8818d85b1b60d21b60208201529150612782565b6020808252810161236081612b3b565b601d81525f602082017f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000081529150612894565b6020808252810161236081612b8d565b5f612bd9825190565b808452602084019350612bf0818560208601612b04565b601f01601f19169290920192915050565b602080825281016122bc8184612bd056fea2646970667358221220c1e6cf6f23771bd09e99671bbb0547ee7d56386d82c4103ff3e0a89b23c1790464736f6c63430008190033",
|
|
656
|
+
"bytecode": "0x60c060405234801561000f575f80fd5b50604051612ead380380612ead83398101604081905261002e91610155565b6001600160a01b0382166100555760405163d92e233d60e01b815260040160405180910390fd5b6001600160a01b03811661007c5760405163d92e233d60e01b815260040160405180910390fd5b6001600160a01b03808316608052811660a05261009761009e565b50506101e9565b5f54610100900460ff16156100ce5760405162461bcd60e51b81526004016100c59061018f565b60405180910390fd5b5f5460ff90811614610120575f805460ff191660ff9081179091556040517f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249891610117916101da565b60405180910390a15b565b5f6001600160a01b0382165b92915050565b61013d81610122565b8114610147575f80fd5b50565b805161012e81610134565b5f8060408385031215610169576101695f80fd5b5f610174858561014a565b92505060206101858582860161014a565b9150509250929050565b6020808252810161012e81602781527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469602082015266616c697a696e6760c81b604082015260600190565b60ff821681526020810161012e565b60805160a051612c486102655f395f8181610273015281816110cb0152818161117201526118c701525f818161018401528181610cc001528181610d6f01528181610e340152818161153d015281816115ec015281816116b101528181611de701528181611e7b01528181611f0f015261203d0152612c485ff3fe6080604052600436106100f2575f3560e01c8063ab803a7611610087578063cf7ae74711610057578063cf7ae74714610295578063d92ae424146102b4578063e30c3978146102c7578063f2fde38b146102e4575f80fd5b8063ab803a7614610228578063b7d044b41461023c578063c2c800411461024f578063cdaa21b714610262575f80fd5b8063715018a6116100c2578063715018a6146101c657806379ba5097146101da5780638129fc1c146101ee5780638da5cb5b14610202575f80fd5b80631be19560146100fd57806329bbf7da1461011e5780635f82c67e1461017357806365567616146101b3575f80fd5b366100f957005b5f80fd5b348015610108575f80fd5b5061011c6101173660046124a5565b610303565b005b348015610129575f80fd5b5061015d6101383660046124d7565b60c960209081525f938452604080852082529284528284209052825290205460ff1681565b60405161016a919061252d565b60405180910390f35b34801561017e575f80fd5b506101a67f000000000000000000000000000000000000000000000000000000000000000081565b60405161016a919061254e565b61011c6101c136600461256d565b610401565b3480156101d1575f80fd5b5061011c610518565b3480156101e5575f80fd5b5061011c61052b565b3480156101f9575f80fd5b5061011c61056c565b34801561020d575f80fd5b506033546001600160a01b03165b60405161016a91906125e9565b348015610233575f80fd5b5061011c61063c565b61011c61024a3660046125f7565b610725565b61011c61025d3660046125f7565b61081f565b34801561026d575f80fd5b5061021b7f000000000000000000000000000000000000000000000000000000000000000081565b3480156102a0575f80fd5b5061011c6102af36600461266a565b610901565b61011c6102c236600461256d565b610a3c565b3480156102d2575f80fd5b506065546001600160a01b031661021b565b3480156102ef575f80fd5b5061011c6102fe3660046126be565b610b39565b61030b610baa565b6040516370a0823160e01b81525f906001600160a01b038316906370a08231906103399030906004016125e9565b602060405180830381865afa158015610354573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061037891906126e7565b905080156103fd576103a66103956033546001600160a01b031690565b6001600160a01b0384169083610bd4565b6033546001600160a01b03166001600160a01b0316826001600160a01b03167f6d25be279134f4ecaa4770aff0c3d916d9e7c5ef37b65ed95dbdba411f5d54d5836040516103f4919061270b565b60405180910390a35b5050565b610409610c2f565b815f0361042957604051631f2a200560e01b815260040160405180910390fd5b6040516305eff7ef60e21b81526001600160a01b038516906317bfdfbc906104559088906004016125e9565b6020604051808303815f875af1158015610471573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061049591906126e7565b8211156104b557604051634f9b783360e11b815260040160405180910390fd5b6104c28585858585610c58565b846001600160a01b03167f8af976c539635a1ce04ceed3e7074ccfeed7f41cec869ebb7f513addad09129e8585856040516104ff93929190612719565b60405180910390a26105116001609755565b5050505050565b610520610baa565b6105295f611460565b565b60655433906001600160a01b031681146105605760405162461bcd60e51b815260040161055790612789565b60405180910390fd5b61056981611460565b50565b5f54610100900460ff161580801561058a57505f54600160ff909116105b806105a35750303b1580156105a357505f5460ff166001145b6105bf5760405162461bcd60e51b8152600401610557906127e3565b5f805460ff1916600117905580156105e0575f805461ff0019166101001790555b6105e8611479565b6105f06114a7565b8015610569575f805461ff00191690556040517f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989061063190600190612806565b60405180910390a150565b610644610baa565b478015610569575f61065e6033546001600160a01b031690565b6001600160a01b03168260405161067490612814565b5f6040518083038185875af1925050503d805f81146106ae576040519150601f19603f3d011682016040523d82523d5f602084013e6106b3565b606091505b50509050806106d5576040516312171d8360e31b815260040160405180910390fd5b6033546001600160a01b03166001600160a01b03167f0a1dd7c5bdc40ecbdefc1bfda22f1dfb98c8fc3e3940aab73ad7fba37720d0a083604051610719919061270b565b60405180910390a25050565b61072d610c2f565b6040516370a0823160e01b81525f906001600160a01b038516906370a082319061075b9088906004016125e9565b602060405180830381865afa158015610776573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061079a91906126e7565b9050805f036107bc57604051636e71a00f60e11b815260040160405180910390fd5b6107c985858584866114d5565b846001600160a01b03167f737e1f3192d251f056cdde8166e2a30162c55da2fa8aadb02f70e576ab5332f185858460405161080693929190612719565b60405180910390a2506108196001609755565b50505050565b610827610c2f565b6040516305eff7ef60e21b81525f906001600160a01b038516906317bfdfbc906108559088906004016125e9565b6020604051808303815f875af1158015610871573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061089591906126e7565b9050805f036108b757604051634f9b783360e11b815260040160405180910390fd5b6108c48585858486610c58565b846001600160a01b03167f8af976c539635a1ce04ceed3e7074ccfeed7f41cec869ebb7f513addad09129e85858460405161080693929190612719565b610909610baa565b6001600160a01b038416158061092657506001600160a01b038316155b8061093857506001600160a01b038216155b156109565760405163d92e233d60e01b815260040160405180910390fd5b826001600160a01b0316846001600160a01b0316036109885760405163237f3f6360e11b815260040160405180910390fd5b6001600160a01b038085165f90815260c9602090815260408083208488168452825280832093861683529290528190205490517fdbd5515612e8e94fdd07c82da88d760b15ea2519640f14426e7fb1a3e2465e0e916109f29187918791879160ff1690879061281b565b60405180910390a16001600160a01b039384165f90815260c96020908152604080832095871683529481528482209390951681529190935220805460ff1916911515919091179055565b610a44610c2f565b815f03610a6457604051631f2a200560e01b815260040160405180910390fd5b6040516370a0823160e01b81526001600160a01b038516906370a0823190610a909088906004016125e9565b602060405180830381865afa158015610aab573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610acf91906126e7565b821115610aef57604051636e71a00f60e11b815260040160405180910390fd5b610afc85858585856114d5565b846001600160a01b03167f737e1f3192d251f056cdde8166e2a30162c55da2fa8aadb02f70e576ab5332f18585856040516104ff93929190612719565b610b41610baa565b606580546001600160a01b0383166001600160a01b03199091168117909155610b726033546001600160a01b031690565b6001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b6033546001600160a01b031633146105295760405162461bcd60e51b81526004016105579061289b565b610c2a8363a9059cbb60e01b8484604051602401610bf39291906128ab565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152611fa9565b505050565b600260975403610c515760405162461bcd60e51b8152600401610557906128f9565b6002609755565b6001600160a01b038085165f90815260c960209081526040808320878516845282528083209385168352929052205460ff16610ca75760405163681c44fd60e11b815260040160405180910390fd5b604051638e8f294b60e01b81525f906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690638e8f294b90610cf59088906004016125e9565b606060405180830381865afa158015610d10573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d349190612914565b5050905080610d585784604051635a9a1eb960e11b815260040161055791906125e9565b604051638e8f294b60e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690638e8f294b90610da49087906004016125e9565b606060405180830381865afa158015610dbf573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610de39190612914565b50909150819050610e095783604051635a9a1eb960e11b815260040161055791906125e9565b6001600160a01b0386163314801590610eac5750604051630217306760e31b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906310b9833890610e6b9089903390600401612956565b602060405180830381865afa158015610e86573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610eaa9190612971565b155b15610ecc573360405163472511eb60e11b815260040161055791906125e9565b610ed586612039565b5f846001600160a01b0316636f307dc36040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f12573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f36919061299a565b6040516370a0823160e01b815290915081905f906001600160a01b038316906370a0823190610f699030906004016125e9565b602060405180830381865afa158015610f84573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fa891906126e7565b90505f876001600160a01b031663856e5bb38b896040518363ffffffff1660e01b8152600401610fd99291906128ab565b6020604051808303815f875af1158015610ff5573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061101991906126e7565b9050801561103c578060405163158f1c0f60e01b8152600401610557919061270b565b5f82846001600160a01b03166370a08231306040518263ffffffff1660e01b815260040161106a91906125e9565b602060405180830381865afa158015611085573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110a991906126e7565b6110b391906129cc565b90506110c96001600160a01b03851688836120f9565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168a6001600160a01b0316036111f25760405163d2cd3cc960e01b815247906001600160a01b0389169063d2cd3cc9906111349089905f908790600401612719565b5f604051808303815f87803b15801561114b575f80fd5b505af115801561115d573d5f803e3d5ffd5b505050505f814761116e91906129cc565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663e5974619828f6040518363ffffffff1660e01b81526004016111bd91906125e9565b5f604051808303818588803b1580156111d4575f80fd5b505af11580156111e6573d5f803e3d5ffd5b50505050505050611443565b5f8a6001600160a01b0316636f307dc36040518163ffffffff1660e01b8152600401602060405180830381865afa15801561122f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611253919061299a565b90505f816001600160a01b03166370a08231306040518263ffffffff1660e01b815260040161128291906125e9565b602060405180830381865afa15801561129d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112c191906126e7565b60405163d2cd3cc960e01b81529091506001600160a01b038a169063d2cd3cc9906112f4908a9086908890600401612719565b5f604051808303815f87803b15801561130b575f80fd5b505af115801561131d573d5f803e3d5ffd5b505050505f81836001600160a01b03166370a08231306040518263ffffffff1660e01b815260040161134f91906125e9565b602060405180830381865afa15801561136a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061138e91906126e7565b61139891906129cc565b90506113ae6001600160a01b0384168e836120f9565b8c6001600160a01b0316632608f8188f836040518363ffffffff1660e01b81526004016113dc9291906128ab565b6020604051808303815f875af11580156113f8573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061141c91906126e7565b9450841561143f57846040516305e4427960e11b8152600401610557919061270b565b5050505b61144c8b612039565b5050505050505050505050565b6001609755565b606580546001600160a01b031916905561056981612180565b5f54610100900460ff1661149f5760405162461bcd60e51b815260040161055790612a26565b6105296121d1565b5f54610100900460ff166114cd5760405162461bcd60e51b815260040161055790612a26565b610529612200565b6001600160a01b038085165f90815260c960209081526040808320878516845282528083209385168352929052205460ff166115245760405163681c44fd60e11b815260040160405180910390fd5b604051638e8f294b60e01b81525f906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690638e8f294b906115729088906004016125e9565b606060405180830381865afa15801561158d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115b19190612914565b50509050806115d55784604051635a9a1eb960e11b815260040161055791906125e9565b604051638e8f294b60e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690638e8f294b906116219087906004016125e9565b606060405180830381865afa15801561163c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116609190612914565b509091508190506116865783604051635a9a1eb960e11b815260040161055791906125e9565b6001600160a01b03861633148015906117295750604051630217306760e31b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906310b98338906116e89089903390600401612956565b602060405180830381865afa158015611703573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117279190612971565b155b15611749573360405163472511eb60e11b815260040161055791906125e9565b61175285612226565b61175b86612039565b60405163b2a02ff160e01b81525f906001600160a01b0387169063b2a02ff19061178d9030908b908990600401612719565b6020604051808303815f875af11580156117a9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117cd91906126e7565b905080156117f05780604051634cec05ab60e01b8152600401610557919061270b565b5f856001600160a01b0316636f307dc36040518163ffffffff1660e01b8152600401602060405180830381865afa15801561182d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611851919061299a565b6040516370a0823160e01b815290915081905f906001600160a01b038316906370a08231906118849030906004016125e9565b602060405180830381865afa15801561189f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118c391906126e7565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316896001600160a01b031603611a235760405163db006a7560e01b815247906001600160a01b038b169063db006a759061192c908b9060040161270b565b6020604051808303815f875af1158015611948573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061196c91906126e7565b9450841561198f578460405163eeddaac560e01b8152600401610557919061270b565b5f61199a82476129cc565b9050805f036119bc5760405163080eb12160e41b815260040160405180910390fd5b60405163d2cd3cc960e01b81526001600160a01b0389169063d2cd3cc99083906119ee905f908a908490600401612719565b5f604051808303818588803b158015611a05575f80fd5b505af1158015611a17573d5f803e3d5ffd5b50505050505050611c92565b5f896001600160a01b0316636f307dc36040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a60573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a84919061299a565b90505f816001600160a01b03166370a08231306040518263ffffffff1660e01b8152600401611ab391906125e9565b602060405180830381865afa158015611ace573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611af291906126e7565b60405163db006a7560e01b81529091506001600160a01b038c169063db006a7590611b21908c9060040161270b565b6020604051808303815f875af1158015611b3d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b6191906126e7565b95508515611b84578560405163eeddaac560e01b8152600401610557919061270b565b5f81836001600160a01b03166370a08231306040518263ffffffff1660e01b8152600401611bb291906125e9565b602060405180830381865afa158015611bcd573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611bf191906126e7565b611bfb91906129cc565b9050805f03611c1d5760405163080eb12160e41b815260040160405180910390fd5b611c316001600160a01b0384168a836120f9565b60405163d2cd3cc960e01b81526001600160a01b038a169063d2cd3cc990611c619086908a908690600401612719565b5f604051808303815f87803b158015611c78575f80fd5b505af1158015611c8a573d5f803e3d5ffd5b505050505050505b5f81836001600160a01b03166370a08231306040518263ffffffff1660e01b8152600401611cc091906125e9565b602060405180830381865afa158015611cdb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cff91906126e7565b611d0991906129cc565b9050805f03611d2b5760405163080eb12160e41b815260040160405180910390fd5b611d3f6001600160a01b0384168a836120f9565b6040516323323e0360e01b81526001600160a01b038a16906323323e0390611d6d908e9085906004016128ab565b6020604051808303815f875af1158015611d89573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dad91906126e7565b94508415611dd0578460405163ac55121f60e01b8152600401610557919061270b565b60405163929fe9a160e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063929fe9a190611e1e908e908e90600401612a36565b602060405180830381865afa158015611e39573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e5d9190612971565b8015611ef3575060405163929fe9a160e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063929fe9a190611eb2908e908d90600401612a36565b602060405180830381865afa158015611ecd573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611ef19190612971565b155b156114435760405163124c8eb360e11b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906324991d6690611f46908e908d90600401612956565b6020604051808303815f875af1158015611f62573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611f8691906126e7565b945084156114435784604051631957d10560e31b8152600401610557919061270b565b5f611ffd826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166122ab9092919063ffffffff16565b905080515f148061201d57508080602001905181019061201d9190612971565b610c2a5760405162461bcd60e51b815260040161055790612a97565b5f807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635ec88c79846040518263ffffffff1660e01b815260040161208791906125e9565b606060405180830381865afa1580156120a2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906120c69190612aa7565b9250509150815f1415806120d957505f81115b15610c2a57816040516388785d6560e01b8152600401610557919061270b565b5f63095ea7b360e01b83836040516024016121159291906128ab565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152905061215384826122c3565b610819576121768463095ea7b360e01b855f604051602401610bf3929190612ae9565b6108198482611fa9565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166121f75760405162461bcd60e51b815260040161055790612a26565b61052933611460565b5f54610100900460ff166114595760405162461bcd60e51b815260040161055790612a26565b5f816001600160a01b031663a6afed956040518163ffffffff1660e01b81526004016020604051808303815f875af1158015612264573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061228891906126e7565b905080156103fd57806040516315fc6cbf60e21b8152600401610557919061270b565b60606122b984845f85612366565b90505b9392505050565b5f805f846001600160a01b0316846040516122de9190612b30565b5f604051808303815f865af19150503d805f8114612317576040519150601f19603f3d011682016040523d82523d5f602084013e61231c565b606091505b50915091508180156123465750805115806123465750808060200190518101906123469190612971565b801561235b57506001600160a01b0385163b15155b925050505b92915050565b6060824710156123885760405162461bcd60e51b815260040161055790612b7d565b5f80866001600160a01b031685876040516123a39190612b30565b5f6040518083038185875af1925050503d805f81146123dd576040519150601f19603f3d011682016040523d82523d5f602084013e6123e2565b606091505b50915091506123f387838387612400565b925050505b949350505050565b6060831561243e5782515f03612437576001600160a01b0385163b6124375760405162461bcd60e51b815260040161055790612bc0565b50816123f8565b6123f883838151156124535781518083602001fd5b8060405162461bcd60e51b81526004016105579190612c01565b5f6001600160a01b038216612360565b5f6123608261246d565b6124908161247d565b8114610569575f80fd5b803561236081612487565b5f602082840312156124b8576124b85f80fd5b5f6123f8848461249a565b6124908161246d565b8035612360816124c3565b5f805f606084860312156124ec576124ec5f80fd5b5f6124f786866124cc565b9350506020612508868287016124cc565b9250506040612519868287016124cc565b9150509250925092565b8015155b82525050565b602081016123608284612523565b5f6123608261247d565b6125278161253b565b602081016123608284612545565b80612490565b80356123608161255c565b5f805f805f60a08688031215612584576125845f80fd5b5f61258f88886124cc565b95505060206125a08882890161249a565b94505060406125b18882890161249a565b93505060606125c288828901612562565b92505060806125d38882890161249a565b9150509295509295909350565b6125278161246d565b6020810161236082846125e0565b5f805f806080858703121561260d5761260d5f80fd5b5f61261887876124cc565b94505060206126298782880161249a565b935050604061263a8782880161249a565b925050606061264b8782880161249a565b91505092959194509250565b801515612490565b803561236081612657565b5f805f8060808587031215612680576126805f80fd5b5f61268b87876124cc565b945050602061269c878288016124cc565b93505060406126ad878288016124cc565b925050606061264b8782880161265f565b5f602082840312156126d1576126d15f80fd5b5f6123f884846124cc565b80516123608161255c565b5f602082840312156126fa576126fa5f80fd5b5f6123f884846126dc565b80612527565b602081016123608284612705565b6060810161272782866125e0565b61273460208301856125e0565b6123f86040830184612705565b602981525f602082017f4f776e61626c6532537465703a2063616c6c6572206973206e6f7420746865208152683732bb9037bbb732b960b91b602082015291505b5060400190565b6020808252810161236081612741565b602e81525f602082017f496e697469616c697a61626c653a20636f6e747261637420697320616c72656181526d191e481a5b9a5d1a585b1a5e995960921b60208201529150612782565b6020808252810161236081612799565b5f60ff8216612360565b612527816127f3565b6020810161236082846127fd565b5f81612360565b60a0810161282982886125e0565b61283660208301876125e0565b61284360408301866125e0565b6128506060830185612523565b61285d6080830184612523565b9695505050505050565b60208082527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657291019081525f5b5060200190565b6020808252810161236081612867565b604081016128b982856125e0565b6122bc6020830184612705565b601f81525f602082017f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0081529150612894565b60208082528101612360816128c6565b805161236081612657565b5f805f60608486031215612929576129295f80fd5b5f6129348686612909565b9350506020612945868287016126dc565b925050604061251986828701612909565b6040810161296482856125e0565b6122bc60208301846125e0565b5f60208284031215612984576129845f80fd5b5f6123f88484612909565b8051612360816124c3565b5f602082840312156129ad576129ad5f80fd5b5f6123f8848461298f565b634e487b7160e01b5f52601160045260245ffd5b81810381811115612360576123606129b8565b602b81525f602082017f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206981526a6e697469616c697a696e6760a81b60208201529150612782565b60208082528101612360816129df565b60408101612a4482856125e0565b6122bc6020830184612545565b602a81525f602082017f5361666545524332303a204552433230206f7065726174696f6e20646964206e8152691bdd081cdd58d8d9595960b21b60208201529150612782565b6020808252810161236081612a51565b5f805f60608486031215612abc57612abc5f80fd5b5f612ac786866126dc565b9350506020612ad8868287016126dc565b9250506040612519868287016126dc565b60408101612af782856125e0565b6122bc60208301846127fd565b8281835e505f910152565b5f612b18825190565b612b26818560208601612b04565b9290920192915050565b5f6122bc8284612b0f565b602681525f602082017f416464726573733a20696e73756666696369656e742062616c616e636520666f8152651c8818d85b1b60d21b60208201529150612782565b6020808252810161236081612b3b565b601d81525f602082017f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000081529150612894565b6020808252810161236081612b8d565b5f612bd9825190565b808452602084019350612bf0818560208601612b04565b601f01601f19169290920192915050565b602080825281016122bc8184612bd056fea2646970667358221220c2c49ac20079f3486f8b398094123850b0cce8e001f03ebc7930cb0f1b48e18864736f6c63430008190033",
|
|
657
|
+
"deployedBytecode": "0x6080604052600436106100f2575f3560e01c8063ab803a7611610087578063cf7ae74711610057578063cf7ae74714610295578063d92ae424146102b4578063e30c3978146102c7578063f2fde38b146102e4575f80fd5b8063ab803a7614610228578063b7d044b41461023c578063c2c800411461024f578063cdaa21b714610262575f80fd5b8063715018a6116100c2578063715018a6146101c657806379ba5097146101da5780638129fc1c146101ee5780638da5cb5b14610202575f80fd5b80631be19560146100fd57806329bbf7da1461011e5780635f82c67e1461017357806365567616146101b3575f80fd5b366100f957005b5f80fd5b348015610108575f80fd5b5061011c6101173660046124a5565b610303565b005b348015610129575f80fd5b5061015d6101383660046124d7565b60c960209081525f938452604080852082529284528284209052825290205460ff1681565b60405161016a919061252d565b60405180910390f35b34801561017e575f80fd5b506101a67f000000000000000000000000000000000000000000000000000000000000000081565b60405161016a919061254e565b61011c6101c136600461256d565b610401565b3480156101d1575f80fd5b5061011c610518565b3480156101e5575f80fd5b5061011c61052b565b3480156101f9575f80fd5b5061011c61056c565b34801561020d575f80fd5b506033546001600160a01b03165b60405161016a91906125e9565b348015610233575f80fd5b5061011c61063c565b61011c61024a3660046125f7565b610725565b61011c61025d3660046125f7565b61081f565b34801561026d575f80fd5b5061021b7f000000000000000000000000000000000000000000000000000000000000000081565b3480156102a0575f80fd5b5061011c6102af36600461266a565b610901565b61011c6102c236600461256d565b610a3c565b3480156102d2575f80fd5b506065546001600160a01b031661021b565b3480156102ef575f80fd5b5061011c6102fe3660046126be565b610b39565b61030b610baa565b6040516370a0823160e01b81525f906001600160a01b038316906370a08231906103399030906004016125e9565b602060405180830381865afa158015610354573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061037891906126e7565b905080156103fd576103a66103956033546001600160a01b031690565b6001600160a01b0384169083610bd4565b6033546001600160a01b03166001600160a01b0316826001600160a01b03167f6d25be279134f4ecaa4770aff0c3d916d9e7c5ef37b65ed95dbdba411f5d54d5836040516103f4919061270b565b60405180910390a35b5050565b610409610c2f565b815f0361042957604051631f2a200560e01b815260040160405180910390fd5b6040516305eff7ef60e21b81526001600160a01b038516906317bfdfbc906104559088906004016125e9565b6020604051808303815f875af1158015610471573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061049591906126e7565b8211156104b557604051634f9b783360e11b815260040160405180910390fd5b6104c28585858585610c58565b846001600160a01b03167f8af976c539635a1ce04ceed3e7074ccfeed7f41cec869ebb7f513addad09129e8585856040516104ff93929190612719565b60405180910390a26105116001609755565b5050505050565b610520610baa565b6105295f611460565b565b60655433906001600160a01b031681146105605760405162461bcd60e51b815260040161055790612789565b60405180910390fd5b61056981611460565b50565b5f54610100900460ff161580801561058a57505f54600160ff909116105b806105a35750303b1580156105a357505f5460ff166001145b6105bf5760405162461bcd60e51b8152600401610557906127e3565b5f805460ff1916600117905580156105e0575f805461ff0019166101001790555b6105e8611479565b6105f06114a7565b8015610569575f805461ff00191690556040517f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989061063190600190612806565b60405180910390a150565b610644610baa565b478015610569575f61065e6033546001600160a01b031690565b6001600160a01b03168260405161067490612814565b5f6040518083038185875af1925050503d805f81146106ae576040519150601f19603f3d011682016040523d82523d5f602084013e6106b3565b606091505b50509050806106d5576040516312171d8360e31b815260040160405180910390fd5b6033546001600160a01b03166001600160a01b03167f0a1dd7c5bdc40ecbdefc1bfda22f1dfb98c8fc3e3940aab73ad7fba37720d0a083604051610719919061270b565b60405180910390a25050565b61072d610c2f565b6040516370a0823160e01b81525f906001600160a01b038516906370a082319061075b9088906004016125e9565b602060405180830381865afa158015610776573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061079a91906126e7565b9050805f036107bc57604051636e71a00f60e11b815260040160405180910390fd5b6107c985858584866114d5565b846001600160a01b03167f737e1f3192d251f056cdde8166e2a30162c55da2fa8aadb02f70e576ab5332f185858460405161080693929190612719565b60405180910390a2506108196001609755565b50505050565b610827610c2f565b6040516305eff7ef60e21b81525f906001600160a01b038516906317bfdfbc906108559088906004016125e9565b6020604051808303815f875af1158015610871573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061089591906126e7565b9050805f036108b757604051634f9b783360e11b815260040160405180910390fd5b6108c48585858486610c58565b846001600160a01b03167f8af976c539635a1ce04ceed3e7074ccfeed7f41cec869ebb7f513addad09129e85858460405161080693929190612719565b610909610baa565b6001600160a01b038416158061092657506001600160a01b038316155b8061093857506001600160a01b038216155b156109565760405163d92e233d60e01b815260040160405180910390fd5b826001600160a01b0316846001600160a01b0316036109885760405163237f3f6360e11b815260040160405180910390fd5b6001600160a01b038085165f90815260c9602090815260408083208488168452825280832093861683529290528190205490517fdbd5515612e8e94fdd07c82da88d760b15ea2519640f14426e7fb1a3e2465e0e916109f29187918791879160ff1690879061281b565b60405180910390a16001600160a01b039384165f90815260c96020908152604080832095871683529481528482209390951681529190935220805460ff1916911515919091179055565b610a44610c2f565b815f03610a6457604051631f2a200560e01b815260040160405180910390fd5b6040516370a0823160e01b81526001600160a01b038516906370a0823190610a909088906004016125e9565b602060405180830381865afa158015610aab573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610acf91906126e7565b821115610aef57604051636e71a00f60e11b815260040160405180910390fd5b610afc85858585856114d5565b846001600160a01b03167f737e1f3192d251f056cdde8166e2a30162c55da2fa8aadb02f70e576ab5332f18585856040516104ff93929190612719565b610b41610baa565b606580546001600160a01b0383166001600160a01b03199091168117909155610b726033546001600160a01b031690565b6001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b6033546001600160a01b031633146105295760405162461bcd60e51b81526004016105579061289b565b610c2a8363a9059cbb60e01b8484604051602401610bf39291906128ab565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152611fa9565b505050565b600260975403610c515760405162461bcd60e51b8152600401610557906128f9565b6002609755565b6001600160a01b038085165f90815260c960209081526040808320878516845282528083209385168352929052205460ff16610ca75760405163681c44fd60e11b815260040160405180910390fd5b604051638e8f294b60e01b81525f906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690638e8f294b90610cf59088906004016125e9565b606060405180830381865afa158015610d10573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d349190612914565b5050905080610d585784604051635a9a1eb960e11b815260040161055791906125e9565b604051638e8f294b60e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690638e8f294b90610da49087906004016125e9565b606060405180830381865afa158015610dbf573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610de39190612914565b50909150819050610e095783604051635a9a1eb960e11b815260040161055791906125e9565b6001600160a01b0386163314801590610eac5750604051630217306760e31b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906310b9833890610e6b9089903390600401612956565b602060405180830381865afa158015610e86573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610eaa9190612971565b155b15610ecc573360405163472511eb60e11b815260040161055791906125e9565b610ed586612039565b5f846001600160a01b0316636f307dc36040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f12573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f36919061299a565b6040516370a0823160e01b815290915081905f906001600160a01b038316906370a0823190610f699030906004016125e9565b602060405180830381865afa158015610f84573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fa891906126e7565b90505f876001600160a01b031663856e5bb38b896040518363ffffffff1660e01b8152600401610fd99291906128ab565b6020604051808303815f875af1158015610ff5573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061101991906126e7565b9050801561103c578060405163158f1c0f60e01b8152600401610557919061270b565b5f82846001600160a01b03166370a08231306040518263ffffffff1660e01b815260040161106a91906125e9565b602060405180830381865afa158015611085573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110a991906126e7565b6110b391906129cc565b90506110c96001600160a01b03851688836120f9565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168a6001600160a01b0316036111f25760405163d2cd3cc960e01b815247906001600160a01b0389169063d2cd3cc9906111349089905f908790600401612719565b5f604051808303815f87803b15801561114b575f80fd5b505af115801561115d573d5f803e3d5ffd5b505050505f814761116e91906129cc565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663e5974619828f6040518363ffffffff1660e01b81526004016111bd91906125e9565b5f604051808303818588803b1580156111d4575f80fd5b505af11580156111e6573d5f803e3d5ffd5b50505050505050611443565b5f8a6001600160a01b0316636f307dc36040518163ffffffff1660e01b8152600401602060405180830381865afa15801561122f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611253919061299a565b90505f816001600160a01b03166370a08231306040518263ffffffff1660e01b815260040161128291906125e9565b602060405180830381865afa15801561129d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112c191906126e7565b60405163d2cd3cc960e01b81529091506001600160a01b038a169063d2cd3cc9906112f4908a9086908890600401612719565b5f604051808303815f87803b15801561130b575f80fd5b505af115801561131d573d5f803e3d5ffd5b505050505f81836001600160a01b03166370a08231306040518263ffffffff1660e01b815260040161134f91906125e9565b602060405180830381865afa15801561136a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061138e91906126e7565b61139891906129cc565b90506113ae6001600160a01b0384168e836120f9565b8c6001600160a01b0316632608f8188f836040518363ffffffff1660e01b81526004016113dc9291906128ab565b6020604051808303815f875af11580156113f8573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061141c91906126e7565b9450841561143f57846040516305e4427960e11b8152600401610557919061270b565b5050505b61144c8b612039565b5050505050505050505050565b6001609755565b606580546001600160a01b031916905561056981612180565b5f54610100900460ff1661149f5760405162461bcd60e51b815260040161055790612a26565b6105296121d1565b5f54610100900460ff166114cd5760405162461bcd60e51b815260040161055790612a26565b610529612200565b6001600160a01b038085165f90815260c960209081526040808320878516845282528083209385168352929052205460ff166115245760405163681c44fd60e11b815260040160405180910390fd5b604051638e8f294b60e01b81525f906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690638e8f294b906115729088906004016125e9565b606060405180830381865afa15801561158d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115b19190612914565b50509050806115d55784604051635a9a1eb960e11b815260040161055791906125e9565b604051638e8f294b60e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690638e8f294b906116219087906004016125e9565b606060405180830381865afa15801561163c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116609190612914565b509091508190506116865783604051635a9a1eb960e11b815260040161055791906125e9565b6001600160a01b03861633148015906117295750604051630217306760e31b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906310b98338906116e89089903390600401612956565b602060405180830381865afa158015611703573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117279190612971565b155b15611749573360405163472511eb60e11b815260040161055791906125e9565b61175285612226565b61175b86612039565b60405163b2a02ff160e01b81525f906001600160a01b0387169063b2a02ff19061178d9030908b908990600401612719565b6020604051808303815f875af11580156117a9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117cd91906126e7565b905080156117f05780604051634cec05ab60e01b8152600401610557919061270b565b5f856001600160a01b0316636f307dc36040518163ffffffff1660e01b8152600401602060405180830381865afa15801561182d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611851919061299a565b6040516370a0823160e01b815290915081905f906001600160a01b038316906370a08231906118849030906004016125e9565b602060405180830381865afa15801561189f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118c391906126e7565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316896001600160a01b031603611a235760405163db006a7560e01b815247906001600160a01b038b169063db006a759061192c908b9060040161270b565b6020604051808303815f875af1158015611948573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061196c91906126e7565b9450841561198f578460405163eeddaac560e01b8152600401610557919061270b565b5f61199a82476129cc565b9050805f036119bc5760405163080eb12160e41b815260040160405180910390fd5b60405163d2cd3cc960e01b81526001600160a01b0389169063d2cd3cc99083906119ee905f908a908490600401612719565b5f604051808303818588803b158015611a05575f80fd5b505af1158015611a17573d5f803e3d5ffd5b50505050505050611c92565b5f896001600160a01b0316636f307dc36040518163ffffffff1660e01b8152600401602060405180830381865afa158015611a60573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a84919061299a565b90505f816001600160a01b03166370a08231306040518263ffffffff1660e01b8152600401611ab391906125e9565b602060405180830381865afa158015611ace573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611af291906126e7565b60405163db006a7560e01b81529091506001600160a01b038c169063db006a7590611b21908c9060040161270b565b6020604051808303815f875af1158015611b3d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611b6191906126e7565b95508515611b84578560405163eeddaac560e01b8152600401610557919061270b565b5f81836001600160a01b03166370a08231306040518263ffffffff1660e01b8152600401611bb291906125e9565b602060405180830381865afa158015611bcd573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611bf191906126e7565b611bfb91906129cc565b9050805f03611c1d5760405163080eb12160e41b815260040160405180910390fd5b611c316001600160a01b0384168a836120f9565b60405163d2cd3cc960e01b81526001600160a01b038a169063d2cd3cc990611c619086908a908690600401612719565b5f604051808303815f87803b158015611c78575f80fd5b505af1158015611c8a573d5f803e3d5ffd5b505050505050505b5f81836001600160a01b03166370a08231306040518263ffffffff1660e01b8152600401611cc091906125e9565b602060405180830381865afa158015611cdb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cff91906126e7565b611d0991906129cc565b9050805f03611d2b5760405163080eb12160e41b815260040160405180910390fd5b611d3f6001600160a01b0384168a836120f9565b6040516323323e0360e01b81526001600160a01b038a16906323323e0390611d6d908e9085906004016128ab565b6020604051808303815f875af1158015611d89573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dad91906126e7565b94508415611dd0578460405163ac55121f60e01b8152600401610557919061270b565b60405163929fe9a160e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063929fe9a190611e1e908e908e90600401612a36565b602060405180830381865afa158015611e39573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e5d9190612971565b8015611ef3575060405163929fe9a160e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063929fe9a190611eb2908e908d90600401612a36565b602060405180830381865afa158015611ecd573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611ef19190612971565b155b156114435760405163124c8eb360e11b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906324991d6690611f46908e908d90600401612956565b6020604051808303815f875af1158015611f62573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611f8691906126e7565b945084156114435784604051631957d10560e31b8152600401610557919061270b565b5f611ffd826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166122ab9092919063ffffffff16565b905080515f148061201d57508080602001905181019061201d9190612971565b610c2a5760405162461bcd60e51b815260040161055790612a97565b5f807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316635ec88c79846040518263ffffffff1660e01b815260040161208791906125e9565b606060405180830381865afa1580156120a2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906120c69190612aa7565b9250509150815f1415806120d957505f81115b15610c2a57816040516388785d6560e01b8152600401610557919061270b565b5f63095ea7b360e01b83836040516024016121159291906128ab565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152905061215384826122c3565b610819576121768463095ea7b360e01b855f604051602401610bf3929190612ae9565b6108198482611fa9565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff166121f75760405162461bcd60e51b815260040161055790612a26565b61052933611460565b5f54610100900460ff166114595760405162461bcd60e51b815260040161055790612a26565b5f816001600160a01b031663a6afed956040518163ffffffff1660e01b81526004016020604051808303815f875af1158015612264573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061228891906126e7565b905080156103fd57806040516315fc6cbf60e21b8152600401610557919061270b565b60606122b984845f85612366565b90505b9392505050565b5f805f846001600160a01b0316846040516122de9190612b30565b5f604051808303815f865af19150503d805f8114612317576040519150601f19603f3d011682016040523d82523d5f602084013e61231c565b606091505b50915091508180156123465750805115806123465750808060200190518101906123469190612971565b801561235b57506001600160a01b0385163b15155b925050505b92915050565b6060824710156123885760405162461bcd60e51b815260040161055790612b7d565b5f80866001600160a01b031685876040516123a39190612b30565b5f6040518083038185875af1925050503d805f81146123dd576040519150601f19603f3d011682016040523d82523d5f602084013e6123e2565b606091505b50915091506123f387838387612400565b925050505b949350505050565b6060831561243e5782515f03612437576001600160a01b0385163b6124375760405162461bcd60e51b815260040161055790612bc0565b50816123f8565b6123f883838151156124535781518083602001fd5b8060405162461bcd60e51b81526004016105579190612c01565b5f6001600160a01b038216612360565b5f6123608261246d565b6124908161247d565b8114610569575f80fd5b803561236081612487565b5f602082840312156124b8576124b85f80fd5b5f6123f8848461249a565b6124908161246d565b8035612360816124c3565b5f805f606084860312156124ec576124ec5f80fd5b5f6124f786866124cc565b9350506020612508868287016124cc565b9250506040612519868287016124cc565b9150509250925092565b8015155b82525050565b602081016123608284612523565b5f6123608261247d565b6125278161253b565b602081016123608284612545565b80612490565b80356123608161255c565b5f805f805f60a08688031215612584576125845f80fd5b5f61258f88886124cc565b95505060206125a08882890161249a565b94505060406125b18882890161249a565b93505060606125c288828901612562565b92505060806125d38882890161249a565b9150509295509295909350565b6125278161246d565b6020810161236082846125e0565b5f805f806080858703121561260d5761260d5f80fd5b5f61261887876124cc565b94505060206126298782880161249a565b935050604061263a8782880161249a565b925050606061264b8782880161249a565b91505092959194509250565b801515612490565b803561236081612657565b5f805f8060808587031215612680576126805f80fd5b5f61268b87876124cc565b945050602061269c878288016124cc565b93505060406126ad878288016124cc565b925050606061264b8782880161265f565b5f602082840312156126d1576126d15f80fd5b5f6123f884846124cc565b80516123608161255c565b5f602082840312156126fa576126fa5f80fd5b5f6123f884846126dc565b80612527565b602081016123608284612705565b6060810161272782866125e0565b61273460208301856125e0565b6123f86040830184612705565b602981525f602082017f4f776e61626c6532537465703a2063616c6c6572206973206e6f7420746865208152683732bb9037bbb732b960b91b602082015291505b5060400190565b6020808252810161236081612741565b602e81525f602082017f496e697469616c697a61626c653a20636f6e747261637420697320616c72656181526d191e481a5b9a5d1a585b1a5e995960921b60208201529150612782565b6020808252810161236081612799565b5f60ff8216612360565b612527816127f3565b6020810161236082846127fd565b5f81612360565b60a0810161282982886125e0565b61283660208301876125e0565b61284360408301866125e0565b6128506060830185612523565b61285d6080830184612523565b9695505050505050565b60208082527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657291019081525f5b5060200190565b6020808252810161236081612867565b604081016128b982856125e0565b6122bc6020830184612705565b601f81525f602082017f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0081529150612894565b60208082528101612360816128c6565b805161236081612657565b5f805f60608486031215612929576129295f80fd5b5f6129348686612909565b9350506020612945868287016126dc565b925050604061251986828701612909565b6040810161296482856125e0565b6122bc60208301846125e0565b5f60208284031215612984576129845f80fd5b5f6123f88484612909565b8051612360816124c3565b5f602082840312156129ad576129ad5f80fd5b5f6123f8848461298f565b634e487b7160e01b5f52601160045260245ffd5b81810381811115612360576123606129b8565b602b81525f602082017f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206981526a6e697469616c697a696e6760a81b60208201529150612782565b60208082528101612360816129df565b60408101612a4482856125e0565b6122bc6020830184612545565b602a81525f602082017f5361666545524332303a204552433230206f7065726174696f6e20646964206e8152691bdd081cdd58d8d9595960b21b60208201529150612782565b6020808252810161236081612a51565b5f805f60608486031215612abc57612abc5f80fd5b5f612ac786866126dc565b9350506020612ad8868287016126dc565b9250506040612519868287016126dc565b60408101612af782856125e0565b6122bc60208301846127fd565b8281835e505f910152565b5f612b18825190565b612b26818560208601612b04565b9290920192915050565b5f6122bc8284612b0f565b602681525f602082017f416464726573733a20696e73756666696369656e742062616c616e636520666f8152651c8818d85b1b60d21b60208201529150612782565b6020808252810161236081612b3b565b601d81525f602082017f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000081529150612894565b6020808252810161236081612b8d565b5f612bd9825190565b808452602084019350612bf0818560208601612b04565b601f01601f19169290920192915050565b602080825281016122bc8184612bd056fea2646970667358221220c2c49ac20079f3486f8b398094123850b0cce8e001f03ebc7930cb0f1b48e18864736f6c63430008190033",
|
|
658
658
|
"linkReferences": {},
|
|
659
659
|
"deployedLinkReferences": {}
|
|
660
660
|
}
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_format": "hh-sol-artifact-1",
|
|
3
|
+
"contractName": "ISwapRouter",
|
|
4
|
+
"sourceName": "contracts/SwapRouter/ISwapRouter.sol",
|
|
5
|
+
"abi": [
|
|
6
|
+
{
|
|
7
|
+
"inputs": [
|
|
8
|
+
{
|
|
9
|
+
"internalType": "address",
|
|
10
|
+
"name": "vToken",
|
|
11
|
+
"type": "address"
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"internalType": "address",
|
|
15
|
+
"name": "tokenIn",
|
|
16
|
+
"type": "address"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"internalType": "uint256",
|
|
20
|
+
"name": "amountIn",
|
|
21
|
+
"type": "uint256"
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"internalType": "uint256",
|
|
25
|
+
"name": "minAmountOut",
|
|
26
|
+
"type": "uint256"
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"internalType": "bytes",
|
|
30
|
+
"name": "swapCallData",
|
|
31
|
+
"type": "bytes"
|
|
32
|
+
}
|
|
33
|
+
],
|
|
34
|
+
"name": "swapAndRepay",
|
|
35
|
+
"outputs": [],
|
|
36
|
+
"stateMutability": "payable",
|
|
37
|
+
"type": "function"
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
"inputs": [
|
|
41
|
+
{
|
|
42
|
+
"internalType": "address",
|
|
43
|
+
"name": "vToken",
|
|
44
|
+
"type": "address"
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
"internalType": "address",
|
|
48
|
+
"name": "tokenIn",
|
|
49
|
+
"type": "address"
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
"internalType": "uint256",
|
|
53
|
+
"name": "maxAmountIn",
|
|
54
|
+
"type": "uint256"
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
"internalType": "bytes",
|
|
58
|
+
"name": "swapCallData",
|
|
59
|
+
"type": "bytes"
|
|
60
|
+
}
|
|
61
|
+
],
|
|
62
|
+
"name": "swapAndRepayFull",
|
|
63
|
+
"outputs": [],
|
|
64
|
+
"stateMutability": "payable",
|
|
65
|
+
"type": "function"
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
"inputs": [
|
|
69
|
+
{
|
|
70
|
+
"internalType": "address",
|
|
71
|
+
"name": "vToken",
|
|
72
|
+
"type": "address"
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
"internalType": "address",
|
|
76
|
+
"name": "tokenIn",
|
|
77
|
+
"type": "address"
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
"internalType": "uint256",
|
|
81
|
+
"name": "amountIn",
|
|
82
|
+
"type": "uint256"
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
"internalType": "uint256",
|
|
86
|
+
"name": "minAmountOut",
|
|
87
|
+
"type": "uint256"
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
"internalType": "bytes",
|
|
91
|
+
"name": "swapCallData",
|
|
92
|
+
"type": "bytes"
|
|
93
|
+
}
|
|
94
|
+
],
|
|
95
|
+
"name": "swapAndSupply",
|
|
96
|
+
"outputs": [],
|
|
97
|
+
"stateMutability": "payable",
|
|
98
|
+
"type": "function"
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
"inputs": [
|
|
102
|
+
{
|
|
103
|
+
"internalType": "address",
|
|
104
|
+
"name": "vToken",
|
|
105
|
+
"type": "address"
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
"internalType": "uint256",
|
|
109
|
+
"name": "minAmountOut",
|
|
110
|
+
"type": "uint256"
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
"internalType": "bytes",
|
|
114
|
+
"name": "swapCallData",
|
|
115
|
+
"type": "bytes"
|
|
116
|
+
}
|
|
117
|
+
],
|
|
118
|
+
"name": "swapNativeAndRepay",
|
|
119
|
+
"outputs": [],
|
|
120
|
+
"stateMutability": "payable",
|
|
121
|
+
"type": "function"
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
"inputs": [
|
|
125
|
+
{
|
|
126
|
+
"internalType": "address",
|
|
127
|
+
"name": "vToken",
|
|
128
|
+
"type": "address"
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
"internalType": "bytes",
|
|
132
|
+
"name": "swapCallData",
|
|
133
|
+
"type": "bytes"
|
|
134
|
+
}
|
|
135
|
+
],
|
|
136
|
+
"name": "swapNativeAndRepayFull",
|
|
137
|
+
"outputs": [],
|
|
138
|
+
"stateMutability": "payable",
|
|
139
|
+
"type": "function"
|
|
140
|
+
},
|
|
141
|
+
{
|
|
142
|
+
"inputs": [
|
|
143
|
+
{
|
|
144
|
+
"internalType": "address",
|
|
145
|
+
"name": "vToken",
|
|
146
|
+
"type": "address"
|
|
147
|
+
},
|
|
148
|
+
{
|
|
149
|
+
"internalType": "uint256",
|
|
150
|
+
"name": "minAmountOut",
|
|
151
|
+
"type": "uint256"
|
|
152
|
+
},
|
|
153
|
+
{
|
|
154
|
+
"internalType": "bytes",
|
|
155
|
+
"name": "swapCallData",
|
|
156
|
+
"type": "bytes"
|
|
157
|
+
}
|
|
158
|
+
],
|
|
159
|
+
"name": "swapNativeAndSupply",
|
|
160
|
+
"outputs": [],
|
|
161
|
+
"stateMutability": "payable",
|
|
162
|
+
"type": "function"
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
"inputs": [],
|
|
166
|
+
"name": "sweepNative",
|
|
167
|
+
"outputs": [],
|
|
168
|
+
"stateMutability": "nonpayable",
|
|
169
|
+
"type": "function"
|
|
170
|
+
},
|
|
171
|
+
{
|
|
172
|
+
"inputs": [
|
|
173
|
+
{
|
|
174
|
+
"internalType": "address",
|
|
175
|
+
"name": "token",
|
|
176
|
+
"type": "address"
|
|
177
|
+
}
|
|
178
|
+
],
|
|
179
|
+
"name": "sweepToken",
|
|
180
|
+
"outputs": [],
|
|
181
|
+
"stateMutability": "nonpayable",
|
|
182
|
+
"type": "function"
|
|
183
|
+
}
|
|
184
|
+
],
|
|
185
|
+
"bytecode": "0x",
|
|
186
|
+
"deployedBytecode": "0x",
|
|
187
|
+
"linkReferences": {},
|
|
188
|
+
"deployedLinkReferences": {}
|
|
189
|
+
}
|
|
@@ -0,0 +1,627 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_format": "hh-sol-artifact-1",
|
|
3
|
+
"contractName": "SwapRouter",
|
|
4
|
+
"sourceName": "contracts/SwapRouter/SwapRouter.sol",
|
|
5
|
+
"abi": [
|
|
6
|
+
{
|
|
7
|
+
"inputs": [
|
|
8
|
+
{
|
|
9
|
+
"internalType": "contract IComptroller",
|
|
10
|
+
"name": "_comptroller",
|
|
11
|
+
"type": "address"
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"internalType": "contract SwapHelper",
|
|
15
|
+
"name": "_swapHelper",
|
|
16
|
+
"type": "address"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"internalType": "contract IWBNB",
|
|
20
|
+
"name": "_wrappedNative",
|
|
21
|
+
"type": "address"
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"internalType": "address",
|
|
25
|
+
"name": "_nativeVToken",
|
|
26
|
+
"type": "address"
|
|
27
|
+
}
|
|
28
|
+
],
|
|
29
|
+
"stateMutability": "nonpayable",
|
|
30
|
+
"type": "constructor"
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"inputs": [
|
|
34
|
+
{
|
|
35
|
+
"internalType": "uint256",
|
|
36
|
+
"name": "amountOut",
|
|
37
|
+
"type": "uint256"
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
"internalType": "uint256",
|
|
41
|
+
"name": "minAmountOut",
|
|
42
|
+
"type": "uint256"
|
|
43
|
+
}
|
|
44
|
+
],
|
|
45
|
+
"name": "InsufficientAmountOut",
|
|
46
|
+
"type": "error"
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"inputs": [],
|
|
50
|
+
"name": "InsufficientBalance",
|
|
51
|
+
"type": "error"
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
"inputs": [
|
|
55
|
+
{
|
|
56
|
+
"internalType": "address",
|
|
57
|
+
"name": "vToken",
|
|
58
|
+
"type": "address"
|
|
59
|
+
}
|
|
60
|
+
],
|
|
61
|
+
"name": "MarketNotListed",
|
|
62
|
+
"type": "error"
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
"inputs": [],
|
|
66
|
+
"name": "NativeTransferFailed",
|
|
67
|
+
"type": "error"
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
"inputs": [],
|
|
71
|
+
"name": "NoTokensReceived",
|
|
72
|
+
"type": "error"
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
"inputs": [
|
|
76
|
+
{
|
|
77
|
+
"internalType": "uint256",
|
|
78
|
+
"name": "errorCode",
|
|
79
|
+
"type": "uint256"
|
|
80
|
+
}
|
|
81
|
+
],
|
|
82
|
+
"name": "RepayFailed",
|
|
83
|
+
"type": "error"
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
"inputs": [
|
|
87
|
+
{
|
|
88
|
+
"internalType": "uint256",
|
|
89
|
+
"name": "errorCode",
|
|
90
|
+
"type": "uint256"
|
|
91
|
+
}
|
|
92
|
+
],
|
|
93
|
+
"name": "SupplyFailed",
|
|
94
|
+
"type": "error"
|
|
95
|
+
},
|
|
96
|
+
{
|
|
97
|
+
"inputs": [],
|
|
98
|
+
"name": "SwapFailed",
|
|
99
|
+
"type": "error"
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
"inputs": [
|
|
103
|
+
{
|
|
104
|
+
"internalType": "address",
|
|
105
|
+
"name": "sender",
|
|
106
|
+
"type": "address"
|
|
107
|
+
}
|
|
108
|
+
],
|
|
109
|
+
"name": "UnauthorizedNativeSender",
|
|
110
|
+
"type": "error"
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
"inputs": [],
|
|
114
|
+
"name": "ZeroAddress",
|
|
115
|
+
"type": "error"
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
"inputs": [],
|
|
119
|
+
"name": "ZeroAmount",
|
|
120
|
+
"type": "error"
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
"anonymous": false,
|
|
124
|
+
"inputs": [
|
|
125
|
+
{
|
|
126
|
+
"indexed": false,
|
|
127
|
+
"internalType": "uint8",
|
|
128
|
+
"name": "version",
|
|
129
|
+
"type": "uint8"
|
|
130
|
+
}
|
|
131
|
+
],
|
|
132
|
+
"name": "Initialized",
|
|
133
|
+
"type": "event"
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
"anonymous": false,
|
|
137
|
+
"inputs": [
|
|
138
|
+
{
|
|
139
|
+
"indexed": true,
|
|
140
|
+
"internalType": "address",
|
|
141
|
+
"name": "previousOwner",
|
|
142
|
+
"type": "address"
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
"indexed": true,
|
|
146
|
+
"internalType": "address",
|
|
147
|
+
"name": "newOwner",
|
|
148
|
+
"type": "address"
|
|
149
|
+
}
|
|
150
|
+
],
|
|
151
|
+
"name": "OwnershipTransferStarted",
|
|
152
|
+
"type": "event"
|
|
153
|
+
},
|
|
154
|
+
{
|
|
155
|
+
"anonymous": false,
|
|
156
|
+
"inputs": [
|
|
157
|
+
{
|
|
158
|
+
"indexed": true,
|
|
159
|
+
"internalType": "address",
|
|
160
|
+
"name": "previousOwner",
|
|
161
|
+
"type": "address"
|
|
162
|
+
},
|
|
163
|
+
{
|
|
164
|
+
"indexed": true,
|
|
165
|
+
"internalType": "address",
|
|
166
|
+
"name": "newOwner",
|
|
167
|
+
"type": "address"
|
|
168
|
+
}
|
|
169
|
+
],
|
|
170
|
+
"name": "OwnershipTransferred",
|
|
171
|
+
"type": "event"
|
|
172
|
+
},
|
|
173
|
+
{
|
|
174
|
+
"anonymous": false,
|
|
175
|
+
"inputs": [
|
|
176
|
+
{
|
|
177
|
+
"indexed": true,
|
|
178
|
+
"internalType": "address",
|
|
179
|
+
"name": "user",
|
|
180
|
+
"type": "address"
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
"indexed": true,
|
|
184
|
+
"internalType": "address",
|
|
185
|
+
"name": "vToken",
|
|
186
|
+
"type": "address"
|
|
187
|
+
},
|
|
188
|
+
{
|
|
189
|
+
"indexed": true,
|
|
190
|
+
"internalType": "address",
|
|
191
|
+
"name": "tokenIn",
|
|
192
|
+
"type": "address"
|
|
193
|
+
},
|
|
194
|
+
{
|
|
195
|
+
"indexed": false,
|
|
196
|
+
"internalType": "address",
|
|
197
|
+
"name": "tokenOut",
|
|
198
|
+
"type": "address"
|
|
199
|
+
},
|
|
200
|
+
{
|
|
201
|
+
"indexed": false,
|
|
202
|
+
"internalType": "uint256",
|
|
203
|
+
"name": "amountIn",
|
|
204
|
+
"type": "uint256"
|
|
205
|
+
},
|
|
206
|
+
{
|
|
207
|
+
"indexed": false,
|
|
208
|
+
"internalType": "uint256",
|
|
209
|
+
"name": "amountOut",
|
|
210
|
+
"type": "uint256"
|
|
211
|
+
},
|
|
212
|
+
{
|
|
213
|
+
"indexed": false,
|
|
214
|
+
"internalType": "uint256",
|
|
215
|
+
"name": "amountRepaid",
|
|
216
|
+
"type": "uint256"
|
|
217
|
+
}
|
|
218
|
+
],
|
|
219
|
+
"name": "SwapAndRepay",
|
|
220
|
+
"type": "event"
|
|
221
|
+
},
|
|
222
|
+
{
|
|
223
|
+
"anonymous": false,
|
|
224
|
+
"inputs": [
|
|
225
|
+
{
|
|
226
|
+
"indexed": true,
|
|
227
|
+
"internalType": "address",
|
|
228
|
+
"name": "user",
|
|
229
|
+
"type": "address"
|
|
230
|
+
},
|
|
231
|
+
{
|
|
232
|
+
"indexed": true,
|
|
233
|
+
"internalType": "address",
|
|
234
|
+
"name": "vToken",
|
|
235
|
+
"type": "address"
|
|
236
|
+
},
|
|
237
|
+
{
|
|
238
|
+
"indexed": true,
|
|
239
|
+
"internalType": "address",
|
|
240
|
+
"name": "tokenIn",
|
|
241
|
+
"type": "address"
|
|
242
|
+
},
|
|
243
|
+
{
|
|
244
|
+
"indexed": false,
|
|
245
|
+
"internalType": "address",
|
|
246
|
+
"name": "tokenOut",
|
|
247
|
+
"type": "address"
|
|
248
|
+
},
|
|
249
|
+
{
|
|
250
|
+
"indexed": false,
|
|
251
|
+
"internalType": "uint256",
|
|
252
|
+
"name": "amountIn",
|
|
253
|
+
"type": "uint256"
|
|
254
|
+
},
|
|
255
|
+
{
|
|
256
|
+
"indexed": false,
|
|
257
|
+
"internalType": "uint256",
|
|
258
|
+
"name": "amountOut",
|
|
259
|
+
"type": "uint256"
|
|
260
|
+
},
|
|
261
|
+
{
|
|
262
|
+
"indexed": false,
|
|
263
|
+
"internalType": "uint256",
|
|
264
|
+
"name": "amountSupplied",
|
|
265
|
+
"type": "uint256"
|
|
266
|
+
}
|
|
267
|
+
],
|
|
268
|
+
"name": "SwapAndSupply",
|
|
269
|
+
"type": "event"
|
|
270
|
+
},
|
|
271
|
+
{
|
|
272
|
+
"anonymous": false,
|
|
273
|
+
"inputs": [
|
|
274
|
+
{
|
|
275
|
+
"indexed": true,
|
|
276
|
+
"internalType": "address",
|
|
277
|
+
"name": "receiver",
|
|
278
|
+
"type": "address"
|
|
279
|
+
},
|
|
280
|
+
{
|
|
281
|
+
"indexed": false,
|
|
282
|
+
"internalType": "uint256",
|
|
283
|
+
"name": "amount",
|
|
284
|
+
"type": "uint256"
|
|
285
|
+
}
|
|
286
|
+
],
|
|
287
|
+
"name": "SweepNative",
|
|
288
|
+
"type": "event"
|
|
289
|
+
},
|
|
290
|
+
{
|
|
291
|
+
"anonymous": false,
|
|
292
|
+
"inputs": [
|
|
293
|
+
{
|
|
294
|
+
"indexed": true,
|
|
295
|
+
"internalType": "address",
|
|
296
|
+
"name": "token",
|
|
297
|
+
"type": "address"
|
|
298
|
+
},
|
|
299
|
+
{
|
|
300
|
+
"indexed": true,
|
|
301
|
+
"internalType": "address",
|
|
302
|
+
"name": "receiver",
|
|
303
|
+
"type": "address"
|
|
304
|
+
},
|
|
305
|
+
{
|
|
306
|
+
"indexed": false,
|
|
307
|
+
"internalType": "uint256",
|
|
308
|
+
"name": "amount",
|
|
309
|
+
"type": "uint256"
|
|
310
|
+
}
|
|
311
|
+
],
|
|
312
|
+
"name": "SweepToken",
|
|
313
|
+
"type": "event"
|
|
314
|
+
},
|
|
315
|
+
{
|
|
316
|
+
"inputs": [],
|
|
317
|
+
"name": "COMPTROLLER",
|
|
318
|
+
"outputs": [
|
|
319
|
+
{
|
|
320
|
+
"internalType": "contract IComptroller",
|
|
321
|
+
"name": "",
|
|
322
|
+
"type": "address"
|
|
323
|
+
}
|
|
324
|
+
],
|
|
325
|
+
"stateMutability": "view",
|
|
326
|
+
"type": "function"
|
|
327
|
+
},
|
|
328
|
+
{
|
|
329
|
+
"inputs": [],
|
|
330
|
+
"name": "NATIVE_TOKEN_ADDR",
|
|
331
|
+
"outputs": [
|
|
332
|
+
{
|
|
333
|
+
"internalType": "address",
|
|
334
|
+
"name": "",
|
|
335
|
+
"type": "address"
|
|
336
|
+
}
|
|
337
|
+
],
|
|
338
|
+
"stateMutability": "view",
|
|
339
|
+
"type": "function"
|
|
340
|
+
},
|
|
341
|
+
{
|
|
342
|
+
"inputs": [],
|
|
343
|
+
"name": "NATIVE_VTOKEN",
|
|
344
|
+
"outputs": [
|
|
345
|
+
{
|
|
346
|
+
"internalType": "contract IVBNB",
|
|
347
|
+
"name": "",
|
|
348
|
+
"type": "address"
|
|
349
|
+
}
|
|
350
|
+
],
|
|
351
|
+
"stateMutability": "view",
|
|
352
|
+
"type": "function"
|
|
353
|
+
},
|
|
354
|
+
{
|
|
355
|
+
"inputs": [],
|
|
356
|
+
"name": "SWAP_HELPER",
|
|
357
|
+
"outputs": [
|
|
358
|
+
{
|
|
359
|
+
"internalType": "contract SwapHelper",
|
|
360
|
+
"name": "",
|
|
361
|
+
"type": "address"
|
|
362
|
+
}
|
|
363
|
+
],
|
|
364
|
+
"stateMutability": "view",
|
|
365
|
+
"type": "function"
|
|
366
|
+
},
|
|
367
|
+
{
|
|
368
|
+
"inputs": [],
|
|
369
|
+
"name": "WRAPPED_NATIVE",
|
|
370
|
+
"outputs": [
|
|
371
|
+
{
|
|
372
|
+
"internalType": "contract IWBNB",
|
|
373
|
+
"name": "",
|
|
374
|
+
"type": "address"
|
|
375
|
+
}
|
|
376
|
+
],
|
|
377
|
+
"stateMutability": "view",
|
|
378
|
+
"type": "function"
|
|
379
|
+
},
|
|
380
|
+
{
|
|
381
|
+
"inputs": [],
|
|
382
|
+
"name": "acceptOwnership",
|
|
383
|
+
"outputs": [],
|
|
384
|
+
"stateMutability": "nonpayable",
|
|
385
|
+
"type": "function"
|
|
386
|
+
},
|
|
387
|
+
{
|
|
388
|
+
"inputs": [],
|
|
389
|
+
"name": "initialize",
|
|
390
|
+
"outputs": [],
|
|
391
|
+
"stateMutability": "nonpayable",
|
|
392
|
+
"type": "function"
|
|
393
|
+
},
|
|
394
|
+
{
|
|
395
|
+
"inputs": [],
|
|
396
|
+
"name": "owner",
|
|
397
|
+
"outputs": [
|
|
398
|
+
{
|
|
399
|
+
"internalType": "address",
|
|
400
|
+
"name": "",
|
|
401
|
+
"type": "address"
|
|
402
|
+
}
|
|
403
|
+
],
|
|
404
|
+
"stateMutability": "view",
|
|
405
|
+
"type": "function"
|
|
406
|
+
},
|
|
407
|
+
{
|
|
408
|
+
"inputs": [],
|
|
409
|
+
"name": "pendingOwner",
|
|
410
|
+
"outputs": [
|
|
411
|
+
{
|
|
412
|
+
"internalType": "address",
|
|
413
|
+
"name": "",
|
|
414
|
+
"type": "address"
|
|
415
|
+
}
|
|
416
|
+
],
|
|
417
|
+
"stateMutability": "view",
|
|
418
|
+
"type": "function"
|
|
419
|
+
},
|
|
420
|
+
{
|
|
421
|
+
"inputs": [],
|
|
422
|
+
"name": "renounceOwnership",
|
|
423
|
+
"outputs": [],
|
|
424
|
+
"stateMutability": "nonpayable",
|
|
425
|
+
"type": "function"
|
|
426
|
+
},
|
|
427
|
+
{
|
|
428
|
+
"inputs": [
|
|
429
|
+
{
|
|
430
|
+
"internalType": "address",
|
|
431
|
+
"name": "vToken",
|
|
432
|
+
"type": "address"
|
|
433
|
+
},
|
|
434
|
+
{
|
|
435
|
+
"internalType": "address",
|
|
436
|
+
"name": "tokenIn",
|
|
437
|
+
"type": "address"
|
|
438
|
+
},
|
|
439
|
+
{
|
|
440
|
+
"internalType": "uint256",
|
|
441
|
+
"name": "amountIn",
|
|
442
|
+
"type": "uint256"
|
|
443
|
+
},
|
|
444
|
+
{
|
|
445
|
+
"internalType": "uint256",
|
|
446
|
+
"name": "minAmountOut",
|
|
447
|
+
"type": "uint256"
|
|
448
|
+
},
|
|
449
|
+
{
|
|
450
|
+
"internalType": "bytes",
|
|
451
|
+
"name": "swapCallData",
|
|
452
|
+
"type": "bytes"
|
|
453
|
+
}
|
|
454
|
+
],
|
|
455
|
+
"name": "swapAndRepay",
|
|
456
|
+
"outputs": [],
|
|
457
|
+
"stateMutability": "nonpayable",
|
|
458
|
+
"type": "function"
|
|
459
|
+
},
|
|
460
|
+
{
|
|
461
|
+
"inputs": [
|
|
462
|
+
{
|
|
463
|
+
"internalType": "address",
|
|
464
|
+
"name": "vToken",
|
|
465
|
+
"type": "address"
|
|
466
|
+
},
|
|
467
|
+
{
|
|
468
|
+
"internalType": "address",
|
|
469
|
+
"name": "tokenIn",
|
|
470
|
+
"type": "address"
|
|
471
|
+
},
|
|
472
|
+
{
|
|
473
|
+
"internalType": "uint256",
|
|
474
|
+
"name": "maxAmountIn",
|
|
475
|
+
"type": "uint256"
|
|
476
|
+
},
|
|
477
|
+
{
|
|
478
|
+
"internalType": "bytes",
|
|
479
|
+
"name": "swapCallData",
|
|
480
|
+
"type": "bytes"
|
|
481
|
+
}
|
|
482
|
+
],
|
|
483
|
+
"name": "swapAndRepayFull",
|
|
484
|
+
"outputs": [],
|
|
485
|
+
"stateMutability": "nonpayable",
|
|
486
|
+
"type": "function"
|
|
487
|
+
},
|
|
488
|
+
{
|
|
489
|
+
"inputs": [
|
|
490
|
+
{
|
|
491
|
+
"internalType": "address",
|
|
492
|
+
"name": "vToken",
|
|
493
|
+
"type": "address"
|
|
494
|
+
},
|
|
495
|
+
{
|
|
496
|
+
"internalType": "address",
|
|
497
|
+
"name": "tokenIn",
|
|
498
|
+
"type": "address"
|
|
499
|
+
},
|
|
500
|
+
{
|
|
501
|
+
"internalType": "uint256",
|
|
502
|
+
"name": "amountIn",
|
|
503
|
+
"type": "uint256"
|
|
504
|
+
},
|
|
505
|
+
{
|
|
506
|
+
"internalType": "uint256",
|
|
507
|
+
"name": "minAmountOut",
|
|
508
|
+
"type": "uint256"
|
|
509
|
+
},
|
|
510
|
+
{
|
|
511
|
+
"internalType": "bytes",
|
|
512
|
+
"name": "swapCallData",
|
|
513
|
+
"type": "bytes"
|
|
514
|
+
}
|
|
515
|
+
],
|
|
516
|
+
"name": "swapAndSupply",
|
|
517
|
+
"outputs": [],
|
|
518
|
+
"stateMutability": "nonpayable",
|
|
519
|
+
"type": "function"
|
|
520
|
+
},
|
|
521
|
+
{
|
|
522
|
+
"inputs": [
|
|
523
|
+
{
|
|
524
|
+
"internalType": "address",
|
|
525
|
+
"name": "vToken",
|
|
526
|
+
"type": "address"
|
|
527
|
+
},
|
|
528
|
+
{
|
|
529
|
+
"internalType": "uint256",
|
|
530
|
+
"name": "minAmountOut",
|
|
531
|
+
"type": "uint256"
|
|
532
|
+
},
|
|
533
|
+
{
|
|
534
|
+
"internalType": "bytes",
|
|
535
|
+
"name": "swapCallData",
|
|
536
|
+
"type": "bytes"
|
|
537
|
+
}
|
|
538
|
+
],
|
|
539
|
+
"name": "swapNativeAndRepay",
|
|
540
|
+
"outputs": [],
|
|
541
|
+
"stateMutability": "payable",
|
|
542
|
+
"type": "function"
|
|
543
|
+
},
|
|
544
|
+
{
|
|
545
|
+
"inputs": [
|
|
546
|
+
{
|
|
547
|
+
"internalType": "address",
|
|
548
|
+
"name": "vToken",
|
|
549
|
+
"type": "address"
|
|
550
|
+
},
|
|
551
|
+
{
|
|
552
|
+
"internalType": "bytes",
|
|
553
|
+
"name": "swapCallData",
|
|
554
|
+
"type": "bytes"
|
|
555
|
+
}
|
|
556
|
+
],
|
|
557
|
+
"name": "swapNativeAndRepayFull",
|
|
558
|
+
"outputs": [],
|
|
559
|
+
"stateMutability": "payable",
|
|
560
|
+
"type": "function"
|
|
561
|
+
},
|
|
562
|
+
{
|
|
563
|
+
"inputs": [
|
|
564
|
+
{
|
|
565
|
+
"internalType": "address",
|
|
566
|
+
"name": "vToken",
|
|
567
|
+
"type": "address"
|
|
568
|
+
},
|
|
569
|
+
{
|
|
570
|
+
"internalType": "uint256",
|
|
571
|
+
"name": "minAmountOut",
|
|
572
|
+
"type": "uint256"
|
|
573
|
+
},
|
|
574
|
+
{
|
|
575
|
+
"internalType": "bytes",
|
|
576
|
+
"name": "swapCallData",
|
|
577
|
+
"type": "bytes"
|
|
578
|
+
}
|
|
579
|
+
],
|
|
580
|
+
"name": "swapNativeAndSupply",
|
|
581
|
+
"outputs": [],
|
|
582
|
+
"stateMutability": "payable",
|
|
583
|
+
"type": "function"
|
|
584
|
+
},
|
|
585
|
+
{
|
|
586
|
+
"inputs": [],
|
|
587
|
+
"name": "sweepNative",
|
|
588
|
+
"outputs": [],
|
|
589
|
+
"stateMutability": "nonpayable",
|
|
590
|
+
"type": "function"
|
|
591
|
+
},
|
|
592
|
+
{
|
|
593
|
+
"inputs": [
|
|
594
|
+
{
|
|
595
|
+
"internalType": "contract IERC20Upgradeable",
|
|
596
|
+
"name": "token",
|
|
597
|
+
"type": "address"
|
|
598
|
+
}
|
|
599
|
+
],
|
|
600
|
+
"name": "sweepToken",
|
|
601
|
+
"outputs": [],
|
|
602
|
+
"stateMutability": "nonpayable",
|
|
603
|
+
"type": "function"
|
|
604
|
+
},
|
|
605
|
+
{
|
|
606
|
+
"inputs": [
|
|
607
|
+
{
|
|
608
|
+
"internalType": "address",
|
|
609
|
+
"name": "newOwner",
|
|
610
|
+
"type": "address"
|
|
611
|
+
}
|
|
612
|
+
],
|
|
613
|
+
"name": "transferOwnership",
|
|
614
|
+
"outputs": [],
|
|
615
|
+
"stateMutability": "nonpayable",
|
|
616
|
+
"type": "function"
|
|
617
|
+
},
|
|
618
|
+
{
|
|
619
|
+
"stateMutability": "payable",
|
|
620
|
+
"type": "receive"
|
|
621
|
+
}
|
|
622
|
+
],
|
|
623
|
+
"bytecode": "0x610100604052348015610010575f5ffd5b50604051612a9b380380612a9b83398101604081905261002f916101d0565b6001600160a01b0384166100565760405163d92e233d60e01b815260040160405180910390fd5b6001600160a01b03831661007d5760405163d92e233d60e01b815260040160405180910390fd5b6001600160a01b0382166100a45760405163d92e233d60e01b815260040160405180910390fd5b6001600160a01b0381166100cb5760405163d92e233d60e01b815260040160405180910390fd5b6001600160a01b0380851660805283811660a05282811660c052811660e0526100f26100fb565b5050505061028a565b5f54610100900460ff161561012b5760405162461bcd60e51b815260040161012290610230565b60405180910390fd5b5f5460ff9081161461017d575f805460ff191660ff9081179091556040517f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498916101749161027b565b60405180910390a15b565b5f6001600160a01b0382165b92915050565b5f61018b8261017f565b6101a481610191565b81146101ae575f5ffd5b50565b805161018b8161019b565b6101a48161017f565b805161018b816101bc565b5f5f5f5f608085870312156101e6576101e65f5ffd5b5f6101f187876101b1565b9450506020610202878288016101b1565b9350506040610213878288016101b1565b9250506060610224878288016101c5565b91505092959194509250565b6020808252810161018b81602781527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469602082015266616c697a696e6760c81b604082015260600190565b60ff821681526020810161018b565b60805160a05160c05160e05161276061033b5f395f8181610384015281816111bd015281816115f6015281816116f7015261194401525f818161012301528181610351015281816107e0015281816108540152818161088f01528181610d2c01528181610da001528181610ddb01528181610e9301528181610f0701528181610f4201526111f701525f81816101a2015281816113ec015261148301525f818161023c015261112201526127605ff3fe608060405260043610610113575f3560e01c80638da5cb5b1161009d578063c7c9914311610062578063c7c991431461032d578063d999984d14610340578063dc26ea2114610373578063e30c3978146103a6578063f2fde38b146103c3575f5ffd5b80638da5cb5b1461029a57806395b42430146102c0578063a9534f8a146102df578063ab803a7614610306578063aed38dd51461031a575f5ffd5b80635030daf2116100e35780635030daf2146102185780635f82c67e1461022b578063715018a61461025e57806379ba5097146102725780638129fc1c14610286575f5ffd5b80631be19560146101725780634401258c146101915780634719dfed146101da5780634c1dc7e5146101f9575f5ffd5b3661016e57336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461016c573360405163aa4611c960e01b81526004016101639190611f46565b60405180910390fd5b005b5f5ffd5b34801561017d575f5ffd5b5061016c61018c366004611f7c565b6103e2565b34801561019c575f5ffd5b506101c47f000000000000000000000000000000000000000000000000000000000000000081565b6040516101d19190611fad565b60405180910390f35b3480156101e5575f5ffd5b5061016c6101f436600461202e565b6104e0565b348015610204575f5ffd5b5061016c6102133660046120be565b6105ba565b61016c61022636600461213c565b610711565b348015610236575f5ffd5b506101c47f000000000000000000000000000000000000000000000000000000000000000081565b348015610269575f5ffd5b5061016c610909565b34801561027d575f5ffd5b5061016c61091c565b348015610291575f5ffd5b5061016c610954565b3480156102a5575f5ffd5b506033546001600160a01b03165b6040516101d19190611f46565b3480156102cb575f5ffd5b5061016c6102da36600461202e565b610a24565b3480156102ea575f5ffd5b506102b373bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb81565b348015610311575f5ffd5b5061016c610b74565b61016c6103283660046121a5565b610c5d565b61016c61033b36600461213c565b610e54565b34801561034b575f5ffd5b506101c47f000000000000000000000000000000000000000000000000000000000000000081565b34801561037e575f5ffd5b506101c47f000000000000000000000000000000000000000000000000000000000000000081565b3480156103b1575f5ffd5b506065546001600160a01b03166102b3565b3480156103ce575f5ffd5b5061016c6103dd3660046121fc565b610fc8565b6103ea611039565b6040516370a0823160e01b81525f906001600160a01b038316906370a0823190610418903090600401611f46565b602060405180830381865afa158015610433573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104579190612225565b905080156104dc576104856104746033546001600160a01b031690565b6001600160a01b0384169083611063565b6033546001600160a01b03166001600160a01b0316826001600160a01b03167f6d25be279134f4ecaa4770aff0c3d916d9e7c5ef37b65ed95dbdba411f5d54d5836040516104d39190612249565b60405180910390a35b5050565b6104e86110b9565b835f0361050857604051631f2a200560e01b815260040160405180910390fd5b610511866110e2565b5f61051b876111ba565b90505f6105288787611281565b90505f61053988848489898961138c565b90505f6105478a85846115f3565b9050886001600160a01b03168a6001600160a01b0316336001600160a01b03167f7334d83c41b79b2c10193c91ba7d060b0d91a4846ee64002b1c1f8d3471a7bd98787878760405161059c9493929190612257565b60405180910390a4505050506105b26001609755565b505050505050565b6105c26110b9565b825f036105e257604051631f2a200560e01b815260040160405180910390fd5b6105eb856110e2565b6040516305eff7ef60e21b81525f906001600160a01b038716906317bfdfbc90610619903390600401611f46565b6020604051808303815f875af1158015610635573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106599190612225565b9050805f0361067b57604051631f2a200560e01b815260040160405180910390fd5b5f610685876111ba565b90505f6106928787611281565b90505f6106a3888484878a8a61138c565b90505f6106b18a85846118c0565b9050886001600160a01b03168a6001600160a01b0316336001600160a01b03165f51602061270b5f395f51905f52878787876040516106f39493929190612257565b60405180910390a4505050505061070a6001609755565b5050505050565b6107196110b9565b345f0361073957604051631f2a200560e01b815260040160405180910390fd5b610742846110e2565b6040516305eff7ef60e21b81525f906001600160a01b038616906317bfdfbc90610770903390600401611f46565b6020604051808303815f875af115801561078c573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107b09190612225565b9050805f036107d257604051631f2a200560e01b815260040160405180910390fd5b5f6107dc866111ba565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d0e30db0346040518263ffffffff1660e01b81526004015f604051808303818588803b158015610837575f5ffd5b505af1158015610849573d5f5f3e3d5ffd5b50505050505f61087d7f0000000000000000000000000000000000000000000000000000000000000000833489898961138c565b90505f61088b8884846118c0565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316886001600160a01b0316336001600160a01b03165f51602061270b5f395f51905f52863487876040516108ed9493929190612257565b60405180910390a4505050506109036001609755565b50505050565b610911611039565b61091a5f611b18565b565b60655433906001600160a01b031681146109485760405162461bcd60e51b8152600401610163906122d4565b61095181611b18565b50565b5f54610100900460ff161580801561097257505f54600160ff909116105b8061098b5750303b15801561098b57505f5460ff166001145b6109a75760405162461bcd60e51b81526004016101639061232e565b5f805460ff1916600117905580156109c8575f805461ff0019166101001790555b6109d0611b31565b6109d8611b5f565b8015610951575f805461ff00191690556040517f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890610a1990600190612351565b60405180910390a150565b610a2c6110b9565b835f03610a4c57604051631f2a200560e01b815260040160405180910390fd5b610a55866110e2565b6040516305eff7ef60e21b81525f906001600160a01b038816906317bfdfbc90610a83903390600401611f46565b6020604051808303815f875af1158015610a9f573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ac39190612225565b9050805f03610ae557604051631f2a200560e01b815260040160405180910390fd5b5f610aef886111ba565b90505f610afc8888611281565b90505f610b0d8984848a8a8a61138c565b90505f610b1b8b85846118c0565b9050896001600160a01b03168b6001600160a01b0316336001600160a01b03165f51602061270b5f395f51905f5287878787604051610b5d9493929190612257565b60405180910390a450505050506105b26001609755565b610b7c611039565b478015610951575f610b966033546001600160a01b031690565b6001600160a01b031682604051610bac9061235f565b5f6040518083038185875af1925050503d805f8114610be6576040519150601f19603f3d011682016040523d82523d5f602084013e610beb565b606091505b5050905080610c0d57604051633d2cec6f60e21b815260040160405180910390fd5b6033546001600160a01b03166001600160a01b03167f0a1dd7c5bdc40ecbdefc1bfda22f1dfb98c8fc3e3940aab73ad7fba37720d0a083604051610c519190612249565b60405180910390a25050565b610c656110b9565b345f03610c8557604051631f2a200560e01b815260040160405180910390fd5b610c8e836110e2565b6040516305eff7ef60e21b81525f906001600160a01b038516906317bfdfbc90610cbc903390600401611f46565b6020604051808303815f875af1158015610cd8573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cfc9190612225565b9050805f03610d1e57604051631f2a200560e01b815260040160405180910390fd5b5f610d28856111ba565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d0e30db0346040518263ffffffff1660e01b81526004015f604051808303818588803b158015610d83575f5ffd5b505af1158015610d95573d5f5f3e3d5ffd5b50505050505f610dc97f0000000000000000000000000000000000000000000000000000000000000000833486898961138c565b90505f610dd78784846118c0565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316876001600160a01b0316336001600160a01b03165f51602061270b5f395f51905f5286348787604051610e399493929190612257565b60405180910390a450505050610e4f6001609755565b505050565b610e5c6110b9565b345f03610e7c57604051631f2a200560e01b815260040160405180910390fd5b610e85846110e2565b5f610e8f856111ba565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d0e30db0346040518263ffffffff1660e01b81526004015f604051808303818588803b158015610eea575f5ffd5b505af1158015610efc573d5f5f3e3d5ffd5b50505050505f610f307f0000000000000000000000000000000000000000000000000000000000000000833488888861138c565b90505f610f3e8784846115f3565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316876001600160a01b0316336001600160a01b03167f7334d83c41b79b2c10193c91ba7d060b0d91a4846ee64002b1c1f8d3471a7bd986348787604051610fb39493929190612257565b60405180910390a45050506109036001609755565b610fd0611039565b606580546001600160a01b0383166001600160a01b031990911681179091556110016033546001600160a01b031690565b6001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b6033546001600160a01b0316331461091a5760405162461bcd60e51b81526004016101639061239a565b610e4f8363a9059cbb60e01b84846040516024016110829291906123aa565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152611b8d565b6002609754036110db5760405162461bcd60e51b8152600401610163906123f8565b6002609755565b6001600160a01b0381166111095760405163d92e233d60e01b815260040160405180910390fd5b604051638e8f294b60e01b81525f906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690638e8f294b90611157908590600401611f46565b606060405180830381865afa158015611172573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611196919061241b565b50509050806104dc5781604051635a9a1eb960e11b81526004016101639190611f46565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b03160361121b57507f0000000000000000000000000000000000000000000000000000000000000000919050565b816001600160a01b0316636f307dc36040518163ffffffff1660e01b8152600401602060405180830381865afa158015611257573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061127b9190612472565b92915050565b6040516370a0823160e01b81525f90839082906001600160a01b038316906370a08231906112b3903090600401611f46565b602060405180830381865afa1580156112ce573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112f29190612225565b90506113096001600160a01b038316333087611c1d565b6040516370a0823160e01b81525f906001600160a01b038416906370a0823190611337903090600401611f46565b602060405180830381865afa158015611352573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113769190612225565b905061138282826124a4565b9695505050505050565b5f856001600160a01b0316876001600160a01b0316036113dd575f841180156113b457508385105b156113d657848460405163126c3c7360e21b81526004016101639291906124b7565b5083611382565b6114116001600160a01b0388167f000000000000000000000000000000000000000000000000000000000000000087611063565b6040516370a0823160e01b81525f906001600160a01b038816906370a082319061143f903090600401611f46565b602060405180830381865afa15801561145a573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061147e9190612225565b90505f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031685856040516114bb9291906124e2565b5f604051808303815f865af19150503d805f81146114f4576040519150601f19603f3d011682016040523d82523d5f602084013e6114f9565b606091505b505090508061151b5760405163081ceff360e41b815260040160405180910390fd5b6040516370a0823160e01b81525f906001600160a01b038a16906370a0823190611549903090600401611f46565b602060405180830381865afa158015611564573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115889190612225565b905061159483826124a4565b9350835f036115b657604051639671a89f60e01b815260040160405180910390fd5b5f871180156115c457508684105b156115e657838760405163126c3c7360e21b81526004016101639291906124b7565b5050509695505050505050565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b03160361180657604051632e1a7d4d60e01b81526001600160a01b03841690632e1a7d4d90611659908590600401612249565b5f604051808303815f87803b158015611670575f5ffd5b505af1158015611682573d5f5f3e3d5ffd5b50506040516370a0823160e01b81525f92506001600160a01b03871691506370a08231906116b4903090600401611f46565b602060405180830381865afa1580156116cf573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116f39190612225565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316631249c58b846040518263ffffffff1660e01b81526004015f604051808303818588803b15801561174e575f5ffd5b505af1158015611760573d5f5f3e3d5ffd5b50506040516370a0823160e01b81525f93506001600160a01b03891692506370a082319150611793903090600401611f46565b602060405180830381865afa1580156117ae573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117d29190612225565b90505f6117df83836124a4565b859450905080156117fe576117fe6001600160a01b0388163383611063565b5050506118b2565b61181a6001600160a01b0384168584611c3e565b6040516323323e0360e01b81525f906001600160a01b038616906323323e039061184a90339087906004016123aa565b6020604051808303815f875af1158015611866573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061188a9190612225565b905080156118ad578060405163093a784b60e31b81526004016101639190612249565b829150505b9392505050565b6001609755565b5f5f846001600160a01b03166317bfdfbc336040518263ffffffff1660e01b81526004016118ee9190611f46565b6020604051808303815f875af115801561190a573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061192e9190612225565b90505f81841161193e5783611940565b815b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316866001600160a01b031603611a3857604051632e1a7d4d60e01b81526001600160a01b03861690632e1a7d4d906119a7908490600401612249565b5f604051808303815f87803b1580156119be575f5ffd5b505af11580156119d0573d5f5f3e3d5ffd5b505060405163e597461960e01b81526001600160a01b038916925063e597461991508390611a02903390600401611f46565b5f604051808303818588803b158015611a19575f5ffd5b505af1158015611a2b573d5f5f3e3d5ffd5b5050505050809250611ae4565b611a4c6001600160a01b0386168783611c3e565b6040516304c11f0360e31b81525f906001600160a01b03881690632608f81890611a7c90339086906004016123aa565b6020604051808303815f875af1158015611a98573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611abc9190612225565b90508015611adf57806040516305e4427960e11b81526004016101639190612249565b819350505b80841115611b0f575f611af782866124a4565b9050611b0d6001600160a01b0387163383611063565b505b50509392505050565b606580546001600160a01b031916905561095181611cc5565b5f54610100900460ff16611b575760405162461bcd60e51b815260040161016390612535565b61091a611d16565b5f54610100900460ff16611b855760405162461bcd60e51b815260040161016390612535565b61091a611d45565b5f611be1826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316611d6b9092919063ffffffff16565b905080515f1480611c01575080806020019051810190611c019190612545565b610e4f5760405162461bcd60e51b8152600401610163906125a9565b610903846323b872dd60e01b858585604051602401611082939291906125b9565b5f63095ea7b360e01b8383604051602401611c5a9291906123aa565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091529050611c988482611d81565b61090357611cbb8463095ea7b360e01b855f6040516024016110829291906125e1565b6109038482611b8d565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff16611d3c5760405162461bcd60e51b815260040161016390612535565b61091a33611b18565b5f54610100900460ff166118b95760405162461bcd60e51b815260040161016390612535565b6060611d7984845f85611e22565b949350505050565b5f5f5f846001600160a01b031684604051611d9c9190612628565b5f604051808303815f865af19150503d805f8114611dd5576040519150601f19603f3d011682016040523d82523d5f602084013e611dda565b606091505b5091509150818015611e04575080511580611e04575080806020019051810190611e049190612545565b8015611e1957506001600160a01b0385163b15155b95945050505050565b606082471015611e445760405162461bcd60e51b815260040161016390612675565b5f5f866001600160a01b03168587604051611e5f9190612628565b5f6040518083038185875af1925050503d805f8114611e99576040519150601f19603f3d011682016040523d82523d5f602084013e611e9e565b606091505b5091509150611eaf87838387611eba565b979650505050505050565b60608315611ef85782515f03611ef1576001600160a01b0385163b611ef15760405162461bcd60e51b8152600401610163906126b8565b5081611d79565b611d798383815115611f0d5781518083602001fd5b8060405162461bcd60e51b815260040161016391906126f9565b5f6001600160a01b03821661127b565b611f4081611f27565b82525050565b6020810161127b8284611f37565b5f61127b82611f27565b611f6781611f54565b8114610951575f5ffd5b803561127b81611f5e565b5f60208284031215611f8f57611f8f5f5ffd5b5f611d798484611f71565b5f61127b82611f54565b611f4081611f9a565b6020810161127b8284611fa4565b611f6781611f27565b803561127b81611fbb565b80611f67565b803561127b81611fcf565b5f5f83601f840112611ff357611ff35f5ffd5b50813567ffffffffffffffff81111561200d5761200d5f5ffd5b602083019150836001820283011115612027576120275f5ffd5b9250929050565b5f5f5f5f5f5f60a08789031215612046576120465f5ffd5b5f6120518989611fc4565b965050602061206289828a01611fc4565b955050604061207389828a01611fd5565b945050606061208489828a01611fd5565b935050608087013567ffffffffffffffff8111156120a3576120a35f5ffd5b6120af89828a01611fe0565b92509250509295509295509295565b5f5f5f5f5f608086880312156120d5576120d55f5ffd5b5f6120e08888611fc4565b95505060206120f188828901611fc4565b945050604061210288828901611fd5565b935050606086013567ffffffffffffffff811115612121576121215f5ffd5b61212d88828901611fe0565b92509250509295509295909350565b5f5f5f5f60608587031215612152576121525f5ffd5b5f61215d8787611fc4565b945050602061216e87828801611fd5565b935050604085013567ffffffffffffffff81111561218d5761218d5f5ffd5b61219987828801611fe0565b95989497509550505050565b5f5f5f604084860312156121ba576121ba5f5ffd5b5f6121c58686611fc4565b935050602084013567ffffffffffffffff8111156121e4576121e45f5ffd5b6121f086828701611fe0565b92509250509250925092565b5f6020828403121561220f5761220f5f5ffd5b5f611d798484611fc4565b805161127b81611fcf565b5f60208284031215612238576122385f5ffd5b5f611d79848461221a565b80611f40565b6020810161127b8284612243565b608081016122658287611f37565b6122726020830186612243565b61227f6040830185612243565b611e196060830184612243565b602981525f602082017f4f776e61626c6532537465703a2063616c6c6572206973206e6f7420746865208152683732bb9037bbb732b960b91b602082015291505b5060400190565b6020808252810161127b8161228c565b602e81525f602082017f496e697469616c697a61626c653a20636f6e747261637420697320616c72656181526d191e481a5b9a5d1a585b1a5e995960921b602082015291506122cd565b6020808252810161127b816122e4565b5f60ff821661127b565b611f408161233e565b6020810161127b8284612348565b5f8161127b565b60208082527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657291019081525f5b5060200190565b6020808252810161127b81612366565b604081016123b88285611f37565b6118b26020830184612243565b601f81525f602082017f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0081529150612393565b6020808252810161127b816123c5565b801515611f67565b805161127b81612408565b5f5f5f60608486031215612430576124305f5ffd5b5f61243b8686612410565b935050602061244c8682870161221a565b925050604061245d86828701612410565b9150509250925092565b805161127b81611fbb565b5f60208284031215612485576124855f5ffd5b5f611d798484612467565b634e487b7160e01b5f52601160045260245ffd5b8181038181111561127b5761127b612490565b604081016123b88285612243565b82818337505f910152565b5f6124dc8385846124c5565b50500190565b5f611d798284866124d0565b602b81525f602082017f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206981526a6e697469616c697a696e6760a81b602082015291506122cd565b6020808252810161127b816124ee565b5f60208284031215612558576125585f5ffd5b5f611d798484612410565b602a81525f602082017f5361666545524332303a204552433230206f7065726174696f6e20646964206e8152691bdd081cdd58d8d9595960b21b602082015291506122cd565b6020808252810161127b81612563565b606081016125c78286611f37565b6125d46020830185611f37565b611d796040830184612243565b604081016125ef8285611f37565b6118b26020830184612348565b8281835e505f910152565b5f612610825190565b61261e8185602086016125fc565b9290920192915050565b5f6118b28284612607565b602681525f602082017f416464726573733a20696e73756666696369656e742062616c616e636520666f8152651c8818d85b1b60d21b602082015291506122cd565b6020808252810161127b81612633565b601d81525f602082017f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000081529150612393565b6020808252810161127b81612685565b5f6126d1825190565b8084526020840193506126e88185602086016125fc565b601f01601f19169290920192915050565b602080825281016118b281846126c856fedc93b8bc8518ff29aa9ed946dc1471649cc385bb939daf1602c6af2a9ce4c36ba2646970667358221220297f70dee4d66543519541aad3714db753578b6d8cf7a2dd2562c7b5469ff28964736f6c634300081c0033",
|
|
624
|
+
"deployedBytecode": "0x608060405260043610610113575f3560e01c80638da5cb5b1161009d578063c7c9914311610062578063c7c991431461032d578063d999984d14610340578063dc26ea2114610373578063e30c3978146103a6578063f2fde38b146103c3575f5ffd5b80638da5cb5b1461029a57806395b42430146102c0578063a9534f8a146102df578063ab803a7614610306578063aed38dd51461031a575f5ffd5b80635030daf2116100e35780635030daf2146102185780635f82c67e1461022b578063715018a61461025e57806379ba5097146102725780638129fc1c14610286575f5ffd5b80631be19560146101725780634401258c146101915780634719dfed146101da5780634c1dc7e5146101f9575f5ffd5b3661016e57336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461016c573360405163aa4611c960e01b81526004016101639190611f46565b60405180910390fd5b005b5f5ffd5b34801561017d575f5ffd5b5061016c61018c366004611f7c565b6103e2565b34801561019c575f5ffd5b506101c47f000000000000000000000000000000000000000000000000000000000000000081565b6040516101d19190611fad565b60405180910390f35b3480156101e5575f5ffd5b5061016c6101f436600461202e565b6104e0565b348015610204575f5ffd5b5061016c6102133660046120be565b6105ba565b61016c61022636600461213c565b610711565b348015610236575f5ffd5b506101c47f000000000000000000000000000000000000000000000000000000000000000081565b348015610269575f5ffd5b5061016c610909565b34801561027d575f5ffd5b5061016c61091c565b348015610291575f5ffd5b5061016c610954565b3480156102a5575f5ffd5b506033546001600160a01b03165b6040516101d19190611f46565b3480156102cb575f5ffd5b5061016c6102da36600461202e565b610a24565b3480156102ea575f5ffd5b506102b373bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb81565b348015610311575f5ffd5b5061016c610b74565b61016c6103283660046121a5565b610c5d565b61016c61033b36600461213c565b610e54565b34801561034b575f5ffd5b506101c47f000000000000000000000000000000000000000000000000000000000000000081565b34801561037e575f5ffd5b506101c47f000000000000000000000000000000000000000000000000000000000000000081565b3480156103b1575f5ffd5b506065546001600160a01b03166102b3565b3480156103ce575f5ffd5b5061016c6103dd3660046121fc565b610fc8565b6103ea611039565b6040516370a0823160e01b81525f906001600160a01b038316906370a0823190610418903090600401611f46565b602060405180830381865afa158015610433573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104579190612225565b905080156104dc576104856104746033546001600160a01b031690565b6001600160a01b0384169083611063565b6033546001600160a01b03166001600160a01b0316826001600160a01b03167f6d25be279134f4ecaa4770aff0c3d916d9e7c5ef37b65ed95dbdba411f5d54d5836040516104d39190612249565b60405180910390a35b5050565b6104e86110b9565b835f0361050857604051631f2a200560e01b815260040160405180910390fd5b610511866110e2565b5f61051b876111ba565b90505f6105288787611281565b90505f61053988848489898961138c565b90505f6105478a85846115f3565b9050886001600160a01b03168a6001600160a01b0316336001600160a01b03167f7334d83c41b79b2c10193c91ba7d060b0d91a4846ee64002b1c1f8d3471a7bd98787878760405161059c9493929190612257565b60405180910390a4505050506105b26001609755565b505050505050565b6105c26110b9565b825f036105e257604051631f2a200560e01b815260040160405180910390fd5b6105eb856110e2565b6040516305eff7ef60e21b81525f906001600160a01b038716906317bfdfbc90610619903390600401611f46565b6020604051808303815f875af1158015610635573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106599190612225565b9050805f0361067b57604051631f2a200560e01b815260040160405180910390fd5b5f610685876111ba565b90505f6106928787611281565b90505f6106a3888484878a8a61138c565b90505f6106b18a85846118c0565b9050886001600160a01b03168a6001600160a01b0316336001600160a01b03165f51602061270b5f395f51905f52878787876040516106f39493929190612257565b60405180910390a4505050505061070a6001609755565b5050505050565b6107196110b9565b345f0361073957604051631f2a200560e01b815260040160405180910390fd5b610742846110e2565b6040516305eff7ef60e21b81525f906001600160a01b038616906317bfdfbc90610770903390600401611f46565b6020604051808303815f875af115801561078c573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107b09190612225565b9050805f036107d257604051631f2a200560e01b815260040160405180910390fd5b5f6107dc866111ba565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d0e30db0346040518263ffffffff1660e01b81526004015f604051808303818588803b158015610837575f5ffd5b505af1158015610849573d5f5f3e3d5ffd5b50505050505f61087d7f0000000000000000000000000000000000000000000000000000000000000000833489898961138c565b90505f61088b8884846118c0565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316886001600160a01b0316336001600160a01b03165f51602061270b5f395f51905f52863487876040516108ed9493929190612257565b60405180910390a4505050506109036001609755565b50505050565b610911611039565b61091a5f611b18565b565b60655433906001600160a01b031681146109485760405162461bcd60e51b8152600401610163906122d4565b61095181611b18565b50565b5f54610100900460ff161580801561097257505f54600160ff909116105b8061098b5750303b15801561098b57505f5460ff166001145b6109a75760405162461bcd60e51b81526004016101639061232e565b5f805460ff1916600117905580156109c8575f805461ff0019166101001790555b6109d0611b31565b6109d8611b5f565b8015610951575f805461ff00191690556040517f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890610a1990600190612351565b60405180910390a150565b610a2c6110b9565b835f03610a4c57604051631f2a200560e01b815260040160405180910390fd5b610a55866110e2565b6040516305eff7ef60e21b81525f906001600160a01b038816906317bfdfbc90610a83903390600401611f46565b6020604051808303815f875af1158015610a9f573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ac39190612225565b9050805f03610ae557604051631f2a200560e01b815260040160405180910390fd5b5f610aef886111ba565b90505f610afc8888611281565b90505f610b0d8984848a8a8a61138c565b90505f610b1b8b85846118c0565b9050896001600160a01b03168b6001600160a01b0316336001600160a01b03165f51602061270b5f395f51905f5287878787604051610b5d9493929190612257565b60405180910390a450505050506105b26001609755565b610b7c611039565b478015610951575f610b966033546001600160a01b031690565b6001600160a01b031682604051610bac9061235f565b5f6040518083038185875af1925050503d805f8114610be6576040519150601f19603f3d011682016040523d82523d5f602084013e610beb565b606091505b5050905080610c0d57604051633d2cec6f60e21b815260040160405180910390fd5b6033546001600160a01b03166001600160a01b03167f0a1dd7c5bdc40ecbdefc1bfda22f1dfb98c8fc3e3940aab73ad7fba37720d0a083604051610c519190612249565b60405180910390a25050565b610c656110b9565b345f03610c8557604051631f2a200560e01b815260040160405180910390fd5b610c8e836110e2565b6040516305eff7ef60e21b81525f906001600160a01b038516906317bfdfbc90610cbc903390600401611f46565b6020604051808303815f875af1158015610cd8573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cfc9190612225565b9050805f03610d1e57604051631f2a200560e01b815260040160405180910390fd5b5f610d28856111ba565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d0e30db0346040518263ffffffff1660e01b81526004015f604051808303818588803b158015610d83575f5ffd5b505af1158015610d95573d5f5f3e3d5ffd5b50505050505f610dc97f0000000000000000000000000000000000000000000000000000000000000000833486898961138c565b90505f610dd78784846118c0565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316876001600160a01b0316336001600160a01b03165f51602061270b5f395f51905f5286348787604051610e399493929190612257565b60405180910390a450505050610e4f6001609755565b505050565b610e5c6110b9565b345f03610e7c57604051631f2a200560e01b815260040160405180910390fd5b610e85846110e2565b5f610e8f856111ba565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663d0e30db0346040518263ffffffff1660e01b81526004015f604051808303818588803b158015610eea575f5ffd5b505af1158015610efc573d5f5f3e3d5ffd5b50505050505f610f307f0000000000000000000000000000000000000000000000000000000000000000833488888861138c565b90505f610f3e8784846115f3565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316876001600160a01b0316336001600160a01b03167f7334d83c41b79b2c10193c91ba7d060b0d91a4846ee64002b1c1f8d3471a7bd986348787604051610fb39493929190612257565b60405180910390a45050506109036001609755565b610fd0611039565b606580546001600160a01b0383166001600160a01b031990911681179091556110016033546001600160a01b031690565b6001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a350565b6033546001600160a01b0316331461091a5760405162461bcd60e51b81526004016101639061239a565b610e4f8363a9059cbb60e01b84846040516024016110829291906123aa565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152611b8d565b6002609754036110db5760405162461bcd60e51b8152600401610163906123f8565b6002609755565b6001600160a01b0381166111095760405163d92e233d60e01b815260040160405180910390fd5b604051638e8f294b60e01b81525f906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690638e8f294b90611157908590600401611f46565b606060405180830381865afa158015611172573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611196919061241b565b50509050806104dc5781604051635a9a1eb960e11b81526004016101639190611f46565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b03160361121b57507f0000000000000000000000000000000000000000000000000000000000000000919050565b816001600160a01b0316636f307dc36040518163ffffffff1660e01b8152600401602060405180830381865afa158015611257573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061127b9190612472565b92915050565b6040516370a0823160e01b81525f90839082906001600160a01b038316906370a08231906112b3903090600401611f46565b602060405180830381865afa1580156112ce573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112f29190612225565b90506113096001600160a01b038316333087611c1d565b6040516370a0823160e01b81525f906001600160a01b038416906370a0823190611337903090600401611f46565b602060405180830381865afa158015611352573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113769190612225565b905061138282826124a4565b9695505050505050565b5f856001600160a01b0316876001600160a01b0316036113dd575f841180156113b457508385105b156113d657848460405163126c3c7360e21b81526004016101639291906124b7565b5083611382565b6114116001600160a01b0388167f000000000000000000000000000000000000000000000000000000000000000087611063565b6040516370a0823160e01b81525f906001600160a01b038816906370a082319061143f903090600401611f46565b602060405180830381865afa15801561145a573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061147e9190612225565b90505f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031685856040516114bb9291906124e2565b5f604051808303815f865af19150503d805f81146114f4576040519150601f19603f3d011682016040523d82523d5f602084013e6114f9565b606091505b505090508061151b5760405163081ceff360e41b815260040160405180910390fd5b6040516370a0823160e01b81525f906001600160a01b038a16906370a0823190611549903090600401611f46565b602060405180830381865afa158015611564573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115889190612225565b905061159483826124a4565b9350835f036115b657604051639671a89f60e01b815260040160405180910390fd5b5f871180156115c457508684105b156115e657838760405163126c3c7360e21b81526004016101639291906124b7565b5050509695505050505050565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b03160361180657604051632e1a7d4d60e01b81526001600160a01b03841690632e1a7d4d90611659908590600401612249565b5f604051808303815f87803b158015611670575f5ffd5b505af1158015611682573d5f5f3e3d5ffd5b50506040516370a0823160e01b81525f92506001600160a01b03871691506370a08231906116b4903090600401611f46565b602060405180830381865afa1580156116cf573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116f39190612225565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316631249c58b846040518263ffffffff1660e01b81526004015f604051808303818588803b15801561174e575f5ffd5b505af1158015611760573d5f5f3e3d5ffd5b50506040516370a0823160e01b81525f93506001600160a01b03891692506370a082319150611793903090600401611f46565b602060405180830381865afa1580156117ae573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117d29190612225565b90505f6117df83836124a4565b859450905080156117fe576117fe6001600160a01b0388163383611063565b5050506118b2565b61181a6001600160a01b0384168584611c3e565b6040516323323e0360e01b81525f906001600160a01b038616906323323e039061184a90339087906004016123aa565b6020604051808303815f875af1158015611866573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061188a9190612225565b905080156118ad578060405163093a784b60e31b81526004016101639190612249565b829150505b9392505050565b6001609755565b5f5f846001600160a01b03166317bfdfbc336040518263ffffffff1660e01b81526004016118ee9190611f46565b6020604051808303815f875af115801561190a573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061192e9190612225565b90505f81841161193e5783611940565b815b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316866001600160a01b031603611a3857604051632e1a7d4d60e01b81526001600160a01b03861690632e1a7d4d906119a7908490600401612249565b5f604051808303815f87803b1580156119be575f5ffd5b505af11580156119d0573d5f5f3e3d5ffd5b505060405163e597461960e01b81526001600160a01b038916925063e597461991508390611a02903390600401611f46565b5f604051808303818588803b158015611a19575f5ffd5b505af1158015611a2b573d5f5f3e3d5ffd5b5050505050809250611ae4565b611a4c6001600160a01b0386168783611c3e565b6040516304c11f0360e31b81525f906001600160a01b03881690632608f81890611a7c90339086906004016123aa565b6020604051808303815f875af1158015611a98573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611abc9190612225565b90508015611adf57806040516305e4427960e11b81526004016101639190612249565b819350505b80841115611b0f575f611af782866124a4565b9050611b0d6001600160a01b0387163383611063565b505b50509392505050565b606580546001600160a01b031916905561095181611cc5565b5f54610100900460ff16611b575760405162461bcd60e51b815260040161016390612535565b61091a611d16565b5f54610100900460ff16611b855760405162461bcd60e51b815260040161016390612535565b61091a611d45565b5f611be1826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316611d6b9092919063ffffffff16565b905080515f1480611c01575080806020019051810190611c019190612545565b610e4f5760405162461bcd60e51b8152600401610163906125a9565b610903846323b872dd60e01b858585604051602401611082939291906125b9565b5f63095ea7b360e01b8383604051602401611c5a9291906123aa565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091529050611c988482611d81565b61090357611cbb8463095ea7b360e01b855f6040516024016110829291906125e1565b6109038482611b8d565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b5f54610100900460ff16611d3c5760405162461bcd60e51b815260040161016390612535565b61091a33611b18565b5f54610100900460ff166118b95760405162461bcd60e51b815260040161016390612535565b6060611d7984845f85611e22565b949350505050565b5f5f5f846001600160a01b031684604051611d9c9190612628565b5f604051808303815f865af19150503d805f8114611dd5576040519150601f19603f3d011682016040523d82523d5f602084013e611dda565b606091505b5091509150818015611e04575080511580611e04575080806020019051810190611e049190612545565b8015611e1957506001600160a01b0385163b15155b95945050505050565b606082471015611e445760405162461bcd60e51b815260040161016390612675565b5f5f866001600160a01b03168587604051611e5f9190612628565b5f6040518083038185875af1925050503d805f8114611e99576040519150601f19603f3d011682016040523d82523d5f602084013e611e9e565b606091505b5091509150611eaf87838387611eba565b979650505050505050565b60608315611ef85782515f03611ef1576001600160a01b0385163b611ef15760405162461bcd60e51b8152600401610163906126b8565b5081611d79565b611d798383815115611f0d5781518083602001fd5b8060405162461bcd60e51b815260040161016391906126f9565b5f6001600160a01b03821661127b565b611f4081611f27565b82525050565b6020810161127b8284611f37565b5f61127b82611f27565b611f6781611f54565b8114610951575f5ffd5b803561127b81611f5e565b5f60208284031215611f8f57611f8f5f5ffd5b5f611d798484611f71565b5f61127b82611f54565b611f4081611f9a565b6020810161127b8284611fa4565b611f6781611f27565b803561127b81611fbb565b80611f67565b803561127b81611fcf565b5f5f83601f840112611ff357611ff35f5ffd5b50813567ffffffffffffffff81111561200d5761200d5f5ffd5b602083019150836001820283011115612027576120275f5ffd5b9250929050565b5f5f5f5f5f5f60a08789031215612046576120465f5ffd5b5f6120518989611fc4565b965050602061206289828a01611fc4565b955050604061207389828a01611fd5565b945050606061208489828a01611fd5565b935050608087013567ffffffffffffffff8111156120a3576120a35f5ffd5b6120af89828a01611fe0565b92509250509295509295509295565b5f5f5f5f5f608086880312156120d5576120d55f5ffd5b5f6120e08888611fc4565b95505060206120f188828901611fc4565b945050604061210288828901611fd5565b935050606086013567ffffffffffffffff811115612121576121215f5ffd5b61212d88828901611fe0565b92509250509295509295909350565b5f5f5f5f60608587031215612152576121525f5ffd5b5f61215d8787611fc4565b945050602061216e87828801611fd5565b935050604085013567ffffffffffffffff81111561218d5761218d5f5ffd5b61219987828801611fe0565b95989497509550505050565b5f5f5f604084860312156121ba576121ba5f5ffd5b5f6121c58686611fc4565b935050602084013567ffffffffffffffff8111156121e4576121e45f5ffd5b6121f086828701611fe0565b92509250509250925092565b5f6020828403121561220f5761220f5f5ffd5b5f611d798484611fc4565b805161127b81611fcf565b5f60208284031215612238576122385f5ffd5b5f611d79848461221a565b80611f40565b6020810161127b8284612243565b608081016122658287611f37565b6122726020830186612243565b61227f6040830185612243565b611e196060830184612243565b602981525f602082017f4f776e61626c6532537465703a2063616c6c6572206973206e6f7420746865208152683732bb9037bbb732b960b91b602082015291505b5060400190565b6020808252810161127b8161228c565b602e81525f602082017f496e697469616c697a61626c653a20636f6e747261637420697320616c72656181526d191e481a5b9a5d1a585b1a5e995960921b602082015291506122cd565b6020808252810161127b816122e4565b5f60ff821661127b565b611f408161233e565b6020810161127b8284612348565b5f8161127b565b60208082527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657291019081525f5b5060200190565b6020808252810161127b81612366565b604081016123b88285611f37565b6118b26020830184612243565b601f81525f602082017f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0081529150612393565b6020808252810161127b816123c5565b801515611f67565b805161127b81612408565b5f5f5f60608486031215612430576124305f5ffd5b5f61243b8686612410565b935050602061244c8682870161221a565b925050604061245d86828701612410565b9150509250925092565b805161127b81611fbb565b5f60208284031215612485576124855f5ffd5b5f611d798484612467565b634e487b7160e01b5f52601160045260245ffd5b8181038181111561127b5761127b612490565b604081016123b88285612243565b82818337505f910152565b5f6124dc8385846124c5565b50500190565b5f611d798284866124d0565b602b81525f602082017f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206981526a6e697469616c697a696e6760a81b602082015291506122cd565b6020808252810161127b816124ee565b5f60208284031215612558576125585f5ffd5b5f611d798484612410565b602a81525f602082017f5361666545524332303a204552433230206f7065726174696f6e20646964206e8152691bdd081cdd58d8d9595960b21b602082015291506122cd565b6020808252810161127b81612563565b606081016125c78286611f37565b6125d46020830185611f37565b611d796040830184612243565b604081016125ef8285611f37565b6118b26020830184612348565b8281835e505f910152565b5f612610825190565b61261e8185602086016125fc565b9290920192915050565b5f6118b28284612607565b602681525f602082017f416464726573733a20696e73756666696369656e742062616c616e636520666f8152651c8818d85b1b60d21b602082015291506122cd565b6020808252810161127b81612633565b601d81525f602082017f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000081529150612393565b6020808252810161127b81612685565b5f6126d1825190565b8084526020840193506126e88185602086016125fc565b601f01601f19169290920192915050565b602080825281016118b281846126c856fedc93b8bc8518ff29aa9ed946dc1471649cc385bb939daf1602c6af2a9ce4c36ba2646970667358221220297f70dee4d66543519541aad3714db753578b6d8cf7a2dd2562c7b5469ff28964736f6c634300081c0033",
|
|
625
|
+
"linkReferences": {},
|
|
626
|
+
"deployedLinkReferences": {}
|
|
627
|
+
}
|
|
@@ -15,6 +15,9 @@
|
|
|
15
15
|
"SentinelOracle_Implementation": "0x26F9aCA545Cb0d91738e5AAD1b8E6568728f7BC0",
|
|
16
16
|
"SentinelOracle_Proxy": "0x58eae0Cf4215590E19860b66b146C5d539cb6f14",
|
|
17
17
|
"SwapHelper": "0xD79be25aEe798Aa34A9Ba1230003d7499be29A24",
|
|
18
|
+
"SwapRouter": "0xde7E4f67Af577F29e5F3B995f9e67FD425F73621",
|
|
19
|
+
"SwapRouter_Implementation": "0xf0B661b6694940Ad4cE583449b71733D4D44C2F1",
|
|
20
|
+
"SwapRouter_Proxy": "0xde7E4f67Af577F29e5F3B995f9e67FD425F73621",
|
|
18
21
|
"UniswapOracle": "0x8FD05458faf220B2324c4BFbb29DBC4B3CF6f23f",
|
|
19
22
|
"UniswapOracle_Implementation": "0x3156529859cf18708404544324098330EAb31827",
|
|
20
23
|
"UniswapOracle_Proxy": "0x8FD05458faf220B2324c4BFbb29DBC4B3CF6f23f"
|
|
@@ -8,6 +8,9 @@
|
|
|
8
8
|
"SentinelOracle": "0xa4f2B03919BAAdCA80C31406412C7Ee059A579D3",
|
|
9
9
|
"SentinelOracle_Implementation": "0x95fab31B827E5071eD3421B85F02169Dc5814100",
|
|
10
10
|
"SentinelOracle_Proxy": "0xa4f2B03919BAAdCA80C31406412C7Ee059A579D3",
|
|
11
|
-
"SwapHelper": "0x55Fa097cA59BAc70C1ba488BEb11A5F6bf7019Eb"
|
|
11
|
+
"SwapHelper": "0x55Fa097cA59BAc70C1ba488BEb11A5F6bf7019Eb",
|
|
12
|
+
"SwapRouter": "0xd3F226acA3210990DBA3f410b74E36b08F31FCf2",
|
|
13
|
+
"SwapRouter_Implementation": "0xc579c3F0DBA2b7d82d6256AF07C116A96aD64608",
|
|
14
|
+
"SwapRouter_Proxy": "0xd3F226acA3210990DBA3f410b74E36b08F31FCf2"
|
|
12
15
|
}
|
|
13
16
|
}
|