From d29aef48d8d17c58c262f1b7a095a51fee7982f5 Mon Sep 17 00:00:00 2001 From: Cho Young-Hwi Date: Mon, 23 Mar 2026 09:23:50 +0000 Subject: [PATCH] [#445] Fix multi-hop action constants, redeploy SWAP_EXACT_IN was 0x00 (INCREASE_LIQUIDITY), should be 0x07. SWAP_EXACT_OUT was 0x01 (DECREASE_LIQUIDITY), should be 0x09. This caused UnsupportedAction(1) on USDC multi-hop swaps. Single-hop constants (0x06, 0x08) were already correct. Redeployed: 0x04f557F8D2806B34FC832a534c08DF514D4dfEeF Verified on Sourcify (exact match). Co-Authored-By: Claude Opus 4.6 (1M context) --- .../8453/run-1774257796304.json | 154 ++++++++++++++++++ .../8453/run-latest.json | 112 ++++++------- src/interfaces/IZapInterfaces.sol | 4 +- 3 files changed, 212 insertions(+), 58 deletions(-) create mode 100644 broadcast/DeployZapPlotLinkV2.s.sol/8453/run-1774257796304.json diff --git a/broadcast/DeployZapPlotLinkV2.s.sol/8453/run-1774257796304.json b/broadcast/DeployZapPlotLinkV2.s.sol/8453/run-1774257796304.json new file mode 100644 index 0000000..143c295 --- /dev/null +++ b/broadcast/DeployZapPlotLinkV2.s.sol/8453/run-1774257796304.json @@ -0,0 +1,154 @@ +{ + "transactions": [ + { + "hash": "0xf55cf68e6bbd698bb3203af1bf4e251a350514855681937c4b623d4362d8cf48", + "transactionType": "CREATE", + "contractName": "ZapPlotLinkV2", + "contractAddress": "0x04f557f8d2806b34fc832a534c08df514d4dfeef", + "function": null, + "arguments": [ + "0xF8A2C39111FCEB9C950aAf28A9E34EBaD99b85C1" + ], + "transaction": { + "from": "0x017596303ee2f3c1250aa67d2d33dbae1d1c4dbf", + "gas": "0x60bc6e", + "value": "0x0", + "input": "0x6080604052610bb85f5f6101000a81548162ffffff021916908362ffffff160217905550603c5f60036101000a81548162ffffff021916908360020b62ffffff1602179055506101f45f60066101000a81548162ffffff021916908362ffffff160217905550600a5f60096101000a81548162ffffff021916908360020b62ffffff160217905550348015610092575f5ffd5b50604051615a71380380615a7183398181016040528101906100b4919061065f565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610119576040517f644865b000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b335f600c6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508060015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1663095ea7b373c5a076cad94176c2996b32d8466be1ce757faa277fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016102089291906106b1565b6020604051808303815f875af1158015610224573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610248919061070d565b508073ffffffffffffffffffffffffffffffffffffffff1663095ea7b373492c412369db76c9cdd9939e6c521579301473a37fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016102b89291906106b1565b6020604051808303815f875af11580156102d4573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102f8919061070d565b507337f0c2915cecc7e977183b8543fc0864d03e064c73ffffffffffffffffffffffffffffffffffffffff1663095ea7b373c5a076cad94176c2996b32d8466be1ce757faa277fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b815260040161037c9291906106b1565b6020604051808303815f875af1158015610398573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103bc919061070d565b507337f0c2915cecc7e977183b8543fc0864d03e064c73ffffffffffffffffffffffffffffffffffffffff1663095ea7b373492c412369db76c9cdd9939e6c521579301473a37fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016104409291906106b1565b6020604051808303815f875af115801561045c573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610480919061070d565b506104a473833589fcd6edb6e08f4c7c32d4f71b54bda029136104aa60201b60201c565b506107aa565b8073ffffffffffffffffffffffffffffffffffffffff1663095ea7b36e22d473030f116ddee9f6b43ac78ba37fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016105149291906106b1565b6020604051808303815f875af1158015610530573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610554919061070d565b506e22d473030f116ddee9f6b43ac78ba373ffffffffffffffffffffffffffffffffffffffff166387517c4582736ff5693b99212da76ad316178a184ab56d299b4373ffffffffffffffffffffffffffffffffffffffff65ffffffffffff6040518563ffffffff1660e01b81526004016105d19493929190610767565b5f604051808303815f87803b1580156105e8575f5ffd5b505af11580156105fa573d5f5f3e3d5ffd5b5050505050565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61062e82610605565b9050919050565b61063e81610624565b8114610648575f5ffd5b50565b5f8151905061065981610635565b92915050565b5f6020828403121561067457610673610601565b5b5f6106818482850161064b565b91505092915050565b61069381610624565b82525050565b5f819050919050565b6106ab81610699565b82525050565b5f6040820190506106c45f83018561068a565b6106d160208301846106a2565b9392505050565b5f8115159050919050565b6106ec816106d8565b81146106f6575f5ffd5b50565b5f81519050610707816106e3565b92915050565b5f6020828403121561072257610721610601565b5b5f61072f848285016106f9565b91505092915050565b61074181610605565b82525050565b5f65ffffffffffff82169050919050565b61076181610747565b82525050565b5f60808201905061077a5f83018761068a565b610787602083018661068a565b6107946040830185610738565b6107a16060830184610758565b95945050505050565b6152ba806107b75f395ff3fe60806040526004361061014e575f3560e01c8063a734f06e116100b5578063cdad4fae1161006e578063cdad4fae14610464578063cea9d26f1461048e578063cefa8922146104b6578063d87e4bd1146104e0578063e8dd7fc31461051d578063f2fde38b1461054757610155565b8063a734f06e14610366578063b3f1c93d14610390578063b7d1abbc146103c0578063b9703ded146103e8578063c1c1d21814610412578063cb7588241461043c57610155565b80636afdd850116101075780636afdd850146102645780637164cf9b1461028e578063814ac84f146102b857806389a30271146102e85780638da5cb5b146103125780638dae88c21461033c57610155565b806301c2553a1461015957806304824e7014610196578063089fe6aa146101be578063161a226e146101e857806350ecabab14610212578063543b67101461023a57610155565b3661015557005b5f5ffd5b348015610164575f5ffd5b5061017f600480360381019061017a919061420a565b61056f565b60405161018d929190614269565b60405180910390f35b3480156101a1575f5ffd5b506101bc60048036038101906101b791906142cb565b6108ec565b005b3480156101c9575f5ffd5b506101d26109e7565b6040516101df9190614313565b60405180910390f35b3480156101f3575f5ffd5b506101fc6109fa565b604051610209919061433b565b60405180910390f35b34801561021d575f5ffd5b50610238600480360381019061023391906143b4565b610a1f565b005b348015610245575f5ffd5b5061024e610ae8565b60405161025b9190614401565b60405180910390f35b34801561026f575f5ffd5b50610278610afa565b604051610285919061433b565b60405180910390f35b348015610299575f5ffd5b506102a2610b0d565b6040516102af9190614401565b60405180910390f35b6102d260048036038101906102cd919061441a565b610b1f565b6040516102df919061447e565b60405180910390f35b3480156102f3575f5ffd5b506102fc610f2a565b604051610309919061433b565b60405180910390f35b34801561031d575f5ffd5b50610326610f42565b604051610333919061433b565b60405180910390f35b348015610347575f5ffd5b50610350610f67565b60405161035d91906144f2565b60405180910390f35b348015610371575f5ffd5b5061037a610f7f565b604051610387919061433b565b60405180910390f35b6103aa60048036038101906103a5919061441a565b610f83565b6040516103b7919061447e565b60405180910390f35b3480156103cb575f5ffd5b506103e660048036038101906103e191906143b4565b61155f565b005b3480156103f3575f5ffd5b506103fc611627565b604051610409919061452b565b60405180910390f35b34801561041d575f5ffd5b5061042661163f565b6040516104339190614564565b60405180910390f35b348015610447575f5ffd5b50610462600480360381019061045d919061457d565b611657565b005b34801561046f575f5ffd5b50610478611a85565b6040516104859190614313565b60405180910390f35b348015610499575f5ffd5b506104b460048036038101906104af919061420a565b611a99565b005b3480156104c1575f5ffd5b506104ca611b4f565b6040516104d7919061433b565b60405180910390f35b3480156104eb575f5ffd5b506105066004803603810190610501919061420a565b611b67565b604051610514929190614269565b60405180910390f35b348015610528575f5ffd5b50610531611ee0565b60405161053e91906145c8565b60405180910390f35b348015610552575f5ffd5b5061056d6004803603810190610568919061457d565b611ef8565b005b5f5f60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16036105cd57829050610850565b7337f0c2915cecc7e977183b8543fc0864d03e064c73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16036106ce5773492c412369db76c9cdd9939e6c521579301473a373ffffffffffffffffffffffffffffffffffffffff1663fb55dbe160015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16855f6040518463ffffffff1660e01b8152600401610686939291906145fb565b6040805180830381865afa1580156106a0573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106c49190614658565b508091505061084f565b73833589fcd6edb6e08f4c7c32d4f71b54bda0291373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16036107b357730d5e0f971ed27fbff6c2837bf31316121532048d73ffffffffffffffffffffffffffffffffffffffff1663ca253dc961074e856120a6565b6040518263ffffffff1660e01b815260040161076a91906148f8565b60408051808303815f875af1158015610785573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107a99190614918565b508091505061084e565b730d5e0f971ed27fbff6c2837bf31316121532048d73ffffffffffffffffffffffffffffffffffffffff1663aa9d21cb6107ed87866122d0565b6040518263ffffffff1660e01b81526004016108099190614a2c565b60408051808303815f875af1158015610824573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108489190614918565b50809150505b5b5b73492c412369db76c9cdd9939e6c521579301473a373ffffffffffffffffffffffffffffffffffffffff1663fb55dbe185835f6040518463ffffffff1660e01b81526004016108a1939291906145fb565b6040805180830381865afa1580156108bb573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108df9190614658565b5080925050935093915050565b5f600c9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610972576040517f086a6b8600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8173ffffffffffffffffffffffffffffffffffffffff164760405161099790614a79565b5f6040518083038185875af1925050503d805f81146109d1576040519150601f19603f3d011682016040523d82523d5f602084013e6109d6565b606091505b50509050806109e3575f5ffd5b5050565b5f5f9054906101000a900462ffffff1681565b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f600c9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610aa5576040517f086a6b8600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b815f60066101000a81548162ffffff021916908362ffffff160217905550805f60096101000a81548162ffffff021916908360020b62ffffff1602179055505050565b5f60099054906101000a900460020b81565b6e22d473030f116ddee9f6b43ac78ba381565b5f60039054906101000a900460020b81565b5f5f8303610b59576040517ff4fb71d900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1603610c3d575f3414610be7576040517f6256698900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610c3533308660015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166123c5909392919063ffffffff16565b839050610dd1565b7337f0c2915cecc7e977183b8543fc0864d03e064c73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1603610db9575f3414610cbd576040517f6256698900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610cfe3330867337f0c2915cecc7e977183b8543fc0864d03e064c73ffffffffffffffffffffffffffffffffffffffff166123c5909392919063ffffffff16565b73492c412369db76c9cdd9939e6c521579301473a373ffffffffffffffffffffffffffffffffffffffff16630144c5f360015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16865f306040518563ffffffff1660e01b8152600401610d729493929190614ac6565b6020604051808303815f875af1158015610d8e573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610db29190614b09565b9050610dd0565b610dc3868561241a565b610dcd8685612574565b90505b5b73492c412369db76c9cdd9939e6c521579301473a373ffffffffffffffffffffffffffffffffffffffff16630144c5f3868386336040518563ffffffff1660e01b8152600401610e249493929190614b34565b6020604051808303815f875af1925050508015610e5f57506040513d601f19601f82011682018060405250810190610e5c9190614b09565b60015b610e95576040517f12c0f6d800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80925050610ea161284b565b8473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f27830bca1834346b6287fed7ebd6791d80a5a6d4b190a1f8b01c09a07786a1a6858886604051610f1993929190614b77565b60405180910390a450949350505050565b73833589fcd6edb6e08f4c7c32d4f71b54bda0291381565b5f600c9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b730d5e0f971ed27fbff6c2837bf31316121532048d81565b5f81565b5f5f8303610fbd576040517ff4fb71d900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f73c5a076cad94176c2996b32d8466be1ce757faa2773ffffffffffffffffffffffffffffffffffffffff166376a9864b86866040518363ffffffff1660e01b815260040161100d929190614bac565b6040805180830381865afa158015611027573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061104b9190614918565b50905060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff160361116b575f34146110db576040517f6256698900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b82811115611115576040517f12c0f6d800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61116333308360015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166123c5909392919063ffffffff16565b809150611404565b7337f0c2915cecc7e977183b8543fc0864d03e064c73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16036113d6575f34146111eb576040517f6256698900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f73c5a076cad94176c2996b32d8466be1ce757faa2773ffffffffffffffffffffffffffffffffffffffff166376a9864b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846040518363ffffffff1660e01b815260040161125c929190614bac565b6040805180830381865afa158015611276573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061129a9190614918565b509050838111156112d7576040517f12c0f6d800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6113183330837337f0c2915cecc7e977183b8543fc0864d03e064c73ffffffffffffffffffffffffffffffffffffffff166123c5909392919063ffffffff16565b73c5a076cad94176c2996b32d8466be1ce757faa2773ffffffffffffffffffffffffffffffffffffffff1663f74bfe8e60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff168484306040518563ffffffff1660e01b815260040161138c9493929190614b34565b6020604051808303815f875af11580156113a8573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113cc9190614b09565b5080925050611403565b6113e0868461241a565b6113eb86828561293f565b91506114028683856113fd9190614c00565b612c9b565b5b5b5f73c5a076cad94176c2996b32d8466be1ce757faa2773ffffffffffffffffffffffffffffffffffffffff1663f74bfe8e878785336040518563ffffffff1660e01b81526004016114589493929190614b34565b6020604051808303815f875af192505050801561149357506040513d601f19601f820116820180604052508101906114909190614b09565b60015b6114c9576040517f12c0f6d800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b809150506114d561284b565b8573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f3b90f0b1565b6e9dac462a873af5d46d5d6177d0096ddc2ddcf38de8ddb5d8fa88878660405161154d93929190614b77565b60405180910390a45050949350505050565b5f600c9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146115e5576040517f086a6b8600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b815f5f6101000a81548162ffffff021916908362ffffff160217905550805f60036101000a81548162ffffff021916908360020b62ffffff1602179055505050565b73492c412369db76c9cdd9939e6c521579301473a381565b73c5a076cad94176c2996b32d8466be1ce757faa2781565b5f600c9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146116dd576040517f086a6b8600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611742576040517f644865b000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff1663095ea7b373c5a076cad94176c2996b32d8466be1ce757faa275f6040518363ffffffff1660e01b81526004016117b6929190614c33565b6020604051808303815f875af11580156117d2573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117f69190614c84565b508073ffffffffffffffffffffffffffffffffffffffff1663095ea7b373492c412369db76c9cdd9939e6c521579301473a35f6040518363ffffffff1660e01b8152600401611846929190614c33565b6020604051808303815f875af1158015611862573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118869190614c84565b508160015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff1663095ea7b373c5a076cad94176c2996b32d8466be1ce757faa277fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401611936929190614bac565b6020604051808303815f875af1158015611952573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119769190614c84565b508173ffffffffffffffffffffffffffffffffffffffff1663095ea7b373492c412369db76c9cdd9939e6c521579301473a37fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016119e6929190614bac565b6020604051808303815f875af1158015611a02573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a269190614c84565b508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f5a1a9bb5f826487cf43e61548d79ffa19cc00e1a554bd9962825f51fa9c767d160405160405180910390a35050565b5f60069054906101000a900462ffffff1681565b5f600c9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611b1f576040517f086a6b8600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611b4a82828573ffffffffffffffffffffffffffffffffffffffff16612db59092919063ffffffff16565b505050565b7337f0c2915cecc7e977183b8543fc0864d03e064c81565b5f5f73c5a076cad94176c2996b32d8466be1ce757faa2773ffffffffffffffffffffffffffffffffffffffff166376a9864b85856040518363ffffffff1660e01b8152600401611bb8929190614bac565b6040805180830381865afa158015611bd2573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611bf69190614918565b508091505060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603611c5757809150611ed8565b7337f0c2915cecc7e977183b8543fc0864d03e064c73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603611d565773c5a076cad94176c2996b32d8466be1ce757faa2773ffffffffffffffffffffffffffffffffffffffff166376a9864b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff1660e01b8152600401611d0e929190614bac565b6040805180830381865afa158015611d28573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611d4c9190614918565b5080925050611ed7565b73833589fcd6edb6e08f4c7c32d4f71b54bda0291373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603611e3b57730d5e0f971ed27fbff6c2837bf31316121532048d73ffffffffffffffffffffffffffffffffffffffff1663147d2af9611dd683612e08565b6040518263ffffffff1660e01b8152600401611df291906148f8565b60408051808303815f875af1158015611e0d573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e319190614918565b5080925050611ed6565b730d5e0f971ed27fbff6c2837bf31316121532048d73ffffffffffffffffffffffffffffffffffffffff166358733073611e7587846122d0565b6040518263ffffffff1660e01b8152600401611e919190614a2c565b60408051808303815f875af1158015611eac573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611ed09190614918565b50809250505b5b5b935093915050565b736ff5693b99212da76ad316178a184ab56d299b4381565b5f600c9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611f7e576040517f086a6b8600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611fe3576040517f644865b000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5f600c9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f600c6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6120ae61401f565b5f600267ffffffffffffffff8111156120ca576120c9614caf565b5b60405190808252806020026020018201604052801561210357816020015b6120f0614066565b8152602001906001900390816120e85790505b5090506040518060a001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f60069054906101000a900462ffffff1662ffffff1681526020015f60099054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff16815260200160405180602001604052805f815250815250815f815181106121a05761219f614cdc565b5b60200260200101819052506040518060a0016040528060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020015f5f9054906101000a900462ffffff1662ffffff1681526020015f60039054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff16815260200160405180602001604052805f8152508152508160018151811061226657612265614cdc565b5b6020026020010181905250604051806060016040528073833589fcd6edb6e08f4c7c32d4f71b54bda0291373ffffffffffffffffffffffffffffffffffffffff168152602001828152602001846fffffffffffffffffffffffffffffffff16815250915050919050565b6122d86140c5565b5f5f5f6122e486613032565b92509250925060405180608001604052806040518060a001604052808673ffffffffffffffffffffffffffffffffffffffff1681526020018573ffffffffffffffffffffffffffffffffffffffff1681526020015f5f9054906101000a900462ffffff1662ffffff1681526020015f60039054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff1681525081526020018215158152602001866fffffffffffffffffffffffffffffffff16815260200160405180602001604052805f815250815250935050505092915050565b6123d3848484846001613150565b61241457836040517f5274afe700000000000000000000000000000000000000000000000000000000815260040161240b919061433b565b60405180910390fd5b50505050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361248b57803414612486576040517f6256698900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b612570565b73833589fcd6edb6e08f4c7c32d4f71b54bda0291373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361253d575f341461250b576040517f6256698900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6125383330838573ffffffffffffffffffffffffffffffffffffffff166123c5909392919063ffffffff16565b61256f565b6040517f84e3aa1900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b5050565b5f5f60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016125d0919061433b565b602060405180830381865afa1580156125eb573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061260f9190614b09565b905073833589fcd6edb6e08f4c7c32d4f71b54bda0291373ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff160361266657612661836131c1565b61279e565b5f5f5f61267287613032565b9250925092505f601060405160200161268b9190614d49565b60405160208183030381529060405290505f600167ffffffffffffffff8111156126b8576126b7614caf565b5b6040519080825280602002602001820160405280156126eb57816020015b60608152602001906001900390816126d65790505b5090506126fa8585858b61364d565b815f8151811061270d5761270c614cdc565b5b6020026020010181905250736ff5693b99212da76ad316178a184ab56d299b4373ffffffffffffffffffffffffffffffffffffffff16633593564c898484426040518563ffffffff1660e01b815260040161276a93929190614e66565b5f604051808303818588803b158015612781575f5ffd5b505af1158015612793573d5f5f3e3d5ffd5b505050505050505050505b8060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016127f9919061433b565b602060405180830381865afa158015612814573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906128389190614b09565b6128429190614c00565b91505092915050565b5f60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016128a6919061433b565b602060405180830381865afa1580156128c1573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906128e59190614b09565b90505f81111561293c5761293b338260015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16612db59092919063ffffffff16565b5b50565b5f5f5f73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16146129f1578473ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016129ad919061433b565b602060405180830381865afa1580156129c8573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906129ec9190614b09565b6129f3565b475b905073833589fcd6edb6e08f4c7c32d4f71b54bda0291373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603612a4b57612a4684846138be565b612bcf565b5f5f5f612a5788613032565b9250925092505f612a6b8484848b8b613d4b565b90505f60106004604051602001612a83929190614ea9565b60405160208183030381529060405290505f600267ffffffffffffffff811115612ab057612aaf614caf565b5b604051908082528060200260200182016040528015612ae357816020015b6060815260200190600190039081612ace5790505b50905082815f81518110612afa57612af9614cdc565b5b60200260200101819052505f305f604051602001612b1a93929190614f04565b60405160208183030381529060405281600181518110612b3d57612b3c614cdc565b5b6020026020010181905250736ff5693b99212da76ad316178a184ab56d299b4373ffffffffffffffffffffffffffffffffffffffff16633593564c8a8484426040518563ffffffff1660e01b8152600401612b9a93929190614e66565b5f604051808303818588803b158015612bb1575f5ffd5b505af1158015612bc3573d5f5f3e3d5ffd5b50505050505050505050505b5f5f73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614612c80578573ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401612c3c919061433b565b602060405180830381865afa158015612c57573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612c7b9190614b09565b612c82565b475b90508082612c909190614c00565b925050509392505050565b5f810315612db1575f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612d84575f3373ffffffffffffffffffffffffffffffffffffffff1682604051612cfb90614a79565b5f6040518083038185875af1925050503d805f8114612d35576040519150601f19603f3d011682016040523d82523d5f602084013e612d3a565b606091505b5050905080612d7e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d7590614f93565b60405180910390fd5b50612db0565b612daf33828473ffffffffffffffffffffffffffffffffffffffff16612db59092919063ffffffff16565b5b5b5050565b612dc28383836001613fbd565b612e0357826040517f5274afe7000000000000000000000000000000000000000000000000000000008152600401612dfa919061433b565b60405180910390fd5b505050565b612e1061401f565b5f600267ffffffffffffffff811115612e2c57612e2b614caf565b5b604051908082528060200260200182016040528015612e6557816020015b612e52614066565b815260200190600190039081612e4a5790505b5090506040518060a0016040528073833589fcd6edb6e08f4c7c32d4f71b54bda0291373ffffffffffffffffffffffffffffffffffffffff1681526020015f60069054906101000a900462ffffff1662ffffff1681526020015f60099054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff16815260200160405180602001604052805f815250815250815f81518110612f1657612f15614cdc565b5b60200260200101819052506040518060a001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f5f9054906101000a900462ffffff1662ffffff1681526020015f60039054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff16815260200160405180602001604052805f81525081525081600181518110612fbb57612fba614cdc565b5b6020026020010181905250604051806060016040528060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828152602001846fffffffffffffffffffffffffffffffff16815250915050919050565b5f5f5f5f73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603613098575f925060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16915060019050613149565b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16101561311d5783925060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16915060019050613148565b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1692508391505f90505b5b9193909250565b5f5f6323b872dd60e01b9050604051815f525f1960601c87166004525f1960601c86166024528460445260205f60645f5f8c5af1925060015f511483166131ae5783831516156131a2573d5f823e3d81fd5b5f883b113d1516831692505b806040525f606052505095945050505050565b5f6007600c600e6040516020016131da93929190614fb1565b60405160208183030381529060405290505f600367ffffffffffffffff81111561320757613206614caf565b5b60405190808252806020026020018201604052801561323a57816020015b60608152602001906001900390816132255790505b5090505f600267ffffffffffffffff81111561325957613258614caf565b5b60405190808252806020026020018201604052801561329257816020015b61327f614066565b8152602001906001900390816132775790505b5090506040518060a001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f60069054906101000a900462ffffff1662ffffff1681526020015f60099054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff16815260200160405180602001604052805f815250815250815f8151811061332f5761332e614cdc565b5b60200260200101819052506040518060a0016040528060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020015f5f9054906101000a900462ffffff1662ffffff1681526020015f60039054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff16815260200160405180602001604052805f815250815250816001815181106133f5576133f4614cdc565b5b602002602001018190525073833589fcd6edb6e08f4c7c32d4f71b54bda0291381855f60405160200161342b949392919061507f565b604051602081830303815290604052825f8151811061344d5761344c614cdc565b5b602002602001018190525073833589fcd6edb6e08f4c7c32d4f71b54bda029138460405160200161347f9291906150c9565b604051602081830303815290604052826001815181106134a2576134a1614cdc565b5b602002602001018190525060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16305f6040516020016134e3939291906150f0565b6040516020818303038152906040528260028151811061350657613505614cdc565b5b60200260200101819052505f60106040516020016135249190614d49565b60405160208183030381529060405290505f600167ffffffffffffffff81111561355157613550614caf565b5b60405190808252806020026020018201604052801561358457816020015b606081526020019060019003908161356f5790505b509050848460405160200161359a929190615125565b604051602081830303815290604052815f815181106135bc576135bb614cdc565b5b6020026020010181905250736ff5693b99212da76ad316178a184ab56d299b4373ffffffffffffffffffffffffffffffffffffffff16633593564c8383426040518463ffffffff1660e01b815260040161361893929190614e66565b5f604051808303815f87803b15801561362f575f5ffd5b505af1158015613641573d5f5f3e3d5ffd5b50505050505050505050565b60605f6006600c600e60405160200161366893929190614fb1565b60405160208183030381529060405290505f600367ffffffffffffffff81111561369557613694614caf565b5b6040519080825280602002602001820160405280156136c857816020015b60608152602001906001900390816136b35790505b5090505f6040518060a001604052808973ffffffffffffffffffffffffffffffffffffffff1681526020018873ffffffffffffffffffffffffffffffffffffffff1681526020015f5f9054906101000a900462ffffff1662ffffff1681526020015f60039054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff1681525090505f5f8761376a57888a61376d565b89895b915091506040518060a001604052808481526020018915158152602001886fffffffffffffffffffffffffffffffff1681526020015f6fffffffffffffffffffffffffffffffff16815260200160405180602001604052805f8152508152506040516020016137dc91906151cf565b604051602081830303815290604052845f815181106137fe576137fd614cdc565b5b6020026020010181905250818760405160200161381c9291906150c9565b6040516020818303038152906040528460018151811061383f5761383e614cdc565b5b602002602001018190525080305f60405160200161385f939291906150f0565b6040516020818303038152906040528460028151811061388257613881614cdc565b5b602002602001018190525084846040516020016138a0929190615125565b60405160208183030381529060405295505050505050949350505050565b5f6009600c600e6040516020016138d793929190614fb1565b60405160208183030381529060405290505f600367ffffffffffffffff81111561390457613903614caf565b5b60405190808252806020026020018201604052801561393757816020015b60608152602001906001900390816139225790505b5090505f600267ffffffffffffffff81111561395657613955614caf565b5b60405190808252806020026020018201604052801561398f57816020015b61397c614066565b8152602001906001900390816139745790505b5090506040518060a0016040528073833589fcd6edb6e08f4c7c32d4f71b54bda0291373ffffffffffffffffffffffffffffffffffffffff1681526020015f60069054906101000a900462ffffff1662ffffff1681526020015f60099054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff16815260200160405180602001604052805f815250815250815f81518110613a4057613a3f614cdc565b5b60200260200101819052506040518060a001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f5f9054906101000a900462ffffff1662ffffff1681526020015f60039054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff16815260200160405180602001604052805f81525081525081600181518110613ae557613ae4614cdc565b5b602002602001018190525060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16818686604051602001613b28949392919061507f565b604051602081830303815290604052825f81518110613b4a57613b49614cdc565b5b602002602001018190525073833589fcd6edb6e08f4c7c32d4f71b54bda0291384604051602001613b7c9291906150c9565b60405160208183030381529060405282600181518110613b9f57613b9e614cdc565b5b602002602001018190525060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16305f604051602001613be0939291906150f0565b60405160208183030381529060405282600281518110613c0357613c02614cdc565b5b60200260200101819052505f6010604051602001613c219190614d49565b60405160208183030381529060405290505f600167ffffffffffffffff811115613c4e57613c4d614caf565b5b604051908082528060200260200182016040528015613c8157816020015b6060815260200190600190039081613c6c5790505b5090508484604051602001613c97929190615125565b604051602081830303815290604052815f81518110613cb957613cb8614cdc565b5b6020026020010181905250736ff5693b99212da76ad316178a184ab56d299b4373ffffffffffffffffffffffffffffffffffffffff16633593564c8383426040518463ffffffff1660e01b8152600401613d1593929190614e66565b5f604051808303815f87803b158015613d2c575f5ffd5b505af1158015613d3e573d5f5f3e3d5ffd5b5050505050505050505050565b60605f6008600c600e604051602001613d6693929190614fb1565b60405160208183030381529060405290505f600367ffffffffffffffff811115613d9357613d92614caf565b5b604051908082528060200260200182016040528015613dc657816020015b6060815260200190600190039081613db15790505b5090505f6040518060a001604052808a73ffffffffffffffffffffffffffffffffffffffff1681526020018973ffffffffffffffffffffffffffffffffffffffff1681526020015f5f9054906101000a900462ffffff1662ffffff1681526020015f60039054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff1681525090505f5f88613e6857898b613e6b565b8a8a5b915091506040518060a001604052808481526020018a15158152602001896fffffffffffffffffffffffffffffffff168152602001886fffffffffffffffffffffffffffffffff16815260200160405180602001604052805f815250815250604051602001613eda9190615264565b604051602081830303815290604052845f81518110613efc57613efb614cdc565b5b60200260200101819052508187604051602001613f1a9291906150c9565b60405160208183030381529060405284600181518110613f3d57613f3c614cdc565b5b602002602001018190525080305f604051602001613f5d939291906150f0565b60405160208183030381529060405284600281518110613f8057613f7f614cdc565b5b60200260200101819052508484604051602001613f9e929190615125565b6040516020818303038152906040529550505050505095945050505050565b5f5f63a9059cbb60e01b9050604051815f525f1960601c86166004528460245260205f60445f5f8b5af1925060015f51148316614011578383151615614005573d5f823e3d81fd5b5f873b113d1516831692505b806040525050949350505050565b60405180606001604052805f73ffffffffffffffffffffffffffffffffffffffff168152602001606081526020015f6fffffffffffffffffffffffffffffffff1681525090565b6040518060a001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f62ffffff1681526020015f60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b60405180608001604052806140d8614105565b81526020015f151581526020015f6fffffffffffffffffffffffffffffffff168152602001606081525090565b6040518060a001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f62ffffff1681526020015f60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff1681525090565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6141a68261417d565b9050919050565b6141b68161419c565b81146141c0575f5ffd5b50565b5f813590506141d1816141ad565b92915050565b5f819050919050565b6141e9816141d7565b81146141f3575f5ffd5b50565b5f81359050614204816141e0565b92915050565b5f5f5f6060848603121561422157614220614179565b5b5f61422e868287016141c3565b935050602061423f868287016141c3565b9250506040614250868287016141f6565b9150509250925092565b614263816141d7565b82525050565b5f60408201905061427c5f83018561425a565b614289602083018461425a565b9392505050565b5f61429a8261417d565b9050919050565b6142aa81614290565b81146142b4575f5ffd5b50565b5f813590506142c5816142a1565b92915050565b5f602082840312156142e0576142df614179565b5b5f6142ed848285016142b7565b91505092915050565b5f62ffffff82169050919050565b61430d816142f6565b82525050565b5f6020820190506143265f830184614304565b92915050565b6143358161419c565b82525050565b5f60208201905061434e5f83018461432c565b92915050565b61435d816142f6565b8114614367575f5ffd5b50565b5f8135905061437881614354565b92915050565b5f8160020b9050919050565b6143938161437e565b811461439d575f5ffd5b50565b5f813590506143ae8161438a565b92915050565b5f5f604083850312156143ca576143c9614179565b5b5f6143d78582860161436a565b92505060206143e8858286016143a0565b9150509250929050565b6143fb8161437e565b82525050565b5f6020820190506144145f8301846143f2565b92915050565b5f5f5f5f6080858703121561443257614431614179565b5b5f61443f878288016141c3565b9450506020614450878288016141c3565b9350506040614461878288016141f6565b9250506060614472878288016141f6565b91505092959194509250565b5f6020820190506144915f83018461425a565b92915050565b5f819050919050565b5f6144ba6144b56144b08461417d565b614497565b61417d565b9050919050565b5f6144cb826144a0565b9050919050565b5f6144dc826144c1565b9050919050565b6144ec816144d2565b82525050565b5f6020820190506145055f8301846144e3565b92915050565b5f614515826144c1565b9050919050565b6145258161450b565b82525050565b5f60208201905061453e5f83018461451c565b92915050565b5f61454e826144c1565b9050919050565b61455e81614544565b82525050565b5f6020820190506145775f830184614555565b92915050565b5f6020828403121561459257614591614179565b5b5f61459f848285016141c3565b91505092915050565b5f6145b2826144c1565b9050919050565b6145c2816145a8565b82525050565b5f6020820190506145db5f8301846145b9565b92915050565b5f8115159050919050565b6145f5816145e1565b82525050565b5f60608201905061460e5f83018661432c565b61461b602083018561425a565b61462860408301846145ec565b949350505050565b5f8151905061463e816141e0565b92915050565b5f81519050614652816141ad565b92915050565b5f5f6040838503121561466e5761466d614179565b5b5f61467b85828601614630565b925050602061468c85828601614644565b9150509250929050565b61469f8161419c565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b6146d7816142f6565b82525050565b6146e68161437e565b82525050565b5f6146f6826144c1565b9050919050565b614706816146ec565b82525050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61474e8261470c565b6147588185614716565b9350614768818560208601614726565b61477181614734565b840191505092915050565b5f60a083015f8301516147915f860182614696565b5060208301516147a460208601826146ce565b5060408301516147b760408601826146dd565b5060608301516147ca60608601826146fd565b50608083015184820360808601526147e28282614744565b9150508091505092915050565b5f6147fa838361477c565b905092915050565b5f602082019050919050565b5f614818826146a5565b61482281856146af565b935083602082028501614834856146bf565b805f5b8581101561486f578484038952815161485085826147ef565b945061485b83614802565b925060208a01995050600181019050614837565b50829750879550505050505092915050565b5f6fffffffffffffffffffffffffffffffff82169050919050565b6148a581614881565b82525050565b5f606083015f8301516148c05f860182614696565b50602083015184820360208601526148d8828261480e565b91505060408301516148ed604086018261489c565b508091505092915050565b5f6020820190508181035f83015261491081846148ab565b905092915050565b5f5f6040838503121561492e5761492d614179565b5b5f61493b85828601614630565b925050602061494c85828601614630565b9150509250929050565b60a082015f82015161496a5f850182614696565b50602082015161497d6020850182614696565b50604082015161499060408501826146ce565b5060608201516149a360608501826146dd565b5060808201516149b660808501826146fd565b50505050565b6149c5816145e1565b82525050565b5f61010083015f8301516149e15f860182614956565b5060208301516149f460a08601826149bc565b506040830151614a0760c086018261489c565b50606083015184820360e0860152614a1f8282614744565b9150508091505092915050565b5f6020820190508181035f830152614a4481846149cb565b905092915050565b5f81905092915050565b50565b5f614a645f83614a4c565b9150614a6f82614a56565b5f82019050919050565b5f614a8382614a59565b9150819050919050565b5f819050919050565b5f614ab0614aab614aa684614a8d565b614497565b6141d7565b9050919050565b614ac081614a96565b82525050565b5f608082019050614ad95f83018761432c565b614ae6602083018661425a565b614af36040830185614ab7565b614b00606083018461432c565b95945050505050565b5f60208284031215614b1e57614b1d614179565b5b5f614b2b84828501614630565b91505092915050565b5f608082019050614b475f83018761432c565b614b54602083018661425a565b614b61604083018561425a565b614b6e606083018461432c565b95945050505050565b5f606082019050614b8a5f83018661425a565b614b97602083018561425a565b614ba4604083018461425a565b949350505050565b5f604082019050614bbf5f83018561432c565b614bcc602083018461425a565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f614c0a826141d7565b9150614c15836141d7565b9250828203905081811115614c2d57614c2c614bd3565b5b92915050565b5f604082019050614c465f83018561432c565b614c536020830184614ab7565b9392505050565b614c63816145e1565b8114614c6d575f5ffd5b50565b5f81519050614c7e81614c5a565b92915050565b5f60208284031215614c9957614c98614179565b5b5f614ca684828501614c70565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f60ff82169050919050565b5f8160f81b9050919050565b5f614d2b82614d15565b9050919050565b614d43614d3e82614d09565b614d21565b82525050565b5f614d548284614d32565b60018201915081905092915050565b5f82825260208201905092915050565b5f614d7d8261470c565b614d878185614d63565b9350614d97818560208601614726565b614da081614734565b840191505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f614ddf8383614744565b905092915050565b5f602082019050919050565b5f614dfd82614dab565b614e078185614db5565b935083602082028501614e1985614dc5565b805f5b85811015614e545784840389528151614e358582614dd4565b9450614e4083614de7565b925060208a01995050600181019050614e1c565b50829750879550505050505092915050565b5f6060820190508181035f830152614e7e8186614d73565b90508181036020830152614e928185614df3565b9050614ea1604083018461425a565b949350505050565b5f614eb48285614d32565b600182019150614ec48284614d32565b6001820191508190509392505050565b5f614eee614ee9614ee484614a8d565b614497565b614d09565b9050919050565b614efe81614ed4565b82525050565b5f606082019050614f175f83018661432c565b614f24602083018561432c565b614f316040830184614ef5565b949350505050565b5f82825260208201905092915050565b7f45544820726566756e64206661696c65640000000000000000000000000000005f82015250565b5f614f7d601183614f39565b9150614f8882614f49565b602082019050919050565b5f6020820190508181035f830152614faa81614f71565b9050919050565b5f614fbc8286614d32565b600182019150614fcc8285614d32565b600182019150614fdc8284614d32565b600182019150819050949350505050565b5f82825260208201905092915050565b5f615007826146a5565b6150118185614fed565b935083602082028501615023856146bf565b805f5b8581101561505e578484038952815161503f85826147ef565b945061504a83614802565b925060208a01995050600181019050615026565b50829750879550505050505092915050565b61507981614881565b82525050565b5f6080820190506150925f83018761432c565b81810360208301526150a48186614ffd565b90506150b36040830185615070565b6150c06060830184615070565b95945050505050565b5f6040820190506150dc5f83018561432c565b6150e96020830184615070565b9392505050565b5f6060820190506151035f83018661432c565b615110602083018561432c565b61511d604083018461425a565b949350505050565b5f6040820190508181035f83015261513d8185614d73565b905081810360208301526151518184614df3565b90509392505050565b5f61012083015f8301516151705f860182614956565b50602083015161518360a08601826149bc565b50604083015161519660c086018261489c565b5060608301516151a960e086018261489c565b5060808301518482036101008601526151c28282614744565b9150508091505092915050565b5f6020820190508181035f8301526151e7818461515a565b905092915050565b5f61012083015f8301516152055f860182614956565b50602083015161521860a08601826149bc565b50604083015161522b60c086018261489c565b50606083015161523e60e086018261489c565b5060808301518482036101008601526152578282614744565b9150508091505092915050565b5f6020820190508181035f83015261527c81846151ef565b90509291505056fea2646970667358221220fa8b9f787388cf7f118f22b61c3002559e3255f95503989afd8c4b9c58ca58f964736f6c634300081c0033000000000000000000000000f8a2c39111fceb9c950aaf28a9e34ebad99b85c1", + "nonce": "0x1cb", + "chainId": "0x2105" + }, + "additionalContracts": [], + "isFixedGasLimit": false + } + ], + "receipts": [ + { + "status": "0x1", + "cumulativeGasUsed": "0x16b5b5d", + "logs": [ + { + "address": "0xf8a2c39111fceb9c950aaf28a9e34ebad99b85c1", + "topics": [ + "0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925", + "0x00000000000000000000000004f557f8d2806b34fc832a534c08df514d4dfeef", + "0x000000000000000000000000c5a076cad94176c2996b32d8466be1ce757faa27" + ], + "data": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", + "blockHash": "0x0000000000000000000000000000000000000000000000000000000000000000", + "blockNumber": "0x29b54c9", + "blockTimestamp": "0x69c10675", + "transactionHash": "0xf55cf68e6bbd698bb3203af1bf4e251a350514855681937c4b623d4362d8cf48", + "transactionIndex": "0x59", + "logIndex": "0x226", + "removed": false + }, + { + "address": "0xf8a2c39111fceb9c950aaf28a9e34ebad99b85c1", + "topics": [ + "0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925", + "0x00000000000000000000000004f557f8d2806b34fc832a534c08df514d4dfeef", + "0x000000000000000000000000492c412369db76c9cdd9939e6c521579301473a3" + ], + "data": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", + "blockHash": "0x0000000000000000000000000000000000000000000000000000000000000000", + "blockNumber": "0x29b54c9", + "blockTimestamp": "0x69c10675", + "transactionHash": "0xf55cf68e6bbd698bb3203af1bf4e251a350514855681937c4b623d4362d8cf48", + "transactionIndex": "0x59", + "logIndex": "0x227", + "removed": false + }, + { + "address": "0x37f0c2915cecc7e977183b8543fc0864d03e064c", + "topics": [ + "0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925", + "0x00000000000000000000000004f557f8d2806b34fc832a534c08df514d4dfeef", + "0x000000000000000000000000c5a076cad94176c2996b32d8466be1ce757faa27" + ], + "data": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", + "blockHash": "0x0000000000000000000000000000000000000000000000000000000000000000", + "blockNumber": "0x29b54c9", + "blockTimestamp": "0x69c10675", + "transactionHash": "0xf55cf68e6bbd698bb3203af1bf4e251a350514855681937c4b623d4362d8cf48", + "transactionIndex": "0x59", + "logIndex": "0x228", + "removed": false + }, + { + "address": "0x37f0c2915cecc7e977183b8543fc0864d03e064c", + "topics": [ + "0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925", + "0x00000000000000000000000004f557f8d2806b34fc832a534c08df514d4dfeef", + "0x000000000000000000000000492c412369db76c9cdd9939e6c521579301473a3" + ], + "data": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", + "blockHash": "0x0000000000000000000000000000000000000000000000000000000000000000", + "blockNumber": "0x29b54c9", + "blockTimestamp": "0x69c10675", + "transactionHash": "0xf55cf68e6bbd698bb3203af1bf4e251a350514855681937c4b623d4362d8cf48", + "transactionIndex": "0x59", + "logIndex": "0x229", + "removed": false + }, + { + "address": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "topics": [ + "0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925", + "0x00000000000000000000000004f557f8d2806b34fc832a534c08df514d4dfeef", + "0x000000000000000000000000000000000022d473030f116ddee9f6b43ac78ba3" + ], + "data": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", + "blockHash": "0x0000000000000000000000000000000000000000000000000000000000000000", + "blockNumber": "0x29b54c9", + "blockTimestamp": "0x69c10675", + "transactionHash": "0xf55cf68e6bbd698bb3203af1bf4e251a350514855681937c4b623d4362d8cf48", + "transactionIndex": "0x59", + "logIndex": "0x22a", + "removed": false + }, + { + "address": "0x000000000022d473030f116ddee9f6b43ac78ba3", + "topics": [ + "0xda9fa7c1b00402c17d0161b249b1ab8bbec047c5a52207b9c112deffd817036b", + "0x00000000000000000000000004f557f8d2806b34fc832a534c08df514d4dfeef", + "0x000000000000000000000000833589fcd6edb6e08f4c7c32d4f71b54bda02913", + "0x0000000000000000000000006ff5693b99212da76ad316178a184ab56d299b43" + ], + "data": "0x000000000000000000000000ffffffffffffffffffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000ffffffffffff", + "blockHash": "0x0000000000000000000000000000000000000000000000000000000000000000", + "blockNumber": "0x29b54c9", + "blockTimestamp": "0x69c10675", + "transactionHash": "0xf55cf68e6bbd698bb3203af1bf4e251a350514855681937c4b623d4362d8cf48", + "transactionIndex": "0x59", + "logIndex": "0x22b", + "removed": false + } + ], + "logsBloom": "0x00010000000000020000000000000000000000000000000000000000000000000000000000000000000000000000104000000000800000000000100000280000000000000000040000005000080000000000000000080800000000000000000000801000000000000080000000000000010000000000000000000000000040000020000000000000400200000000000000000000000000000000000000000000020000000000000000000000800000081000000000100000000000080000000000000000000000000000000000000000200000000000000040000000040000000010000000000000000000000000040000000000000000000200000001000400", + "type": "0x2", + "transactionHash": "0xf55cf68e6bbd698bb3203af1bf4e251a350514855681937c4b623d4362d8cf48", + "transactionIndex": "0x59", + "blockHash": "0x0000000000000000000000000000000000000000000000000000000000000000", + "blockNumber": "0x29b54c9", + "gasUsed": "0x4a6990", + "effectiveGasPrice": "0x4c4b41", + "blobGasUsed": "0xfc725", + "from": "0x017596303ee2f3c1250aa67d2d33dbae1d1c4dbf", + "to": null, + "contractAddress": "0x04f557f8d2806b34fc832a534c08df514d4dfeef", + "daFootprintGasScalar": "0x8b", + "l1BaseFeeScalar": "0x8dd", + "l1BlobBaseFee": "0x77ecc0", + "l1BlobBaseFeeScalar": "0x101c12", + "l1Fee": "0x4fb32045", + "l1GasPrice": "0x854868d", + "l1GasUsed": "0x1d0f1" + } + ], + "libraries": [], + "pending": [], + "returns": {}, + "timestamp": 1774257796304, + "chain": 8453, + "commit": "65a2f11" +} \ No newline at end of file diff --git a/broadcast/DeployZapPlotLinkV2.s.sol/8453/run-latest.json b/broadcast/DeployZapPlotLinkV2.s.sol/8453/run-latest.json index a72ff4c..143c295 100644 --- a/broadcast/DeployZapPlotLinkV2.s.sol/8453/run-latest.json +++ b/broadcast/DeployZapPlotLinkV2.s.sol/8453/run-latest.json @@ -1,20 +1,20 @@ { "transactions": [ { - "hash": "0x8b5c3ade52dbceb3473a4a532c09a442f0dc63c10b95960f060fe8f4e09a1129", + "hash": "0xf55cf68e6bbd698bb3203af1bf4e251a350514855681937c4b623d4362d8cf48", "transactionType": "CREATE", "contractName": "ZapPlotLinkV2", - "contractAddress": "0x7bc192848003ab1ba286c66afd0dd8a1729c6b02", + "contractAddress": "0x04f557f8d2806b34fc832a534c08df514d4dfeef", "function": null, "arguments": [ "0xF8A2C39111FCEB9C950aAf28A9E34EBaD99b85C1" ], "transaction": { "from": "0x017596303ee2f3c1250aa67d2d33dbae1d1c4dbf", - "gas": "0x60bb74", + "gas": "0x60bc6e", "value": "0x0", - "input": "0x6080604052610bb85f5f6101000a81548162ffffff021916908362ffffff160217905550603c5f60036101000a81548162ffffff021916908360020b62ffffff1602179055506101f45f60066101000a81548162ffffff021916908362ffffff160217905550600a5f60096101000a81548162ffffff021916908360020b62ffffff160217905550348015610092575f5ffd5b50604051615a70380380615a7083398181016040528101906100b4919061065f565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610119576040517f644865b000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b335f600c6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508060015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1663095ea7b373c5a076cad94176c2996b32d8466be1ce757faa277fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016102089291906106b1565b6020604051808303815f875af1158015610224573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610248919061070d565b508073ffffffffffffffffffffffffffffffffffffffff1663095ea7b373492c412369db76c9cdd9939e6c521579301473a37fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016102b89291906106b1565b6020604051808303815f875af11580156102d4573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102f8919061070d565b507337f0c2915cecc7e977183b8543fc0864d03e064c73ffffffffffffffffffffffffffffffffffffffff1663095ea7b373c5a076cad94176c2996b32d8466be1ce757faa277fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b815260040161037c9291906106b1565b6020604051808303815f875af1158015610398573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103bc919061070d565b507337f0c2915cecc7e977183b8543fc0864d03e064c73ffffffffffffffffffffffffffffffffffffffff1663095ea7b373492c412369db76c9cdd9939e6c521579301473a37fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016104409291906106b1565b6020604051808303815f875af115801561045c573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610480919061070d565b506104a473833589fcd6edb6e08f4c7c32d4f71b54bda029136104aa60201b60201c565b506107aa565b8073ffffffffffffffffffffffffffffffffffffffff1663095ea7b36e22d473030f116ddee9f6b43ac78ba37fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016105149291906106b1565b6020604051808303815f875af1158015610530573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610554919061070d565b506e22d473030f116ddee9f6b43ac78ba373ffffffffffffffffffffffffffffffffffffffff166387517c4582736ff5693b99212da76ad316178a184ab56d299b4373ffffffffffffffffffffffffffffffffffffffff65ffffffffffff6040518563ffffffff1660e01b81526004016105d19493929190610767565b5f604051808303815f87803b1580156105e8575f5ffd5b505af11580156105fa573d5f5f3e3d5ffd5b5050505050565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61062e82610605565b9050919050565b61063e81610624565b8114610648575f5ffd5b50565b5f8151905061065981610635565b92915050565b5f6020828403121561067457610673610601565b5b5f6106818482850161064b565b91505092915050565b61069381610624565b82525050565b5f819050919050565b6106ab81610699565b82525050565b5f6040820190506106c45f83018561068a565b6106d160208301846106a2565b9392505050565b5f8115159050919050565b6106ec816106d8565b81146106f6575f5ffd5b50565b5f81519050610707816106e3565b92915050565b5f6020828403121561072257610721610601565b5b5f61072f848285016106f9565b91505092915050565b61074181610605565b82525050565b5f65ffffffffffff82169050919050565b61076181610747565b82525050565b5f60808201905061077a5f83018761068a565b610787602083018661068a565b6107946040830185610738565b6107a16060830184610758565b95945050505050565b6152b9806107b75f395ff3fe60806040526004361061014e575f3560e01c8063a734f06e116100b5578063cdad4fae1161006e578063cdad4fae14610464578063cea9d26f1461048e578063cefa8922146104b6578063d87e4bd1146104e0578063e8dd7fc31461051d578063f2fde38b1461054757610155565b8063a734f06e14610366578063b3f1c93d14610390578063b7d1abbc146103c0578063b9703ded146103e8578063c1c1d21814610412578063cb7588241461043c57610155565b80636afdd850116101075780636afdd850146102645780637164cf9b1461028e578063814ac84f146102b857806389a30271146102e85780638da5cb5b146103125780638dae88c21461033c57610155565b806301c2553a1461015957806304824e7014610196578063089fe6aa146101be578063161a226e146101e857806350ecabab14610212578063543b67101461023a57610155565b3661015557005b5f5ffd5b348015610164575f5ffd5b5061017f600480360381019061017a9190614209565b61056f565b60405161018d929190614268565b60405180910390f35b3480156101a1575f5ffd5b506101bc60048036038101906101b791906142ca565b6108ec565b005b3480156101c9575f5ffd5b506101d26109e7565b6040516101df9190614312565b60405180910390f35b3480156101f3575f5ffd5b506101fc6109fa565b604051610209919061433a565b60405180910390f35b34801561021d575f5ffd5b50610238600480360381019061023391906143b3565b610a1f565b005b348015610245575f5ffd5b5061024e610ae8565b60405161025b9190614400565b60405180910390f35b34801561026f575f5ffd5b50610278610afa565b604051610285919061433a565b60405180910390f35b348015610299575f5ffd5b506102a2610b0d565b6040516102af9190614400565b60405180910390f35b6102d260048036038101906102cd9190614419565b610b1f565b6040516102df919061447d565b60405180910390f35b3480156102f3575f5ffd5b506102fc610f2a565b604051610309919061433a565b60405180910390f35b34801561031d575f5ffd5b50610326610f42565b604051610333919061433a565b60405180910390f35b348015610347575f5ffd5b50610350610f67565b60405161035d91906144f1565b60405180910390f35b348015610371575f5ffd5b5061037a610f7f565b604051610387919061433a565b60405180910390f35b6103aa60048036038101906103a59190614419565b610f83565b6040516103b7919061447d565b60405180910390f35b3480156103cb575f5ffd5b506103e660048036038101906103e191906143b3565b61155f565b005b3480156103f3575f5ffd5b506103fc611627565b604051610409919061452a565b60405180910390f35b34801561041d575f5ffd5b5061042661163f565b6040516104339190614563565b60405180910390f35b348015610447575f5ffd5b50610462600480360381019061045d919061457c565b611657565b005b34801561046f575f5ffd5b50610478611a85565b6040516104859190614312565b60405180910390f35b348015610499575f5ffd5b506104b460048036038101906104af9190614209565b611a99565b005b3480156104c1575f5ffd5b506104ca611b4f565b6040516104d7919061433a565b60405180910390f35b3480156104eb575f5ffd5b5061050660048036038101906105019190614209565b611b67565b604051610514929190614268565b60405180910390f35b348015610528575f5ffd5b50610531611ee0565b60405161053e91906145c7565b60405180910390f35b348015610552575f5ffd5b5061056d6004803603810190610568919061457c565b611ef8565b005b5f5f60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16036105cd57829050610850565b7337f0c2915cecc7e977183b8543fc0864d03e064c73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16036106ce5773492c412369db76c9cdd9939e6c521579301473a373ffffffffffffffffffffffffffffffffffffffff1663fb55dbe160015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16855f6040518463ffffffff1660e01b8152600401610686939291906145fa565b6040805180830381865afa1580156106a0573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106c49190614657565b508091505061084f565b73833589fcd6edb6e08f4c7c32d4f71b54bda0291373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16036107b357730d5e0f971ed27fbff6c2837bf31316121532048d73ffffffffffffffffffffffffffffffffffffffff1663ca253dc961074e856120a6565b6040518263ffffffff1660e01b815260040161076a91906148f7565b60408051808303815f875af1158015610785573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107a99190614917565b508091505061084e565b730d5e0f971ed27fbff6c2837bf31316121532048d73ffffffffffffffffffffffffffffffffffffffff1663aa9d21cb6107ed87866122d0565b6040518263ffffffff1660e01b81526004016108099190614a2b565b60408051808303815f875af1158015610824573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108489190614917565b50809150505b5b5b73492c412369db76c9cdd9939e6c521579301473a373ffffffffffffffffffffffffffffffffffffffff1663fb55dbe185835f6040518463ffffffff1660e01b81526004016108a1939291906145fa565b6040805180830381865afa1580156108bb573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108df9190614657565b5080925050935093915050565b5f600c9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610972576040517f086a6b8600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8173ffffffffffffffffffffffffffffffffffffffff164760405161099790614a78565b5f6040518083038185875af1925050503d805f81146109d1576040519150601f19603f3d011682016040523d82523d5f602084013e6109d6565b606091505b50509050806109e3575f5ffd5b5050565b5f5f9054906101000a900462ffffff1681565b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f600c9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610aa5576040517f086a6b8600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b815f60066101000a81548162ffffff021916908362ffffff160217905550805f60096101000a81548162ffffff021916908360020b62ffffff1602179055505050565b5f60099054906101000a900460020b81565b6e22d473030f116ddee9f6b43ac78ba381565b5f60039054906101000a900460020b81565b5f5f8303610b59576040517ff4fb71d900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1603610c3d575f3414610be7576040517f6256698900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610c3533308660015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166123c5909392919063ffffffff16565b839050610dd1565b7337f0c2915cecc7e977183b8543fc0864d03e064c73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1603610db9575f3414610cbd576040517f6256698900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610cfe3330867337f0c2915cecc7e977183b8543fc0864d03e064c73ffffffffffffffffffffffffffffffffffffffff166123c5909392919063ffffffff16565b73492c412369db76c9cdd9939e6c521579301473a373ffffffffffffffffffffffffffffffffffffffff16630144c5f360015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16865f306040518563ffffffff1660e01b8152600401610d729493929190614ac5565b6020604051808303815f875af1158015610d8e573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610db29190614b08565b9050610dd0565b610dc3868561241a565b610dcd8685612574565b90505b5b73492c412369db76c9cdd9939e6c521579301473a373ffffffffffffffffffffffffffffffffffffffff16630144c5f3868386336040518563ffffffff1660e01b8152600401610e249493929190614b33565b6020604051808303815f875af1925050508015610e5f57506040513d601f19601f82011682018060405250810190610e5c9190614b08565b60015b610e95576040517f12c0f6d800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80925050610ea161284b565b8473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f27830bca1834346b6287fed7ebd6791d80a5a6d4b190a1f8b01c09a07786a1a6858886604051610f1993929190614b76565b60405180910390a450949350505050565b73833589fcd6edb6e08f4c7c32d4f71b54bda0291381565b5f600c9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b730d5e0f971ed27fbff6c2837bf31316121532048d81565b5f81565b5f5f8303610fbd576040517ff4fb71d900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f73c5a076cad94176c2996b32d8466be1ce757faa2773ffffffffffffffffffffffffffffffffffffffff166376a9864b86866040518363ffffffff1660e01b815260040161100d929190614bab565b6040805180830381865afa158015611027573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061104b9190614917565b50905060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff160361116b575f34146110db576040517f6256698900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b82811115611115576040517f12c0f6d800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61116333308360015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166123c5909392919063ffffffff16565b809150611404565b7337f0c2915cecc7e977183b8543fc0864d03e064c73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16036113d6575f34146111eb576040517f6256698900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f73c5a076cad94176c2996b32d8466be1ce757faa2773ffffffffffffffffffffffffffffffffffffffff166376a9864b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846040518363ffffffff1660e01b815260040161125c929190614bab565b6040805180830381865afa158015611276573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061129a9190614917565b509050838111156112d7576040517f12c0f6d800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6113183330837337f0c2915cecc7e977183b8543fc0864d03e064c73ffffffffffffffffffffffffffffffffffffffff166123c5909392919063ffffffff16565b73c5a076cad94176c2996b32d8466be1ce757faa2773ffffffffffffffffffffffffffffffffffffffff1663f74bfe8e60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff168484306040518563ffffffff1660e01b815260040161138c9493929190614b33565b6020604051808303815f875af11580156113a8573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113cc9190614b08565b5080925050611403565b6113e0868461241a565b6113eb86828561293f565b91506114028683856113fd9190614bff565b612c9b565b5b5b5f73c5a076cad94176c2996b32d8466be1ce757faa2773ffffffffffffffffffffffffffffffffffffffff1663f74bfe8e878785336040518563ffffffff1660e01b81526004016114589493929190614b33565b6020604051808303815f875af192505050801561149357506040513d601f19601f820116820180604052508101906114909190614b08565b60015b6114c9576040517f12c0f6d800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b809150506114d561284b565b8573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f3b90f0b1565b6e9dac462a873af5d46d5d6177d0096ddc2ddcf38de8ddb5d8fa88878660405161154d93929190614b76565b60405180910390a45050949350505050565b5f600c9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146115e5576040517f086a6b8600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b815f5f6101000a81548162ffffff021916908362ffffff160217905550805f60036101000a81548162ffffff021916908360020b62ffffff1602179055505050565b73492c412369db76c9cdd9939e6c521579301473a381565b73c5a076cad94176c2996b32d8466be1ce757faa2781565b5f600c9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146116dd576040517f086a6b8600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611742576040517f644865b000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff1663095ea7b373c5a076cad94176c2996b32d8466be1ce757faa275f6040518363ffffffff1660e01b81526004016117b6929190614c32565b6020604051808303815f875af11580156117d2573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117f69190614c83565b508073ffffffffffffffffffffffffffffffffffffffff1663095ea7b373492c412369db76c9cdd9939e6c521579301473a35f6040518363ffffffff1660e01b8152600401611846929190614c32565b6020604051808303815f875af1158015611862573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118869190614c83565b508160015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff1663095ea7b373c5a076cad94176c2996b32d8466be1ce757faa277fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401611936929190614bab565b6020604051808303815f875af1158015611952573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119769190614c83565b508173ffffffffffffffffffffffffffffffffffffffff1663095ea7b373492c412369db76c9cdd9939e6c521579301473a37fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016119e6929190614bab565b6020604051808303815f875af1158015611a02573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a269190614c83565b508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f5a1a9bb5f826487cf43e61548d79ffa19cc00e1a554bd9962825f51fa9c767d160405160405180910390a35050565b5f60069054906101000a900462ffffff1681565b5f600c9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611b1f576040517f086a6b8600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611b4a82828573ffffffffffffffffffffffffffffffffffffffff16612db59092919063ffffffff16565b505050565b7337f0c2915cecc7e977183b8543fc0864d03e064c81565b5f5f73c5a076cad94176c2996b32d8466be1ce757faa2773ffffffffffffffffffffffffffffffffffffffff166376a9864b85856040518363ffffffff1660e01b8152600401611bb8929190614bab565b6040805180830381865afa158015611bd2573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611bf69190614917565b508091505060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603611c5757809150611ed8565b7337f0c2915cecc7e977183b8543fc0864d03e064c73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603611d565773c5a076cad94176c2996b32d8466be1ce757faa2773ffffffffffffffffffffffffffffffffffffffff166376a9864b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff1660e01b8152600401611d0e929190614bab565b6040805180830381865afa158015611d28573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611d4c9190614917565b5080925050611ed7565b73833589fcd6edb6e08f4c7c32d4f71b54bda0291373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603611e3b57730d5e0f971ed27fbff6c2837bf31316121532048d73ffffffffffffffffffffffffffffffffffffffff1663147d2af9611dd683612e08565b6040518263ffffffff1660e01b8152600401611df291906148f7565b60408051808303815f875af1158015611e0d573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e319190614917565b5080925050611ed6565b730d5e0f971ed27fbff6c2837bf31316121532048d73ffffffffffffffffffffffffffffffffffffffff166358733073611e7587846122d0565b6040518263ffffffff1660e01b8152600401611e919190614a2b565b60408051808303815f875af1158015611eac573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611ed09190614917565b50809250505b5b5b935093915050565b736ff5693b99212da76ad316178a184ab56d299b4381565b5f600c9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611f7e576040517f086a6b8600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611fe3576040517f644865b000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5f600c9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f600c6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6120ae61401e565b5f600267ffffffffffffffff8111156120ca576120c9614cae565b5b60405190808252806020026020018201604052801561210357816020015b6120f0614065565b8152602001906001900390816120e85790505b5090506040518060a001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f60069054906101000a900462ffffff1662ffffff1681526020015f60099054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff16815260200160405180602001604052805f815250815250815f815181106121a05761219f614cdb565b5b60200260200101819052506040518060a0016040528060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020015f5f9054906101000a900462ffffff1662ffffff1681526020015f60039054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff16815260200160405180602001604052805f8152508152508160018151811061226657612265614cdb565b5b6020026020010181905250604051806060016040528073833589fcd6edb6e08f4c7c32d4f71b54bda0291373ffffffffffffffffffffffffffffffffffffffff168152602001828152602001846fffffffffffffffffffffffffffffffff16815250915050919050565b6122d86140c4565b5f5f5f6122e486613032565b92509250925060405180608001604052806040518060a001604052808673ffffffffffffffffffffffffffffffffffffffff1681526020018573ffffffffffffffffffffffffffffffffffffffff1681526020015f5f9054906101000a900462ffffff1662ffffff1681526020015f60039054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff1681525081526020018215158152602001866fffffffffffffffffffffffffffffffff16815260200160405180602001604052805f815250815250935050505092915050565b6123d3848484846001613150565b61241457836040517f5274afe700000000000000000000000000000000000000000000000000000000815260040161240b919061433a565b60405180910390fd5b50505050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361248b57803414612486576040517f6256698900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b612570565b73833589fcd6edb6e08f4c7c32d4f71b54bda0291373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361253d575f341461250b576040517f6256698900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6125383330838573ffffffffffffffffffffffffffffffffffffffff166123c5909392919063ffffffff16565b61256f565b6040517f84e3aa1900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b5050565b5f5f60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016125d0919061433a565b602060405180830381865afa1580156125eb573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061260f9190614b08565b905073833589fcd6edb6e08f4c7c32d4f71b54bda0291373ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff160361266657612661836131c1565b61279e565b5f5f5f61267287613032565b9250925092505f601060405160200161268b9190614d48565b60405160208183030381529060405290505f600167ffffffffffffffff8111156126b8576126b7614cae565b5b6040519080825280602002602001820160405280156126eb57816020015b60608152602001906001900390816126d65790505b5090506126fa8585858b61364c565b815f8151811061270d5761270c614cdb565b5b6020026020010181905250736ff5693b99212da76ad316178a184ab56d299b4373ffffffffffffffffffffffffffffffffffffffff16633593564c898484426040518563ffffffff1660e01b815260040161276a93929190614e65565b5f604051808303818588803b158015612781575f5ffd5b505af1158015612793573d5f5f3e3d5ffd5b505050505050505050505b8060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016127f9919061433a565b602060405180830381865afa158015612814573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906128389190614b08565b6128429190614bff565b91505092915050565b5f60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016128a6919061433a565b602060405180830381865afa1580156128c1573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906128e59190614b08565b90505f81111561293c5761293b338260015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16612db59092919063ffffffff16565b5b50565b5f5f5f73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16146129f1578473ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016129ad919061433a565b602060405180830381865afa1580156129c8573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906129ec9190614b08565b6129f3565b475b905073833589fcd6edb6e08f4c7c32d4f71b54bda0291373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603612a4b57612a4684846138bd565b612bcf565b5f5f5f612a5788613032565b9250925092505f612a6b8484848b8b613d4a565b90505f60106004604051602001612a83929190614ea8565b60405160208183030381529060405290505f600267ffffffffffffffff811115612ab057612aaf614cae565b5b604051908082528060200260200182016040528015612ae357816020015b6060815260200190600190039081612ace5790505b50905082815f81518110612afa57612af9614cdb565b5b60200260200101819052505f305f604051602001612b1a93929190614f03565b60405160208183030381529060405281600181518110612b3d57612b3c614cdb565b5b6020026020010181905250736ff5693b99212da76ad316178a184ab56d299b4373ffffffffffffffffffffffffffffffffffffffff16633593564c8a8484426040518563ffffffff1660e01b8152600401612b9a93929190614e65565b5f604051808303818588803b158015612bb1575f5ffd5b505af1158015612bc3573d5f5f3e3d5ffd5b50505050505050505050505b5f5f73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614612c80578573ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401612c3c919061433a565b602060405180830381865afa158015612c57573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612c7b9190614b08565b612c82565b475b90508082612c909190614bff565b925050509392505050565b5f810315612db1575f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612d84575f3373ffffffffffffffffffffffffffffffffffffffff1682604051612cfb90614a78565b5f6040518083038185875af1925050503d805f8114612d35576040519150601f19603f3d011682016040523d82523d5f602084013e612d3a565b606091505b5050905080612d7e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d7590614f92565b60405180910390fd5b50612db0565b612daf33828473ffffffffffffffffffffffffffffffffffffffff16612db59092919063ffffffff16565b5b5b5050565b612dc28383836001613fbc565b612e0357826040517f5274afe7000000000000000000000000000000000000000000000000000000008152600401612dfa919061433a565b60405180910390fd5b505050565b612e1061401e565b5f600267ffffffffffffffff811115612e2c57612e2b614cae565b5b604051908082528060200260200182016040528015612e6557816020015b612e52614065565b815260200190600190039081612e4a5790505b5090506040518060a0016040528073833589fcd6edb6e08f4c7c32d4f71b54bda0291373ffffffffffffffffffffffffffffffffffffffff1681526020015f60069054906101000a900462ffffff1662ffffff1681526020015f60099054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff16815260200160405180602001604052805f815250815250815f81518110612f1657612f15614cdb565b5b60200260200101819052506040518060a001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f5f9054906101000a900462ffffff1662ffffff1681526020015f60039054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff16815260200160405180602001604052805f81525081525081600181518110612fbb57612fba614cdb565b5b6020026020010181905250604051806060016040528060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828152602001846fffffffffffffffffffffffffffffffff16815250915050919050565b5f5f5f5f73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603613098575f925060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16915060019050613149565b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16101561311d5783925060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16915060019050613148565b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1692508391505f90505b5b9193909250565b5f5f6323b872dd60e01b9050604051815f525f1960601c87166004525f1960601c86166024528460445260205f60645f5f8c5af1925060015f511483166131ae5783831516156131a2573d5f823e3d81fd5b5f883b113d1516831692505b806040525f606052505095945050505050565b5f5f600c600e6040516020016131d993929190614fb0565b60405160208183030381529060405290505f600367ffffffffffffffff81111561320657613205614cae565b5b60405190808252806020026020018201604052801561323957816020015b60608152602001906001900390816132245790505b5090505f600267ffffffffffffffff81111561325857613257614cae565b5b60405190808252806020026020018201604052801561329157816020015b61327e614065565b8152602001906001900390816132765790505b5090506040518060a001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f60069054906101000a900462ffffff1662ffffff1681526020015f60099054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff16815260200160405180602001604052805f815250815250815f8151811061332e5761332d614cdb565b5b60200260200101819052506040518060a0016040528060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020015f5f9054906101000a900462ffffff1662ffffff1681526020015f60039054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff16815260200160405180602001604052805f815250815250816001815181106133f4576133f3614cdb565b5b602002602001018190525073833589fcd6edb6e08f4c7c32d4f71b54bda0291381855f60405160200161342a949392919061507e565b604051602081830303815290604052825f8151811061344c5761344b614cdb565b5b602002602001018190525073833589fcd6edb6e08f4c7c32d4f71b54bda029138460405160200161347e9291906150c8565b604051602081830303815290604052826001815181106134a1576134a0614cdb565b5b602002602001018190525060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16305f6040516020016134e2939291906150ef565b6040516020818303038152906040528260028151811061350557613504614cdb565b5b60200260200101819052505f60106040516020016135239190614d48565b60405160208183030381529060405290505f600167ffffffffffffffff8111156135505761354f614cae565b5b60405190808252806020026020018201604052801561358357816020015b606081526020019060019003908161356e5790505b5090508484604051602001613599929190615124565b604051602081830303815290604052815f815181106135bb576135ba614cdb565b5b6020026020010181905250736ff5693b99212da76ad316178a184ab56d299b4373ffffffffffffffffffffffffffffffffffffffff16633593564c8383426040518463ffffffff1660e01b815260040161361793929190614e65565b5f604051808303815f87803b15801561362e575f5ffd5b505af1158015613640573d5f5f3e3d5ffd5b50505050505050505050565b60605f6006600c600e60405160200161366793929190614fb0565b60405160208183030381529060405290505f600367ffffffffffffffff81111561369457613693614cae565b5b6040519080825280602002602001820160405280156136c757816020015b60608152602001906001900390816136b25790505b5090505f6040518060a001604052808973ffffffffffffffffffffffffffffffffffffffff1681526020018873ffffffffffffffffffffffffffffffffffffffff1681526020015f5f9054906101000a900462ffffff1662ffffff1681526020015f60039054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff1681525090505f5f8761376957888a61376c565b89895b915091506040518060a001604052808481526020018915158152602001886fffffffffffffffffffffffffffffffff1681526020015f6fffffffffffffffffffffffffffffffff16815260200160405180602001604052805f8152508152506040516020016137db91906151ce565b604051602081830303815290604052845f815181106137fd576137fc614cdb565b5b6020026020010181905250818760405160200161381b9291906150c8565b6040516020818303038152906040528460018151811061383e5761383d614cdb565b5b602002602001018190525080305f60405160200161385e939291906150ef565b6040516020818303038152906040528460028151811061388157613880614cdb565b5b6020026020010181905250848460405160200161389f929190615124565b60405160208183030381529060405295505050505050949350505050565b5f6001600c600e6040516020016138d693929190614fb0565b60405160208183030381529060405290505f600367ffffffffffffffff81111561390357613902614cae565b5b60405190808252806020026020018201604052801561393657816020015b60608152602001906001900390816139215790505b5090505f600267ffffffffffffffff81111561395557613954614cae565b5b60405190808252806020026020018201604052801561398e57816020015b61397b614065565b8152602001906001900390816139735790505b5090506040518060a0016040528073833589fcd6edb6e08f4c7c32d4f71b54bda0291373ffffffffffffffffffffffffffffffffffffffff1681526020015f60069054906101000a900462ffffff1662ffffff1681526020015f60099054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff16815260200160405180602001604052805f815250815250815f81518110613a3f57613a3e614cdb565b5b60200260200101819052506040518060a001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f5f9054906101000a900462ffffff1662ffffff1681526020015f60039054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff16815260200160405180602001604052805f81525081525081600181518110613ae457613ae3614cdb565b5b602002602001018190525060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16818686604051602001613b27949392919061507e565b604051602081830303815290604052825f81518110613b4957613b48614cdb565b5b602002602001018190525073833589fcd6edb6e08f4c7c32d4f71b54bda0291384604051602001613b7b9291906150c8565b60405160208183030381529060405282600181518110613b9e57613b9d614cdb565b5b602002602001018190525060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16305f604051602001613bdf939291906150ef565b60405160208183030381529060405282600281518110613c0257613c01614cdb565b5b60200260200101819052505f6010604051602001613c209190614d48565b60405160208183030381529060405290505f600167ffffffffffffffff811115613c4d57613c4c614cae565b5b604051908082528060200260200182016040528015613c8057816020015b6060815260200190600190039081613c6b5790505b5090508484604051602001613c96929190615124565b604051602081830303815290604052815f81518110613cb857613cb7614cdb565b5b6020026020010181905250736ff5693b99212da76ad316178a184ab56d299b4373ffffffffffffffffffffffffffffffffffffffff16633593564c8383426040518463ffffffff1660e01b8152600401613d1493929190614e65565b5f604051808303815f87803b158015613d2b575f5ffd5b505af1158015613d3d573d5f5f3e3d5ffd5b5050505050505050505050565b60605f6008600c600e604051602001613d6593929190614fb0565b60405160208183030381529060405290505f600367ffffffffffffffff811115613d9257613d91614cae565b5b604051908082528060200260200182016040528015613dc557816020015b6060815260200190600190039081613db05790505b5090505f6040518060a001604052808a73ffffffffffffffffffffffffffffffffffffffff1681526020018973ffffffffffffffffffffffffffffffffffffffff1681526020015f5f9054906101000a900462ffffff1662ffffff1681526020015f60039054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff1681525090505f5f88613e6757898b613e6a565b8a8a5b915091506040518060a001604052808481526020018a15158152602001896fffffffffffffffffffffffffffffffff168152602001886fffffffffffffffffffffffffffffffff16815260200160405180602001604052805f815250815250604051602001613ed99190615263565b604051602081830303815290604052845f81518110613efb57613efa614cdb565b5b60200260200101819052508187604051602001613f199291906150c8565b60405160208183030381529060405284600181518110613f3c57613f3b614cdb565b5b602002602001018190525080305f604051602001613f5c939291906150ef565b60405160208183030381529060405284600281518110613f7f57613f7e614cdb565b5b60200260200101819052508484604051602001613f9d929190615124565b6040516020818303038152906040529550505050505095945050505050565b5f5f63a9059cbb60e01b9050604051815f525f1960601c86166004528460245260205f60445f5f8b5af1925060015f51148316614010578383151615614004573d5f823e3d81fd5b5f873b113d1516831692505b806040525050949350505050565b60405180606001604052805f73ffffffffffffffffffffffffffffffffffffffff168152602001606081526020015f6fffffffffffffffffffffffffffffffff1681525090565b6040518060a001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f62ffffff1681526020015f60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b60405180608001604052806140d7614104565b81526020015f151581526020015f6fffffffffffffffffffffffffffffffff168152602001606081525090565b6040518060a001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f62ffffff1681526020015f60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff1681525090565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6141a58261417c565b9050919050565b6141b58161419b565b81146141bf575f5ffd5b50565b5f813590506141d0816141ac565b92915050565b5f819050919050565b6141e8816141d6565b81146141f2575f5ffd5b50565b5f81359050614203816141df565b92915050565b5f5f5f606084860312156142205761421f614178565b5b5f61422d868287016141c2565b935050602061423e868287016141c2565b925050604061424f868287016141f5565b9150509250925092565b614262816141d6565b82525050565b5f60408201905061427b5f830185614259565b6142886020830184614259565b9392505050565b5f6142998261417c565b9050919050565b6142a98161428f565b81146142b3575f5ffd5b50565b5f813590506142c4816142a0565b92915050565b5f602082840312156142df576142de614178565b5b5f6142ec848285016142b6565b91505092915050565b5f62ffffff82169050919050565b61430c816142f5565b82525050565b5f6020820190506143255f830184614303565b92915050565b6143348161419b565b82525050565b5f60208201905061434d5f83018461432b565b92915050565b61435c816142f5565b8114614366575f5ffd5b50565b5f8135905061437781614353565b92915050565b5f8160020b9050919050565b6143928161437d565b811461439c575f5ffd5b50565b5f813590506143ad81614389565b92915050565b5f5f604083850312156143c9576143c8614178565b5b5f6143d685828601614369565b92505060206143e78582860161439f565b9150509250929050565b6143fa8161437d565b82525050565b5f6020820190506144135f8301846143f1565b92915050565b5f5f5f5f6080858703121561443157614430614178565b5b5f61443e878288016141c2565b945050602061444f878288016141c2565b9350506040614460878288016141f5565b9250506060614471878288016141f5565b91505092959194509250565b5f6020820190506144905f830184614259565b92915050565b5f819050919050565b5f6144b96144b46144af8461417c565b614496565b61417c565b9050919050565b5f6144ca8261449f565b9050919050565b5f6144db826144c0565b9050919050565b6144eb816144d1565b82525050565b5f6020820190506145045f8301846144e2565b92915050565b5f614514826144c0565b9050919050565b6145248161450a565b82525050565b5f60208201905061453d5f83018461451b565b92915050565b5f61454d826144c0565b9050919050565b61455d81614543565b82525050565b5f6020820190506145765f830184614554565b92915050565b5f6020828403121561459157614590614178565b5b5f61459e848285016141c2565b91505092915050565b5f6145b1826144c0565b9050919050565b6145c1816145a7565b82525050565b5f6020820190506145da5f8301846145b8565b92915050565b5f8115159050919050565b6145f4816145e0565b82525050565b5f60608201905061460d5f83018661432b565b61461a6020830185614259565b61462760408301846145eb565b949350505050565b5f8151905061463d816141df565b92915050565b5f81519050614651816141ac565b92915050565b5f5f6040838503121561466d5761466c614178565b5b5f61467a8582860161462f565b925050602061468b85828601614643565b9150509250929050565b61469e8161419b565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b6146d6816142f5565b82525050565b6146e58161437d565b82525050565b5f6146f5826144c0565b9050919050565b614705816146eb565b82525050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61474d8261470b565b6147578185614715565b9350614767818560208601614725565b61477081614733565b840191505092915050565b5f60a083015f8301516147905f860182614695565b5060208301516147a360208601826146cd565b5060408301516147b660408601826146dc565b5060608301516147c960608601826146fc565b50608083015184820360808601526147e18282614743565b9150508091505092915050565b5f6147f9838361477b565b905092915050565b5f602082019050919050565b5f614817826146a4565b61482181856146ae565b935083602082028501614833856146be565b805f5b8581101561486e578484038952815161484f85826147ee565b945061485a83614801565b925060208a01995050600181019050614836565b50829750879550505050505092915050565b5f6fffffffffffffffffffffffffffffffff82169050919050565b6148a481614880565b82525050565b5f606083015f8301516148bf5f860182614695565b50602083015184820360208601526148d7828261480d565b91505060408301516148ec604086018261489b565b508091505092915050565b5f6020820190508181035f83015261490f81846148aa565b905092915050565b5f5f6040838503121561492d5761492c614178565b5b5f61493a8582860161462f565b925050602061494b8582860161462f565b9150509250929050565b60a082015f8201516149695f850182614695565b50602082015161497c6020850182614695565b50604082015161498f60408501826146cd565b5060608201516149a260608501826146dc565b5060808201516149b560808501826146fc565b50505050565b6149c4816145e0565b82525050565b5f61010083015f8301516149e05f860182614955565b5060208301516149f360a08601826149bb565b506040830151614a0660c086018261489b565b50606083015184820360e0860152614a1e8282614743565b9150508091505092915050565b5f6020820190508181035f830152614a4381846149ca565b905092915050565b5f81905092915050565b50565b5f614a635f83614a4b565b9150614a6e82614a55565b5f82019050919050565b5f614a8282614a58565b9150819050919050565b5f819050919050565b5f614aaf614aaa614aa584614a8c565b614496565b6141d6565b9050919050565b614abf81614a95565b82525050565b5f608082019050614ad85f83018761432b565b614ae56020830186614259565b614af26040830185614ab6565b614aff606083018461432b565b95945050505050565b5f60208284031215614b1d57614b1c614178565b5b5f614b2a8482850161462f565b91505092915050565b5f608082019050614b465f83018761432b565b614b536020830186614259565b614b606040830185614259565b614b6d606083018461432b565b95945050505050565b5f606082019050614b895f830186614259565b614b966020830185614259565b614ba36040830184614259565b949350505050565b5f604082019050614bbe5f83018561432b565b614bcb6020830184614259565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f614c09826141d6565b9150614c14836141d6565b9250828203905081811115614c2c57614c2b614bd2565b5b92915050565b5f604082019050614c455f83018561432b565b614c526020830184614ab6565b9392505050565b614c62816145e0565b8114614c6c575f5ffd5b50565b5f81519050614c7d81614c59565b92915050565b5f60208284031215614c9857614c97614178565b5b5f614ca584828501614c6f565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f60ff82169050919050565b5f8160f81b9050919050565b5f614d2a82614d14565b9050919050565b614d42614d3d82614d08565b614d20565b82525050565b5f614d538284614d31565b60018201915081905092915050565b5f82825260208201905092915050565b5f614d7c8261470b565b614d868185614d62565b9350614d96818560208601614725565b614d9f81614733565b840191505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f614dde8383614743565b905092915050565b5f602082019050919050565b5f614dfc82614daa565b614e068185614db4565b935083602082028501614e1885614dc4565b805f5b85811015614e535784840389528151614e348582614dd3565b9450614e3f83614de6565b925060208a01995050600181019050614e1b565b50829750879550505050505092915050565b5f6060820190508181035f830152614e7d8186614d72565b90508181036020830152614e918185614df2565b9050614ea06040830184614259565b949350505050565b5f614eb38285614d31565b600182019150614ec38284614d31565b6001820191508190509392505050565b5f614eed614ee8614ee384614a8c565b614496565b614d08565b9050919050565b614efd81614ed3565b82525050565b5f606082019050614f165f83018661432b565b614f23602083018561432b565b614f306040830184614ef4565b949350505050565b5f82825260208201905092915050565b7f45544820726566756e64206661696c65640000000000000000000000000000005f82015250565b5f614f7c601183614f38565b9150614f8782614f48565b602082019050919050565b5f6020820190508181035f830152614fa981614f70565b9050919050565b5f614fbb8286614d31565b600182019150614fcb8285614d31565b600182019150614fdb8284614d31565b600182019150819050949350505050565b5f82825260208201905092915050565b5f615006826146a4565b6150108185614fec565b935083602082028501615022856146be565b805f5b8581101561505d578484038952815161503e85826147ee565b945061504983614801565b925060208a01995050600181019050615025565b50829750879550505050505092915050565b61507881614880565b82525050565b5f6080820190506150915f83018761432b565b81810360208301526150a38186614ffc565b90506150b2604083018561506f565b6150bf606083018461506f565b95945050505050565b5f6040820190506150db5f83018561432b565b6150e8602083018461506f565b9392505050565b5f6060820190506151025f83018661432b565b61510f602083018561432b565b61511c6040830184614259565b949350505050565b5f6040820190508181035f83015261513c8185614d72565b905081810360208301526151508184614df2565b90509392505050565b5f61012083015f83015161516f5f860182614955565b50602083015161518260a08601826149bb565b50604083015161519560c086018261489b565b5060608301516151a860e086018261489b565b5060808301518482036101008601526151c18282614743565b9150508091505092915050565b5f6020820190508181035f8301526151e68184615159565b905092915050565b5f61012083015f8301516152045f860182614955565b50602083015161521760a08601826149bb565b50604083015161522a60c086018261489b565b50606083015161523d60e086018261489b565b5060808301518482036101008601526152568282614743565b9150508091505092915050565b5f6020820190508181035f83015261527b81846151ee565b90509291505056fea2646970667358221220536036461df98c6d1ffdb49504479bfc19786bef8a782301b667977e7aec90e664736f6c634300081c0033000000000000000000000000f8a2c39111fceb9c950aaf28a9e34ebad99b85c1", - "nonce": "0x1b9", + "input": "0x6080604052610bb85f5f6101000a81548162ffffff021916908362ffffff160217905550603c5f60036101000a81548162ffffff021916908360020b62ffffff1602179055506101f45f60066101000a81548162ffffff021916908362ffffff160217905550600a5f60096101000a81548162ffffff021916908360020b62ffffff160217905550348015610092575f5ffd5b50604051615a71380380615a7183398181016040528101906100b4919061065f565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610119576040517f644865b000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b335f600c6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508060015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1663095ea7b373c5a076cad94176c2996b32d8466be1ce757faa277fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016102089291906106b1565b6020604051808303815f875af1158015610224573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610248919061070d565b508073ffffffffffffffffffffffffffffffffffffffff1663095ea7b373492c412369db76c9cdd9939e6c521579301473a37fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016102b89291906106b1565b6020604051808303815f875af11580156102d4573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102f8919061070d565b507337f0c2915cecc7e977183b8543fc0864d03e064c73ffffffffffffffffffffffffffffffffffffffff1663095ea7b373c5a076cad94176c2996b32d8466be1ce757faa277fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b815260040161037c9291906106b1565b6020604051808303815f875af1158015610398573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103bc919061070d565b507337f0c2915cecc7e977183b8543fc0864d03e064c73ffffffffffffffffffffffffffffffffffffffff1663095ea7b373492c412369db76c9cdd9939e6c521579301473a37fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016104409291906106b1565b6020604051808303815f875af115801561045c573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610480919061070d565b506104a473833589fcd6edb6e08f4c7c32d4f71b54bda029136104aa60201b60201c565b506107aa565b8073ffffffffffffffffffffffffffffffffffffffff1663095ea7b36e22d473030f116ddee9f6b43ac78ba37fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016105149291906106b1565b6020604051808303815f875af1158015610530573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610554919061070d565b506e22d473030f116ddee9f6b43ac78ba373ffffffffffffffffffffffffffffffffffffffff166387517c4582736ff5693b99212da76ad316178a184ab56d299b4373ffffffffffffffffffffffffffffffffffffffff65ffffffffffff6040518563ffffffff1660e01b81526004016105d19493929190610767565b5f604051808303815f87803b1580156105e8575f5ffd5b505af11580156105fa573d5f5f3e3d5ffd5b5050505050565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61062e82610605565b9050919050565b61063e81610624565b8114610648575f5ffd5b50565b5f8151905061065981610635565b92915050565b5f6020828403121561067457610673610601565b5b5f6106818482850161064b565b91505092915050565b61069381610624565b82525050565b5f819050919050565b6106ab81610699565b82525050565b5f6040820190506106c45f83018561068a565b6106d160208301846106a2565b9392505050565b5f8115159050919050565b6106ec816106d8565b81146106f6575f5ffd5b50565b5f81519050610707816106e3565b92915050565b5f6020828403121561072257610721610601565b5b5f61072f848285016106f9565b91505092915050565b61074181610605565b82525050565b5f65ffffffffffff82169050919050565b61076181610747565b82525050565b5f60808201905061077a5f83018761068a565b610787602083018661068a565b6107946040830185610738565b6107a16060830184610758565b95945050505050565b6152ba806107b75f395ff3fe60806040526004361061014e575f3560e01c8063a734f06e116100b5578063cdad4fae1161006e578063cdad4fae14610464578063cea9d26f1461048e578063cefa8922146104b6578063d87e4bd1146104e0578063e8dd7fc31461051d578063f2fde38b1461054757610155565b8063a734f06e14610366578063b3f1c93d14610390578063b7d1abbc146103c0578063b9703ded146103e8578063c1c1d21814610412578063cb7588241461043c57610155565b80636afdd850116101075780636afdd850146102645780637164cf9b1461028e578063814ac84f146102b857806389a30271146102e85780638da5cb5b146103125780638dae88c21461033c57610155565b806301c2553a1461015957806304824e7014610196578063089fe6aa146101be578063161a226e146101e857806350ecabab14610212578063543b67101461023a57610155565b3661015557005b5f5ffd5b348015610164575f5ffd5b5061017f600480360381019061017a919061420a565b61056f565b60405161018d929190614269565b60405180910390f35b3480156101a1575f5ffd5b506101bc60048036038101906101b791906142cb565b6108ec565b005b3480156101c9575f5ffd5b506101d26109e7565b6040516101df9190614313565b60405180910390f35b3480156101f3575f5ffd5b506101fc6109fa565b604051610209919061433b565b60405180910390f35b34801561021d575f5ffd5b50610238600480360381019061023391906143b4565b610a1f565b005b348015610245575f5ffd5b5061024e610ae8565b60405161025b9190614401565b60405180910390f35b34801561026f575f5ffd5b50610278610afa565b604051610285919061433b565b60405180910390f35b348015610299575f5ffd5b506102a2610b0d565b6040516102af9190614401565b60405180910390f35b6102d260048036038101906102cd919061441a565b610b1f565b6040516102df919061447e565b60405180910390f35b3480156102f3575f5ffd5b506102fc610f2a565b604051610309919061433b565b60405180910390f35b34801561031d575f5ffd5b50610326610f42565b604051610333919061433b565b60405180910390f35b348015610347575f5ffd5b50610350610f67565b60405161035d91906144f2565b60405180910390f35b348015610371575f5ffd5b5061037a610f7f565b604051610387919061433b565b60405180910390f35b6103aa60048036038101906103a5919061441a565b610f83565b6040516103b7919061447e565b60405180910390f35b3480156103cb575f5ffd5b506103e660048036038101906103e191906143b4565b61155f565b005b3480156103f3575f5ffd5b506103fc611627565b604051610409919061452b565b60405180910390f35b34801561041d575f5ffd5b5061042661163f565b6040516104339190614564565b60405180910390f35b348015610447575f5ffd5b50610462600480360381019061045d919061457d565b611657565b005b34801561046f575f5ffd5b50610478611a85565b6040516104859190614313565b60405180910390f35b348015610499575f5ffd5b506104b460048036038101906104af919061420a565b611a99565b005b3480156104c1575f5ffd5b506104ca611b4f565b6040516104d7919061433b565b60405180910390f35b3480156104eb575f5ffd5b506105066004803603810190610501919061420a565b611b67565b604051610514929190614269565b60405180910390f35b348015610528575f5ffd5b50610531611ee0565b60405161053e91906145c8565b60405180910390f35b348015610552575f5ffd5b5061056d6004803603810190610568919061457d565b611ef8565b005b5f5f60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16036105cd57829050610850565b7337f0c2915cecc7e977183b8543fc0864d03e064c73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16036106ce5773492c412369db76c9cdd9939e6c521579301473a373ffffffffffffffffffffffffffffffffffffffff1663fb55dbe160015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16855f6040518463ffffffff1660e01b8152600401610686939291906145fb565b6040805180830381865afa1580156106a0573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106c49190614658565b508091505061084f565b73833589fcd6edb6e08f4c7c32d4f71b54bda0291373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16036107b357730d5e0f971ed27fbff6c2837bf31316121532048d73ffffffffffffffffffffffffffffffffffffffff1663ca253dc961074e856120a6565b6040518263ffffffff1660e01b815260040161076a91906148f8565b60408051808303815f875af1158015610785573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107a99190614918565b508091505061084e565b730d5e0f971ed27fbff6c2837bf31316121532048d73ffffffffffffffffffffffffffffffffffffffff1663aa9d21cb6107ed87866122d0565b6040518263ffffffff1660e01b81526004016108099190614a2c565b60408051808303815f875af1158015610824573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108489190614918565b50809150505b5b5b73492c412369db76c9cdd9939e6c521579301473a373ffffffffffffffffffffffffffffffffffffffff1663fb55dbe185835f6040518463ffffffff1660e01b81526004016108a1939291906145fb565b6040805180830381865afa1580156108bb573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108df9190614658565b5080925050935093915050565b5f600c9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610972576040517f086a6b8600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f8173ffffffffffffffffffffffffffffffffffffffff164760405161099790614a79565b5f6040518083038185875af1925050503d805f81146109d1576040519150601f19603f3d011682016040523d82523d5f602084013e6109d6565b606091505b50509050806109e3575f5ffd5b5050565b5f5f9054906101000a900462ffffff1681565b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f600c9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610aa5576040517f086a6b8600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b815f60066101000a81548162ffffff021916908362ffffff160217905550805f60096101000a81548162ffffff021916908360020b62ffffff1602179055505050565b5f60099054906101000a900460020b81565b6e22d473030f116ddee9f6b43ac78ba381565b5f60039054906101000a900460020b81565b5f5f8303610b59576040517ff4fb71d900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1603610c3d575f3414610be7576040517f6256698900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610c3533308660015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166123c5909392919063ffffffff16565b839050610dd1565b7337f0c2915cecc7e977183b8543fc0864d03e064c73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1603610db9575f3414610cbd576040517f6256698900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610cfe3330867337f0c2915cecc7e977183b8543fc0864d03e064c73ffffffffffffffffffffffffffffffffffffffff166123c5909392919063ffffffff16565b73492c412369db76c9cdd9939e6c521579301473a373ffffffffffffffffffffffffffffffffffffffff16630144c5f360015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16865f306040518563ffffffff1660e01b8152600401610d729493929190614ac6565b6020604051808303815f875af1158015610d8e573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610db29190614b09565b9050610dd0565b610dc3868561241a565b610dcd8685612574565b90505b5b73492c412369db76c9cdd9939e6c521579301473a373ffffffffffffffffffffffffffffffffffffffff16630144c5f3868386336040518563ffffffff1660e01b8152600401610e249493929190614b34565b6020604051808303815f875af1925050508015610e5f57506040513d601f19601f82011682018060405250810190610e5c9190614b09565b60015b610e95576040517f12c0f6d800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80925050610ea161284b565b8473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f27830bca1834346b6287fed7ebd6791d80a5a6d4b190a1f8b01c09a07786a1a6858886604051610f1993929190614b77565b60405180910390a450949350505050565b73833589fcd6edb6e08f4c7c32d4f71b54bda0291381565b5f600c9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b730d5e0f971ed27fbff6c2837bf31316121532048d81565b5f81565b5f5f8303610fbd576040517ff4fb71d900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f73c5a076cad94176c2996b32d8466be1ce757faa2773ffffffffffffffffffffffffffffffffffffffff166376a9864b86866040518363ffffffff1660e01b815260040161100d929190614bac565b6040805180830381865afa158015611027573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061104b9190614918565b50905060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff160361116b575f34146110db576040517f6256698900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b82811115611115576040517f12c0f6d800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61116333308360015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166123c5909392919063ffffffff16565b809150611404565b7337f0c2915cecc7e977183b8543fc0864d03e064c73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16036113d6575f34146111eb576040517f6256698900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f73c5a076cad94176c2996b32d8466be1ce757faa2773ffffffffffffffffffffffffffffffffffffffff166376a9864b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846040518363ffffffff1660e01b815260040161125c929190614bac565b6040805180830381865afa158015611276573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061129a9190614918565b509050838111156112d7576040517f12c0f6d800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6113183330837337f0c2915cecc7e977183b8543fc0864d03e064c73ffffffffffffffffffffffffffffffffffffffff166123c5909392919063ffffffff16565b73c5a076cad94176c2996b32d8466be1ce757faa2773ffffffffffffffffffffffffffffffffffffffff1663f74bfe8e60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff168484306040518563ffffffff1660e01b815260040161138c9493929190614b34565b6020604051808303815f875af11580156113a8573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113cc9190614b09565b5080925050611403565b6113e0868461241a565b6113eb86828561293f565b91506114028683856113fd9190614c00565b612c9b565b5b5b5f73c5a076cad94176c2996b32d8466be1ce757faa2773ffffffffffffffffffffffffffffffffffffffff1663f74bfe8e878785336040518563ffffffff1660e01b81526004016114589493929190614b34565b6020604051808303815f875af192505050801561149357506040513d601f19601f820116820180604052508101906114909190614b09565b60015b6114c9576040517f12c0f6d800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b809150506114d561284b565b8573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f3b90f0b1565b6e9dac462a873af5d46d5d6177d0096ddc2ddcf38de8ddb5d8fa88878660405161154d93929190614b77565b60405180910390a45050949350505050565b5f600c9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146115e5576040517f086a6b8600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b815f5f6101000a81548162ffffff021916908362ffffff160217905550805f60036101000a81548162ffffff021916908360020b62ffffff1602179055505050565b73492c412369db76c9cdd9939e6c521579301473a381565b73c5a076cad94176c2996b32d8466be1ce757faa2781565b5f600c9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146116dd576040517f086a6b8600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611742576040517f644865b000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff1663095ea7b373c5a076cad94176c2996b32d8466be1ce757faa275f6040518363ffffffff1660e01b81526004016117b6929190614c33565b6020604051808303815f875af11580156117d2573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117f69190614c84565b508073ffffffffffffffffffffffffffffffffffffffff1663095ea7b373492c412369db76c9cdd9939e6c521579301473a35f6040518363ffffffff1660e01b8152600401611846929190614c33565b6020604051808303815f875af1158015611862573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118869190614c84565b508160015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff1663095ea7b373c5a076cad94176c2996b32d8466be1ce757faa277fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b8152600401611936929190614bac565b6020604051808303815f875af1158015611952573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119769190614c84565b508173ffffffffffffffffffffffffffffffffffffffff1663095ea7b373492c412369db76c9cdd9939e6c521579301473a37fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016119e6929190614bac565b6020604051808303815f875af1158015611a02573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a269190614c84565b508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f5a1a9bb5f826487cf43e61548d79ffa19cc00e1a554bd9962825f51fa9c767d160405160405180910390a35050565b5f60069054906101000a900462ffffff1681565b5f600c9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611b1f576040517f086a6b8600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611b4a82828573ffffffffffffffffffffffffffffffffffffffff16612db59092919063ffffffff16565b505050565b7337f0c2915cecc7e977183b8543fc0864d03e064c81565b5f5f73c5a076cad94176c2996b32d8466be1ce757faa2773ffffffffffffffffffffffffffffffffffffffff166376a9864b85856040518363ffffffff1660e01b8152600401611bb8929190614bac565b6040805180830381865afa158015611bd2573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611bf69190614918565b508091505060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603611c5757809150611ed8565b7337f0c2915cecc7e977183b8543fc0864d03e064c73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603611d565773c5a076cad94176c2996b32d8466be1ce757faa2773ffffffffffffffffffffffffffffffffffffffff166376a9864b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff1660e01b8152600401611d0e929190614bac565b6040805180830381865afa158015611d28573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611d4c9190614918565b5080925050611ed7565b73833589fcd6edb6e08f4c7c32d4f71b54bda0291373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603611e3b57730d5e0f971ed27fbff6c2837bf31316121532048d73ffffffffffffffffffffffffffffffffffffffff1663147d2af9611dd683612e08565b6040518263ffffffff1660e01b8152600401611df291906148f8565b60408051808303815f875af1158015611e0d573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e319190614918565b5080925050611ed6565b730d5e0f971ed27fbff6c2837bf31316121532048d73ffffffffffffffffffffffffffffffffffffffff166358733073611e7587846122d0565b6040518263ffffffff1660e01b8152600401611e919190614a2c565b60408051808303815f875af1158015611eac573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611ed09190614918565b50809250505b5b5b935093915050565b736ff5693b99212da76ad316178a184ab56d299b4381565b5f600c9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611f7e576040517f086a6b8600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611fe3576040517f644865b000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f5f600c9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f600c6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6120ae61401f565b5f600267ffffffffffffffff8111156120ca576120c9614caf565b5b60405190808252806020026020018201604052801561210357816020015b6120f0614066565b8152602001906001900390816120e85790505b5090506040518060a001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f60069054906101000a900462ffffff1662ffffff1681526020015f60099054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff16815260200160405180602001604052805f815250815250815f815181106121a05761219f614cdc565b5b60200260200101819052506040518060a0016040528060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020015f5f9054906101000a900462ffffff1662ffffff1681526020015f60039054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff16815260200160405180602001604052805f8152508152508160018151811061226657612265614cdc565b5b6020026020010181905250604051806060016040528073833589fcd6edb6e08f4c7c32d4f71b54bda0291373ffffffffffffffffffffffffffffffffffffffff168152602001828152602001846fffffffffffffffffffffffffffffffff16815250915050919050565b6122d86140c5565b5f5f5f6122e486613032565b92509250925060405180608001604052806040518060a001604052808673ffffffffffffffffffffffffffffffffffffffff1681526020018573ffffffffffffffffffffffffffffffffffffffff1681526020015f5f9054906101000a900462ffffff1662ffffff1681526020015f60039054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff1681525081526020018215158152602001866fffffffffffffffffffffffffffffffff16815260200160405180602001604052805f815250815250935050505092915050565b6123d3848484846001613150565b61241457836040517f5274afe700000000000000000000000000000000000000000000000000000000815260040161240b919061433b565b60405180910390fd5b50505050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361248b57803414612486576040517f6256698900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b612570565b73833589fcd6edb6e08f4c7c32d4f71b54bda0291373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361253d575f341461250b576040517f6256698900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6125383330838573ffffffffffffffffffffffffffffffffffffffff166123c5909392919063ffffffff16565b61256f565b6040517f84e3aa1900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b5050565b5f5f60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016125d0919061433b565b602060405180830381865afa1580156125eb573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061260f9190614b09565b905073833589fcd6edb6e08f4c7c32d4f71b54bda0291373ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff160361266657612661836131c1565b61279e565b5f5f5f61267287613032565b9250925092505f601060405160200161268b9190614d49565b60405160208183030381529060405290505f600167ffffffffffffffff8111156126b8576126b7614caf565b5b6040519080825280602002602001820160405280156126eb57816020015b60608152602001906001900390816126d65790505b5090506126fa8585858b61364d565b815f8151811061270d5761270c614cdc565b5b6020026020010181905250736ff5693b99212da76ad316178a184ab56d299b4373ffffffffffffffffffffffffffffffffffffffff16633593564c898484426040518563ffffffff1660e01b815260040161276a93929190614e66565b5f604051808303818588803b158015612781575f5ffd5b505af1158015612793573d5f5f3e3d5ffd5b505050505050505050505b8060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016127f9919061433b565b602060405180830381865afa158015612814573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906128389190614b09565b6128429190614c00565b91505092915050565b5f60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016128a6919061433b565b602060405180830381865afa1580156128c1573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906128e59190614b09565b90505f81111561293c5761293b338260015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16612db59092919063ffffffff16565b5b50565b5f5f5f73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16146129f1578473ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016129ad919061433b565b602060405180830381865afa1580156129c8573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906129ec9190614b09565b6129f3565b475b905073833589fcd6edb6e08f4c7c32d4f71b54bda0291373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603612a4b57612a4684846138be565b612bcf565b5f5f5f612a5788613032565b9250925092505f612a6b8484848b8b613d4b565b90505f60106004604051602001612a83929190614ea9565b60405160208183030381529060405290505f600267ffffffffffffffff811115612ab057612aaf614caf565b5b604051908082528060200260200182016040528015612ae357816020015b6060815260200190600190039081612ace5790505b50905082815f81518110612afa57612af9614cdc565b5b60200260200101819052505f305f604051602001612b1a93929190614f04565b60405160208183030381529060405281600181518110612b3d57612b3c614cdc565b5b6020026020010181905250736ff5693b99212da76ad316178a184ab56d299b4373ffffffffffffffffffffffffffffffffffffffff16633593564c8a8484426040518563ffffffff1660e01b8152600401612b9a93929190614e66565b5f604051808303818588803b158015612bb1575f5ffd5b505af1158015612bc3573d5f5f3e3d5ffd5b50505050505050505050505b5f5f73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614612c80578573ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401612c3c919061433b565b602060405180830381865afa158015612c57573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612c7b9190614b09565b612c82565b475b90508082612c909190614c00565b925050509392505050565b5f810315612db1575f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612d84575f3373ffffffffffffffffffffffffffffffffffffffff1682604051612cfb90614a79565b5f6040518083038185875af1925050503d805f8114612d35576040519150601f19603f3d011682016040523d82523d5f602084013e612d3a565b606091505b5050905080612d7e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d7590614f93565b60405180910390fd5b50612db0565b612daf33828473ffffffffffffffffffffffffffffffffffffffff16612db59092919063ffffffff16565b5b5b5050565b612dc28383836001613fbd565b612e0357826040517f5274afe7000000000000000000000000000000000000000000000000000000008152600401612dfa919061433b565b60405180910390fd5b505050565b612e1061401f565b5f600267ffffffffffffffff811115612e2c57612e2b614caf565b5b604051908082528060200260200182016040528015612e6557816020015b612e52614066565b815260200190600190039081612e4a5790505b5090506040518060a0016040528073833589fcd6edb6e08f4c7c32d4f71b54bda0291373ffffffffffffffffffffffffffffffffffffffff1681526020015f60069054906101000a900462ffffff1662ffffff1681526020015f60099054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff16815260200160405180602001604052805f815250815250815f81518110612f1657612f15614cdc565b5b60200260200101819052506040518060a001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f5f9054906101000a900462ffffff1662ffffff1681526020015f60039054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff16815260200160405180602001604052805f81525081525081600181518110612fbb57612fba614cdc565b5b6020026020010181905250604051806060016040528060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828152602001846fffffffffffffffffffffffffffffffff16815250915050919050565b5f5f5f5f73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603613098575f925060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16915060019050613149565b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16101561311d5783925060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16915060019050613148565b60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1692508391505f90505b5b9193909250565b5f5f6323b872dd60e01b9050604051815f525f1960601c87166004525f1960601c86166024528460445260205f60645f5f8c5af1925060015f511483166131ae5783831516156131a2573d5f823e3d81fd5b5f883b113d1516831692505b806040525f606052505095945050505050565b5f6007600c600e6040516020016131da93929190614fb1565b60405160208183030381529060405290505f600367ffffffffffffffff81111561320757613206614caf565b5b60405190808252806020026020018201604052801561323a57816020015b60608152602001906001900390816132255790505b5090505f600267ffffffffffffffff81111561325957613258614caf565b5b60405190808252806020026020018201604052801561329257816020015b61327f614066565b8152602001906001900390816132775790505b5090506040518060a001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f60069054906101000a900462ffffff1662ffffff1681526020015f60099054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff16815260200160405180602001604052805f815250815250815f8151811061332f5761332e614cdc565b5b60200260200101819052506040518060a0016040528060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020015f5f9054906101000a900462ffffff1662ffffff1681526020015f60039054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff16815260200160405180602001604052805f815250815250816001815181106133f5576133f4614cdc565b5b602002602001018190525073833589fcd6edb6e08f4c7c32d4f71b54bda0291381855f60405160200161342b949392919061507f565b604051602081830303815290604052825f8151811061344d5761344c614cdc565b5b602002602001018190525073833589fcd6edb6e08f4c7c32d4f71b54bda029138460405160200161347f9291906150c9565b604051602081830303815290604052826001815181106134a2576134a1614cdc565b5b602002602001018190525060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16305f6040516020016134e3939291906150f0565b6040516020818303038152906040528260028151811061350657613505614cdc565b5b60200260200101819052505f60106040516020016135249190614d49565b60405160208183030381529060405290505f600167ffffffffffffffff81111561355157613550614caf565b5b60405190808252806020026020018201604052801561358457816020015b606081526020019060019003908161356f5790505b509050848460405160200161359a929190615125565b604051602081830303815290604052815f815181106135bc576135bb614cdc565b5b6020026020010181905250736ff5693b99212da76ad316178a184ab56d299b4373ffffffffffffffffffffffffffffffffffffffff16633593564c8383426040518463ffffffff1660e01b815260040161361893929190614e66565b5f604051808303815f87803b15801561362f575f5ffd5b505af1158015613641573d5f5f3e3d5ffd5b50505050505050505050565b60605f6006600c600e60405160200161366893929190614fb1565b60405160208183030381529060405290505f600367ffffffffffffffff81111561369557613694614caf565b5b6040519080825280602002602001820160405280156136c857816020015b60608152602001906001900390816136b35790505b5090505f6040518060a001604052808973ffffffffffffffffffffffffffffffffffffffff1681526020018873ffffffffffffffffffffffffffffffffffffffff1681526020015f5f9054906101000a900462ffffff1662ffffff1681526020015f60039054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff1681525090505f5f8761376a57888a61376d565b89895b915091506040518060a001604052808481526020018915158152602001886fffffffffffffffffffffffffffffffff1681526020015f6fffffffffffffffffffffffffffffffff16815260200160405180602001604052805f8152508152506040516020016137dc91906151cf565b604051602081830303815290604052845f815181106137fe576137fd614cdc565b5b6020026020010181905250818760405160200161381c9291906150c9565b6040516020818303038152906040528460018151811061383f5761383e614cdc565b5b602002602001018190525080305f60405160200161385f939291906150f0565b6040516020818303038152906040528460028151811061388257613881614cdc565b5b602002602001018190525084846040516020016138a0929190615125565b60405160208183030381529060405295505050505050949350505050565b5f6009600c600e6040516020016138d793929190614fb1565b60405160208183030381529060405290505f600367ffffffffffffffff81111561390457613903614caf565b5b60405190808252806020026020018201604052801561393757816020015b60608152602001906001900390816139225790505b5090505f600267ffffffffffffffff81111561395657613955614caf565b5b60405190808252806020026020018201604052801561398f57816020015b61397c614066565b8152602001906001900390816139745790505b5090506040518060a0016040528073833589fcd6edb6e08f4c7c32d4f71b54bda0291373ffffffffffffffffffffffffffffffffffffffff1681526020015f60069054906101000a900462ffffff1662ffffff1681526020015f60099054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff16815260200160405180602001604052805f815250815250815f81518110613a4057613a3f614cdc565b5b60200260200101819052506040518060a001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f5f9054906101000a900462ffffff1662ffffff1681526020015f60039054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff16815260200160405180602001604052805f81525081525081600181518110613ae557613ae4614cdc565b5b602002602001018190525060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16818686604051602001613b28949392919061507f565b604051602081830303815290604052825f81518110613b4a57613b49614cdc565b5b602002602001018190525073833589fcd6edb6e08f4c7c32d4f71b54bda0291384604051602001613b7c9291906150c9565b60405160208183030381529060405282600181518110613b9f57613b9e614cdc565b5b602002602001018190525060015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16305f604051602001613be0939291906150f0565b60405160208183030381529060405282600281518110613c0357613c02614cdc565b5b60200260200101819052505f6010604051602001613c219190614d49565b60405160208183030381529060405290505f600167ffffffffffffffff811115613c4e57613c4d614caf565b5b604051908082528060200260200182016040528015613c8157816020015b6060815260200190600190039081613c6c5790505b5090508484604051602001613c97929190615125565b604051602081830303815290604052815f81518110613cb957613cb8614cdc565b5b6020026020010181905250736ff5693b99212da76ad316178a184ab56d299b4373ffffffffffffffffffffffffffffffffffffffff16633593564c8383426040518463ffffffff1660e01b8152600401613d1593929190614e66565b5f604051808303815f87803b158015613d2c575f5ffd5b505af1158015613d3e573d5f5f3e3d5ffd5b5050505050505050505050565b60605f6008600c600e604051602001613d6693929190614fb1565b60405160208183030381529060405290505f600367ffffffffffffffff811115613d9357613d92614caf565b5b604051908082528060200260200182016040528015613dc657816020015b6060815260200190600190039081613db15790505b5090505f6040518060a001604052808a73ffffffffffffffffffffffffffffffffffffffff1681526020018973ffffffffffffffffffffffffffffffffffffffff1681526020015f5f9054906101000a900462ffffff1662ffffff1681526020015f60039054906101000a900460020b60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff1681525090505f5f88613e6857898b613e6b565b8a8a5b915091506040518060a001604052808481526020018a15158152602001896fffffffffffffffffffffffffffffffff168152602001886fffffffffffffffffffffffffffffffff16815260200160405180602001604052805f815250815250604051602001613eda9190615264565b604051602081830303815290604052845f81518110613efc57613efb614cdc565b5b60200260200101819052508187604051602001613f1a9291906150c9565b60405160208183030381529060405284600181518110613f3d57613f3c614cdc565b5b602002602001018190525080305f604051602001613f5d939291906150f0565b60405160208183030381529060405284600281518110613f8057613f7f614cdc565b5b60200260200101819052508484604051602001613f9e929190615125565b6040516020818303038152906040529550505050505095945050505050565b5f5f63a9059cbb60e01b9050604051815f525f1960601c86166004528460245260205f60445f5f8b5af1925060015f51148316614011578383151615614005573d5f823e3d81fd5b5f873b113d1516831692505b806040525050949350505050565b60405180606001604052805f73ffffffffffffffffffffffffffffffffffffffff168152602001606081526020015f6fffffffffffffffffffffffffffffffff1681525090565b6040518060a001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f62ffffff1681526020015f60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff168152602001606081525090565b60405180608001604052806140d8614105565b81526020015f151581526020015f6fffffffffffffffffffffffffffffffff168152602001606081525090565b6040518060a001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f62ffffff1681526020015f60020b81526020015f73ffffffffffffffffffffffffffffffffffffffff1681525090565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6141a68261417d565b9050919050565b6141b68161419c565b81146141c0575f5ffd5b50565b5f813590506141d1816141ad565b92915050565b5f819050919050565b6141e9816141d7565b81146141f3575f5ffd5b50565b5f81359050614204816141e0565b92915050565b5f5f5f6060848603121561422157614220614179565b5b5f61422e868287016141c3565b935050602061423f868287016141c3565b9250506040614250868287016141f6565b9150509250925092565b614263816141d7565b82525050565b5f60408201905061427c5f83018561425a565b614289602083018461425a565b9392505050565b5f61429a8261417d565b9050919050565b6142aa81614290565b81146142b4575f5ffd5b50565b5f813590506142c5816142a1565b92915050565b5f602082840312156142e0576142df614179565b5b5f6142ed848285016142b7565b91505092915050565b5f62ffffff82169050919050565b61430d816142f6565b82525050565b5f6020820190506143265f830184614304565b92915050565b6143358161419c565b82525050565b5f60208201905061434e5f83018461432c565b92915050565b61435d816142f6565b8114614367575f5ffd5b50565b5f8135905061437881614354565b92915050565b5f8160020b9050919050565b6143938161437e565b811461439d575f5ffd5b50565b5f813590506143ae8161438a565b92915050565b5f5f604083850312156143ca576143c9614179565b5b5f6143d78582860161436a565b92505060206143e8858286016143a0565b9150509250929050565b6143fb8161437e565b82525050565b5f6020820190506144145f8301846143f2565b92915050565b5f5f5f5f6080858703121561443257614431614179565b5b5f61443f878288016141c3565b9450506020614450878288016141c3565b9350506040614461878288016141f6565b9250506060614472878288016141f6565b91505092959194509250565b5f6020820190506144915f83018461425a565b92915050565b5f819050919050565b5f6144ba6144b56144b08461417d565b614497565b61417d565b9050919050565b5f6144cb826144a0565b9050919050565b5f6144dc826144c1565b9050919050565b6144ec816144d2565b82525050565b5f6020820190506145055f8301846144e3565b92915050565b5f614515826144c1565b9050919050565b6145258161450b565b82525050565b5f60208201905061453e5f83018461451c565b92915050565b5f61454e826144c1565b9050919050565b61455e81614544565b82525050565b5f6020820190506145775f830184614555565b92915050565b5f6020828403121561459257614591614179565b5b5f61459f848285016141c3565b91505092915050565b5f6145b2826144c1565b9050919050565b6145c2816145a8565b82525050565b5f6020820190506145db5f8301846145b9565b92915050565b5f8115159050919050565b6145f5816145e1565b82525050565b5f60608201905061460e5f83018661432c565b61461b602083018561425a565b61462860408301846145ec565b949350505050565b5f8151905061463e816141e0565b92915050565b5f81519050614652816141ad565b92915050565b5f5f6040838503121561466e5761466d614179565b5b5f61467b85828601614630565b925050602061468c85828601614644565b9150509250929050565b61469f8161419c565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b6146d7816142f6565b82525050565b6146e68161437e565b82525050565b5f6146f6826144c1565b9050919050565b614706816146ec565b82525050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f61474e8261470c565b6147588185614716565b9350614768818560208601614726565b61477181614734565b840191505092915050565b5f60a083015f8301516147915f860182614696565b5060208301516147a460208601826146ce565b5060408301516147b760408601826146dd565b5060608301516147ca60608601826146fd565b50608083015184820360808601526147e28282614744565b9150508091505092915050565b5f6147fa838361477c565b905092915050565b5f602082019050919050565b5f614818826146a5565b61482281856146af565b935083602082028501614834856146bf565b805f5b8581101561486f578484038952815161485085826147ef565b945061485b83614802565b925060208a01995050600181019050614837565b50829750879550505050505092915050565b5f6fffffffffffffffffffffffffffffffff82169050919050565b6148a581614881565b82525050565b5f606083015f8301516148c05f860182614696565b50602083015184820360208601526148d8828261480e565b91505060408301516148ed604086018261489c565b508091505092915050565b5f6020820190508181035f83015261491081846148ab565b905092915050565b5f5f6040838503121561492e5761492d614179565b5b5f61493b85828601614630565b925050602061494c85828601614630565b9150509250929050565b60a082015f82015161496a5f850182614696565b50602082015161497d6020850182614696565b50604082015161499060408501826146ce565b5060608201516149a360608501826146dd565b5060808201516149b660808501826146fd565b50505050565b6149c5816145e1565b82525050565b5f61010083015f8301516149e15f860182614956565b5060208301516149f460a08601826149bc565b506040830151614a0760c086018261489c565b50606083015184820360e0860152614a1f8282614744565b9150508091505092915050565b5f6020820190508181035f830152614a4481846149cb565b905092915050565b5f81905092915050565b50565b5f614a645f83614a4c565b9150614a6f82614a56565b5f82019050919050565b5f614a8382614a59565b9150819050919050565b5f819050919050565b5f614ab0614aab614aa684614a8d565b614497565b6141d7565b9050919050565b614ac081614a96565b82525050565b5f608082019050614ad95f83018761432c565b614ae6602083018661425a565b614af36040830185614ab7565b614b00606083018461432c565b95945050505050565b5f60208284031215614b1e57614b1d614179565b5b5f614b2b84828501614630565b91505092915050565b5f608082019050614b475f83018761432c565b614b54602083018661425a565b614b61604083018561425a565b614b6e606083018461432c565b95945050505050565b5f606082019050614b8a5f83018661425a565b614b97602083018561425a565b614ba4604083018461425a565b949350505050565b5f604082019050614bbf5f83018561432c565b614bcc602083018461425a565b9392505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f614c0a826141d7565b9150614c15836141d7565b9250828203905081811115614c2d57614c2c614bd3565b5b92915050565b5f604082019050614c465f83018561432c565b614c536020830184614ab7565b9392505050565b614c63816145e1565b8114614c6d575f5ffd5b50565b5f81519050614c7e81614c5a565b92915050565b5f60208284031215614c9957614c98614179565b5b5f614ca684828501614c70565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f60ff82169050919050565b5f8160f81b9050919050565b5f614d2b82614d15565b9050919050565b614d43614d3e82614d09565b614d21565b82525050565b5f614d548284614d32565b60018201915081905092915050565b5f82825260208201905092915050565b5f614d7d8261470c565b614d878185614d63565b9350614d97818560208601614726565b614da081614734565b840191505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f614ddf8383614744565b905092915050565b5f602082019050919050565b5f614dfd82614dab565b614e078185614db5565b935083602082028501614e1985614dc5565b805f5b85811015614e545784840389528151614e358582614dd4565b9450614e4083614de7565b925060208a01995050600181019050614e1c565b50829750879550505050505092915050565b5f6060820190508181035f830152614e7e8186614d73565b90508181036020830152614e928185614df3565b9050614ea1604083018461425a565b949350505050565b5f614eb48285614d32565b600182019150614ec48284614d32565b6001820191508190509392505050565b5f614eee614ee9614ee484614a8d565b614497565b614d09565b9050919050565b614efe81614ed4565b82525050565b5f606082019050614f175f83018661432c565b614f24602083018561432c565b614f316040830184614ef5565b949350505050565b5f82825260208201905092915050565b7f45544820726566756e64206661696c65640000000000000000000000000000005f82015250565b5f614f7d601183614f39565b9150614f8882614f49565b602082019050919050565b5f6020820190508181035f830152614faa81614f71565b9050919050565b5f614fbc8286614d32565b600182019150614fcc8285614d32565b600182019150614fdc8284614d32565b600182019150819050949350505050565b5f82825260208201905092915050565b5f615007826146a5565b6150118185614fed565b935083602082028501615023856146bf565b805f5b8581101561505e578484038952815161503f85826147ef565b945061504a83614802565b925060208a01995050600181019050615026565b50829750879550505050505092915050565b61507981614881565b82525050565b5f6080820190506150925f83018761432c565b81810360208301526150a48186614ffd565b90506150b36040830185615070565b6150c06060830184615070565b95945050505050565b5f6040820190506150dc5f83018561432c565b6150e96020830184615070565b9392505050565b5f6060820190506151035f83018661432c565b615110602083018561432c565b61511d604083018461425a565b949350505050565b5f6040820190508181035f83015261513d8185614d73565b905081810360208301526151518184614df3565b90509392505050565b5f61012083015f8301516151705f860182614956565b50602083015161518360a08601826149bc565b50604083015161519660c086018261489c565b5060608301516151a960e086018261489c565b5060808301518482036101008601526151c28282614744565b9150508091505092915050565b5f6020820190508181035f8301526151e7818461515a565b905092915050565b5f61012083015f8301516152055f860182614956565b50602083015161521860a08601826149bc565b50604083015161522b60c086018261489c565b50606083015161523e60e086018261489c565b5060808301518482036101008601526152578282614744565b9150508091505092915050565b5f6020820190508181035f83015261527c81846151ef565b90509291505056fea2646970667358221220fa8b9f787388cf7f118f22b61c3002559e3255f95503989afd8c4b9c58ca58f964736f6c634300081c0033000000000000000000000000f8a2c39111fceb9c950aaf28a9e34ebad99b85c1", + "nonce": "0x1cb", "chainId": "0x2105" }, "additionalContracts": [], @@ -24,131 +24,131 @@ "receipts": [ { "status": "0x1", - "cumulativeGasUsed": "0xf92761", + "cumulativeGasUsed": "0x16b5b5d", "logs": [ { "address": "0xf8a2c39111fceb9c950aaf28a9e34ebad99b85c1", "topics": [ "0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925", - "0x0000000000000000000000007bc192848003ab1ba286c66afd0dd8a1729c6b02", + "0x00000000000000000000000004f557f8d2806b34fc832a534c08df514d4dfeef", "0x000000000000000000000000c5a076cad94176c2996b32d8466be1ce757faa27" ], "data": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", "blockHash": "0x0000000000000000000000000000000000000000000000000000000000000000", - "blockNumber": "0x29b3d5f", - "blockTimestamp": "0x69c0d7a1", - "transactionHash": "0x8b5c3ade52dbceb3473a4a532c09a442f0dc63c10b95960f060fe8f4e09a1129", - "transactionIndex": "0x36", - "logIndex": "0x166", + "blockNumber": "0x29b54c9", + "blockTimestamp": "0x69c10675", + "transactionHash": "0xf55cf68e6bbd698bb3203af1bf4e251a350514855681937c4b623d4362d8cf48", + "transactionIndex": "0x59", + "logIndex": "0x226", "removed": false }, { "address": "0xf8a2c39111fceb9c950aaf28a9e34ebad99b85c1", "topics": [ "0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925", - "0x0000000000000000000000007bc192848003ab1ba286c66afd0dd8a1729c6b02", + "0x00000000000000000000000004f557f8d2806b34fc832a534c08df514d4dfeef", "0x000000000000000000000000492c412369db76c9cdd9939e6c521579301473a3" ], "data": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", "blockHash": "0x0000000000000000000000000000000000000000000000000000000000000000", - "blockNumber": "0x29b3d5f", - "blockTimestamp": "0x69c0d7a1", - "transactionHash": "0x8b5c3ade52dbceb3473a4a532c09a442f0dc63c10b95960f060fe8f4e09a1129", - "transactionIndex": "0x36", - "logIndex": "0x167", + "blockNumber": "0x29b54c9", + "blockTimestamp": "0x69c10675", + "transactionHash": "0xf55cf68e6bbd698bb3203af1bf4e251a350514855681937c4b623d4362d8cf48", + "transactionIndex": "0x59", + "logIndex": "0x227", "removed": false }, { "address": "0x37f0c2915cecc7e977183b8543fc0864d03e064c", "topics": [ "0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925", - "0x0000000000000000000000007bc192848003ab1ba286c66afd0dd8a1729c6b02", + "0x00000000000000000000000004f557f8d2806b34fc832a534c08df514d4dfeef", "0x000000000000000000000000c5a076cad94176c2996b32d8466be1ce757faa27" ], "data": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", "blockHash": "0x0000000000000000000000000000000000000000000000000000000000000000", - "blockNumber": "0x29b3d5f", - "blockTimestamp": "0x69c0d7a1", - "transactionHash": "0x8b5c3ade52dbceb3473a4a532c09a442f0dc63c10b95960f060fe8f4e09a1129", - "transactionIndex": "0x36", - "logIndex": "0x168", + "blockNumber": "0x29b54c9", + "blockTimestamp": "0x69c10675", + "transactionHash": "0xf55cf68e6bbd698bb3203af1bf4e251a350514855681937c4b623d4362d8cf48", + "transactionIndex": "0x59", + "logIndex": "0x228", "removed": false }, { "address": "0x37f0c2915cecc7e977183b8543fc0864d03e064c", "topics": [ "0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925", - "0x0000000000000000000000007bc192848003ab1ba286c66afd0dd8a1729c6b02", + "0x00000000000000000000000004f557f8d2806b34fc832a534c08df514d4dfeef", "0x000000000000000000000000492c412369db76c9cdd9939e6c521579301473a3" ], "data": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", "blockHash": "0x0000000000000000000000000000000000000000000000000000000000000000", - "blockNumber": "0x29b3d5f", - "blockTimestamp": "0x69c0d7a1", - "transactionHash": "0x8b5c3ade52dbceb3473a4a532c09a442f0dc63c10b95960f060fe8f4e09a1129", - "transactionIndex": "0x36", - "logIndex": "0x169", + "blockNumber": "0x29b54c9", + "blockTimestamp": "0x69c10675", + "transactionHash": "0xf55cf68e6bbd698bb3203af1bf4e251a350514855681937c4b623d4362d8cf48", + "transactionIndex": "0x59", + "logIndex": "0x229", "removed": false }, { "address": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913", "topics": [ "0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925", - "0x0000000000000000000000007bc192848003ab1ba286c66afd0dd8a1729c6b02", + "0x00000000000000000000000004f557f8d2806b34fc832a534c08df514d4dfeef", "0x000000000000000000000000000000000022d473030f116ddee9f6b43ac78ba3" ], "data": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", "blockHash": "0x0000000000000000000000000000000000000000000000000000000000000000", - "blockNumber": "0x29b3d5f", - "blockTimestamp": "0x69c0d7a1", - "transactionHash": "0x8b5c3ade52dbceb3473a4a532c09a442f0dc63c10b95960f060fe8f4e09a1129", - "transactionIndex": "0x36", - "logIndex": "0x16a", + "blockNumber": "0x29b54c9", + "blockTimestamp": "0x69c10675", + "transactionHash": "0xf55cf68e6bbd698bb3203af1bf4e251a350514855681937c4b623d4362d8cf48", + "transactionIndex": "0x59", + "logIndex": "0x22a", "removed": false }, { "address": "0x000000000022d473030f116ddee9f6b43ac78ba3", "topics": [ "0xda9fa7c1b00402c17d0161b249b1ab8bbec047c5a52207b9c112deffd817036b", - "0x0000000000000000000000007bc192848003ab1ba286c66afd0dd8a1729c6b02", + "0x00000000000000000000000004f557f8d2806b34fc832a534c08df514d4dfeef", "0x000000000000000000000000833589fcd6edb6e08f4c7c32d4f71b54bda02913", "0x0000000000000000000000006ff5693b99212da76ad316178a184ab56d299b43" ], "data": "0x000000000000000000000000ffffffffffffffffffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000ffffffffffff", "blockHash": "0x0000000000000000000000000000000000000000000000000000000000000000", - "blockNumber": "0x29b3d5f", - "blockTimestamp": "0x69c0d7a1", - "transactionHash": "0x8b5c3ade52dbceb3473a4a532c09a442f0dc63c10b95960f060fe8f4e09a1129", - "transactionIndex": "0x36", - "logIndex": "0x16b", + "blockNumber": "0x29b54c9", + "blockTimestamp": "0x69c10675", + "transactionHash": "0xf55cf68e6bbd698bb3203af1bf4e251a350514855681937c4b623d4362d8cf48", + "transactionIndex": "0x59", + "logIndex": "0x22b", "removed": false } ], - "logsBloom": "0x00010000000000020000000000000000000000000000000000000000000000000000000000000000000000000002104000000000800000000000100000280000000000000000040000005000000000000000000000080800000000000000000000800000000000000080000000000000010000000000000000000000000040000020000000000000400000000000000000000000000000000000000000000000020000000000000000000000800000081000000000100000000000080000800000000000000000000000001000000000200000000000000040000000040000000010000000000000000000000000040000000000000000000200000001000400", + "logsBloom": "0x00010000000000020000000000000000000000000000000000000000000000000000000000000000000000000000104000000000800000000000100000280000000000000000040000005000080000000000000000080800000000000000000000801000000000000080000000000000010000000000000000000000000040000020000000000000400200000000000000000000000000000000000000000000020000000000000000000000800000081000000000100000000000080000000000000000000000000000000000000000200000000000000040000000040000000010000000000000000000000000040000000000000000000200000001000400", "type": "0x2", - "transactionHash": "0x8b5c3ade52dbceb3473a4a532c09a442f0dc63c10b95960f060fe8f4e09a1129", - "transactionIndex": "0x36", + "transactionHash": "0xf55cf68e6bbd698bb3203af1bf4e251a350514855681937c4b623d4362d8cf48", + "transactionIndex": "0x59", "blockHash": "0x0000000000000000000000000000000000000000000000000000000000000000", - "blockNumber": "0x29b3d5f", - "gasUsed": "0x4a68d0", - "effectiveGasPrice": "0x4c56a8", - "blobGasUsed": "0xfc358", + "blockNumber": "0x29b54c9", + "gasUsed": "0x4a6990", + "effectiveGasPrice": "0x4c4b41", + "blobGasUsed": "0xfc725", "from": "0x017596303ee2f3c1250aa67d2d33dbae1d1c4dbf", "to": null, - "contractAddress": "0x7bc192848003ab1ba286c66afd0dd8a1729c6b02", + "contractAddress": "0x04f557f8d2806b34fc832a534c08df514d4dfeef", "daFootprintGasScalar": "0x8b", "l1BaseFeeScalar": "0x8dd", - "l1BlobBaseFee": "0x328f1b", + "l1BlobBaseFee": "0x77ecc0", "l1BlobBaseFeeScalar": "0x101c12", - "l1Fee": "0x2106893f", - "l1GasPrice": "0x35a80b5", - "l1GasUsed": "0x1d086" + "l1Fee": "0x4fb32045", + "l1GasPrice": "0x854868d", + "l1GasUsed": "0x1d0f1" } ], "libraries": [], "pending": [], "returns": {}, - "timestamp": 1774245808150, + "timestamp": 1774257796304, "chain": 8453, - "commit": "be779c0" + "commit": "65a2f11" } \ No newline at end of file diff --git a/src/interfaces/IZapInterfaces.sol b/src/interfaces/IZapInterfaces.sol index feb1a46..8a63ebb 100644 --- a/src/interfaces/IZapInterfaces.sol +++ b/src/interfaces/IZapInterfaces.sol @@ -101,8 +101,8 @@ library Commands { } library Actions { - uint256 constant SWAP_EXACT_IN = 0x00; - uint256 constant SWAP_EXACT_OUT = 0x01; + uint256 constant SWAP_EXACT_IN = 0x07; + uint256 constant SWAP_EXACT_OUT = 0x09; uint256 constant SWAP_EXACT_IN_SINGLE = 0x06; uint256 constant SWAP_EXACT_OUT_SINGLE = 0x08; uint256 constant SETTLE_ALL = 0x0c;