7.3k txs
3.79m calls
constructor
constructor(address[3] _coins, uint256 _A, uint256 _fee, uint256 _admin_fee, string _name, string _symbol)
functions
A_precise
viewfunction A_precise() view returns (uint256)
A
viewfunction A() view returns (uint256)
admin_actions_deadline
viewfunction admin_actions_deadline() view returns (uint256)
admin_balances
viewfunction admin_balances(uint256 i) view returns (uint256)
admin_fee
viewfunction admin_fee() view returns (uint256)
allowance
viewfunction allowance(address arg0, address arg1) view returns (uint256)
balanceOf
viewfunction balanceOf(address arg0) view returns (uint256)
balances
viewfunction balances(uint256 arg0) view returns (uint256)
calc_token_amount
viewfunction calc_token_amount(uint256[3] _amounts, bool _is_deposit) view returns (uint256)
calc_withdraw_one_coin
viewfunction calc_withdraw_one_coin(uint256 _burn_amount, int128 i) view returns (uint256)
coins
viewfunction coins(uint256 arg0) view returns (address)
decimals
viewfunction decimals() view returns (uint256)
fee
viewfunction fee() view returns (uint256)
future_A_time
viewfunction future_A_time() view returns (uint256)
future_A
viewfunction future_A() view returns (uint256)
future_admin_fee
viewfunction future_admin_fee() view returns (uint256)
future_fee
viewfunction future_fee() view returns (uint256)
future_owner
viewfunction future_owner() view returns (address)
get_balances
viewfunction get_balances() view returns (uint256[3])
get_dy
viewfunction get_dy(int128 i, int128 j, uint256 dx) view returns (uint256)
get_virtual_price
viewfunction get_virtual_price() view returns (uint256)
initial_A_time
viewfunction initial_A_time() view returns (uint256)
initial_A
viewfunction initial_A() view returns (uint256)
name
viewfunction name() view returns (string)
owner
viewfunction owner() view returns (address)
symbol
viewfunction symbol() view returns (string)
totalSupply
viewfunction totalSupply() view returns (uint256)
transfer_ownership_deadline
viewfunction transfer_ownership_deadline() view returns (uint256)
add_liquidity
nonpayablefunction add_liquidity(uint256[3] _amounts, uint256 _min_mint_amount, address _receiver) returns (uint256)
add_liquidity
nonpayablefunction add_liquidity(uint256[3] _amounts, uint256 _min_mint_amount) returns (uint256)
apply_new_fee
nonpayablefunction apply_new_fee()
apply_transfer_ownership
nonpayablefunction apply_transfer_ownership()
approve
nonpayablefunction approve(address _spender, uint256 _value) returns (bool)
commit_new_fee
nonpayablefunction commit_new_fee(uint256 _new_fee, uint256 _new_admin_fee)
commit_transfer_ownership
nonpayablefunction commit_transfer_ownership(address _owner)
donate_admin_fees
nonpayablefunction donate_admin_fees()
exchange
nonpayablefunction exchange(int128 i, int128 j, uint256 _dx, uint256 _min_dy, address _receiver) returns (uint256)
exchange
nonpayablefunction exchange(int128 i, int128 j, uint256 _dx, uint256 _min_dy) returns (uint256)
kill_me
nonpayablefunction kill_me()
ramp_A
nonpayablefunction ramp_A(uint256 _future_A, uint256 _future_time)
remove_liquidity_imbalance
nonpayablefunction remove_liquidity_imbalance(uint256[3] _amounts, uint256 _max_burn_amount, address _receiver) returns (uint256)
remove_liquidity_imbalance
nonpayablefunction remove_liquidity_imbalance(uint256[3] _amounts, uint256 _max_burn_amount) returns (uint256)
remove_liquidity_one_coin
nonpayablefunction remove_liquidity_one_coin(uint256 _burn_amount, int128 i, uint256 _min_received, address _receiver) returns (uint256)
remove_liquidity_one_coin
nonpayablefunction remove_liquidity_one_coin(uint256 _burn_amount, int128 i, uint256 _min_received) returns (uint256)
remove_liquidity
nonpayablefunction remove_liquidity(uint256 _burn_amount, uint256[3] _min_amounts, address _receiver) returns (uint256[3])
remove_liquidity
nonpayablefunction remove_liquidity(uint256 _burn_amount, uint256[3] _min_amounts) returns (uint256[3])
revert_new_parameters
nonpayablefunction revert_new_parameters()
revert_transfer_ownership
nonpayablefunction revert_transfer_ownership()
stop_ramp_A
nonpayablefunction stop_ramp_A()
transfer
nonpayablefunction transfer(address _to, uint256 _value) returns (bool)
transferFrom
nonpayablefunction transferFrom(address _from, address _to, uint256 _value) returns (bool)
unkill_me
nonpayablefunction unkill_me()
withdraw_admin_fees
nonpayablefunction withdraw_admin_fees()
events
AddLiquidity
event AddLiquidity(address indexed provider, uint256[3] token_amounts, uint256[3] fees, uint256 invariant, uint256 token_supply)
Approval
event Approval(address indexed owner, address indexed spender, uint256 value)
CommitNewAdmin
event CommitNewAdmin(uint256 indexed deadline, address indexed admin)
CommitNewFee
event CommitNewFee(uint256 indexed deadline, uint256 fee, uint256 admin_fee)
NewAdmin
event NewAdmin(address indexed admin)
NewFee
event NewFee(uint256 fee, uint256 admin_fee)
RampA
event RampA(uint256 old_A, uint256 new_A, uint256 initial_time, uint256 future_time)
RemoveLiquidity
event RemoveLiquidity(address indexed provider, uint256[3] token_amounts, uint256[3] fees, uint256 token_supply)
RemoveLiquidityImbalance
event RemoveLiquidityImbalance(address indexed provider, uint256[3] token_amounts, uint256[3] fees, uint256 invariant, uint256 token_supply)
RemoveLiquidityOne
event RemoveLiquidityOne(address indexed provider, uint256 token_amount, uint256 coin_amount, uint256 token_supply)
StopRampA
event StopRampA(uint256 A, uint256 t)
TokenExchange
event TokenExchange(address indexed buyer, int128 sold_id, uint256 tokens_sold, int128 bought_id, uint256 tokens_bought)
Transfer
event Transfer(address indexed sender, address indexed receiver, uint256 value)
errors
No errors.
creation bytecode
0x613c8b6020816080396080518060a01c613c865760e0526020602082016080396080518060a01c613c8657610100526020604082016080396080518060a01c613c86576101205250602060c0613c8b01608039608051613c8b01604060208260803960805111613c865780602081608039608051602001808261014039505050602060e0613c8b01608039608051613c8b01602060208260803960805111613c86578060208160803960805160200180826101a03950505060e051600155610100516002556101205160035560206060613c8b016080396080516064808202821582848304141715613c865790509050600a5560206060613c8b016080396080516064808202821582848304141715613c865790509050600b5560206080613c8b01608039608051600755602060a0613c8b016080396080516008553360095542624f1a008181830110613c865780820190509050601455610140806015602082510160c060006003818352015b8260c051602002111561017f5761019e565b60c05160200285015160c051850155815160010180835281141561016d575b5050505050506101a0806018602082510160c060006002818352015b8260c05160200211156101cc576101eb565b60c05160200285015160c05185015581516001018083528114156101ba575b5050505050503060007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60006101e05260206101e0a3613c6e56600436101561000d57612b0f565b60046000601c3760005134613a435763313ce567811861003257601260e052602060e0f35b63a9059cbb8118610074576004358060a01c613a4357610160523360e052610160516101005260243561012052610067612b15565b6001610180526020610180f35b6323b872dd8118610148576004358060a01c613a4357610160526024358060a01c613a4357610180526101605160e0526101805161010052604435610120526100bb612b15565b601b6101605160a05260805260406080203360a0526080526040608020546101a0527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6101a0511461013b576101a051604435808210613a435780820390509050601b6101605160a05260805260406080203360a0526080526040608020555b60016101c05260206101c0f35b63095ea7b381186101c0576004358060a01c613a435760e052602435601b3360a052608052604060802060e05160a05260805260406080205560e051337f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925602435610100526020610100a36001610100526020610100f35b6314f0597981186101e55760045460e0526005546101005260065461012052606060e0f35b63f446c1d08118610213576101fb610160612b9e565b61016051606480820490509050610180526020610180f35b6376a2f0f0811861023857610229610160612b9e565b61016051610180526020610180f35b63bb7b8b8081186102ff5761024e610280612b9e565b610280516102605260045460e05260055461010052600654610120526102756102e0612cd9565b6102e080516102805280602001516102a05280604001516102c052506102805160e0526102a051610100526102c0516101205261026051610140526102bb610300612da4565b610300516102e0526102e051670de0b6b3a7640000808202821582848304141715613a435790509050601c54808015613a4357820490509050610300526020610300f35b633883e11981186104b8576064358060011c613a43576103a0526103246103e0612b9e565b6103e0516103c0526004546103e05260055461040052600654610420526103e051610260526104005161028052610420516102a0526103c0516102c05261036c610460613011565b610460516104405261046060006003818352015b6020610460510260040135610480526103a0516103c7576103e0610460516003811015613a435760200201805161048051808210613a4357808203905090508152506103f5565b6103e0610460516003811015613a4357602002018051610480518181830110613a4357808201905090508152505b81516001018083528114156103805750506103e051610260526104005161028052610420516102a0526103c0516102c052610431610480613011565b61048051610460526000610480526103a051610466576104405161046051808210613a43578082039050905061048052610481565b6104605161044051808210613a435780820390509050610480525b61048051601c54808202821582848304141715613a43579050905061044051808015613a43578204905090506104a05260206104a0f35b634515cef381186104cd57336103a0526104e8565b6375b96abc8118610b2c576084358060a01c613a43576103a0525b600054613a43576001600055601354613a43576105066103e0612b9e565b6103e0516103c0526004546103e05260055461040052600654610420526103e051610260526104005161028052610420516102a0526103c0516102c05261054e610460613011565b6104605161044052601c54610460526103e05161048052610400516104a052610420516104c0526104e060006003818352015b60206104e051026004013561050052600061050051116105ab5760006104605114613a43576106eb565b60006004610560527f23b872dd00000000000000000000000000000000000000000000000000000000610580526105606004806020846105a00101826020850160045afa505080518201915050336020826105a0010152602081019050306020826105a0010152602081019050610500516020826105a0010152602081019050806105a0526105a0505060206106606105a0516105c0600060016104e0516003811015613a435702600101545af1610668573d600060003e3d6000fd5b61064060203d80821161067b578161067d565b805b905090508152805160200180610520828460045afa9050505060006105205111156106bd57610540516105205181816020036008021c9050905015613a43575b6104806104e0516003811015613a4357602002018051610500518181830110613a4357808201905090508152505b815160010180835281141561058157505061048051610260526104a051610280526104c0516102a0526103c0516102c052610727610500613011565b610500516104e052610440516104e0511115613a4357608036610500376000610460511161077157610480516004556104a0516005556104c0516006556104e051610560526109ac565b6007546003808202821582848304141715613a435790509050600880820490509050610580526105a060006003818352015b6104e0516103e06105a0516003811015613a43576020020151808202821582848304141715613a43579050905061044051808015613a43578204905090506105c05260006105e0526104806105a0516003811015613a4357602002015161060052610600516105c0511161083057610600516105c051808210613a4357808203905090506105e05261084b565b6105c05161060051808210613a4357808203905090506105e0525b610580516105e051808202821582848304141715613a4357905090506402540be400808204905090506105006105a0516003811015613a43576020020152610600516105006105a0516003811015613a43576020020151600854808202821582848304141715613a4357905090506402540be40080820490509050808210613a43578082039050905060016105a0516003811015613a435702600401556104806105a0516003811015613a43576020020180516105006105a0516003811015613a43576020020151808210613a43578082039050905081525081516001018083528114156107a357505061048051610260526104a051610280526104c0516102a0526103c0516102c0526109606105c0613011565b6105c0516105a052610460516105a05161044051808210613a435780820390509050808202821582848304141715613a43579050905061044051808015613a4357820490509050610560525b606435610560511015610a30576014610580527f536c697070616765207363726577656420796f750000000000000000000000006105a0526105805061058051806105a001818260206001820306601f82010390500336823750506308c379a0610540526020610560526105805160206001820306601f820103905060440161055cfd5b6104608051610560518181830110613a435780820190509050815250601a6103a05160a05260805260406080208054610560518181830110613a43578082019050905081555061046051601c556103a05160007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61056051610580526020610580a3337f423f6495a08fc652425cf4ed0d1f9e37e571d9b9529b1c1c23cce780b2e7df0d600435610580526024356105a0526044356105c052610500516105e052610520516106005261054051610620526104e051610640526104605161066052610100610580a2610560516105805260206105806000600055f35b635e0d443f8118610d3a576004358060801d81607f1d18613a4357610460526024358060801d81607f1d18613a43576104805260045460e0526005546101005260065461012052610b7e610500612cd9565b61050080516104a05280602001516104c05280604001516104e05250670de0b6b3a7640000610500526c0c9f2c9cd04674edea40000000610520526c0c9f2c9cd04674edea40000000610540526104a0610460516003811015613a43576020020151604435610500610460516003811015613a43576020020151808202821582848304141715613a435790509050670de0b6b3a7640000808204905090508181830110613a4357808201905090506105605261046051610260526104805161028052610560516102a0526104a0516102c0526104c0516102e0526104e05161030052610c6b6105a0613082565b6105a051610580526104a0610480516003811015613a4357602002015161058051808210613a4357808203905090506001808210613a4357808203905090506105a0526007546105a051808202821582848304141715613a4357905090506402540be400808204905090506105c0526105a0516105c051808210613a435780820390509050670de0b6b3a7640000808202821582848304141715613a435790509050610500610480516003811015613a43576020020151808015613a43578204905090506105e05260206105e0f35b633df021248118610d4f57336104a052610d6a565b63ddc1f59d81186113a7576084358060a01c613a43576104a0525b6004358060801d81607f1d18613a4357610460526024358060801d81607f1d18613a435761048052600054613a43576001600055601354613a43576004546104c0526005546104e052600654610500526104c05160e0526104e051610100526105005161012052610ddc610580612cd9565b61058080516105205280602001516105405280604001516105605250670de0b6b3a7640000610580526c0c9f2c9cd04674edea400000006105a0526c0c9f2c9cd04674edea400000006105c052610520610460516003811015613a43576020020151604435610580610460516003811015613a43576020020151808202821582848304141715613a435790509050670de0b6b3a7640000808204905090508181830110613a4357808201905090506105e052610460516102605261048051610280526105e0516102a052610520516102c052610540516102e0526105605161030052610ec9610620613082565b6106205161060052610520610480516003811015613a4357602002015161060051808210613a4357808203905090506001808210613a4357808203905090506106205261062051600754808202821582848304141715613a4357905090506402540be40080820490509050610640526106205161064051808210613a435780820390509050670de0b6b3a7640000808202821582848304141715613a435790509050610580610480516003811015613a43576020020151808015613a43578204905090506106205260643561062051101561103a57602e610660527f45786368616e676520726573756c74656420696e20666577657220636f696e73610680527f207468616e2065787065637465640000000000000000000000000000000000006106a05261066050610660518061068001818260206001820306601f82010390500336823750506308c379a0610620526020610640526106605160206001820306601f820103905060440161063cfd5b61064051600854808202821582848304141715613a4357905090506402540be400808204905090506106605261066051670de0b6b3a7640000808202821582848304141715613a435790509050610580610480516003811015613a43576020020151808015613a4357820490509050610660526104c0610460516003811015613a435760200201516044358181830110613a4357808201905090506001610460516003811015613a435702600401556104c0610480516003811015613a4357602002015161062051808210613a43578082039050905061066051808210613a4357808203905090506001610480516003811015613a43570260040155600060046106c0527f23b872dd000000000000000000000000000000000000000000000000000000006106e0526106c06004806020846107000101826020850160045afa50508051820191505033602082610700010152602081019050306020826107000101526020810190506044356020826107000101526020810190508061070052610700505060206107c06107005161072060006001610460516003811015613a435702600101545af16111f2573d600060003e3d6000fd5b6107a060203d8082116112055781611207565b805b905090508152805160200180610680828460045afa905050506000610680511115611247576106a0516106805181816020036008021c9050905015613a43575b600060046106c0527fa9059cbb000000000000000000000000000000000000000000000000000000006106e0526106c06004806020846107000101826020850160045afa5050805182019150506104a051602082610700010152602081019050610620516020826107000101526020810190508061070052610700505060206107a06107005161072060006001610480516003811015613a435702600101545af16112f7573d600060003e3d6000fd5b61078060203d80821161130a578161130c565b805b905090508152805160200180610680828460045afa90505050600061068051111561134c576106a0516106805181816020036008021c9050905015613a43575b337f8b3e96f2b889fa771c53c981b40daf005f63f637f1869f707052d15a3dd97140610460516106c0526044356106e0526104805161070052610620516107205260806106c0a2610620516106c05260206106c06000600055f35b63ecb586a581186113bb573360e0526113d5565b632da5dc218118611734576084358060a01c613a435760e0525b600054613a43576001600055601c54610100526060366101203761018060006003818352015b6001610180516003811015613a435702600401546101a0526101a051600435808202821582848304141715613a43579050905061010051808015613a43578204905090506101c05260206101805102602401356101c05110156114f45760306101e0527f5769746864726177616c20726573756c74656420696e20666577657220636f69610200527f6e73207468616e20657870656374656400000000000000000000000000000000610220526101e0506101e0518061020001818260206001820306601f82010390500336823750506308c379a06101a05260206101c0526101e05160206001820306601f82010390506044016101bcfd5b6101a0516101c051808210613a4357808203905090506001610180516003811015613a435702600401556101c051610120610180516003811015613a4357602002015260006004610220527fa9059cbb00000000000000000000000000000000000000000000000000000000610240526102206004806020846102600101826020850160045afa50508051820191505060e0516020826102600101526020810190506101c0516020826102600101526020810190508061026052610260505060206103006102605161028060006001610180516003811015613a435702600101545af16115e6573d600060003e3d6000fd5b6102e060203d8082116115f957816115fb565b805b9050905081528051602001806101e0828460045afa9050505060006101e051111561163b57610200516101e05181816020036008021c9050905015613a43575b81516001018083528114156113fb5750506101008051600435808210613a435780820390509050815250601a3360a05260805260406080208054600435808210613a43578082039050905081555061010051601c556000337fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600435610180526020610180a3337fa49d4cf02656aebf8c771f5a8585638a2a15ee6c97cf7205d4208ed7c1df252d6101205161018052610140516101a052610160516101c0526060366101e037610100516102405260e0610180a26101205161018052610140516101a052610160516101c05260606101806000600055f35b639fdaea0c811861174957336103a052611764565b639504fae88118611d60576084358060a01c613a43576103a0525b600054613a43576001600055601354613a43576117826103e0612b9e565b6103e0516103c0526004546103e05260055461040052600654610420526103e051610260526104005161028052610420516102a0526103c0516102c0526117ca610460613011565b61046051610440526103e051610460526104005161048052610420516104a0526104c060006003818352015b60206104c05102600401356104e05260006104e05114611940576104606104c0516003811015613a43576020020180516104e051808210613a43578082039050905081525060006004610540527fa9059cbb00000000000000000000000000000000000000000000000000000000610560526105406004806020846105800101826020850160045afa5050805182019150506103a0516020826105800101526020810190506104e051602082610580010152602081019050806105805261058050506020610620610580516105a0600060016104c0516003811015613a435702600101545af16118eb573d600060003e3d6000fd5b61060060203d8082116118fe5781611900565b805b905090508152805160200180610500828460045afa90505050600061050051111561194057610520516105005181816020036008021c9050905015613a43575b81516001018083528114156117f6575050610460516102605261048051610280526104a0516102a0526103c0516102c05261197c6104e0613011565b6104e0516104c0526060366104e0376007546003808202821582848304141715613a4357905090506008808204905090506105405261056060006003818352015b6104c0516103e0610560516003811015613a43576020020151808202821582848304141715613a43579050905061044051808015613a43578204905090506105805260006105a052610460610560516003811015613a435760200201516105c0526105c0516105805111611a4a576105c05161058051808210613a4357808203905090506105a052611a65565b610580516105c051808210613a4357808203905090506105a0525b610540516105a051808202821582848304141715613a4357905090506402540be400808204905090506104e0610560516003811015613a435760200201526105c0516104e0610560516003811015613a43576020020151600854808202821582848304141715613a4357905090506402540be40080820490509050808210613a4357808203905090506001610560516003811015613a43570260040155610460610560516003811015613a43576020020180516104e0610560516003811015613a43576020020151808210613a43578082039050905081525081516001018083528114156119bd575050610460516102605261048051610280526104a0516102a0526103c0516102c052611b7a610580613011565b6105805161056052601c54610580526104405161056051808210613a43578082039050905061058051808202821582848304141715613a43579050905061044051808015613a435782049050905060018181830110613a4357808201905090506105a05260016105a0511115613a43576064356105a0511115611c6e5760146105c0527f536c697070616765207363726577656420796f750000000000000000000000006105e0526105c0506105c051806105e001818260206001820306601f82010390500336823750506308c379a06105805260206105a0526105c05160206001820306601f820103905060440161059cfd5b61058080516105a051808210613a43578082039050905081525061058051601c55601a3360a052608052604060802080546105a051808210613a4357808203905090508155506000337fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6105a0516105c05260206105c0a3337f173599dbf9c6ca6f7c3b590df07ae98a45d74ff54065505141e7de6c46a624c26004356105c0526024356105e052604435610600526104e05161062052610500516106405261052051610660526104c05161068052610580516106a0526101006105c0a26105a0516105c05260206105c06000600055f35b63cc2b27d78118611da8576024358060801d81607f1d18613a4357610520526004356102a052610520516102c052611d9961054061366a565b61054051610580526020610580f35b631a4d01d28118611dbd573361054052611dd8565b63081579a581186120de576064358060a01c613a4357610540525b6024358060801d81607f1d18613a435761052052600054613a43576001600055601354613a43576004356102a052610520516102c052611e196105a061366a565b6105a080516105605280602001516105805250604435610560511015611eb05760186105a0527f4e6f7420656e6f75676820636f696e732072656d6f76656400000000000000006105c0526105a0506105a051806105c001818260206001820306601f82010390500336823750506308c379a0610560526020610580526105a05160206001820306601f820103905060440161057cfd5b6001610520516003811015613a43570260040180546105605161058051600854808202821582848304141715613a4357905090506402540be400808204905090508181830110613a435780820190509050808210613a435780820390509050815550601c54600435808210613a4357808203905090506105a0526105a051601c55601a3360a05260805260406080208054600435808210613a4357808203905090508155506000337fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6004356105c05260206105c0a360006004610600527fa9059cbb00000000000000000000000000000000000000000000000000000000610620526106006004806020846106400101826020850160045afa50508051820191505061054051602082610640010152602081019050610560516020826106400101526020810190508061064052610640505060206106e06106405161066060006001610520516003811015613a435702600101545af1612036573d600060003e3d6000fd5b6106c060203d808211612049578161204b565b805b9050905081528051602001806105c0828460045afa9050505060006105c051111561208b576105e0516105c05181816020036008021c9050905015613a43575b337f5ad056f2e28a8cec232015406b843668c1e36cda598127ec3b8c59b8c72773a06004356106005261056051610620526105a051610640526060610600a2610560516106005260206106006000600055f35b633c157e648118612231576009543318613a4357600c54620151808181830110613a4357808201905090504210613a435742620151808181830110613a43578082019050905060243510613a4357612137610180612b9e565b61018051610160526004356064808202821582848304141715613a4357905090506101805260006004351161216d576000612176565b620f4240600435105b15613a43576101605161018051106121b05761016051600a808202821582848304141715613a4357905090506101805111613a43576121d4565b6101605161018051600a808202821582848304141715613a43579050905010613a43575b61016051600a5561018051600b5542600c55602435600d557fa2b71ec6df949300b59aab36b55e189697b750119dd349fcfa8c0f779e83c254610160516101a052610180516101c052426101e0526024356102005260806101a0a1005b63551a658881186122a4576009543318613a4357612250610180612b9e565b610180516101605261016051600a5561016051600b5542600c5542600d557f46e22fb3709ad289f62ce63d469248536dbc78d82b84a3d7e74ad606dc2019386101605161018052426101a0526040610180a1005b635b5a1467811861233f576009543318613a4357600e54613a435764012a05f20060043511613a43576402540be40060243511613a4357426203f4808181830110613a43578082019050905060e05260e051600e5560043560105560243560115560e0517f351fc5da2fbf480f2225debf3664a4bc90fa9923743aad58b4603f648e931fe060043561010052602435610120526040610100a2005b634f12fe9781186123bd576009543318613a4357600e544210613a43576000600e5414613a43576000600e5560105460e0526011546101005260e051600755610100516008557fbe12859b636aed607d5230b2cc2711f68d70e51060e6cca1f575ef5d2fcc95d160e0516101205261010051610140526040610120a1005b63226840fb81186123d8576009543318613a43576000600e55005b636b441a408118612457576004358060a01c613a435760e0526009543318613a4357600f54613a4357426203f4808181830110613a4357808201905090506101005261010051600f5560e05160125560e051610100517f181aa3aa17d4cbf99265dd4443eba009433d3cde79d60164fde1d1a192beb9356000610120a3005b636a1c05ae81186124bb576009543318613a4357600f544210613a43576000600f5414613a43576000600f5560125460e05260e05160095560e0517f71614071b88dee5e0b2ae578a9dd7b2ebbe9ae832ba419dc0242cd065a290b6c6000610100a2005b6386fbf19381186124d6576009543318613a43576000600f55005b63e2e7d2648118612552576370a0823160e0523061010052602060e0602460fc60016004356003811015613a435702600101545afa61251a573d600060003e3d6000fd5b601f3d1115613a435760e05160016004356003811015613a43570260040154808210613a435780820390509050610120526020610120f35b6330c5408581186126f8576009543318613a435760e060006003818352015b600160e0516003811015613a43570260010154610100526370a082316101405230610160526020610140602461015c610100515afa6125b5573d600060003e3d6000fd5b601f3d1115613a435761014051600160e0516003811015613a43570260040154808210613a4357808203905090506101205260006101205111156126e55760006004610180527fa9059cbb000000000000000000000000000000000000000000000000000000006101a0526101806004806020846101c00101826020850160045afa505080518201915050336020826101c0010152602081019050610120516020826101c0010152602081019050806101c0526101c0505060206102606101c0516101e06000610100515af1612690573d600060003e3d6000fd5b61024060203d8082116126a357816126a5565b805b905090508152805160200180610140828460045afa9050505060006101405111156126e557610160516101405181816020036008021c9050905015613a43575b8151600101808352811415612571575050005b63524c39018118612786576009543318613a435760e060006003818352015b6370a082316101005230610120526020610100602461011c600160e0516003811015613a435702600101545afa612753573d600060003e3d6000fd5b601f3d1115613a435761010051600160e0516003811015613a435702600401558151600101808352811415612717575050005b63e369885381186127ab576009543318613a4357426014541115613a43576001601355005b633046f97281186127c6576009543318613a43576000601355005b63c661065781186127ed5760016004356003811015613a4357026001015460e052602060e0f35b634903b0d181186128145760016004356003811015613a4357026004015460e052602060e0f35b63ddca3f43811861282b5760075460e052602060e0f35b63fee3f7f981186128425760085460e052602060e0f35b638da5cb5b81186128595760095460e052602060e0f35b635409491a811861287057600a5460e052602060e0f35b63b4b577ad811861288757600b5460e052602060e0f35b632081066c811861289e57600c5460e052602060e0f35b631405228881186128b557600d5460e052602060e0f35b63405e28f881186128cc57600e5460e052602060e0f35b63e0a0b58681186128e357600f5460e052602060e0f35b6358680d0b81186128fa5760105460e052602060e0f35b63e382446281186129115760115460e052602060e0f35b631ec0cdc181186129285760125460e052602060e0f35b6306fdde0381186129cb5760e08060208082528083018060158082602082540160c060006003818352015b8260c051602002111561296557612984565b60c05185015460c0516020028501528151600101808352811415612953575b5050505050508051806020830101818260206001820306601f8201039050033682375050805160200160206001820306601f820103905090509050810190509050905060e0f35b6395d89b418118612a6e5760e08060208082528083018060188082602082540160c060006002818352015b8260c0516020021115612a0857612a27565b60c05185015460c05160200285015281516001018083528114156129f6575b5050505050508051806020830101818260206001820306601f8201039050033682375050805160200160206001820306601f820103905090509050810190509050905060e0f35b6370a082318118612aa3576004358060a01c613a435760e052601a60e05160a052608052604060802054610100526020610100f35b63dd62ed3e8118612af6576004358060a01c613a435760e0526024358060a01c613a435761010052601b60e05160a05260805260406080206101005160a052608052604060802054610120526020610120f35b6318160ddd8118612b0d57601c5460e052602060e0f35b505b60006000fd5b601a60e05160a0526080526040608020805461012051808210613a435780820390509050815550601a6101005160a05260805260406080208054610120518181830110613a4357808201905090508155506101005160e0517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61012051610140526020610140a3565b600d5460e052600b546101005260e0514210612bc45761010051815250612cd756612cd7565b600a5461012052600c5461014052610120516101005111612c5c57610120516101205161010051808210613a4357808203905090504261014051808210613a435780820390509050808202821582848304141715613a43579050905060e05161014051808210613a435780820390509050808015613a4357820490509050808210613a435780820390509050815250612cd756612cd7565b610120516101005161012051808210613a4357808203905090504261014051808210613a435780820390509050808202821582848304141715613a43579050905060e05161014051808210613a435780820390509050808015613a43578204905090508181830110613a435780820190509050815250612cd7565b565b670de0b6b3a7640000610140526c0c9f2c9cd04674edea40000000610160526c0c9f2c9cd04674edea40000000610180526101a060006003818352015b6101406101a0516003811015613a4357602002015160e06101a0516003811015613a43576020020151808202821582848304141715613a435790509050670de0b6b3a7640000808204905090506101406101a0516003811015613a435760200201528151600101808352811415612d1657505061014051815261016051816020015261018051816040015250565b604036610160376101c060006003818352015b60206101c0510260e001516101a05261016080516101a0518181830110613a4357808201905090508152508151600101808352811415612db757505061016051612e0557600081525061300f565b610160516101a052610140516003808202821582848304141715613a4357905090506101c0526101e0600060ff818352015b6101a0516102005261024060006003818352015b6020610240510260e0015161022052610200516101a051808202821582848304141715613a435790509050610220516003808202821582848304141715613a435790509050808015613a4357820490509050610200528151600101808352811415612e4b5750506101a051610180526101c05161016051808202821582848304141715613a435790509050606480820490509050610200516003808202821582848304141715613a4357905090508181830110613a4357808201905090506101a051808202821582848304141715613a4357905090506101c0516064808210613a4357808203905090506101a051808202821582848304141715613a435790509050606480820490509050600461020051808202821582848304141715613a4357905090508181830110613a435780820190509050808015613a43578204905090506101a052610180516101a05111612fcd576001610180516101a051808210613a43578082039050905011612ff85750506101a05181525061300f56612ff8565b60016101a05161018051808210613a43578082039050905011612ff85750506101a05181525061300f565b8151600101808352811415612e3757505060006000fd5b565b6102605160e05261028051610100526102a05161012052613033610340612cd9565b61034080516102e052806020015161030052806040015161032052506102e05160e052610300516101005261032051610120526102c05161014052613079610340612da4565b61034051815250565b610280516102605114613a435760006102805112613a43576003610280511215613a435760006102605112613a43576003610260511215613a43576130c8610340612b9e565b61034051610320526102c05160e0526102e05161010052610300516101205261032051610140526130fa610360612da4565b610360516103405260603661036037610340516103c052610320516003808202821582848304141715613a4357905090506103e05261040060006003818352015b610260516104005118613155576102a05161038052613186565b6102805161040051141561316c576131ea56613186565b6102c0610400516003811015613a43576020020151610380525b6103608051610380518181830110613a4357808201905090508152506103c05161034051808202821582848304141715613a435790509050610380516003808202821582848304141715613a435790509050808015613a43578204905090506103c0525b815160010180835281141561313b5750506103c05161034051808202821582848304141715613a4357905090506064808202821582848304141715613a4357905090506103e0516003808202821582848304141715613a435790509050808015613a43578204905090506103c05261036051610340516064808202821582848304141715613a4357905090506103e051808015613a43578204905090508181830110613a435780820190509050610400526103405161042052610440600060ff818352015b610420516103a0526104205161042051808202821582848304141715613a4357905090506103c0518181830110613a435780820190509050600261042051808202821582848304141715613a435790509050610400518181830110613a43578082019050905061034051808210613a435780820390509050808015613a4357820490509050610420526103a05161042051116133745760016103a05161042051808210613a4357808203905090501161339f575050610420518152506133b65661339f565b6001610420516103a051808210613a4357808203905090501161339f575050610420518152506133b6565b81516001018083528114156132af57505060006000fd5b565b60006101005112613a43576003610100511215613a43576060366101a037610180516102005260e0516003808202821582848304141715613a4357905090506102205261024060006003818352015b6101005161024051141561341e5761349c56613438565b610120610240516003811015613a435760200201516101c0525b6101a080516101c0518181830110613a4357808201905090508152506102005161018051808202821582848304141715613a4357905090506101c0516003808202821582848304141715613a435790509050808015613a4357820490509050610200525b81516001018083528114156134075750506102005161018051808202821582848304141715613a4357905090506064808202821582848304141715613a435790509050610220516003808202821582848304141715613a435790509050808015613a4357820490509050610200526101a051610180516064808202821582848304141715613a43579050905061022051808015613a43578204905090508181830110613a435780820190509050610240526101805161026052610280600060ff818352015b610260516101e0526102605161026051808202821582848304141715613a435790509050610200518181830110613a435780820190509050600261026051808202821582848304141715613a435790509050610240518181830110613a43578082019050905061018051808210613a435780820390509050808015613a4357820490509050610260526101e05161026051116136265760016101e05161026051808210613a435780820390509050116136515750506102605181525061366856613651565b6001610260516101e051808210613a4357808203905090501161365157505061026051815250613668565b815160010180835281141561356157505060006000fd5b565b613675610300612b9e565b610300516102e052670de0b6b3a7640000610300526c0c9f2c9cd04674edea40000000610320526c0c9f2c9cd04674edea400000006103405260045460e05260055461010052600654610120526136cd6103c0612cd9565b6103c080516103605280602001516103805280604001516103a052506103605160e05261038051610100526103a051610120526102e051610140526137136103e0612da4565b6103e0516103c052601c546103e0526103c0516102a0516103c051808202821582848304141715613a4357905090506103e051808015613a4357820490509050808210613a435780820390509050610400526102e05160e0526102c05161010052610360516101205261038051610140526103a05161016052610400516101805261379f6104406133b8565b61044051610420526007546003808202821582848304141715613a43579050905060088082049050905061044052606036610460376104c060006003818352015b60006104e0526103606104c0516003811015613a43576020020151610500526102c0516104c05118613854576105005161040051808202821582848304141715613a4357905090506103c051808015613a435782049050905061042051808210613a4357808203905090506104e052613898565b610500516105005161040051808202821582848304141715613a4357905090506103c051808015613a4357820490509050808210613a4357808203905090506104e0525b61050051610440516104e051808202821582848304141715613a4357905090506402540be40080820490509050808210613a4357808203905090506104606104c0516003811015613a4357602002015281516001018083528114156137e05750506104606102c0516003811015613a435760200201516102e05160e0526102c05161010052610460516101205261048051610140526104a0516101605261040051610180526139486104e06133b8565b6104e051808210613a4357808203905090506104c0526103606102c0516003811015613a4357602002015161042051808210613a435780820390509050670de0b6b3a7640000808202821582848304141715613a4357905090506103006102c0516003811015613a43576020020151808015613a43578204905090506104e0526104c0516001808210613a435780820390509050670de0b6b3a7640000808202821582848304141715613a4357905090506103006102c0516003811015613a43576020020151808015613a43578204905090506104c0526104c05181526104e0516104c051808210613a435780820390509050816020015250565b600080fd5b610226613c6e03610226600039610226613c6e036000f35b600080fd000000000000000000000000da10009cbd5d07dd0cecc66161fc93d7c9000da10000000000000000000000007f5c764cbc14f9669b88837ca1490cca17c3160700000000000000000000000094b008aa00579c1307b0ef2c499ad98a8ce58e5800000000000000000000000000000000000000000000000000000000000003e800000000000000000000000000000000000000000000000000000000003d0900000000000000000000000000000000000000000000000000000000012a05f20000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000140000000000000000000000000000000000000000000000000000000000000001643757276652e6669204441492f555344432f555344540000000000000000000000000000000000000000000000000000000000000000000000000000000000043343525600000000000000000000000000000000000000000000000000000000