VeChain
Explorer
Testnet
Search
Networks
Main
Test
Contract
0x358fa8…E8eB
Summary
Transactions
Transfers
Address
0x358fa84957C534A16F191e99Cb1652326050E8eB
VET
0.00
VET
VTHO
0.00
VTHO
Master
0x66E9709bc01B8c0AfC99a7dC513f501821306E85
Deployer
0x66E9709bc01B8c0AfC99a7dC513f501821306E85
Code
0x6080604052600436106103565760003560e01c806250ea6f1461035b57806301ffc9a71461038657806302a251a3146103b657806306f3f9e6146103d957806306fdde03146103fb5780630a0e74ef1461041d5780630eca87fb1461043d57806319e6e1581461045d5780632267716c1461047d578063248a9ca314610492578063291605f7146104b257806329b6eca9146104df5780632f2ff15d146104ff578063300973771461051f57806333653f5d1461053f57806333727c4d146105545780633469f6e21461057457806336568abe146105945780633e4f49e6146105b457806343859632146105e1578063498d91bf146106015780634bb5181a146106215780634bf5d7e9146106415780634f1ef2861461065657806352d1902d146106695780635320a1471461067e57806353ed63991461069e57806354fd4d50146106be578063561b64ef146106e857806357181609146106fd578063593728121461071d57806359529edd1461073257806360c4247f14610752578063628277331461077257806374038935146107875780637893d736146107a757806378a81336146107bc5780637ace2485146107dc57806382afd23b14610809578063836761e0146108295780638ab52d4b146108495780638f1327c01461085e57806391d14854146108b757806391ddadf4146108d7578063952f21331461090357806397c3d334146109255780639aeb962b146109395780639cbe5efd146109595780639fb027021461096e578063a217fddf1461098e578063a3844e11146109a3578063a56b5765146109b8578063a7713a70146109d8578063ad3cb1cc146109ed578063b25d6f6214610a1e578063b3c93dab14610a3e578063bb7de6d414610a5e578063bd85948c14610a73578063bed7301014610a88578063c048f6c914610aa8578063cd669a7214610ac8578063d06efeda14610aea578063d3a368bd14610b0a578063d4a8dd9814610b2a578063d547741f14610b4a578063d68b4c3614610b6a578063dd4e2ba514610b8a578063e540d01d14610b9f578063e7ad2bed14610bbf578063eb9019d414610bdf578063f36c8f5c14610bff578063f5fae13614610c21578063f72c0d8b14610c41578063f8ce560a14610c63578063fb03ec6f14610c83578063fc0c546a14610ca3575b600080fd5b34801561036757600080fd5b50610370610cb8565b60405161037d919061422d565b60405180910390f35b34801561039257600080fd5b506103a66103a1366004614241565b610cd6565b604051901515815260200161037d565b3480156103c257600080fd5b506103cb610ce7565b60405190815260200161037d565b3480156103e557600080fd5b506103f96103f436600461426b565b610cf6565b005b34801561040757600080fd5b50610410610d1b565b60405161037d91906142d4565b34801561042957600080fd5b506103cb61043836600461426b565b610dbc565b34801561044957600080fd5b506103cb61045836600461426b565b610ddc565b34801561046957600080fd5b506103cb61047836600461426b565b610dfc565b34801561048957600080fd5b50610370610e1f565b34801561049e57600080fd5b506103cb6104ad36600461426b565b610e3d565b3480156104be57600080fd5b506104d26104cd36600461426b565b610e5d565b60405161037d91906142e7565b3480156104eb57600080fd5b506103f96104fa3660046143b9565b61103e565b34801561050b57600080fd5b506103f961051a3660046143e1565b6110ed565b34801561052b57600080fd5b506103cb61053a36600461426b565b61110f565b34801561054b57600080fd5b5061037061112c565b34801561056057600080fd5b506103a661056f36600461426b565b611147565b34801561058057600080fd5b506103f961058f36600461426b565b61116a565b3480156105a057600080fd5b506103f96105af3660046143e1565b6112d1565b3480156105c057600080fd5b506105d46105cf36600461426b565b611309565b60405161037d9190614449565b3480156105ed57600080fd5b506103a66105fc3660046143e1565b611391565b34801561060d57600080fd5b506103cb61061c36600461426b565b6113ce565b34801561062d57600080fd5b506103cb61063c366004614457565b6113f1565b34801561064d57600080fd5b5061041061141c565b6103f9610664366004614531565b6114c5565b34801561067557600080fd5b506103cb6114e0565b34801561068a57600080fd5b5061037061069936600461426b565b6114fd565b3480156106aa57600080fd5b506103f96106b936600461464c565b611526565b3480156106ca57600080fd5b506040805180820190915260018152603760f81b6020820152610410565b3480156106f457600080fd5b506103cb6116fb565b34801561070957600080fd5b506103f96107183660046143b9565b611708565b34801561072957600080fd5b506103cb611729565b34801561073e57600080fd5b506103cb61074d36600461426b565b611736565b34801561075e57600080fd5b506103cb61076d36600461426b565b611744565b34801561077e57600080fd5b506103cb6117dd565b34801561079357600080fd5b506103f96107a236600461426b565b6117f2565b3480156107b357600080fd5b50610370611813565b3480156107c857600080fd5b506103f96107d73660046143b9565b611831565b3480156107e857600080fd5b506107fc6107f736600461426b565b611852565b60405161037d919061474a565b34801561081557600080fd5b506103a661082436600461426b565b6118c5565b34801561083557600080fd5b506103f961084436600461426b565b6118e9565b34801561085557600080fd5b506103cb61190a565b34801561086a57600080fd5b5061087e61087936600461426b565b61191c565b6040805182516001600160a01b0316815260208084015165ffffffffffff16908201529181015163ffffffff169082015260600161037d565b3480156108c357600080fd5b506103a66108d23660046143e1565b61199c565b3480156108e357600080fd5b506108ec6119d2565b60405165ffffffffffff909116815260200161037d565b34801561090f57600080fd5b506103cb600080516020614ffd83398151915281565b34801561093157600080fd5b5060646103cb565b34801561094557600080fd5b506103a66109543660046143b9565b611a41565b34801561096557600080fd5b506103cb611a6f565b34801561097a57600080fd5b506103f96109893660046143b9565b611a7a565b34801561099a57600080fd5b506103cb600081565b3480156109af57600080fd5b50610370611af3565b3480156109c457600080fd5b506103cb6109d336600461475d565b611b11565b3480156109e457600080fd5b506103cb611b90565b3480156109f957600080fd5b50610410604051806040016040528060058152602001640352e302e360dc1b81525081565b348015610a2a57600080fd5b506103f9610a393660046143b9565b611bb5565b348015610a4a57600080fd5b506103f9610a593660046143b9565b611bd6565b348015610a6a57600080fd5b506103cb611bf7565b348015610a7f57600080fd5b506103cb611c0c565b348015610a9457600080fd5b506103cb610aa3366004614457565b611c35565b348015610ab457600080fd5b506103f9610ac33660046143b9565b611c65565b348015610ad457600080fd5b506103cb600080516020614fdd83398151915281565b348015610af657600080fd5b506103cb610b0536600461426b565b611c86565b348015610b1657600080fd5b506103cb610b2536600461426b565b611cb5565b348015610b3657600080fd5b506103a6610b4536600461426b565b611d09565b348015610b5657600080fd5b506103f9610b653660046143e1565b611d14565b348015610b7657600080fd5b506103a6610b85366004614457565b611d30565b348015610b9657600080fd5b50610410611db0565b348015610bab57600080fd5b506103f9610bba36600461479d565b611dd0565b348015610bcb57600080fd5b506103f9610bda36600461481c565b611df1565b348015610beb57600080fd5b506103cb610bfa36600461475d565b612209565b348015610c0b57600080fd5b506103cb600080516020614f3c83398151915281565b348015610c2d57600080fd5b506103f9610c3c36600461426b565b612225565b348015610c4d57600080fd5b506103cb600080516020614f9d83398151915281565b348015610c6f57600080fd5b506103cb610c7e36600461426b565b612246565b348015610c8f57600080fd5b506103cb610c9e36600461426b565b612251565b348015610caf57600080fd5b50610370612274565b600080610cc361227f565b600301546001600160a01b031692915050565b6000610ce1826122a3565b92915050565b6000610cf16122c8565b905090565b600080516020614f3c833981519152610d0e816122e0565b610d17826122ed565b5050565b60606000610d276122f6565b9050806000018054610d3890614946565b80601f0160208091040260200160405190810160405280929190818152602001828054610d6490614946565b8015610db15780601f10610d8657610100808354040283529160200191610db1565b820191906000526020600020905b815481529060010190602001808311610d9457829003601f168201915b505050505091505090565b600080610dc761231a565b60009384526003016020525050604090205490565b600080610de761231a565b60009384526002016020525050604090205490565b600080610e0761233e565b60009384526001016020525050604090206002015490565b600080610e2a61227f565b600101546001600160a01b031692915050565b600080610e48612362565b60009384526020525050604090206001015490565b60606000610e69612386565b6000848152600282016020908152604080832080548251818502810185019093528083529495509293909291830182828015610ec457602002820191906000526020600020905b815481526020019060010190808311610eb0575b505050505090506000815190506000816001600160401b03811115610eeb57610eeb614479565b604051908082528060200260200182016040528015610f6357816020015b610f506040518060c001604052806000801916815260200160006001600160a01b031681526020016060815260200160608152602001600081526020016000151581525090565b815260200190600190039081610f095790505b50905060005b8281101561103457610f7961112c565b6001600160a01b031663785d6e18858381518110610f9957610f99614980565b60200260200101516040518263ffffffff1660e01b8152600401610fbf91815260200190565b600060405180830381865afa158015610fdc573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261100491908101906149f6565b82828151811061101657611016614980565b6020026020010181905250808061102c90614ad2565b915050610f69565b5095945050505050565b6002600061104a6123aa565b8054909150600160401b900460ff1680611071575080546001600160401b03808416911610155b1561108f5760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160481b0319166001600160401b03831617600160401b1781556110b7836123ce565b805460ff60401b19168155604051600080516020614f5c833981519152906110e0908490614aeb565b60405180910390a1505050565b6110f682610e3d565b6110ff816122e0565b6111098383612405565b50505050565b60008061111a6124ad565b60009384526020525050604090205490565b60008061113761227f565b546001600160a01b031692915050565b6000806111526124ad565b60009384526001016020525050604090205460ff1690565b611173816118c5565b156111df5760405162461bcd60e51b815260206004820152603160248201527f58416c6c6f636174696f6e566f74696e67476f7665726e6f723a20726f756e64604482015270081a5cc81b9bdd08195b991959081e595d607a1b60648201526084015b60405180910390fd5b60006111e96124ad565b90508160010361121e57600091825260208181526040808420600190819055928301909152909120805460ff19169091179055565b600261122983611309565b600281111561123a5761123a614411565b0361126a57600082815260208281526040808320949094556001928301905291909120805460ff19169091179055565b600161127583611309565b600281111561128657611286614411565b03610d1757806000611299600185614aff565b8152602080820192909252604090810160009081205485825284845282822055600180850190935220805460ff191690911790555050565b6001600160a01b03811633146112fa5760405163334bd91960e11b815260040160405180910390fd5b61130482826124d1565b505050565b60008061131583611c86565b90508060000361133b576040516333b4e31b60e21b8152600481018490526024016111d6565b60006113456119d2565b65ffffffffffff169050600061135a85611cb5565b905081811061136e57506000949350505050565b61137785611d09565b61138657506001949350505050565b506002949350505050565b60008061139c61233e565b6000948552600101602090815260408086206001600160a01b0395909516865260049094019052505090205460ff1690565b6000806113d961233e565b60009384526001016020525050604090206005015490565b6000806113fc61233e565b600094855260010160209081526040808620948652939052505090205490565b6060611426612274565b6001600160a01b0316634bf5d7e96040518163ffffffff1660e01b8152600401600060405180830381865afa92505050801561148457506040513d6000823e601f3d908101601f191682016040526114819190810190614b12565b60015b6114c0575060408051808201909152601d81527f6d6f64653d626c6f636b6e756d6265722666726f6d3d64656661756c74000000602082015290565b919050565b6114cd612549565b6114d6826125f0565b610d178282612608565b60006114ea6126bc565b50600080516020614fbd83398151915290565b600080611508612386565b6000938452600101602052505060409020546001600160a01b031690565b611539836115346000612705565b612728565b5080518251146115af5760405162461bcd60e51b815260206004820152603b60248201527f58416c6c6f636174696f6e566f74696e67476f7665726e6f723a20617070732060448201527a0c2dcc840eecad2ced0e8e640d8cadccee8d040dad2e6dac2e8c6d602b1b60648201526084016111d6565b60008251116116175760405162461bcd60e51b815260206004820152602e60248201527f58416c6c6f636174696f6e566f74696e67476f7665726e6f723a206e6f20617060448201526d3839903a37903b37ba32903337b960911b60648201526084016111d6565b60006116216116fb565b905060008061162e610cb8565b6001600160a01b031663d0ebb0ee3361164686612767565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015265ffffffffffff166024820152604401600060405180830381865afa158015611697573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526116bf9190810190614b46565b91509150816116e55733816040516344c4534960e01b81526004016111d6929190614b94565b336116f287828888612795565b50505050505050565b6000610cf1610b05611a6f565b600080516020614ffd833981519152611720816122e0565b610d1782612cc5565b6000610cf1610b25611a6f565b6000610ce1610c7e83611c86565b60008061174f612db3565b8054909150600082611762600184614aff565b8154811061177257611772614980565b6000918252602090912001805490915065ffffffffffff811690600160301b90046001600160d01b03168682116117b6576001600160d01b03169695505050505050565b6117c96117c288612767565b8690612dd7565b6001600160d01b0316979650505050505050565b6000806117e861233e565b6002015492915050565b600080516020614f3c83398151915261180a816122e0565b610d1782612e8d565b60008061181e61227f565b600401546001600160a01b031692915050565b600080516020614f3c833981519152611849816122e0565b610d1782612f2c565b6060600061185e612386565b600084815260028201602090815260409182902080548351818402810184019094528084529394509192908301828280156118b857602002820191906000526020600020905b8154815260200190600101908083116118a4575b5050505050915050919050565b6000806118d183611309565b60028111156118e2576118e2614411565b1492915050565b600080516020614f3c833981519152611901816122e0565b610d1782612fd7565b60008061191561231a565b5492915050565b6040805160608101825260008082526020820181905291810182905290611941612386565b60009384526001016020908152604093849020845160608101865290546001600160a01b0381168252600160a01b810465ffffffffffff1692820192909252600160d01b90910463ffffffff16938101939093525090919050565b6000806119a7612362565b6000948552602090815260408086206001600160a01b03959095168652939052505090205460ff1690565b60006119dc612274565b6001600160a01b03166391ddadf46040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015611a35575060408051601f3d908101601f19168201909252611a3291810190614bb8565b60015b6114c057610cf1612fe0565b600080611a4c61233e565b6001600160a01b0390931660009081526020939093525050604090205460ff1690565b600080611915612386565b60076000611a866123aa565b8054909150600160401b900460ff1680611aad575080546001600160401b03808416911610155b15611acb5760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160481b0319166001600160401b03831617600160401b1781556110b783612feb565b600080611afe61227f565b600201546001600160a01b031692915050565b6000611b1b611813565b6001600160a01b031663a56b576584846040518363ffffffff1660e01b8152600401611b48929190614be0565b602060405180830381865afa158015611b65573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b899190614bf9565b9392505050565b600080611b9b612db3565b9050611ba681612ff3565b6001600160d01b031691505090565b600080516020614ffd833981519152611bcd816122e0565b610d178261302c565b600080516020614f3c833981519152611bee816122e0565b610d1782613121565b600080611c0261231a565b6001015492915050565b6000600080516020614fdd833981519152611c26816122e0565b611c2e6131a9565b91505b5090565b600080611c4061233e565b6000948552600190810160209081526040808720958752949091019052505090205490565b600080516020614ffd833981519152611c7d816122e0565b610d1782613249565b600080611c91612386565b600093845260010160205250506040902054600160a01b900465ffffffffffff1690565b600080611cc0612386565b6000848152600182016020526040902054909150611cfa90600160d01b810463ffffffff1690600160a01b900465ffffffffffff16614c12565b65ffffffffffff169392505050565b6000610ce182613336565b611d1d82610e3d565b611d26816122e0565b61110983836124d1565b6000611d3a61112c565b6001600160a01b031663d2570b9484611d5285611c86565b6040518363ffffffff1660e01b8152600401611d6f929190614c31565b602060405180830381865afa158015611d8c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b899190614c3f565b6060604051806060016040528060218152602001614f7c60219139905090565b600080516020614f3c833981519152611de8816122e0565b610d1782613355565b6000611dfb6123aa565b805490915060ff600160401b82041615906001600160401b0316600081158015611e225750825b90506000826001600160401b03166001148015611e3e5750303b155b905081158015611e4c575080155b15611e6a5760405163f92ee8a960e01b815260040160405180910390fd5b84546001600160401b03191660011785558315611e9357845460ff60401b1916600160401b1785555b85516001600160a01b0316611f005760405162461bcd60e51b815260206004820152602d60248201527f58416c6c6f636174696f6e566f74696e673a20696e76616c696420564f54332060448201526c746f6b656e206164647265737360981b60648201526084016111d6565b60808601516001600160a01b0316611f725760405162461bcd60e51b815260206004820152602f60248201527f58416c6c6f636174696f6e566f74696e673a20696e76616c696420566f74657260448201526e52657761726473206164647265737360881b60648201526084016111d6565b60a08601516001600160a01b0316611fe15760405162461bcd60e51b815260206004820152602c60248201527f58416c6c6f636174696f6e566f74696e673a20696e76616c696420456d69737360448201526b696f6e73206164647265737360a01b60648201526084016111d6565b6120136040518060400160405280601181526020017058416c6c6f636174696f6e566f74696e6760781b815250613486565b61202b8661012001518760a001518860800151613497565b61203886604001516134aa565b6120468661018001516134bb565b8551612051906134cc565b61205e86602001516134dd565b6120728661014001518761016001516134ee565b61207a613500565b612082613500565b61208a61350c565b61209261350c565b60005b8660c001515181101561216f5760006001600160a01b03168760c0015182815181106120c3576120c3614980565b60200260200101516001600160a01b0316036121325760405162461bcd60e51b815260206004820152602860248201527f58416c6c6f636174696f6e566f74696e673a20696e76616c69642061646d696e604482015267206164647265737360c01b60648201526084016111d6565b61215c6000801b8860c00151838151811061214f5761214f614980565b6020026020010151612405565b508061216781614ad2565b915050612095565b5061218c600080516020614f9d8339815191528760e00151612405565b506121a9600080516020614f3c8339815191528760600151612405565b506121c7600080516020614ffd833981519152876101000151612405565b50831561220157845460ff60401b19168555604051600080516020614f5c833981519152906121f890600190614aeb565b60405180910390a15b505050505050565b6000611b89838360405180602001604052806000815250613514565b600080516020614f3c83398151915261223d816122e0565b610d1782613594565b6000610ce18261363c565b60008061225c61233e565b60009384526001016020525050604090206003015490565b6000806111376136d3565b7f1da8cbbb2b12987a437595605432a6bbe84c08e9685afaaee593f05659f50d0090565b60006001600160e01b03198216637965db0b60e01b1480610ce15750610ce1826136f7565b6000806122d361372c565b5463ffffffff1692915050565b6122ea8133613750565b50565b6122ea8161377b565b7f7fb63bcd433c69110ad961bfbe38aef51814cbb9e11af6fe21011ae43fb4be0090565b7fc74db4e191410c7a6c18f14684e1218b5e87c449d0f81ab47e8c67bf971c350090565b7fa760c041d4a9fa3a2c67d0d325f3592ba2c7e4330f7ba2283ebf9fe63913d50090565b7f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b62680090565b7f0f5210c47c3bb73c471770a1cbb5b7ddc03c0ec886694cc17ae21d1f595f190090565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0090565b6123d6613817565b60006123e061227f565b60030180546001600160a01b0319166001600160a01b03939093169290921790915550565b600080612410612362565b905061241c848461199c565b61249c576000848152602082815260408083206001600160a01b03871684529091529020805460ff191660011790556124523390565b6001600160a01b0316836001600160a01b0316857f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a46001915050610ce1565b6000915050610ce1565b5092915050565b7f7dd3251b9882a8b07dc283a0b43197aa2be3a6af1a7f0284070fe5d86e50250090565b6000806124dc612362565b90506124e8848461199c565b1561249c576000848152602082815260408083206001600160a01b0387168085529252808320805460ff1916905551339287917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a46001915050610ce1565b306001600160a01b037f000000000000000000000000358fa84957c534a16f191e99cb1652326050e8eb1614806125d057507f000000000000000000000000358fa84957c534a16f191e99cb1652326050e8eb6001600160a01b03166125c4600080516020614fbd833981519152546001600160a01b031690565b6001600160a01b031614155b156125ee5760405163703e46dd60e11b815260040160405180910390fd5b565b600080516020614f9d833981519152610d17816122e0565b816001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015612662575060408051601f3d908101601f1916820190925261265f91810190614bf9565b60015b6126815781604051634c9c8ce360e01b81526004016111d6919061422d565b600080516020614fbd83398151915281146126b257604051632a87526960e21b8152600481018290526024016111d6565b611304838361383c565b306001600160a01b037f000000000000000000000000358fa84957c534a16f191e99cb1652326050e8eb16146125ee5760405163703e46dd60e11b815260040160405180910390fd5b600081600281111561271957612719614411565b600160ff919091161b92915050565b60008061273484611309565b905060008361274283612705565b1603611b89578381846040516321b2b5ab60e11b81526004016111d693929190614c5a565b600065ffffffffffff821115611c31576030826040516306dfcc6560e41b81526004016111d6929190614c7c565b61279f8484611391565b156127bf57826040516371c6af4960e01b81526004016111d6919061422d565b60006127c961233e565b905060006127d686611c86565b905060008060006127e78885613892565b905060005b8751811015612ad45760005b818110156128645788818151811061281257612812614980565b602002602001015189838151811061282c5761282c614980565b60200260200101510361285257604051632367acf760e21b815260040160405180910390fd5b8061285c81614ad2565b9150506127f8565b5086818151811061287757612877614980565b60200260200101518461288a9190614c8f565b9350818411156128ad57604051630cc9baf760e01b815260040160405180910390fd5b6128d08882815181106128c2576128c2614980565b60200260200101518b611d30565b61290a578781815181106128e6576128e6614980565b60200260200101516040516325c5391960e11b81526004016111d691815260200190565b60008660010160008c815260200190815260200160002060010160008a848151811061293857612938614980565b602002602001015181526020019081526020016000205490506000670de0b6b3a764000089848151811061296e5761296e614980565b6020026020010151116129a957633b9aca0089848151811061299257612992614980565b60200260200101516129a49190614cb8565b6129cb565b6129cb8984815181106129be576129be614980565b60200260200101516138c1565b905060006129d98284614c8f565b90506129e58380614cda565b6129ef8280614cda565b6129f99190614aff565b612a039087614c8f565b9550808960010160008f815260200190815260200160002060010160008d8781518110612a3257612a32614980565b6020026020010151815260200190815260200160002081905550898481518110612a5e57612a5e614980565b60200260200101518960010160008f815260200190815260200160002060000160008d8781518110612a9257612a92614980565b602002602001015181526020019081526020016000206000828254612ab79190614c8f565b925050819055505050508080612acc90614ad2565b9150506127ec565b50612add6117dd565b831015612b0857612aec6117dd565b8360405163742f62c360e01b81526004016111d6929190614c31565b600089815260018601602052604081206003018054849290612b2b908490614c8f565b9091555050600089815260018601602052604081206002018054859290612b53908490614c8f565b909155505060008981526001868101602081815260408085206001600160a01b038e168652600481018352908520805460ff19169094179093558c845252600501805491612ba083614ad2565b90915550506001600160a01b03881660009081526020869052604090205460ff16612be9576001600160a01b0388166000908152602086905260409020805460ff191660011790555b612bf1611af3565b6001600160a01b0316632f18339d858a86612c0b886138c1565b6040516001600160e01b031960e087901b16815260048101949094526001600160a01b03909216602484015260448301526064820152608401600060405180830381600087803b158015612c5e57600080fd5b505af1158015612c72573d6000803e3d6000fd5b5050505088886001600160a01b03167fe2d0d542af9cdd3e0ef4ace292fc5e9dd654164e63920ea9b58c435492af84e28989604051612cb2929190614cf1565b60405180910390a3505050505050505050565b6001600160a01b038116612d3c5760405162461bcd60e51b815260206004820152603860248201527f58416c6c6f636174696f6e566f74696e67476f7665726e6f723a20656d697373604482015277696f6e7320697320746865207a65726f206164647265737360401b60648201526084016111d6565b6000612d4661227f565b60018101546040519192507f602f97505d28fb0206888a82df7cb072ec7ff056c77134b64368322bcb9f5aba91612d88916001600160a01b0316908590614d48565b60405180910390a160010180546001600160a01b0319166001600160a01b0392909216919091179055565b7f49d99284d013647f52e2a267fd5944583bd36be17443e784ec3e86bbd4c3240090565b815460009081816005811115612e36576000612df2846138c1565b612dfc9085614aff565b60008881526020902090915081015465ffffffffffff9081169087161015612e2657809150612e34565b612e31816001614c8f565b92505b505b6000612e44878785856139a9565b90508015612e7f57612e6987612e5b600184614aff565b600091825260209091200190565b54600160301b90046001600160d01b0316612e82565b60005b979650505050505050565b6064811115612f185760405162461bcd60e51b815260206004820152604b60248201527f58416c6c6f636174696f6e566f74696e67476f7665726e6f723a20417070207360448201527f686172657320636170206d757374206265206c657373207468616e206f72206560648201526a07175616c20746f203130360ac1b608482015260a4016111d6565b6000612f2261231a565b6001019190915550565b6001600160a01b038116612fa85760405162461bcd60e51b815260206004820152603f60248201527f58416c6c6f636174696f6e566f74696e67476f7665726e6f723a206e6577204260448201527f335452476f7665726e6f7220697320746865207a65726f20616464726573730060648201526084016111d6565b6000612fb261227f565b60040180546001600160a01b0319166001600160a01b03939093169290921790915550565b6122ea81613a0b565b6000610cf143612767565b612fa8613817565b805460009080156130235761300d83612e5b600184614aff565b54600160301b90046001600160d01b0316611b89565b60009392505050565b6001600160a01b0381166130aa576040805162461bcd60e51b81526020600482015260248101919091527f58416c6c6f636174696f6e566f74696e67476f7665726e6f723a206e6577207660448201527f6f746572207265776172647320697320746865207a65726f206164647265737360648201526084016111d6565b60006130b461227f565b60028101546040519192507f285472e909a94733ed110e0aa70b4e9265635781731772845338790bd58d09c4916130f6916001600160a01b0316908590614d48565b60405180910390a160020180546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0381166123d65760405162461bcd60e51b815260206004820152604360248201527f58416c6c6f636174696f6e566f74696e67476f7665726e6f723a206e6577205660448201527f6542657474657250617373706f727420697320746865207a65726f206164647260648201526265737360e81b608482015260a4016111d6565b600033816131b5611a6f565b90508015613239576131c6816118c5565b156132395760405162461bcd60e51b815260206004820152603f60248201527f58416c6c6f636174696f6e566f74696e67476f7665726e6f723a20746865726560448201527f2063616e206265206f6e6c79206f6e6520726f756e64207065722074696d650060648201526084016111d6565b61324282613a5a565b9250505090565b6001600160a01b0381166132c55760405162461bcd60e51b815260206004820152603d60248201527f58416c6c6f636174696f6e566f74696e67476f7665726e6f723a206e6577205860448201527f324561726e4170707320697320746865207a65726f206164647265737300000060648201526084016111d6565b60006132cf61227f565b80546040519192507f6183e90e12923ae97651b48be341fb5bcfd7bb63a987353dbcf962851011974d9161330e916001600160a01b0316908590614d48565b60405180910390a180546001600160a01b0319166001600160a01b0392909216919091179055565b600061334182610dfc565b61334d610c7e84611c86565b111592915050565b8063ffffffff1660000361337f5760405163f1cfbf0560e01b8152600060048201526024016111d6565b6000613389610e1f565b6001600160a01b0316635bec4cb46040518163ffffffff1660e01b8152600401602060405180830381865afa1580156133c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133ea9190614bf9565b9050808263ffffffff161061341a5760405163f1cfbf0560e01b815263ffffffff831660048201526024016111d6565b600061342461372c565b80546040805163ffffffff928316815291861660208301529192507f7e3f7f0708a84de9203036abaa450dccc85ad5ff52f78c170f3edb55cf5e8828910160405180910390a1805463ffffffff191663ffffffff939093169290921790915550565b61348e613817565b6122ea81613c76565b61349f613817565b611304838383613c95565b6134b2613817565b6122ea81613ce7565b6134c3613817565b6122ea81613cf8565b6134d4613817565b6122ea81613d14565b6134e5613817565b6122ea81613d48565b6134f6613817565b610d178282613d50565b613508613817565b6125ee5b6125ee613817565b600061351e612274565b6001600160a01b0316633a46b1a885856040518363ffffffff1660e01b815260040161354b929190614be0565b602060405180830381865afa158015613568573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061358c9190614bf9565b949350505050565b606481111561362b5760405162461bcd60e51b815260206004820152605760248201527f58416c6c6f636174696f6e566f74696e67476f7665726e6f723a20426173652060448201527f616c6c6f636174696f6e2070657263656e74616765206d757374206265206c6560648201527607373207468616e206f7220657175616c20746f2031303604c1b608482015260a4016111d6565b600061363561231a565b9190915550565b6000606461364983611744565b613651612274565b6001600160a01b0316638e539e8c856040518263ffffffff1660e01b815260040161367e91815260200190565b602060405180830381865afa15801561369b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906136bf9190614bf9565b6136c99190614cda565b610ce19190614cb8565b7f6eb1bf0a160cdf1b5e63f5e5c6b310f6c2542cd9e2a47ff1bc977c526dfab50090565b60006001600160e01b03198216639d53f06d60e01b1480610ce157506301ffc9a760e01b6001600160e01b0319831614610ce1565b7fd69d068053671881d25a4d751dcad1e692749d9b24184f608cb1d01af3a9990090565b61375a828261199c565b610d1757808260405163e2517d3f60e01b81526004016111d6929190614be0565b6064808211156137a257818160405163243e544560e01b81526004016111d6929190614c31565b60006137ac611b90565b905060006137b8612db3565b90506137d66137c56119d2565b6137ce86613d6a565b839190613d99565b50507f0553476bf02ef2726e8ce5ced78d63e26e602e4a2257b1f559418e24b46339978285604051613809929190614c31565b60405180910390a150505050565b61381f613db4565b6125ee57604051631afcd79f60e31b815260040160405180910390fd5b61384582613dce565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a280511561388a576113048282613e2a565b610d17613e97565b60008061389f8484611b11565b90506000816138ae8686612209565b6138b89190614c8f565b95945050505050565b6000816000036138d357506000919050565b600060016138e084613eb6565b901c6001901b905060018184816138f9576138f9614ca2565b048201901c9050600181848161391157613911614ca2565b048201901c9050600181848161392957613929614ca2565b048201901c9050600181848161394157613941614ca2565b048201901c9050600181848161395957613959614ca2565b048201901c9050600181848161397157613971614ca2565b048201901c9050600181848161398957613989614ca2565b048201901c9050611b89818285816139a3576139a3614ca2565b04613f4a565b60005b81831015613a035760006139c08484613f60565b60008781526020902090915065ffffffffffff86169082015465ffffffffffff1611156139ef578092506139fd565b6139fa816001614c8f565b93505b506139ac565b509392505050565b6000613a1561233e565b90507fa5b41e1bd59a5a33422f0b660829ff7686aed2198167061e3c6c21fdcc259f05816002015483604051613a4c929190614c31565b60405180910390a160020155565b600080613a65612386565b90508060000160008154613a7890614ad2565b9091555080546000818152600183016020526040902054909250600160a01b900465ffffffffffff1615613ace5781613ab083611309565b6040516321b2b5ab60e11b81526111d6929190600090600401614c5a565b6001821115613ae557613ae561058f600184614aff565b6000613aef61112c565b6001600160a01b031663c04cff196040518163ffffffff1660e01b8152600401600060405180830381865afa158015613b2c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052613b549190810190614d62565b600084815260028401602090815260409091208251929350613b7a9290918401906141d6565b50613b8483613f7b565b6000613b8e6119d2565b65ffffffffffff1690506000613ba2610ce7565b6000868152600186016020526040902080546001600160a01b0319166001600160a01b038916178155909150613bd783612767565b815465ffffffffffff91909116600160a01b0265ffffffffffff60a01b19909116178155613c0482613fb4565b815463ffffffff91909116600160d01b0263ffffffff60d01b199091161781557fed97f3daa22d7f521cfac2156e927c837565dd6980bd67cc6f7e53cc52ea09c8868885613c528682614c8f565b88604051613c64959493929190614de7565b60405180910390a15050505050919050565b613c7e613817565b6000613c886122f6565b9050806113048382614e60565b613c9d613817565b6000613ca761227f565b80546001600160a01b03199081166001600160a01b0396871617825560018201805482169587169590951790945560020180549093169190931617905550565b613cef613817565b6122ea81613355565b613d00613817565b6000613d0a61233e565b6002019190915550565b613d1c613817565b6000613d266136d3565b80546001600160a01b0319166001600160a01b03939093169290921790915550565b6122ed613817565b613d58613817565b613d6182613594565b610d1781612e8d565b60006001600160d01b03821115611c315760d0826040516306dfcc6560e41b81526004016111d6929190614c7c565b600080613da7858585613fe0565b915091505b935093915050565b6000613dbe6123aa565b54600160401b900460ff16919050565b806001600160a01b03163b600003613dfb5780604051634c9c8ce360e01b81526004016111d6919061422d565b600080516020614fbd83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b031684604051613e479190614f1f565b600060405180830381855af49150503d8060008114613e82576040519150601f19603f3d011682016040523d82523d6000602084013e613e87565b606091505b50915091506138b885838361415a565b34156125ee5760405163b398979f60e01b815260040160405180910390fd5b600080608083901c15613ecb57608092831c92015b604083901c15613edd57604092831c92015b602083901c15613eef57602092831c92015b601083901c15613f0157601092831c92015b600883901c15613f1357600892831c92015b600483901c15613f2557600492831c92015b600283901c15613f3757600292831c92015b600183901c15610ce15760010192915050565b6000818310613f595781611b89565b5090919050565b6000613f6f6002848418614cb8565b611b8990848416614c8f565b6000613f8561231a565b805460009384526002820160209081526040808620929092556001830154600390930190529092209190915550565b600063ffffffff821115611c31576020826040516306dfcc6560e41b81526004016111d6929190614c7c565b8254600090819080156140ff576000613ffe87612e5b600185614aff565b60408051808201909152905465ffffffffffff808216808452600160301b9092046001600160d01b03166020840152919250908716101561405257604051632520601d60e01b815260040160405180910390fd5b805165ffffffffffff80881691160361409e578461407588612e5b600186614aff565b80546001600160d01b0392909216600160301b0265ffffffffffff9092169190911790556140ef565b6040805180820190915265ffffffffffff80881682526001600160d01b0380881660208085019182528b54600181018d5560008d81529190912094519151909216600160301b029216919091179101555b602001519250839150613dac9050565b50506040805180820190915265ffffffffffff80851682526001600160d01b0380851660208085019182528854600181018a5560008a815291822095519251909316600160301b029190931617920191909155905081613dac565b60608261416f5761416a826141ad565b611b89565b815115801561418657506001600160a01b0384163b155b156141a65783604051639996b31560e01b81526004016111d6919061422d565b5080611b89565b8051156141bd5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b828054828255906000526020600020908101928215614211579160200282015b828111156142115782518255916020019190600101906141f6565b50611c319291505b80821115611c315760008155600101614219565b6001600160a01b0391909116815260200190565b60006020828403121561425357600080fd5b81356001600160e01b031981168114611b8957600080fd5b60006020828403121561427d57600080fd5b5035919050565b60005b8381101561429f578181015183820152602001614287565b50506000910152565b600081518084526142c0816020860160208601614284565b601f01601f19169290920160200192915050565b602081526000611b8960208301846142a8565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b8381101561439657888303603f19018552815180518452878101516001600160a01b0316888501528681015160c08886018190529061434f828701826142a8565b9150506060808301518683038288015261436983826142a8565b6080858101519089015260a09485015115159490970193909352505050938601939086019060010161430e565b509098975050505050505050565b6001600160a01b03811681146122ea57600080fd5b6000602082840312156143cb57600080fd5b8135611b89816143a4565b80356114c0816143a4565b600080604083850312156143f457600080fd5b823591506020830135614406816143a4565b809150509250929050565b634e487b7160e01b600052602160045260246000fd5b6003811061444557634e487b7160e01b600052602160045260246000fd5b9052565b60208101610ce18284614427565b6000806040838503121561446a57600080fd5b50508035926020909101359150565b634e487b7160e01b600052604160045260246000fd5b6040516101a081016001600160401b03811182821017156144b2576144b2614479565b60405290565b60405160c081016001600160401b03811182821017156144b2576144b2614479565b604051601f8201601f191681016001600160401b038111828210171561450257614502614479565b604052919050565b60006001600160401b0382111561452357614523614479565b50601f01601f191660200190565b6000806040838503121561454457600080fd5b823561454f816143a4565b915060208301356001600160401b0381111561456a57600080fd5b8301601f8101851361457b57600080fd5b803561458e6145898261450a565b6144da565b8181528660208385010111156145a357600080fd5b816020840160208301376000602083830101528093505050509250929050565b60006001600160401b038211156145dc576145dc614479565b5060051b60200190565b600082601f8301126145f757600080fd5b81356020614607614589836145c3565b82815260059290921b8401810191818101908684111561462657600080fd5b8286015b84811015614641578035835291830191830161462a565b509695505050505050565b60008060006060848603121561466157600080fd5b833592506020808501356001600160401b038082111561468057600080fd5b818701915087601f83011261469457600080fd5b81356146a2614589826145c3565b81815260059190911b8301840190848101908a8311156146c157600080fd5b938501935b828510156146df578435825293850193908501906146c6565b9650505060408701359250808311156146f757600080fd5b5050614705868287016145e6565b9150509250925092565b600081518084526020808501945080840160005b8381101561473f57815187529582019590820190600101614723565b509495945050505050565b602081526000611b89602083018461470f565b6000806040838503121561477057600080fd5b823561477b816143a4565b946020939093013593505050565b803563ffffffff811681146114c057600080fd5b6000602082840312156147af57600080fd5b611b8982614789565b600082601f8301126147c957600080fd5b813560206147d9614589836145c3565b82815260059290921b840181019181810190868411156147f857600080fd5b8286015b8481101561464157803561480f816143a4565b83529183019183016147fc565b60006020828403121561482e57600080fd5b81356001600160401b038082111561484557600080fd5b908301906101a0828603121561485a57600080fd5b61486261448f565b61486b836143d6565b81526020830135602082015261488360408401614789565b6040820152614894606084016143d6565b60608201526148a5608084016143d6565b60808201526148b660a084016143d6565b60a082015260c0830135828111156148cd57600080fd5b6148d9878286016147b8565b60c0830152506148eb60e084016143d6565b60e082015261010091506149008284016143d6565b8282015261012091506149148284016143d6565b918101919091526101408281013590820152610160808301359082015261018091820135918101919091529392505050565b600181811c9082168061495a57607f821691505b60208210810361497a57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b80516114c0816143a4565b600082601f8301126149b257600080fd5b81516149c06145898261450a565b8181528460208386010111156149d557600080fd5b61358c826020830160208701614284565b805180151581146114c057600080fd5b600060208284031215614a0857600080fd5b81516001600160401b0380821115614a1f57600080fd5b9083019060c08286031215614a3357600080fd5b614a3b6144b8565b82518152614a4b60208401614996565b6020820152604083015182811115614a6257600080fd5b614a6e878286016149a1565b604083015250606083015182811115614a8657600080fd5b614a92878286016149a1565b60608301525060808301516080820152614aae60a084016149e6565b60a082015295945050505050565b634e487b7160e01b600052601160045260246000fd5b600060018201614ae457614ae4614abc565b5060010190565b6001600160401b0391909116815260200190565b81810381811115610ce157610ce1614abc565b600060208284031215614b2457600080fd5b81516001600160401b03811115614b3a57600080fd5b61358c848285016149a1565b60008060408385031215614b5957600080fd5b614b62836149e6565b60208401519092506001600160401b03811115614b7e57600080fd5b614b8a858286016149a1565b9150509250929050565b6001600160a01b038316815260406020820181905260009061358c908301846142a8565b600060208284031215614bca57600080fd5b815165ffffffffffff81168114611b8957600080fd5b6001600160a01b03929092168252602082015260400190565b600060208284031215614c0b57600080fd5b5051919050565b65ffffffffffff8181168382160190808211156124a6576124a6614abc565b918252602082015260400190565b600060208284031215614c5157600080fd5b611b89826149e6565b83815260608101614c6e6020830185614427565b826040830152949350505050565b60ff929092168252602082015260400190565b80820180821115610ce157610ce1614abc565b634e487b7160e01b600052601260045260246000fd5b600082614cd557634e487b7160e01b600052601260045260246000fd5b500490565b8082028115828204841417610ce157610ce1614abc565b604081526000614d04604083018561470f565b82810360208481019190915284518083528582019282019060005b81811015614d3b57845183529383019391830191600101614d1f565b5090979650505050505050565b6001600160a01b0392831681529116602082015260400190565b60006020808385031215614d7557600080fd5b82516001600160401b03811115614d8b57600080fd5b8301601f81018513614d9c57600080fd5b8051614daa614589826145c3565b81815260059190911b82018301908381019087831115614dc957600080fd5b928401925b82841015612e8257835182529284019290840190614dce565b85815260018060a01b038516602082015283604082015282606082015260a060808201526000612e8260a083018461470f565b601f82111561130457600081815260208120601f850160051c81016020861015614e415750805b601f850160051c820191505b8181101561220157828155600101614e4d565b81516001600160401b03811115614e7957614e79614479565b614e8d81614e878454614946565b84614e1a565b602080601f831160018114614ec25760008415614eaa5750858301515b600019600386901b1c1916600185901b178555612201565b600085815260208120601f198616915b82811015614ef157888601518255948401946001909101908401614ed2565b5085821015614f0f5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008251614f31818460208701614284565b919091019291505056fe71840dc4906352362b0cdaf79870196c8e42acafade72d5d5a6d59291253ceb1c7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2737570706f72743d782d616c6c6f636174696f6e732671756f72756d3d6175746f189ab7a9244df0848122154315af71fe140f3db0fe014031783b0946b8c9d2e3360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc2b53661063988f1ad36e0a49d4d9a6a3106652aaeed2be542c8691d5f5fd168b56af926aa3845d4dc63a6c773ed36f51794728c97ebcd1bf845bcecb16eeb6b7a26469706673582212207120987093ef4eb04fd78b5ffab4e2591925d8c022245b8f7864ceceac1c783264736f6c63430008140033