0 txs
8 calls
constructor
constructor()
functions
A_precise
viewfunction A_precise() view returns (uint256)
A
viewfunction A() 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)
DOMAIN_SEPARATOR
viewfunction DOMAIN_SEPARATOR() view returns (bytes32)
fee
viewfunction fee() view returns (uint256)
future_A_time
viewfunction future_A_time() view returns (uint256)
future_A
viewfunction future_A() view returns (uint256)
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)
nonces
viewfunction nonces(address arg0) view returns (uint256)
symbol
viewfunction symbol() view returns (string)
totalSupply
viewfunction totalSupply() view returns (uint256)
version
viewfunction version() view returns (string)
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)
approve
nonpayablefunction approve(address _spender, uint256 _value) returns (bool)
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)
initialize
nonpayablefunction initialize(string _name, string _symbol, address[4] _coins, uint256[4] _rate_multipliers, uint256 _A, uint256 _fee)
permit
nonpayablefunction permit(address _owner, address _spender, uint256 _value, uint256 _deadline, uint8 _v, bytes32 _r, bytes32 _s) returns (bool)
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])
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)
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)
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
0x617a69600855613fa656600436101561000d57613079565b60046000601c3760005134613f975763a461b3c88118610399576004356004016020813511613f9757808035602001808260e037505050602435600401600a813511613f97578080356020018082610120375050506044358060a01c613f9757610160526064358060a01c613f9757610180526084358060a01c613f97576101a05260a4358060a01c613f97576101c052600854613f97576101e060006003818352015b6101606101e0516004811015613f9757602002015161020052610200516100d75761011e565b6102005160016101e0516003811015613f9757026002015560206101e0510260c4013560016101e0516003811015613f975702600d015581516001018083528114156100b1575b5050610144356064808202821582848304141715613f9757905090506101e0526101e0516009556101e051600a5561016435600855336001556000601d610260527f43757276652e666920466163746f727920506c61696e20506f6f6c3a2000000061028052610260601d806020846102a00101826020850160045afa50508051820191505060e06020806020846102a00101826020850160045afa505080518201915050806102a0526102a09050805160200180610200828460045afa90505050610200806010602082510160c060006003818352015b8260c051602002111561020857610227565b60c05160200285015160c05185015581516001018083528114156101f6575b5050505050506000610120600a806020846102a00101826020850160045afa5050805182019150506002610260527f2d66000000000000000000000000000000000000000000000000000000000000610280526102606002806020846102a00101826020850160045afa505080518201915050806102a0526102a09050806013602082510160c060006002818352015b8260c05160200211156102c9576102e8565b60c05160200285015160c05185015581516001018083528114156102b7575b5050505050507f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f61034052610200805160208201209050610360527f572f01d824885a118d5d21c74542f263b131d2897955c62a721594f1d7c3b2e261038052466103a052306103c05260a0610320526103208051602082012090506018553060007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6000610260526020610260a3005b63313ce56781186103af57601260e052602060e0f35b63a9059cbb81186103f1576004358060a01c613f9757610160523360e0526101605161010052602435610120526103e461307f565b6001610180526020610180f35b6323b872dd81186104c5576004358060a01c613f9757610160526024358060a01c613f9757610180526101605160e05261018051610100526044356101205261043861307f565b60166101605160a05260805260406080203360a0526080526040608020546101a0527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6101a051146104b8576101a051604435808210613f97578082039050905060166101605160a05260805260406080203360a0526080526040608020555b60016101c05260206101c0f35b63095ea7b3811861053d576004358060a01c613f975760e05260243560163360a052608052604060802060e05160a05260805260406080205560e051337f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925602435610100526020610100a36001610100526020610100f35b63d505accf81186108aa576004358060a01c613f975760e0526024358060a01c613f9757610100526084358060081c613f975761012052600060e05114613f97576064354211613f9757601960e05160a0526080526040608020546101405260006002610400527f1901000000000000000000000000000000000000000000000000000000000000610420526104006002806020846106000101826020850160045afa5050805182019150506018546020826106000101526020810190507f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c96105405260e0516105605261010051610580526044356105a052610140516105c0526064356105e05260c0610520526105208051602082012090506020826106000101526020810190508061060052610600905080516020820120905061016052600060e0513b116106be5760e0516101605161018052610120516101a052604060a46101c03760206080608061018060015afa5060805118613f975761081e565b600060a4356102205260c435610240526040610200526102006040806020846102c00101826020850160045afa505080518201915050601f60016020820661026001602082840111613f97576020806102808261012060045afa5050818152905090506001806020846102c00101826020850160045afa505080518201915050806102c0526102c09050805160200180610180828460045afa905050507f1626ba7e00000000000000000000000000000000000000000000000000000000631626ba7e610200526102208060406101605182526020820191508082528083018061018080516020018083828460045afa905050508051806020830101818260206001820306601f8201039050033682375050805160200160206001820306601f820103905090509050810150505050602061020060c461021c60e0515afa61080b573d600060003e3d6000fd5b601f3d1115613f97576102005118613f97575b604435601660e05160a05260805260406080206101005160a0526080526040608020556101405160018181830110613f975780820190509050601960e05160a0526080526040608020556101005160e0517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925604435610180526020610180a36001610180526020610180f35b6314f0597981186108cf5760055460e0526006546101005260075461012052606060e0f35b63fee3f7f981186108e95764012a05f20060e052602060e0f35b63f446c1d08118610917576108ff610160613108565b61016051606480820490509050610180526020610180f35b6376a2f0f0811861093c5761092d610160613108565b61016051610180526020610180f35b63bb7b8b808118610a1857610952610280613108565b6102805161026052600d5460e052600e5461010052600f546101205260055461014052600654610160526007546101805261098e6102e0613243565b6102e080516102805280602001516102a05280604001516102c052506102805160e0526102a051610100526102c0516101205261026051610140526109d46103006132e4565b610300516102e0526102e051670de0b6b3a7640000808202821582848304141715613f975790509050601754808015613f9757820490509050610300526020610300f35b633883e1198118610bfb576064358060011c613f975761040052610a3d610440613108565b6104405161042052600554610440526006546104605260075461048052600d5461026052600e5461028052600f546102a052610440516102c052610460516102e05261048051610300526104205161032052610a9a6104c0613551565b6104c0516104a0526104c060006003818352015b60206104c05102600401356104e05261040051610af5576104406104c0516003811015613f97576020020180516104e051808210613f975780820390509050815250610b23565b6104406104c0516003811015613f97576020020180516104e0518181830110613f9757808201905090508152505b8151600101808352811415610aae575050600d5461026052600e5461028052600f546102a052610440516102c052610460516102e05261048051610300526104205161032052610b746104e0613551565b6104e0516104c05260006104e05261040051610ba9576104a0516104c051808210613f9757808203905090506104e052610bc4565b6104c0516104a051808210613f9757808203905090506104e0525b6104e051601754808202821582848304141715613f9757905090506104a051808015613f9757820490509050610500526020610500f35b634515cef38118610c10573361040052610c2b565b6375b96abc81186112c8576084358060a01c613f9757610400525b600054613f97576001600055610c42610440613108565b6104405161042052600554610440526006546104605260075461048052600d546104a052600e546104c052600f546104e0526104a051610260526104c051610280526104e0516102a052610440516102c052610460516102e05261048051610300526104205161032052610cb7610520613551565b6105205161050052601754610520526104405161054052610460516105605261048051610580526105a060006003818352015b60206105a05102600401356105c05260006105c05111610d145760006105205114613f9757610e54565b60006004610620527f23b872dd00000000000000000000000000000000000000000000000000000000610640526106206004806020846106600101826020850160045afa50508051820191505033602082610660010152602081019050306020826106600101526020810190506105c05160208261066001015260208101905080610660526106605050602061072061066051610680600060016105a0516003811015613f975702600201545af1610dd1573d600060003e3d6000fd5b61070060203d808211610de45781610de6565b805b9050905081528051602001806105e0828460045afa9050505060006105e0511115610e2657610600516105e05181816020036008021c9050905015613f97575b6105406105a0516003811015613f97576020020180516105c0518181830110613f9757808201905090508152505b8151600101808352811415610cea5750506104a051610260526104c051610280526104e0516102a052610540516102c052610560516102e05261058051610300526104205161032052610ea86105c0613551565b6105c0516105a052610500516105a0511115613f97576080366105c03760006105205111610ef2576105405160055561056051600655610580516007556105a05161062052611148565b6008546003808202821582848304141715613f9757905090506008808204905090506106405261066060006003818352015b6105a051610440610660516003811015613f97576020020151808202821582848304141715613f97579050905061050051808015613f97578204905090506106805260006106a052610540610660516003811015613f975760200201516106c0526106c0516106805111610fb1576106c05161068051808210613f9757808203905090506106a052610fcc565b610680516106c051808210613f9757808203905090506106a0525b610640516106a051808202821582848304141715613f9757905090506402540be400808204905090506105c0610660516003811015613f975760200201526106c0516105c0610660516003811015613f9757602002015164012a05f200808202821582848304141715613f9757905090506402540be40080820490509050808210613f9757808203905090506001610660516003811015613f97570260050155610540610660516003811015613f97576020020180516105c0610660516003811015613f97576020020151808210613f9757808203905090508152508151600101808352811415610f245750506104a051610260526104c051610280526104e0516102a052610540516102c052610560516102e052610580516103005261042051610320526110fc610680613551565b6106805161066052610520516106605161050051808210613f975780820390509050808202821582848304141715613f97579050905061050051808015613f9757820490509050610620525b6064356106205110156111cc576014610640527f536c697070616765207363726577656420796f750000000000000000000000006106605261064050610640518061066001818260206001820306601f82010390500336823750506308c379a0610600526020610620526106405160206001820306601f820103905060440161061cfd5b6105208051610620518181830110613f97578082019050905081525060156104005160a05260805260406080208054610620518181830110613f975780820190509050815550610520516017556104005160007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61062051610640526020610640a3337f423f6495a08fc652425cf4ed0d1f9e37e571d9b9529b1c1c23cce780b2e7df0d6004356106405260243561066052604435610680526105c0516106a0526105e0516106c052610600516106e0526105a051610700526105205161072052610100610640a2610620516106405260206106406000600055f35b635e0d443f81186114d2576004358060801d81607f1d18613f9757610460526024358060801d81607f1d18613f975761048052600d546104a052600e546104c052600f546104e0526104a05160e0526104c051610100526104e05161012052600554610140526006546101605260075461018052611347610560613243565b61056080516105005280602001516105205280604001516105405250610500610460516003811015613f975760200201516044356104a0610460516003811015613f97576020020151808202821582848304141715613f975790509050670de0b6b3a7640000808204905090508181830110613f9757808201905090506105605261046051610260526104805161028052610560516102a052610500516102c052610520516102e05261054051610300526114036105a06135da565b6105a05161058052610500610480516003811015613f9757602002015161058051808210613f9757808203905090506001808210613f9757808203905090506105a0526008546105a051808202821582848304141715613f9757905090506402540be400808204905090506105c0526105a0516105c051808210613f975780820390509050670de0b6b3a7640000808202821582848304141715613f9757905090506104a0610480516003811015613f97576020020151808015613f97578204905090506105e05260206105e0f35b633df0212481186114e757336104a052611502565b63ddc1f59d8118611b37576084358060a01c613f97576104a0525b6004358060801d81607f1d18613f9757610460526024358060801d81607f1d18613f975761048052600054613f97576001600055600d546104c052600e546104e052600f54610500526005546105205260065461054052600754610560526104c05160e0526104e05161010052610500516101205261052051610140526105405161016052610560516101805261159a6105e0613243565b6105e080516105805280602001516105a05280604001516105c05250610580610460516003811015613f975760200201516044356104c0610460516003811015613f97576020020151808202821582848304141715613f975790509050670de0b6b3a7640000808204905090508181830110613f9757808201905090506105e052610460516102605261048051610280526105e0516102a052610580516102c0526105a0516102e0526105c051610300526116566106206135da565b6106205161060052610580610480516003811015613f9757602002015161060051808210613f9757808203905090506001808210613f9757808203905090506106205261062051600854808202821582848304141715613f9757905090506402540be40080820490509050610640526106205161064051808210613f975780820390509050670de0b6b3a7640000808202821582848304141715613f9757905090506104c0610480516003811015613f97576020020151808015613f9757820490509050610620526064356106205110156117c757602e610660527f45786368616e676520726573756c74656420696e20666577657220636f696e73610680527f207468616e2065787065637465640000000000000000000000000000000000006106a05261066050610660518061068001818260206001820306601f82010390500336823750506308c379a0610620526020610640526106605160206001820306601f820103905060440161063cfd5b6106405164012a05f200808202821582848304141715613f9757905090506402540be400808204905090506106605261066051670de0b6b3a7640000808202821582848304141715613f9757905090506104c0610480516003811015613f97576020020151808015613f975782049050905061066052610520610460516003811015613f975760200201516044358181830110613f9757808201905090506001610460516003811015613f97570260050155610520610480516003811015613f9757602002015161062051808210613f97578082039050905061066051808210613f9757808203905090506001610480516003811015613f97570260050155600060046106c0527f23b872dd000000000000000000000000000000000000000000000000000000006106e0526106c06004806020846107000101826020850160045afa50508051820191505033602082610700010152602081019050306020826107000101526020810190506044356020826107000101526020810190508061070052610700505060206107c06107005161072060006001610460516003811015613f975702600201545af1611982573d600060003e3d6000fd5b6107a060203d8082116119955781611997565b805b905090508152805160200180610680828460045afa9050505060006106805111156119d7576106a0516106805181816020036008021c9050905015613f97575b600060046106c0527fa9059cbb000000000000000000000000000000000000000000000000000000006106e0526106c06004806020846107000101826020850160045afa5050805182019150506104a051602082610700010152602081019050610620516020826107000101526020810190508061070052610700505060206107a06107005161072060006001610480516003811015613f975702600201545af1611a87573d600060003e3d6000fd5b61078060203d808211611a9a5781611a9c565b805b905090508152805160200180610680828460045afa905050506000610680511115611adc576106a0516106805181816020036008021c9050905015613f97575b337f8b3e96f2b889fa771c53c981b40daf005f63f637f1869f707052d15a3dd97140610460516106c0526044356106e0526104805161070052610620516107205260806106c0a2610620516106c05260206106c06000600055f35b63ecb586a58118611b4b573360e052611b65565b632da5dc218118611ec4576084358060a01c613f975760e0525b600054613f97576001600055601754610100526060366101203761018060006003818352015b6001610180516003811015613f975702600501546101a0526101a051600435808202821582848304141715613f97579050905061010051808015613f97578204905090506101c05260206101805102602401356101c0511015611c845760306101e0527f5769746864726177616c20726573756c74656420696e20666577657220636f69610200527f6e73207468616e20657870656374656400000000000000000000000000000000610220526101e0506101e0518061020001818260206001820306601f82010390500336823750506308c379a06101a05260206101c0526101e05160206001820306601f82010390506044016101bcfd5b6101a0516101c051808210613f9757808203905090506001610180516003811015613f975702600501556101c051610120610180516003811015613f9757602002015260006004610220527fa9059cbb00000000000000000000000000000000000000000000000000000000610240526102206004806020846102600101826020850160045afa50508051820191505060e0516020826102600101526020810190506101c0516020826102600101526020810190508061026052610260505060206103006102605161028060006001610180516003811015613f975702600201545af1611d76573d600060003e3d6000fd5b6102e060203d808211611d895781611d8b565b805b9050905081528051602001806101e0828460045afa9050505060006101e0511115611dcb57610200516101e05181816020036008021c9050905015613f97575b8151600101808352811415611b8b5750506101008051600435808210613f97578082039050905081525060153360a05260805260406080208054600435808210613f975780820390509050815550610100516017556000337fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600435610180526020610180a3337fa49d4cf02656aebf8c771f5a8585638a2a15ee6c97cf7205d4208ed7c1df252d6101205161018052610140516101a052610160516101c0526060366101e037610100516102405260e0610180a26101205161018052610140516101a052610160516101c05260606101806000600055f35b639fdaea0c8118611ed9573361040052611ef4565b639504fae88118612549576084358060a01c613f9757610400525b600054613f97576001600055611f0b610440613108565b6104405161042052600d5461044052600e5461046052600f54610480526005546104a0526006546104c0526007546104e05261044051610260526104605161028052610480516102a0526104a0516102c0526104c0516102e0526104e051610300526104205161032052611f80610520613551565b61052051610500526104a051610520526104c051610540526104e0516105605261058060006003818352015b60206105805102600401356105a05260006105a051146120f657610520610580516003811015613f97576020020180516105a051808210613f97578082039050905081525060006004610600527fa9059cbb00000000000000000000000000000000000000000000000000000000610620526106006004806020846106400101826020850160045afa505080518201915050610400516020826106400101526020810190506105a0516020826106400101526020810190508061064052610640505060206106e06106405161066060006001610580516003811015613f975702600201545af16120a1573d600060003e3d6000fd5b6106c060203d8082116120b457816120b6565b805b9050905081528051602001806105c0828460045afa9050505060006105c05111156120f6576105e0516105c05181816020036008021c9050905015613f97575b8151600101808352811415611fac57505061044051610260526104605161028052610480516102a052610520516102c052610540516102e0526105605161030052610420516103205261214a6105a0613551565b6105a051610580526060366105a0376008546003808202821582848304141715613f9757905090506008808204905090506106005261062060006003818352015b610580516104a0610620516003811015613f97576020020151808202821582848304141715613f97579050905061050051808015613f975782049050905061064052600061066052610520610620516003811015613f9757602002015161068052610680516106405111612218576106805161064051808210613f97578082039050905061066052612233565b6106405161068051808210613f975780820390509050610660525b6106005161066051808202821582848304141715613f9757905090506402540be400808204905090506105a0610620516003811015613f97576020020152610680516105a0610620516003811015613f9757602002015164012a05f200808202821582848304141715613f9757905090506402540be40080820490509050808210613f9757808203905090506001610620516003811015613f97570260050155610520610620516003811015613f97576020020180516105a0610620516003811015613f97576020020151808210613f975780820390509050815250815160010180835281141561218b57505061044051610260526104605161028052610480516102a052610520516102c052610540516102e05261056051610300526104205161032052612363610640613551565b6106405161062052601754610640526105005161062051808210613f97578082039050905061064051808202821582848304141715613f97579050905061050051808015613f975782049050905060018181830110613f975780820190509050610660526001610660511115613f9757606435610660511115612457576014610680527f536c697070616765207363726577656420796f750000000000000000000000006106a0526106805061068051806106a001818260206001820306601f82010390500336823750506308c379a0610640526020610660526106805160206001820306601f820103905060440161065cfd5b610640805161066051808210613f9757808203905090508152506106405160175560153360a0526080526040608020805461066051808210613f9757808203905090508155506000337fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61066051610680526020610680a3337f173599dbf9c6ca6f7c3b590df07ae98a45d74ff54065505141e7de6c46a624c2600435610680526024356106a0526044356106c0526105a0516106e0526105c051610700526105e0516107205261058051610740526106405161076052610100610680a2610660516106805260206106806000600055f35b63cc2b27d78118612591576024358060801d81607f1d18613f9757610520526004356102a052610520516102c052612582610540613bc2565b61054051610580526020610580f35b631a4d01d281186125a65733610540526125c1565b63081579a581186128c3576064358060a01c613f9757610540525b6024358060801d81607f1d18613f975761052052600054613f975760016000556004356102a052610520516102c0526125fb6105a0613bc2565b6105a0805161056052806020015161058052506044356105605110156126925760186105a0527f4e6f7420656e6f75676820636f696e732072656d6f76656400000000000000006105c0526105a0506105a051806105c001818260206001820306601f82010390500336823750506308c379a0610560526020610580526105a05160206001820306601f820103905060440161057cfd5b6001610520516003811015613f9757026005018054610560516105805164012a05f200808202821582848304141715613f9757905090506402540be400808204905090508181830110613f975780820190509050808210613f975780820390509050815550601754600435808210613f9757808203905090506105a0526105a05160175560153360a05260805260406080208054600435808210613f9757808203905090508155506000337fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6004356105c05260206105c0a360006004610600527fa9059cbb00000000000000000000000000000000000000000000000000000000610620526106006004806020846106400101826020850160045afa50508051820191505061054051602082610640010152602081019050610560516020826106400101526020810190508061064052610640505060206106e06106405161066060006001610520516003811015613f975702600201545af161281b573d600060003e3d6000fd5b6106c060203d80821161282e5781612830565b805b9050905081528051602001806105c0828460045afa9050505060006105c0511115612870576105e0516105c05181816020036008021c9050905015613f97575b337f5ad056f2e28a8cec232015406b843668c1e36cda598127ec3b8c59b8c72773a06004356106005261056051610620526105a051610640526060610600a2610560516106005260206106006000600055f35b633c157e648118612a475763f851a440610160526020610160600461017c6001545afa6128f5573d600060003e3d6000fd5b601f3d1115613f9757610160513318613f9757600b54620151808181830110613f9757808201905090504210613f975742620151808181830110613f97578082019050905060243510613f975761294d610180613108565b61018051610160526004356064808202821582848304141715613f9757905090506101805260006004351161298357600061298c565b620f4240600435105b15613f97576101605161018051106129c65761016051600a808202821582848304141715613f9757905090506101805111613f97576129ea565b6101605161018051600a808202821582848304141715613f97579050905010613f97575b6101605160095561018051600a5542600b55602435600c557fa2b71ec6df949300b59aab36b55e189697b750119dd349fcfa8c0f779e83c254610160516101a052610180516101c052426101e0526024356102005260806101a0a1005b63551a65888118612aeb5763f851a440610160526020610160600461017c6001545afa612a79573d600060003e3d6000fd5b601f3d1115613f9757610160513318613f9757612a97610180613108565b61018051610160526101605160095561016051600a5542600b5542600c557f46e22fb3709ad289f62ce63d469248536dbc78d82b84a3d7e74ad606dc2019386101605161018052426101a0526040610180a1005b63e2e7d2648118612b67576370a0823160e0523061010052602060e0602460fc60016004356003811015613f975702600201545afa612b2f573d600060003e3d6000fd5b601f3d1115613f975760e05160016004356003811015613f97570260050154808210613f975780820390509050610120526020610120f35b6330c540858118612ceb5763154aa8f56101005230610120526020610100602461011c6001545afa612b9e573d600060003e3d6000fd5b601f3d1115613f9757610100518060a01c613f975760e05261010060006003818352015b6001610100516003811015613f97570260020154610120526370a082316101605230610180526020610160602461017c610120515afa612c07573d600060003e3d6000fd5b601f3d1115613f9757610160516001610100516003811015613f97570260050154808210613f9757808203905090506101405260006004610160527fa9059cbb00000000000000000000000000000000000000000000000000000000610180526101606004806020846101a00101826020850160045afa50508051820191505060e0516020826101a0010152602081019050610140516020826101a0010152602081019050806101a0526101a05050600060006101a0516101c06000610120515af1612cd8573d600060003e3d6000fd5b8151600101808352811415612bc2575050005b6354fd4d508118612d8557610120806020808252600660e0527f76352e302e3000000000000000000000000000000000000000000000000000006101005260e0818401808280516020018083828460045afa905050508051806020830101818260206001820306601f8201039050033682375050805160200160206001820306601f82010390509050905090508101905090509050610120f35b63c66106578118612dac5760016004356003811015613f9757026002015460e052602060e0f35b634903b0d18118612dd35760016004356003811015613f9757026005015460e052602060e0f35b63ddca3f438118612dea5760085460e052602060e0f35b635409491a8118612e015760095460e052602060e0f35b63b4b577ad8118612e1857600a5460e052602060e0f35b632081066c8118612e2f57600b5460e052602060e0f35b63140522888118612e4657600c5460e052602060e0f35b6306fdde038118612ee95760e08060208082528083018060108082602082540160c060006003818352015b8260c0516020021115612e8357612ea2565b60c05185015460c0516020028501528151600101808352811415612e71575b5050505050508051806020830101818260206001820306601f8201039050033682375050805160200160206001820306601f820103905090509050810190509050905060e0f35b6395d89b418118612f8c5760e08060208082528083018060138082602082540160c060006002818352015b8260c0516020021115612f2657612f45565b60c05185015460c0516020028501528151600101808352811415612f14575b5050505050508051806020830101818260206001820306601f8201039050033682375050805160200160206001820306601f820103905090509050810190509050905060e0f35b6370a082318118612fc1576004358060a01c613f975760e052601560e05160a052608052604060802054610100526020610100f35b63dd62ed3e8118613014576004358060a01c613f975760e0526024358060a01c613f975761010052601660e05160a05260805260406080206101005160a052608052604060802054610120526020610120f35b6318160ddd811861302b5760175460e052602060e0f35b633644e51581186130425760185460e052602060e0f35b637ecebe008118613077576004358060a01c613f975760e052601960e05160a052608052604060802054610100526020610100f35b505b60006000fd5b601560e05160a0526080526040608020805461012051808210613f97578082039050905081555060156101005160a05260805260406080208054610120518181830110613f9757808201905090508155506101005160e0517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61012051610140526020610140a3565b600c5460e052600a546101005260e051421061312e576101005181525061324156613241565b60095461012052600b54610140526101205161010051116131c657610120516101205161010051808210613f9757808203905090504261014051808210613f975780820390509050808202821582848304141715613f97579050905060e05161014051808210613f975780820390509050808015613f9757820490509050808210613f97578082039050905081525061324156613241565b610120516101005161012051808210613f9757808203905090504261014051808210613f975780820390509050808202821582848304141715613f97579050905060e05161014051808210613f975780820390509050808015613f97578204905090508181830110613f975780820190509050815250613241565b565b6060366101a03761020060006003818352015b60e0610200516003811015613f97576020020151610140610200516003811015613f97576020020151808202821582848304141715613f975790509050670de0b6b3a7640000808204905090506101a0610200516003811015613f9757602002015281516001018083528114156132565750506101a05181526101c05181602001526101e051816040015250565b604036610160376101c060006003818352015b60206101c0510260e001516101a05261016080516101a0518181830110613f97578082019050905081525081516001018083528114156132f75750506101605161334557600081525061354f565b610160516101a052610140516003808202821582848304141715613f9757905090506101c0526101e0600060ff818352015b6101a0516102005261024060006003818352015b6020610240510260e0015161022052610200516101a051808202821582848304141715613f975790509050610220516003808202821582848304141715613f975790509050808015613f975782049050905061020052815160010180835281141561338b5750506101a051610180526101c05161016051808202821582848304141715613f975790509050606480820490509050610200516003808202821582848304141715613f9757905090508181830110613f9757808201905090506101a051808202821582848304141715613f9757905090506101c0516064808210613f9757808203905090506101a051808202821582848304141715613f975790509050606480820490509050600461020051808202821582848304141715613f9757905090508181830110613f975780820190509050808015613f97578204905090506101a052610180516101a0511161350d576001610180516101a051808210613f975780820390509050116135385750506101a05181525061354f56613538565b60016101a05161018051808210613f975780820390509050116135385750506101a05181525061354f565b815160010180835281141561337757505060006000fd5b565b6102605160e05261028051610100526102a051610120526102c051610140526102e05161016052610300516101805261358b6103a0613243565b6103a0805161034052806020015161036052806040015161038052506103405160e0526103605161010052610380516101205261032051610140526135d16103a06132e4565b6103a051815250565b610280516102605114613f975760006102805112613f97576003610280511215613f975760006102605112613f97576003610260511215613f9757613620610340613108565b61034051610320526102c05160e0526102e05161010052610300516101205261032051610140526136526103606132e4565b610360516103405260603661036037610340516103c052610320516003808202821582848304141715613f9757905090506103e05261040060006003818352015b6102605161040051186136ad576102a051610380526136de565b610280516104005114156136c457613742566136de565b6102c0610400516003811015613f97576020020151610380525b6103608051610380518181830110613f9757808201905090508152506103c05161034051808202821582848304141715613f975790509050610380516003808202821582848304141715613f975790509050808015613f97578204905090506103c0525b81516001018083528114156136935750506103c05161034051808202821582848304141715613f9757905090506064808202821582848304141715613f9757905090506103e0516003808202821582848304141715613f975790509050808015613f97578204905090506103c05261036051610340516064808202821582848304141715613f9757905090506103e051808015613f97578204905090508181830110613f975780820190509050610400526103405161042052610440600060ff818352015b610420516103a0526104205161042051808202821582848304141715613f9757905090506103c0518181830110613f975780820190509050600261042051808202821582848304141715613f975790509050610400518181830110613f97578082019050905061034051808210613f975780820390509050808015613f9757820490509050610420526103a05161042051116138cc5760016103a05161042051808210613f975780820390509050116138f75750506104205181525061390e566138f7565b6001610420516103a051808210613f975780820390509050116138f75750506104205181525061390e565b815160010180835281141561380757505060006000fd5b565b60006101005112613f97576003610100511215613f97576060366101a037610180516102005260e0516003808202821582848304141715613f9757905090506102205261024060006003818352015b61010051610240511415613976576139f456613990565b610120610240516003811015613f975760200201516101c0525b6101a080516101c0518181830110613f9757808201905090508152506102005161018051808202821582848304141715613f9757905090506101c0516003808202821582848304141715613f975790509050808015613f9757820490509050610200525b815160010180835281141561395f5750506102005161018051808202821582848304141715613f9757905090506064808202821582848304141715613f975790509050610220516003808202821582848304141715613f975790509050808015613f9757820490509050610200526101a051610180516064808202821582848304141715613f97579050905061022051808015613f97578204905090508181830110613f975780820190509050610240526101805161026052610280600060ff818352015b610260516101e0526102605161026051808202821582848304141715613f975790509050610200518181830110613f975780820190509050600261026051808202821582848304141715613f975790509050610240518181830110613f97578082019050905061018051808210613f975780820390509050808015613f9757820490509050610260526101e0516102605111613b7e5760016101e05161026051808210613f97578082039050905011613ba957505061026051815250613bc056613ba9565b6001610260516101e051808210613f97578082039050905011613ba957505061026051815250613bc0565b8151600101808352811415613ab957505060006000fd5b565b613bcd610300613108565b610300516102e052600d5461030052600e5461032052600f54610340526103005160e05261032051610100526103405161012052600554610140526006546101605260075461018052613c216103c0613243565b6103c080516103605280602001516103805280604001516103a052506103605160e05261038051610100526103a051610120526102e05161014052613c676103e06132e4565b6103e0516103c0526017546103e0526103c0516102a0516103c051808202821582848304141715613f9757905090506103e051808015613f9757820490509050808210613f975780820390509050610400526102e05160e0526102c05161010052610360516101205261038051610140526103a051610160526104005161018052613cf3610440613910565b61044051610420526008546003808202821582848304141715613f97579050905060088082049050905061044052606036610460376104c060006003818352015b60006104e0526103606104c0516003811015613f97576020020151610500526102c0516104c05118613da8576105005161040051808202821582848304141715613f9757905090506103c051808015613f975782049050905061042051808210613f9757808203905090506104e052613dec565b610500516105005161040051808202821582848304141715613f9757905090506103c051808015613f9757820490509050808210613f9757808203905090506104e0525b61050051610440516104e051808202821582848304141715613f9757905090506402540be40080820490509050808210613f9757808203905090506104606104c0516003811015613f975760200201528151600101808352811415613d345750506104606102c0516003811015613f975760200201516102e05160e0526102c05161010052610460516101205261048051610140526104a051610160526104005161018052613e9c6104e0613910565b6104e051808210613f9757808203905090506104c0526103606102c0516003811015613f9757602002015161042051808210613f975780820390509050670de0b6b3a7640000808202821582848304141715613f9757905090506103006102c0516003811015613f97576020020151808015613f97578204905090506104e0526104c0516001808210613f975780820390509050670de0b6b3a7640000808202821582848304141715613f9757905090506103006102c0516003811015613f97576020020151808015613f97578204905090506104c0526104c05181526104e0516104c051808210613f975780820390509050816020015250565b600080fd5b61000a613fa60361000a60003961000a613fa6036000f3