VeChain
Explorer
Testnet
Search
Networks
Main
Test
Contract
0x91fDaE…87c9
Summary
Transactions
Transfers
Address
0x91fDaEfC30B09725AcCac155B2C9E878014987c9
VET
0.00
VET
VTHO
0.00
VTHO
Master
0xf077b491b355E64048cE21E3A6Fc4751eEeA77fa
Deployer
0xf077b491b355E64048cE21E3A6Fc4751eEeA77fa
Code
0x6080604052600436106103155760003560e01c806301ffc9a71461031a57806303bc087f1461034f5780630765ef60146103715780630ab12e14146103935780630ad0e45f146103b35780630bf4f68e146103d35780630cb212e1146103f35780630e1fb61a14610413578063169efd47146104335780631772503b14610453578063228cf42f14610480578063248a9ca3146104a35780632589a49d146104c35780632b5f3879146104e35780632c35f428146104f85780632e87d31f146105185780632f2ff15d1461054557806334b0e6b31461056557806336568abe14610585578063416c0f74146105a557806342c89f52146105d257806344bb58f7146105f25780634bf5d7e9146106125780634f1ef286146106275780634f77fe121461063a57806350ef5d791461065a57806352d1902d1461067a57806354933bf01461068f57806354fd4d50146106af57806355f804b3146106d9578063594ae848146106f9578063607bfb24146107195780636165267c1461073957806361b215a11461075957806369ad5156146107795780636a0ae325146104805780636b623bbe146107995780636c0360eb146107b95780636f4e093f146107ce5780636f604ab3146107ee578063785d6e181461080e5780637ba532851461083b578063826b9a4e1461085b578063833d29b41461087b578063838021651461089b5780638e3a29dc146108bb5780638ed087ee146108db57806391d14854146108fb57806391ddadf41461091b5780639478401714610947578063a06bb12914610967578063a06db7dc14610987578063a099a1921461099c578063a217fddf146109bc578063acdb9f05146109d1578063ad3cb1cc146109f1578063b58a754714610a22578063c04cff1914610a42578063c7b24f3014610a64578063c996c62414610a84578063d2570b9414610aa4578063d547741f14610ac4578063d5e66e1214610ae4578063d6418b8a14610b11578063e123cd0c14610b26578063e9a1fee414610b46578063f1a962ac14610b66578063f36c8f5c14610b7b578063f72c0d8b14610b9d578063f770337914610bbf575b600080fd5b34801561032657600080fd5b5061033a610335366004614cd9565b610bd4565b60405190151581526020015b60405180910390f35b34801561035b57600080fd5b50610364610c0b565b6040516103469190614dc0565b34801561037d57600080fd5b5061039161038c366004614e30565b610c28565b005b34801561039f57600080fd5b506103916103ae366004614e60565b610cb9565b3480156103bf57600080fd5b5061033a6103ce366004614e9e565b610d03565b3480156103df57600080fd5b506103916103ee366004614ed9565b610de2565b3480156103ff57600080fd5b5061039161040e366004614e9e565b610e07565b34801561041f57600080fd5b5061039161042e366004614ef4565b610e58565b34801561043f57600080fd5b5061039161044e366004614fc3565b610e79565b34801561045f57600080fd5b5061047361046e366004614e60565b610e85565b604051610346919061504b565b34801561048c57600080fd5b50610495606481565b604051908152602001610346565b3480156104af57600080fd5b506104956104be366004614e60565b610eae565b3480156104cf57600080fd5b506103916104de366004614e9e565b610ece565b3480156104ef57600080fd5b50610495610f19565b34801561050457600080fd5b50610473610513366004614e60565b610f2e565b34801561052457600080fd5b50610538610533366004614e60565b610f54565b604051610346919061505f565b34801561055157600080fd5b50610391610560366004614e9e565b610fb7565b34801561057157600080fd5b50610495610580366004615072565b610fd3565b34801561059157600080fd5b506103916105a0366004614e9e565b611003565b3480156105b157600080fd5b506105c56105c0366004614e60565b611036565b60405161034691906150ae565b3480156105de57600080fd5b506104956105ed366004614e60565b6110b3565b3480156105fe57600080fd5b506105c561060d366004614e60565b611176565b34801561061e57600080fd5b506105386112f2565b6103916106353660046150fb565b61136a565b34801561064657600080fd5b50610391610655366004614e60565b611385565b34801561066657600080fd5b5061039161067536600461515e565b6113a6565b34801561068657600080fd5b506104956114c9565b34801561069b57600080fd5b506103916106aa36600461518a565b6114e6565b3480156106bb57600080fd5b506040805180820190915260018152601960f91b6020820152610538565b3480156106e557600080fd5b506103916106f4366004615072565b611531565b34801561070557600080fd5b5061039161071436600461518a565b611545565b34801561072557600080fd5b5061033a610734366004614e60565b611644565b34801561074557600080fd5b50610391610754366004614e9e565b611666565b34801561076557600080fd5b50610495610774366004614e60565b6116b1565b34801561078557600080fd5b506105c5610794366004614e60565b6116d1565b3480156107a557600080fd5b5061033a6107b4366004614e60565b61174c565b3480156107c557600080fd5b5061053861176f565b3480156107da57600080fd5b506103916107e93660046151cf565b611810565b3480156107fa57600080fd5b50610538610809366004614e60565b611a33565b34801561081a57600080fd5b5061082e610829366004614e60565b611ada565b60405161034691906152b8565b34801561084757600080fd5b50610495610856366004614e60565b611b55565b34801561086757600080fd5b50610495610876366004614e60565b611b75565b34801561088757600080fd5b50610391610896366004614e9e565b611b95565b3480156108a757600080fd5b506103916108b6366004614e9e565b611be0565b3480156108c757600080fd5b5061033a6108d6366004614e9e565b611c2b565b3480156108e757600080fd5b506103916108f636600461518a565b611c57565b34801561090757600080fd5b5061033a610916366004614e9e565b611e48565b34801561092757600080fd5b50610930611e7e565b60405165ffffffffffff9091168152602001610346565b34801561095357600080fd5b5061033a610962366004614e60565b611e8d565b34801561097357600080fd5b50610391610982366004614e9e565b611ede565b34801561099357600080fd5b50610495611f29565b3480156109a857600080fd5b5061033a6109b7366004614e60565b611f46565b3480156109c857600080fd5b50610495600081565b3480156109dd57600080fd5b506104956109ec3660046152d8565b611fc7565b3480156109fd57600080fd5b50610538604051806040016040528060058152602001640352e302e360dc1b81525081565b348015610a2e57600080fd5b5061033a610a3d366004614e9e565b612014565b348015610a4e57600080fd5b50610a576120e7565b60405161034691906152f5565b348015610a7057600080fd5b5061033a610a7f366004614e60565b612147565b348015610a9057600080fd5b50610495610a9f36600461532d565b612181565b348015610ab057600080fd5b5061033a610abf36600461518a565b612291565b348015610ad057600080fd5b50610391610adf366004614e9e565b612332565b348015610af057600080fd5b50610b04610aff36600461518a565b61234e565b604051610346919061534a565b348015610b1d57600080fd5b50610a5761252f565b348015610b3257600080fd5b50610391610b4136600461518a565b61253b565b348015610b5257600080fd5b50610391610b613660046153cb565b612586565b348015610b7257600080fd5b506104956125e4565b348015610b8757600080fd5b5061049560008051602061590683398151915281565b348015610ba957600080fd5b5061049560008051602061594683398151915281565b348015610bcb57600080fd5b506103646125ee565b60006001600160e01b03198216637965db0b60e01b1480610c0557506301ffc9a760e01b6001600160e01b03198316145b92915050565b60606000610c1761252f565b9050610c2281612653565b91505090565b600080516020615906833981519152610c4081612841565b610c498361284e565b610c6e5760405163018f58af60e31b8152600481018490526024015b60405180910390fd5b610c7783611644565b15610c8657610c86838361286d565b610c8f83612147565b8015610c99575081155b15610ca957610ca9836001612a07565b610cb4838315612b22565b505050565b600081610cc68233611e48565b158015610cda5750610cd88133611c2b565b155b15610cfa57336040516363a704cf60e11b8152600401610c65919061504b565b610cb483612b81565b600080610d0e612bdf565b6000858152600182016020908152604080832080548251818502810185019093528083529495509293909291830182828015610d7357602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610d55575b5050505050905060005b8151811015610dd657846001600160a01b0316828281518110610da257610da2615407565b60200260200101516001600160a01b031603610dc45760019350505050610c05565b80610dce81615433565b915050610d7d565b50600095945050505050565b600080516020615906833981519152610dfa81612841565b610e0382612c03565b5050565b600082610e148233611e48565b158015610e285750610e268133611c2b565b155b15610e4857336040516363a704cf60e11b8152600401610c65919061504b565b610e528484612c77565b50505050565b600080516020615906833981519152610e7081612841565b610e0382612d73565b610e5284848484612e84565b600080610e90612bdf565b6000938452600301602052505060409020546001600160a01b031690565b600080610eb9612fcc565b60009384526020525050604090206001015490565b600082610edb8233611e48565b158015610eef5750610eed8133611c2b565b155b15610f0f57336040516363a704cf60e11b8152600401610c65919061504b565b610e528484612ff0565b600080610f246131d2565b6001015492915050565b600080610f39612bdf565b6000938452602052505060409020546001600160a01b031690565b6060610f5f8261284e565b610f7f5760405163018f58af60e31b815260048101839052602401610c65565b610f8761176f565b610f9083611a33565b604051602001610fa192919061544c565b6040516020818303038152906040529050919050565b610fc082610eae565b610fc981612841565b610e5283836131f6565b600081604051602001610fe6919061547b565b604051602081830303815290604052805190602001209050919050565b6001600160a01b038116331461102c5760405163334bd91960e11b815260040160405180910390fd5b610cb4828261329e565b60606000611042612bdf565b600084815260028201602090815260409182902080548351818402810184019094528084529394509192908301828280156110a657602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611088575b5050505050915050919050565b6000806110be613316565b6009810154604051631ceae42f60e01b8152600481018690529192506000916001600160a01b0390911690631ceae42f90602401602060405180830381865afa15801561110f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111339190615497565b905081600301600082600781111561114d5761114d6154b4565b600781111561115e5761115e6154b4565b81526020019081526020016000205492505050919050565b60606000611182613316565b6000848152600282016020526040812054919250816001600160401b038111156111ae576111ae614f06565b6040519080825280602002602001820160405280156111d7578160200160208202803683370190505b5090506000805b838110156112e757600985015460008881526002870160205260408120805491926001600160a01b031691639e2c2f3e91908590811061122057611220615407565b90600052602060002001546040518263ffffffff1660e01b815260040161124991815260200190565b602060405180830381865afa158015611266573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061128a91906154ca565b90506001600160a01b038116156112d457808484815181106112ae576112ae615407565b6001600160a01b0390921660209283029190910190910152826112d081615433565b9350505b50806112df81615433565b9150506111de565b508152949350505050565b60606112fc61333a565b65ffffffffffff1661130c611e7e565b65ffffffffffff1614611332576040516301bfc1c560e61b815260040160405180910390fd5b5060408051808201909152601d81527f6d6f64653d626c6f636b6e756d6265722666726f6d3d64656661756c74000000602082015290565b611372613345565b61137b826133ec565b610e038282613404565b60008051602061590683398151915261139d81612841565b610e03826134b8565b600260006113b2613509565b8054909150600160401b900460ff16806113d9575080546001600160401b03808416911610155b156113f75760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160481b0319166001600160401b03831617600160401b1781556001600160a01b0383166114885760405162461bcd60e51b815260206004820152603360248201527f58324561726e417070733a20496e76616c6964204e6f6465204d616e6167656d604482015272656e74636f6e7472616374206164647265737360681b6064820152608401610c65565b611492848461352d565b805460ff60401b19168155604051600080516020615926833981519152906114bb9084906154e7565b60405180910390a150505050565b60006114d361353f565b5060008051602061596683398151915290565b6000826114f38233611e48565b15801561150757506115058133611c2b565b155b1561152757336040516363a704cf60e11b8152600401610c65919061504b565b610e528484613588565b600061153c81612841565b610e0382613632565b600061154f613316565b905061155a8361284e565b61157a5760405163018f58af60e31b815260048101849052602401610c65565b60008281526005820160205260409020546115a857604051632469757560e11b815260040160405180910390fd5b6009810154604051633258cc2f60e01b81526001600160a01b0390911690633258cc2f906115dc90339086906004016154fb565b602060405180830381865afa1580156115f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061161d9190615514565b61163a576040516326a2091b60e21b815260040160405180910390fd5b610cb48383613685565b60008061164f6131d2565b600093845260205250506040902060020154151590565b6000826116738233611e48565b15801561168757506116858133611c2b565b155b156116a757336040516363a704cf60e11b8152600401610c65919061504b565b610e5284846136ce565b6000806116bc613316565b60009384526005016020525050604090205490565b606060006116dd612bdf565b600084815260018201602090815260409182902080548351818402810184019094528084529394509192908301828280156110a6576020028201919060005260206000209081546001600160a01b03168152600190910190602001808311611088575050505050915050919050565b600080611757613790565b60009384526003016020525050604090205460ff1690565b6060600061177b6137b4565b905080600001805461178c90615531565b80601f01602080910402602001604051908101604052809291908181526020018280546117b890615531565b80156118055780601f106117da57610100808354040283529160200191611805565b820191906000526020600020905b8154815290600101906020018083116117e857829003601f168201915b505050505091505090565b600061181a613509565b805490915060ff600160401b82041615906001600160401b03166000811580156118415750825b90506000826001600160401b0316600114801561185d5750303b155b90508115801561186b575080155b156118895760405163f92ee8a960e01b815260040160405180910390fd5b84546001600160401b031916600117855583156118b257845460ff60401b1916600160401b1785555b6118ba6137d8565b6118c26137d8565b6118ca6137d8565b6118d3896137e8565b6118db6137d8565b6118e36137f9565b6118eb6137f9565b60005b88518110156119bc5760006001600160a01b031689828151811061191457611914615407565b60200260200101516001600160a01b0316036119835760405162461bcd60e51b815260206004820152602860248201527f58324561726e417070733a2061646d696e20616464726573732063616e6e6f74604482015267206265207a65726f60c01b6064820152608401610c65565b6119a96000801b8a838151811061199c5761199c615407565b60200260200101516131f6565b50806119b481615433565b9150506118ee565b506119d5600080516020615946833981519152886131f6565b506119ee600080516020615906833981519152876131f6565b508315611a2857845460ff60401b1916855560405160008051602061592683398151915290611a1f906001906154e7565b60405180910390a15b505050505050505050565b60606000611a3f612bdf565b60008481526005820160205260409020805491925090611a5e90615531565b80601f0160208091040260200160405190810160405280929190818152602001828054611a8a90615531565b80156110a65780601f10611aac576101008083540402835291602001916110a6565b820191906000526020600020905b815481529060010190602001808311611aba575093979650505050505050565b611ae2614c71565b6000611aed83613801565b90506040518060c0016040528082600001518152602001611b0d85610e85565b6001600160a01b0316815260200182602001518152602001611b2e85611a33565b815260200182604001518152602001611b4a8360000151611e8d565b151590529392505050565b600080611b60613316565b60009384526008016020525050604090205490565b600080611b80612bdf565b60009384526004016020525050604090205490565b600082611ba28233611e48565b158015611bb65750611bb48133611c2b565b155b15611bd657336040516363a704cf60e11b8152600401610c65919061504b565b610e52848461390c565b600082611bed8233611e48565b158015611c015750611bff8133611c2b565b155b15611c2157336040516363a704cf60e11b8152600401610c65919061504b565b610e5284846139ed565b600080611c36612bdf565b600094855260205250506040909120546001600160a01b0391821691161490565b6000611c61613316565b9050611c6c8361284e565b611c8c5760405163018f58af60e31b815260048101849052602401610c65565b611c958361174c565b15611cb657604051633126f1ab60e01b815260048101849052602401610c65565b81600003611cd7576040516326a2091b60e21b815260040160405180910390fd5b611ce083612147565b611d0057604051635fb805d960e11b815260048101849052602401610c65565b6009810154604051633258cc2f60e01b81526001600160a01b0390911690633258cc2f90611d3490339086906004016154fb565b602060405180830381865afa158015611d51573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d759190615514565b611d92576040516326a2091b60e21b815260040160405180910390fd5b600082815260058201602052604090205415611dc157604051637069cd4360e11b815260040160405180910390fd5b60008381526002820160209081526040808320805460018101825590845282842001859055848352600584019091528120849055611dff8482613aec565b9050611e09613d41565b8110611e1857611e1884613d56565b604080518481526001602082015285916000805160206159a683398151915291015b60405180910390a250505050565b600080611e53612fcc565b6000948552602090815260408086206001600160a01b03959095168652939052505090205460ff1690565b6000611e8861333a565b905090565b6000611e9882611644565b611ea457506000919050565b6000611eae613790565b60008481526002820160205260409020909150611eca90613dcc565b6001600160d01b0316600114915050919050565b600082611eeb8233611e48565b158015611eff5750611efd8133611c2b565b155b15611f1f57336040516363a704cf60e11b8152600401610c65919061504b565b610e528484613e13565b600080611f34613316565b6006015465ffffffffffff1692915050565b6000611f518261284e565b611f715760405163018f58af60e31b815260048101839052602401610c65565b611f7a8261174c565b15611f8757506000919050565b6000611f94836000613aec565b9050611f9e613d41565b811015611fb557611fae83613fe1565b9392505050565b611fbe83613d56565b50600192915050565b600080611fd2613316565b9050806003016000846007811115611fec57611fec6154b4565b6007811115611ffd57611ffd6154b4565b815260200190815260200160002054915050919050565b60008061201f612bdf565b600085815260028201602090815260408083208054825181850281018501909352808352949550929390929183018282801561208457602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311612066575b5050505050905060005b8151811015610dd657846001600160a01b03168282815181106120b3576120b3615407565b60200260200101516001600160a01b0316036120d55760019350505050610c05565b806120df81615433565b91505061208e565b606060006120f3613790565b80546040805160208084028201810190925282815292935083919083018282801561180557602002820191906000526020600020905b81548152602001906001019080831161212957505050505091505090565b600080612152613316565b905061215d8361174c565b1561216b5750600092915050565b6000928352600101602052506040902054151590565b60008061218c613316565b600981015460405163d466d80b60e01b81529192506000916001600160a01b039091169063d466d80b906121c490879060040161504b565b600060405180830381865afa1580156121e1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526122099190810190615565565b90506000805b82518110156122885783600301600084838151811061223057612230615407565b60200260200101516007811115612249576122496154b4565b600781111561225a5761225a6154b4565b8152602001908152602001600020548261227491906155f3565b91508061228081615433565b91505061220f565b50949350505050565b600061229c83611644565b6122a857506000610c05565b60006122b2613790565b905060006122be611e7e565b90508065ffffffffffff168411156122fa57604051637669fc0f60e11b81526004810185905265ffffffffffff82166024820152604401610c65565b61231c6123068561410b565b6000878152600285016020526040902090614142565b6001600160d01b03166001149250505092915050565b61233b82610eae565b61234481612841565b610e52838361329e565b6060600061235a6131d2565b600181015490915084811161238257604051635eb538c960e11b815260040160405180910390fd5b600061238e85876155f3565b90508181111561239b5750805b60006123a78783615606565b6001600160401b038111156123be576123be614f06565b6040519080825280602002602001820160405280156123f757816020015b6123e4614cb5565b8152602001906001900390816123dc5790505b509050865b828110156125245784600001600086600101838154811061241f5761241f615407565b906000526020600020015481526020019081526020016000206040518060600160405290816000820154815260200160018201805461245d90615531565b80601f016020809104026020016040519081016040528092919081815260200182805461248990615531565b80156124d65780601f106124ab576101008083540402835291602001916124d6565b820191906000526020600020905b8154815290600101906020018083116124b957829003601f168201915b505050505081526020016002820154815250508289836124f69190615606565b8151811061250657612506615407565b6020026020010181905250808061251c90615433565b9150506123fc565b509695505050505050565b606060006120f3613316565b6000826125488233611e48565b15801561255c575061255a8133611c2b565b155b1561257c57336040516363a704cf60e11b8152600401610c65919061504b565b610e5284846141ea565b6000826125938233611e48565b1580156125a757506125a58133611c2b565b155b80156125ba57506125b88133610d03565b155b156125da57336040516363a704cf60e11b8152600401610c65919061504b565b610e528484614250565b6000611e88613d41565b606060006125fa6131d2565b9050610c228160010180548060200260200160405190810160405280929190818152602001828054801561264d57602002820191906000526020600020905b815481526020019060010190808311612639575b50505050505b6060600061265f6131d2565b83519091506000816001600160401b0381111561267e5761267e614f06565b6040519080825280602002602001820160405280156126b757816020015b6126a4614c71565b81526020019060019003908161269c5790505b50905060005b828110156122885760008460000160008884815181106126df576126df615407565b602002602001015181526020019081526020016000206040518060600160405290816000820154815260200160018201805461271a90615531565b80601f016020809104026020016040519081016040528092919081815260200182805461274690615531565b80156127935780601f1061276857610100808354040283529160200191612793565b820191906000526020600020905b81548152906001019060200180831161277657829003601f168201915b5050505050815260200160028201548152505090506040518060c00160405280826000015181526020016127ca8360000151610e85565b6001600160a01b03168152602001826020015181526020016127ef8360000151611a33565b81526020018260400151815260200161280b8360000151611e8d565b151581525083838151811061282257612822615407565b602002602001018190525050808061283990615433565b9150506126bd565b61284b8133614373565b50565b6000806128596131d2565b600093845260205250506040902054151590565b6000612877613790565b905081151561288584611e8d565b15150361289157505050565b600083815260028201602052604090206128c390836128b9576128b4600061439e565b6143d2565b6128b4600161439e565b5050816129905760008381526001808301602052604082205483549092916128ea91615606565b9050600083600001828154811061290357612903615407565b906000526020600020015490508084600001848154811061292657612926615407565b60009182526020808320909101929092558281526001860190915260409020839055835484908061295957612959615619565b60019003818190600052602060002001600090559055836001016000878152602001908152602001600020600090555050506129c6565b80546001818101835560008381526020902090910184905581546129b49190615606565b60008481526001830160205260409020555b827f67a3d5f523bbd1855235e1573461f352e4f47a2e67434dac8ac4cf04be557c51836040516129fa911515815260200190565b60405180910390a2505050565b6000612a11613316565b90508115612af557600083815260018281016020526040822054612a359190615606565b8254909150600090612a4990600190615606565b90506000836000018281548110612a6257612a62615407565b9060005260206000200154905080846000018481548110612a8557612a85615407565b600091825260209091200155612a9c8360016155f3565b60008281526001860160205260409020558354849080612abe57612abe615619565b6001900381819060005260206000200160009055905583600101600087815260200190815260200160002060009055505050505050565b80546001808201835560008381526020808220909301869055835495815292019052604090209190915550565b6000612b2c613790565b600084815260038201602052604090819020805460ff19168515151790555190915083907fdcf7bb788a4c8c91f85b15fa04797101b624ce86f804c2ccc49d8474adeb90ba906129fa90851515815260200190565b612b8a8161284e565b612baa5760405163018f58af60e31b815260048101829052602401610c65565b612bb381611644565b15612bd45760405163e2cf34b760e01b815260048101829052602401610c65565b61284b816001612a07565b7f5830f0e95c01712d916c34d9e2fa42e9f749b325b67bce7382d70bb99c62350090565b6000612c0d613316565b60068101546040519192507f55c7a79c45e9a972909cd640f9336a14a84adbaf756211f1626700185411019191612c4e9165ffffffffffff1690859061562f565b60405180910390a1600601805465ffffffffffff191665ffffffffffff92909216919091179055565b6001600160a01b038116612ca05780604051630ea81b3f60e21b8152600401610c65919061504b565b612ca98261284e565b612cc95760405163018f58af60e31b815260048101839052602401610c65565b6000612cd3612bdf565b6000848152600182016020526040902054909150606411612d0a576040516377ffca9f60e01b815260048101849052602401610c65565b600083815260018281016020908152604080842080549384018155845292200180546001600160a01b0319166001600160a01b0385161790555183907f25050ac96acd2401160d6a87fc508fb2b6e5404bbd0537ddfb451e0119a9baa7906129fa90859061504b565b6000612d7d613316565b60016000908152600382810160208181526040808520883590556002855280852091880135909155918352818320868301359055600483528183206060870135905560058352818320608087013590556006835290822060a0860135905591925060c08401359190600781526020019081526020016000208190555081604051612e509190813581526020820135602082015260408201356040820152606082013560608201526080820135608082015260a082013560a082015260c082013560c0820152600060e08201905092915050565b604051908190038120907fc91e5ded81b3894187855cc79c29a7eaa6b412d30cfa1658fe313129291db24290600090a25050565b6001600160a01b038416612ead5783604051630ea81b3f60e21b8152600401610c65919061504b565b6001600160a01b038316612ed65782604051630ea81b3f60e21b8152600401610c65919061504b565b6000612ee183610fd3565b9050612eec8161284e565b15612f0d57604051636b4fdeb360e01b815260048101829052602401610c65565b6000612f176131d2565b604080516060810182528481526020808201888152600083850181905287815291859052929020815181559151929350916001820190612f579082615696565b5060408201518160020155905050612f6f828661390c565b612f7982876136ce565b612f838284614250565b612f8e826000613588565b612f998260006143f3565b8160008051602061598683398151915287866000604051612fbc93929190615755565b60405180910390a2505050505050565b7f02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b62680090565b6001600160a01b0381166130195780604051630ea81b3f60e21b8152600401610c65919061504b565b6130228261284e565b6130425760405163018f58af60e31b815260048101839052602401610c65565b61304c8282610d03565b61306d578181604051632c84ac2760e21b8152600401610c6592919061578b565b6000613077612bdf565b600084815260018201602052604081209192505b81548110156131cb57836001600160a01b03168282815481106130b0576130b0615407565b6000918252602090912001546001600160a01b0316036131b957815482906130da90600190615606565b815481106130ea576130ea615407565b9060005260206000200160009054906101000a90046001600160a01b031682828154811061311a5761311a615407565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508180548061315857613158615619565b600082815260209020810160001990810180546001600160a01b031916905501905560405185907f82f635984e0b60385ea0976cdf92f1e5528f83bf7b8ee457f4c6fae2dd198abb906131ac90879061504b565b60405180910390a26131cb565b806131c381615433565b91505061308b565b5050505050565b7fb6909058bd527140b8d55a44344c5e42f1f148f1b3b16df7641882df8dd7290090565b600080613201612fcc565b905061320d8484611e48565b61328d576000848152602082815260408083206001600160a01b03871684529091529020805460ff191660011790556132433390565b6001600160a01b0316836001600160a01b0316857f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a46001915050610c05565b6000915050610c05565b5092915050565b6000806132a9612fcc565b90506132b58484611e48565b1561328d576000848152602082815260408083206001600160a01b0387168085529252808320805460ff1916905551339287917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a46001915050610c05565b7fc1a7bcdc0c77e8c77ade4541d1777901ab96ca598d164d89afa5c8dfbfc4430090565b6000611e884361410b565b306001600160a01b037f00000000000000000000000091fdaefc30b09725accac155b2c9e878014987c91614806133cc57507f00000000000000000000000091fdaefc30b09725accac155b2c9e878014987c96001600160a01b03166133c0600080516020615966833981519152546001600160a01b031690565b6001600160a01b031614155b156133ea5760405163703e46dd60e11b815260040160405180910390fd5b565b600080516020615946833981519152610e0381612841565b816001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801561345e575060408051601f3d908101601f1916820190925261345b918101906157a2565b60015b61347d5781604051634c9c8ce360e01b8152600401610c65919061504b565b60008051602061596683398151915281146134ae57604051632a87526960e21b815260048101829052602401610c65565b610cb4838361443d565b60006134c2613316565b600781015460408051918252602082018590529192507fc0d3753bc89284345726d88cd5c82025ebedac4070cdbc551a0ba27b5180a637910160405180910390a160070155565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0090565b613535614493565b610e0382826144b8565b306001600160a01b037f00000000000000000000000091fdaefc30b09725accac155b2c9e878014987c916146133ea5760405163703e46dd60e11b815260040160405180910390fd5b6135918261284e565b6135b15760405163018f58af60e31b815260048101839052602401610c65565b60648111156135d6576040516372709bbb60e01b815260048101829052602401610c65565b60006135e0612bdf565b6000848152600482016020908152604091829020805490869055825181815291820186905292935085917ffa00d62daa32bee936460eef242354969c99d01d5e406a2ca006a39e9df6b2b69101611e3a565b600061363c6137b4565b90507f309b29ded109b9e28fb9885757b3e0096eb75c51d23aa4635d68bcd569f6adc18160000183604051613672929190615838565b60405180910390a180610cb48382615696565b60006136918383613aec565b905061369c83611e8d565b15806136ac57506136ac8361174c565b156136b657505050565b6136be613d41565b811015610cb457610e5283613fe1565b6001600160a01b0381166136f75780604051630ea81b3f60e21b8152600401610c65919061504b565b6137008261284e565b6137205760405163018f58af60e31b815260048101839052602401610c65565b600061372a612bdf565b60008481526003820160205260409081902080546001600160a01b038681166001600160a01b03198316179092559151929350169084907f9402e8cef9f513d1d61b2df14b6521dfc70cfe4f750d10e413ef6f618b4be4f690611e3a908490879061585d565b7fb5b8d618af1ffb8d5bcc4bd23f445ba34ed08d7a16d1e1b5411cfbe7913e590090565b7f83b9a7e51f394efa93107c3888716138908bbbe611dfc86afa3639a82644110090565b6137e0614493565b6133ea6137f9565b6137f0614493565b61284b816146af565b6133ea614493565b613809614cb5565b6138128261284e565b6138325760405163018f58af60e31b815260048101839052602401610c65565b600061383c6131d2565b90508060000160008481526020019081526020016000206040518060600160405290816000820154815260200160018201805461387890615531565b80601f01602080910402602001604051908101604052809291908181526020018280546138a490615531565b80156138f15780601f106138c6576101008083540402835291602001916138f1565b820191906000526020600020905b8154815290600101906020018083116138d457829003601f168201915b50505050508152602001600282015481525050915050919050565b6139158261284e565b6139355760405163018f58af60e31b815260048101839052602401610c65565b6001600160a01b03811661395e5780604051630ea81b3f60e21b8152600401610c65919061504b565b6000613968612bdf565b6000848152602082905260409081902054905191925084917ff731532cb185ec0e4f09f397cce651bf601970ff3c051d753e42a427448c3d20916139b9916001600160a01b0390911690869061585d565b60405180910390a26000928352602052604090912080546001600160a01b0319166001600160a01b03909216919091179055565b6001600160a01b038116613a165780604051630ea81b3f60e21b8152600401610c65919061504b565b613a1f8261284e565b613a3f5760405163018f58af60e31b815260048101839052602401610c65565b6000613a49612bdf565b6000848152600282016020526040902054909150606411613a8057604051633be3601b60e01b815260048101849052602401610c65565b600083815260028201602090815260408083208054600181018255908452919092200180546001600160a01b0319166001600160a01b0385161790555183907fff61d9fea8a697c08f6ce345a762521d2e5fd7cce8e235fb4bf9337ba0c57c29906129fa90859061504b565b600080613af7613316565b90506000805b6000868152600284016020526040902054811015613d235760008681526002840160205260408120805483908110613b3757613b37615407565b60009182526020822001546009860154604051631ceae42f60e01b8152600481018390529193506001600160a01b031690631ceae42f90602401602060405180830381865afa158015613b8e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613bb29190615497565b90506000816007811115613bc857613bc86154b4565b1480613bd357508682145b15613cc957600088815260028601602052604090208054613bf690600190615606565b81548110613c0657613c06615407565b90600052602060002001548560020160008a81526020019081526020016000208481548110613c3757613c37615407565b9060005260206000200181905550846002016000898152602001908152602001600020805480613c6957613c69615619565b60019003818190600052602060002001600090559055876000805160206159a6833981519152836000604051613cab9291909182521515602082015260400190565b60405180910390a26000828152600586016020526040812055613d1c565b846003016000826007811115613ce157613ce16154b4565b6007811115613cf257613cf26154b4565b81526020019081526020016000205484613d0c91906155f3565b935082613d1881615433565b9350505b5050613afd565b50600085815260089092016020526040909120819055905092915050565b600080613d4c613316565b6007015492915050565b6000613d60613316565b9050613d6b82611644565b613d7d57613d78826146ce565b613d95565b613d8682611e8d565b613d9557613d9582600161286d565b613d9e82612147565b15613dae57613dae8260016143f3565b600091825260040160205260409020805465ffffffffffff19169055565b80546000908015613e0a57613df483613de6600184615606565b600091825260209091200190565b54600160301b90046001600160d01b0316611fae565b60009392505050565b6001600160a01b038116613e3c5780604051630ea81b3f60e21b8152600401610c65919061504b565b613e458261284e565b613e655760405163018f58af60e31b815260048101839052602401610c65565b613e6f8282612014565b613e90578181604051635f65958f60e11b8152600401610c6592919061578b565b6000613e9a612bdf565b600084815260028201602052604081209192505b81548110156131cb57836001600160a01b0316828281548110613ed357613ed3615407565b6000918252602090912001546001600160a01b031603613fcf5781548290613efd90600190615606565b81548110613f0d57613f0d615407565b9060005260206000200160009054906101000a90046001600160a01b0316828281548110613f3d57613f3d615407565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555081805480613f7b57613f7b615619565b600082815260209020810160001990810180546001600160a01b031916905501905560405185907f5d49a79e91765aff88a22b5e1ac2373c3035e839101aca1496177c0709e53b5a906131ac90879061504b565b80613fd981615433565b915050613eae565b600080613fec613316565b9050613ff783612147565b614006576140068360006143f3565b600083815260048201602052604081205465ffffffffffff1690036140bb57600681015460009065ffffffffffff1661403d611e7e565b6140479190615877565b60008581526004840160205260409020805465ffffffffffff191665ffffffffffff83161790559050837f502689eeffd57ae8470e1d86a4a8cd293a44bfbbd2429cb375da3d901a3dd80f61409a611e7e565b836040516140a992919061562f565b60405180910390a25060019392505050565b600083815260048201602052604090205465ffffffffffff166140dc611e7e565b65ffffffffffff161180156140f557506140f583611e8d565b1561410557613e0a83600061286d565b50919050565b600065ffffffffffff82111561413e576040516306dfcc6560e41b81526030600482015260248101839052604401610c65565b5090565b8154600090818160058111156141a157600061415d8461474d565b6141679085615606565b60008881526020902090915081015465ffffffffffff90811690871610156141915780915061419f565b61419c8160016155f3565b92505b505b60006141af87878585614835565b905080156141dc576141c687613de6600184615606565b54600160301b90046001600160d01b03166141df565b60005b979650505050505050565b6141f38261284e565b6142135760405163018f58af60e31b815260048101839052602401610c65565b600061421d613316565b6000838152600582016020526040902054909150831461163a57604051632469757560e11b815260040160405180910390fd5b6142598261284e565b6142795760405163018f58af60e31b815260048101839052602401610c65565b6000614283612bdf565b60008481526005820160205260408120805492935090916142a390615531565b80601f01602080910402602001604051908101604052809291908181526020018280546142cf90615531565b801561431c5780601f106142f15761010080835404028352916020019161431c565b820191906000526020600020905b8154815290600101906020018083116142ff57829003601f168201915b50505060008781526005860160205260409020929350614340915085905082615696565b50837fcffcc4ac44fe5b203e220bf515ab2632e760bfc04adba8ad3d88245651ba33438285604051611e3a929190615896565b61437d8282611e48565b610e0357808260405163e2517d3f60e01b8152600401610c659291906154fb565b60006001600160d01b0382111561413e576040516306dfcc6560e41b815260d0600482015260248101839052604401610c65565b6000806143e86143e0611e7e565b859085614897565b915091509250929050565b6143fd8282612a07565b817f39ed358ca65699fee4083beb84f3d91ce2201bb0c89859317fc5be02231609ed82604051614431911515815260200190565b60405180910390a25050565b614446826148b2565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a280511561448b57610cb4828261490e565b610e03614984565b61449b6149a3565b6133ea57604051631afcd79f60e31b815260040160405180910390fd5b6144c0614493565b60006144ca613316565b60068101805465ffffffffffff191665ffffffffffff86161790556009810180546001600160a01b0319166001600160a01b038516179055905060026003820160006001600781111561451f5761451f6154b4565b815260200190815260200160002081905550600d8160030160006002600781111561454c5761454c6154b4565b600781111561455d5761455d6154b4565b81526020019081526020016000208190555060328160030160006003600781111561458a5761458a6154b4565b600781111561459b5761459b6154b4565b8152602001908152602001600020819055506003816003016000600460078111156145c8576145c86154b4565b60078111156145d9576145d96154b4565b815260200190815260200160002081905550600981600301600060056007811115614606576146066154b4565b6007811115614617576146176154b4565b815260200190815260200160002081905550602381600301600060066007811115614644576146446154b4565b6007811115614655576146556154b4565b8152602001908152602001600020819055506064816003016000600780811115614681576146816154b4565b6007811115614692576146926154b4565b815260208101919091526040016000205560646007909101555050565b6146b7614493565b60006146c16137b4565b905080610cb48382615696565b60006146d86131d2565b600083815260208281526040822042600290910155600180840180548083018255908452919092200184905590915061471290839061286d565b8160008051602061598683398151915261472b84610e85565b60008581526020859052604090819020905161443192916001908101916158a9565b60008160000361475f57506000919050565b6000600161476c846149bd565b901c6001901b90506001818481614785576147856158cd565b048201901c9050600181848161479d5761479d6158cd565b048201901c905060018184816147b5576147b56158cd565b048201901c905060018184816147cd576147cd6158cd565b048201901c905060018184816147e5576147e56158cd565b048201901c905060018184816147fd576147fd6158cd565b048201901c90506001818481614815576148156158cd565b048201901c9050611fae8182858161482f5761482f6158cd565b04614a51565b60005b8183101561488f57600061484c8484614a67565b60008781526020902090915065ffffffffffff86169082015465ffffffffffff16111561487b57809250614889565b6148868160016155f3565b93505b50614838565b509392505050565b6000806148a5858585614a82565b915091505b935093915050565b806001600160a01b03163b6000036148df5780604051634c9c8ce360e01b8152600401610c65919061504b565b60008051602061596683398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b03168460405161492b919061547b565b600060405180830381855af49150503d8060008114614966576040519150601f19603f3d011682016040523d82523d6000602084013e61496b565b606091505b509150915061497b858383614bfc565b95945050505050565b34156133ea5760405163b398979f60e01b815260040160405180910390fd5b60006149ad613509565b54600160401b900460ff16919050565b600080608083901c156149d257608092831c92015b604083901c156149e457604092831c92015b602083901c156149f657602092831c92015b601083901c15614a0857601092831c92015b600883901c15614a1a57600892831c92015b600483901c15614a2c57600492831c92015b600283901c15614a3e57600292831c92015b600183901c15610c055760010192915050565b6000818310614a605781611fae565b5090919050565b6000614a7660028484186158e3565b611fae908484166155f3565b825460009081908015614ba1576000614aa087613de6600185615606565b60408051808201909152905465ffffffffffff808216808452600160301b9092046001600160d01b031660208401529192509087161015614af457604051632520601d60e01b815260040160405180910390fd5b805165ffffffffffff808816911603614b405784614b1788613de6600186615606565b80546001600160d01b0392909216600160301b0265ffffffffffff909216919091179055614b91565b6040805180820190915265ffffffffffff80881682526001600160d01b0380881660208085019182528b54600181018d5560008d81529190912094519151909216600160301b029216919091179101555b6020015192508391506148aa9050565b50506040805180820190915265ffffffffffff80851682526001600160d01b0380851660208085019182528854600181018a5560008a815291822095519251909316600160301b0291909316179201919091559050816148aa565b606082614c1157614c0c82614c48565b611fae565b8151158015614c2857506001600160a01b0384163b155b156132975783604051639996b31560e01b8152600401610c65919061504b565b805115614c585780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b6040518060c001604052806000801916815260200160006001600160a01b031681526020016060815260200160608152602001600081526020016000151581525090565b60405180606001604052806000801916815260200160608152602001600081525090565b600060208284031215614ceb57600080fd5b81356001600160e01b031981168114611fae57600080fd5b60005b83811015614d1e578181015183820152602001614d06565b50506000910152565b60008151808452614d3f816020860160208601614d03565b601f01601f19169290920160200192915050565b8051825260018060a01b0360208201511660208301526000604082015160c06040850152614d8460c0850182614d27565b905060608301518482036060860152614d9d8282614d27565b9150506080830151608085015260a0830151151560a08501528091505092915050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b82811015614e1557603f19888603018452614e03858351614d53565b94509285019290850190600101614de7565b5092979650505050505050565b801515811461284b57600080fd5b60008060408385031215614e4357600080fd5b823591506020830135614e5581614e22565b809150509250929050565b600060208284031215614e7257600080fd5b5035919050565b6001600160a01b038116811461284b57600080fd5b8035614e9981614e79565b919050565b60008060408385031215614eb157600080fd5b823591506020830135614e5581614e79565b803565ffffffffffff81168114614e9957600080fd5b600060208284031215614eeb57600080fd5b611fae82614ec3565b600060e0828403121561410557600080fd5b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715614f4457614f44614f06565b604052919050565b60006001600160401b03831115614f6557614f65614f06565b614f78601f8401601f1916602001614f1c565b9050828152838383011115614f8c57600080fd5b828260208301376000602084830101529392505050565b600082601f830112614fb457600080fd5b611fae83833560208501614f4c565b60008060008060808587031215614fd957600080fd5b8435614fe481614e79565b93506020850135614ff481614e79565b925060408501356001600160401b038082111561501057600080fd5b61501c88838901614fa3565b9350606087013591508082111561503257600080fd5b5061503f87828801614fa3565b91505092959194509250565b6001600160a01b0391909116815260200190565b602081526000611fae6020830184614d27565b60006020828403121561508457600080fd5b81356001600160401b0381111561509a57600080fd5b6150a684828501614fa3565b949350505050565b6020808252825182820181905260009190848201906040850190845b818110156150ef5783516001600160a01b0316835292840192918401916001016150ca565b50909695505050505050565b6000806040838503121561510e57600080fd5b823561511981614e79565b915060208301356001600160401b0381111561513457600080fd5b8301601f8101851361514557600080fd5b61515485823560208401614f4c565b9150509250929050565b6000806040838503121561517157600080fd5b61517a83614ec3565b91506020830135614e5581614e79565b6000806040838503121561519d57600080fd5b50508035926020909101359150565b60006001600160401b038211156151c5576151c5614f06565b5060051b60200190565b600080600080608085870312156151e557600080fd5b84356001600160401b03808211156151fc57600080fd5b61520888838901614fa3565b955060209150818701358181111561521f57600080fd5b87019050601f8101881361523257600080fd5b8035615245615240826151ac565b614f1c565b81815260059190911b8201830190838101908a83111561526457600080fd5b928401925b8284101561528b57833561527c81614e79565b82529284019290840190615269565b809750505050505061529f60408601614e8e565b91506152ad60608601614e8e565b905092959194509250565b602081526000611fae6020830184614d53565b6008811061284b57600080fd5b6000602082840312156152ea57600080fd5b8135611fae816152cb565b6020808252825182820181905260009190848201906040850190845b818110156150ef57835183529284019291840191600101615311565b60006020828403121561533f57600080fd5b8135611fae81614e79565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b838110156153bd57603f19898403018552815160608151855288820151818a87015261539f82870182614d27565b92890151958901959095525094870194925090860190600101615371565b509098975050505050505050565b600080604083850312156153de57600080fd5b8235915060208301356001600160401b038111156153fb57600080fd5b61515485828601614fa3565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016154455761544561541d565b5060010190565b6000835161545e818460208801614d03565b835190830190615472818360208801614d03565b01949350505050565b6000825161548d818460208701614d03565b9190910192915050565b6000602082840312156154a957600080fd5b8151611fae816152cb565b634e487b7160e01b600052602160045260246000fd5b6000602082840312156154dc57600080fd5b8151611fae81614e79565b6001600160401b0391909116815260200190565b6001600160a01b03929092168252602082015260400190565b60006020828403121561552657600080fd5b8151611fae81614e22565b600181811c9082168061554557607f821691505b60208210810361410557634e487b7160e01b600052602260045260246000fd5b6000602080838503121561557857600080fd5b82516001600160401b0381111561558e57600080fd5b8301601f8101851361559f57600080fd5b80516155ad615240826151ac565b81815260059190911b820183019083810190878311156155cc57600080fd5b928401925b828410156141df5783516155e4816152cb565b825292840192908401906155d1565b80820180821115610c0557610c0561541d565b81810381811115610c0557610c0561541d565b634e487b7160e01b600052603160045260246000fd5b65ffffffffffff92831681529116602082015260400190565b601f821115610cb457600081815260208120601f850160051c8101602086101561566f5750805b601f850160051c820191505b8181101561568e5782815560010161567b565b505050505050565b81516001600160401b038111156156af576156af614f06565b6156c3816156bd8454615531565b84615648565b602080601f8311600181146156f857600084156156e05750858301515b600019600386901b1c1916600185901b17855561568e565b600085815260208120601f198616915b8281101561572757888601518255948401946001909101908401615708565b50858210156157455787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160a01b038416815260606020820181905260009061577990830185614d27565b90508215156040830152949350505050565b9182526001600160a01b0316602082015260400190565b6000602082840312156157b457600080fd5b5051919050565b600081546157c881615531565b8085526020600183811680156157e557600181146157ff5761582d565b60ff1985168884015283151560051b88018301955061582d565b866000528260002060005b858110156158255781548a820186015290830190840161580a565b890184019650505b505050505092915050565b60408152600061584b60408301856157bb565b828103602084015261497b8185614d27565b6001600160a01b0392831681529116602082015260400190565b65ffffffffffff8181168382160190808211156132975761329761541d565b60408152600061584b6040830185614d27565b6001600160a01b0384168152606060208201819052600090615779908301856157bb565b634e487b7160e01b600052601260045260246000fd5b60008261590057634e487b7160e01b600052601260045260246000fd5b50049056fe71840dc4906352362b0cdaf79870196c8e42acafade72d5d5a6d59291253ceb1c7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2189ab7a9244df0848122154315af71fe140f3db0fe014031783b0946b8c9d2e3360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc181c8615e49dc4eaed218e1d225e4a34a0fb364fc70601a191573daa19d57edafbd45dc6be377be558cbfa21354b354150da398460fa6e807150d984bda05726a2646970667358221220c84b22e89b162815a93bd441725911346feeec82bba7a60238f40c0b740edda864736f6c63430008140033