VeChain
Explorer
Testnet
Search
Networks
Main
Test
Contract
0x3dD9EA…a0a7
Summary
Transactions
Transfers
Address
0x3dD9EA1A2d3061CC459b8F7Ae21a5E1f5E27a0a7
VET
0.00
VET
VTHO
0.00
VTHO
Master
0x4335f3D39B096f2C35D1D071783f61c1C0641FFD
Deployer
0x4335f3D39B096f2C35D1D071783f61c1C0641FFD
Code
0x608060405234801561001057600080fd5b50600436106101fa5760003560e01c806372271de91161011a578063af640d0f116100ad578063d7a055481161007c578063d7a0554814610575578063e985e9c514610591578063f242432a146105c1578063f2fde38b146105dd578063f5298aca146105f9576101fa565b8063af640d0f14610501578063af7acc611461051f578063bd0bd0501461053b578063c19d93fb14610557576101fa565b806389dc8c8c116100e957806389dc8c8c146104795780638da5cb5b14610497578063a22cb465146104b5578063a5d7827e146104d1576101fa565b806372271de914610405578063731133e9146104235780637ef09bca1461043f5780638456cb591461046f576101fa565b80633f4ba83a1161019257806368794b871161016157806368794b87146103a55780636a51c955146103c15780636b20c454146103df578063715018a6146103fb576101fa565b80633f4ba83a146103315780634e1273f41461033b57806356be7d221461036b5780635c975abb14610387576101fa565b80630f8edad6116101ce5780630f8edad6146102ab5780631f7fdffa146102db5780632eb2c2d6146102f757806335ac6ec614610313576101fa565b8062fdd58e146101ff57806301ffc9a71461022f57806302fe53051461025f5780630e89341c1461027b575b600080fd5b61021960048036038101906102149190613e06565b610615565b6040516102269190614b9d565b60405180910390f35b61024960048036038101906102449190613f78565b6106df565b6040516102569190614836565b60405180910390f35b61027960048036038101906102749190613fca565b6107c1565b005b6102956004803603810190610290919061405f565b610849565b6040516102a29190614851565b60405180910390f35b6102c560048036038101906102c0919061400b565b6108dd565b6040516102d29190614851565b60405180910390f35b6102f560048036038101906102f09190613d1f565b6109ac565b005b610311600480360381019061030c9190613b52565b610a3a565b005b61031b610adb565b60405161032891906147bb565b60405180910390f35b610339610b69565b005b61035560048036038101906103509190613f0c565b610bef565b60405161036291906147dd565b60405180910390f35b61038560048036038101906103809190613e06565b610da0565b005b61038f610e6a565b60405161039c9190614836565b60405180910390f35b6103bf60048036038101906103ba9190613fca565b610e81565b005b6103c9610ff3565b6040516103d69190614b9d565b60405180910390f35b6103f960048036038101906103f49190613ca0565b610ff9565b005b610403611096565b005b61040d61111e565b60405161041a9190614851565b60405180910390f35b61043d60048036038101906104389190613e91565b6111ac565b005b61045960048036038101906104549190613aed565b61123a565b6040516104669190614836565b60405180910390f35b610477611288565b005b61048161130e565b60405161048e9190614b9d565b60405180910390f35b61049f611314565b6040516104ac919061468c565b60405180910390f35b6104cf60048036038101906104ca9190613dca565b61133e565b005b6104eb60048036038101906104e69190613aed565b611354565b6040516104f89190614b9d565b60405180910390f35b6105096113e8565b6040516105169190614851565b60405180910390f35b61053960048036038101906105349190613fca565b611476565b005b61055560048036038101906105509190614088565b611515565b005b61055f6115b1565b60405161056c9190614851565b60405180910390f35b61058f600480360381019061058a9190613aed565b61163f565b005b6105ab60048036038101906105a69190613b16565b611698565b6040516105b89190614836565b60405180910390f35b6105db60048036038101906105d69190613c11565b61172c565b005b6105f760048036038101906105f29190613aed565b6117cd565b005b610613600480360381019061060e9190613e42565b6118c5565b005b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610686576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161067d906148f3565b60405180910390fd5b6004600083815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60007fd9b67a26000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806107aa57507f0e89341c000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806107ba57506107b982611962565b5b9050919050565b6107c96119cc565b73ffffffffffffffffffffffffffffffffffffffff166107e7611314565b73ffffffffffffffffffffffffffffffffffffffff161461083d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161083490614aa8565b60405180910390fd5b610846816119d4565b50565b60606006805461085890614edc565b80601f016020809104026020016040519081016040528092919081815260200182805461088490614edc565b80156108d15780601f106108a6576101008083540402835291602001916108d1565b820191906000526020600020905b8154815290600101906020018083116108b457829003601f168201915b50505050509050919050565b600d82805160208101820180518482526020830160208501208183528095505050505050818154811061090f57600080fd5b9060005260206000200160009150915050805461092b90614edc565b80601f016020809104026020016040519081016040528092919081815260200182805461095790614edc565b80156109a45780601f10610979576101008083540402835291602001916109a4565b820191906000526020600020905b81548152906001019060200180831161098757829003601f168201915b505050505081565b6109b46119cc565b73ffffffffffffffffffffffffffffffffffffffff166109d2611314565b73ffffffffffffffffffffffffffffffffffffffff1614610a28576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a1f90614aa8565b60405180910390fd5b610a34848484846119ee565b50505050565b610a426119cc565b73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161480610a885750610a8785610a826119cc565b611698565b5b610ac7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610abe90614a08565b60405180910390fd5b610ad48585858585611c59565b5050505050565b60606000805480602002602001604051908101604052809291908181526020018280548015610b5f57602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311610b15575b5050505050905090565b610b716119cc565b73ffffffffffffffffffffffffffffffffffffffff16610b8f611314565b73ffffffffffffffffffffffffffffffffffffffff1614610be5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bdc90614aa8565b60405180910390fd5b610bed611fbc565b565b60608151835114610c35576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c2c90614b3d565b60405180910390fd5b6000835167ffffffffffffffff811115610c78577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b604051908082528060200260200182016040528015610ca65781602001602082028036833780820191505090505b50905060005b8451811015610d9557610d3f858281518110610cf1577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151858381518110610d32577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151610615565b828281518110610d78577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101818152505080610d8e90614f3f565b9050610cac565b508091505092915050565b600354610dac33611354565b1015610ded576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610de490614a28565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415610e5c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e5390614a88565b60405180910390fd5b610e66828261205e565b5050565b6000600760149054906101000a900460ff16905090565b600254610e8d33611354565b1015610ece576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ec590614a28565b60405180910390fd5b610f6260098054610ede90614edc565b80601f0160208091040260200160405190810160405280929190818152602001828054610f0a90614edc565b8015610f575780601f10610f2c57610100808354040283529160200191610f57565b820191906000526020600020905b815481529060010190602001808311610f3a57829003601f168201915b50505050508261216b565b610fa1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f9890614afd565b60405180910390fd5b8060099080519060200190610fb79291906137e5565b507f469de3b344361a973cff6fdeebc9d7c0ce4b5407c4810694199b73f2f9d3f74d6009604051610fe891906149b3565b60405180910390a150565b600b5481565b6110016119cc565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614806110475750611046836110416119cc565b611698565b5b611086576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161107d90614953565b60405180910390fd5b6110918383836122d1565b505050565b61109e6119cc565b73ffffffffffffffffffffffffffffffffffffffff166110bc611314565b73ffffffffffffffffffffffffffffffffffffffff1614611112576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161110990614aa8565b60405180910390fd5b61111c60006125d0565b565b600c805461112b90614edc565b80601f016020809104026020016040519081016040528092919081815260200182805461115790614edc565b80156111a45780601f10611179576101008083540402835291602001916111a4565b820191906000526020600020905b81548152906001019060200180831161118757829003601f168201915b505050505081565b6111b46119cc565b73ffffffffffffffffffffffffffffffffffffffff166111d2611314565b73ffffffffffffffffffffffffffffffffffffffff1614611228576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161121f90614aa8565b60405180910390fd5b61123484848484612696565b50505050565b600080600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154119050919050565b6112906119cc565b73ffffffffffffffffffffffffffffffffffffffff166112ae611314565b73ffffffffffffffffffffffffffffffffffffffff1614611304576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112fb90614aa8565b60405180910390fd5b61130c61282d565b565b600a5481565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6113506113496119cc565b83836128d0565b5050565b600061135f8261123a565b61139e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611395906148b3565b60405180910390fd5b600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101549050919050565b600880546113f590614edc565b80601f016020809104026020016040519081016040528092919081815260200182805461142190614edc565b801561146e5780601f106114435761010080835404028352916020019161146e565b820191906000526020600020905b81548152906001019060200180831161145157829003601f168201915b505050505081565b60025461148233611354565b10156114c3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114ba90614a28565b60405180910390fd5b80600c90805190602001906114d99291906137e5565b507f469de3b344361a973cff6fdeebc9d7c0ce4b5407c4810694199b73f2f9d3f74d600c60405161150a9190614ac8565b60405180910390a150565b60025461152133611354565b1015611562576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161155990614a28565b60405180910390fd5b81600a8190555080600b819055507ff01ec6d21a4130f35292866e863af416fcf59886f24171a9fef4317a4f9ef939600a54600b546040516115a5929190614bb8565b60405180910390a15050565b600980546115be90614edc565b80601f01602080910402602001604051908101604052809291908181526020018280546115ea90614edc565b80156116375780601f1061160c57610100808354040283529160200191611637565b820191906000526020600020905b81548152906001019060200180831161161a57829003601f168201915b505050505081565b60035461164b33611354565b101561168c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161168390614a28565b60405180910390fd5b61169581612a3d565b50565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6117346119cc565b73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16148061177a5750611779856117746119cc565b611698565b5b6117b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117b090614953565b60405180910390fd5b6117c68585858585612ddb565b5050505050565b6117d56119cc565b73ffffffffffffffffffffffffffffffffffffffff166117f3611314565b73ffffffffffffffffffffffffffffffffffffffff1614611849576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161184090614aa8565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156118b9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118b090614913565b60405180910390fd5b6118c2816125d0565b50565b6118cd6119cc565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148061191357506119128361190d6119cc565b611698565b5b611952576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161194990614953565b60405180910390fd5b61195d838383613060565b505050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b600033905090565b80600690805190602001906119ea9291906137e5565b5050565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415611a5e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a5590614b7d565b60405180910390fd5b8151835114611aa2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a9990614b5d565b60405180910390fd5b6000611aac6119cc565b9050611abd8160008787878761327f565b60005b8451811015611bc357838181518110611b02577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015160046000878481518110611b47577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611ba99190614d8a565b925050819055508080611bbb90614f3f565b915050611ac0565b508473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051611c3b9291906147ff565b60405180910390a4611c52816000878787876132dd565b5050505050565b8151835114611c9d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c9490614b5d565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415611d0d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d04906149e8565b60405180910390fd5b6000611d176119cc565b9050611d2781878787878761327f565b60005b8451811015611f27576000858281518110611d6e577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015190506000858381518110611db3577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151905060006004600084815260200190815260200160002060008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611e55576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e4c90614a68565b60405180910390fd5b8181036004600085815260200190815260200160002060008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816004600085815260200190815260200160002060008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611f0c9190614d8a565b9250508190555050505080611f2090614f3f565b9050611d2a565b508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051611f9e9291906147ff565b60405180910390a4611fb48187878787876132dd565b505050505050565b611fc4610e6a565b612003576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ffa906148d3565b60405180910390fd5b6000600760146101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6120476119cc565b604051612054919061468c565b60405180910390a1565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209050818160010181905550600081600001541415612129576000839080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054905081600001819055505b7faf6cbd088e77f7f0305956d537058ebce2dda08960628863f43154012aec6ddb83826001015460405161215e929190614792565b60405180910390a1505050565b600061217783836134c4565b1561218557600190506122cb565b60005b600d846040516121989190614675565b9081526020016040518091039020805490508110156122c5576122a383600d866040516121c59190614675565b9081526020016040518091039020838154811061220b577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b90600052602060002001805461222090614edc565b80601f016020809104026020016040519081016040528092919081815260200182805461224c90614edc565b80156122995780601f1061226e57610100808354040283529160200191612299565b820191906000526020600020905b81548152906001019060200180831161227c57829003601f168201915b50505050506134c4565b156122b25760019150506122cb565b80806122bd90614f3f565b915050612188565b50600090505b92915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612341576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161233890614a48565b60405180910390fd5b8051825114612385576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161237c90614b5d565b60405180910390fd5b600061238f6119cc565b90506123af8185600086866040518060200160405280600081525061327f565b60005b835181101561254a5760008482815181106123f6577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101519050600084838151811061243b577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6020026020010151905060006004600084815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156124dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124d490614933565b60405180910390fd5b8181036004600085815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050808061254290614f3f565b9150506123b2565b50600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb86866040516125c29291906147ff565b60405180910390a450505050565b6000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415612706576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126fd90614b7d565b60405180910390fd5b60006127106119cc565b9050612731816000876127228861351d565b61272b8861351d565b8761327f565b826004600086815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546127919190614d8a565b925050819055508473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62878760405161280f929190614bb8565b60405180910390a4612826816000878787876135e3565b5050505050565b612835610e6a565b15612875576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161286c90614993565b60405180910390fd5b6001600760146101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586128b96119cc565b6040516128c6919061468c565b60405180910390a1565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561293f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161293690614b1d565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051612a309190614836565b60405180910390a3505050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209050612a898261123a565b612ac8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612abf906148b3565b60405180910390fd5b60008054905081600001541115612b14576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b0b90614973565b60405180910390fd5b600060018260000154612b279190614de0565b905060006001600080549050612b3d9190614de0565b9050600182612b4c9190614d8a565b60016000808481548110612b89577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018190555060008181548110612c2f577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660008381548110612c94577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b9060005260206000200160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000805480612d14577f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b6001900381819060005260206000200160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690559055600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600080820160009055600182016000905550507faf6cbd088e77f7f0305956d537058ebce2dda08960628863f43154012aec6ddb846000604051612dcd929190614769565b60405180910390a150505050565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415612e4b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612e42906149e8565b60405180910390fd5b6000612e556119cc565b9050612e75818787612e668861351d565b612e6f8861351d565b8761327f565b60006004600086815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905083811015612f0d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612f0490614a68565b60405180910390fd5b8381036004600087815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550836004600087815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254612fc49190614d8a565b925050819055508573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f628888604051613041929190614bb8565b60405180910390a46130578288888888886135e3565b50505050505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156130d0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016130c790614a48565b60405180910390fd5b60006130da6119cc565b905061310a818560006130ec8761351d565b6130f58761351d565b6040518060200160405280600081525061327f565b60006004600085815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050828110156131a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161319990614933565b60405180910390fd5b8281036004600086815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f628787604051613270929190614bb8565b60405180910390a45050505050565b613287610e6a565b156132c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016132be90614993565b60405180910390fd5b6132d58686868686866137ca565b505050505050565b6132fc8473ffffffffffffffffffffffffffffffffffffffff166137d2565b156134bc578373ffffffffffffffffffffffffffffffffffffffff1663bc197c8187878686866040518663ffffffff1660e01b81526004016133429594939291906146a7565b602060405180830381600087803b15801561335c57600080fd5b505af192505050801561338d57506040513d601f19601f8201168201806040525081019061338a9190613fa1565b60015b61343357613399615015565b806308c379a014156133f657506133ae615641565b806133b957506133f8565b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016133ed9190614851565b60405180910390fd5b505b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161342a90614873565b60405180910390fd5b63bc197c8160e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916146134ba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016134b190614893565b60405180910390fd5b505b505050505050565b6000816040516020016134d79190614675565b60405160208183030381529060405280519060200120836040516020016134fe9190614675565b6040516020818303038152906040528051906020012014905092915050565b60606000600167ffffffffffffffff811115613562577f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040519080825280602002602001820160405280156135905781602001602082028036833780820191505090505b50905082816000815181106135ce577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60200260200101818152505080915050919050565b6136028473ffffffffffffffffffffffffffffffffffffffff166137d2565b156137c2578373ffffffffffffffffffffffffffffffffffffffff1663f23a6e6187878686866040518663ffffffff1660e01b815260040161364895949392919061470f565b602060405180830381600087803b15801561366257600080fd5b505af192505050801561369357506040513d601f19601f820116820180604052508101906136909190613fa1565b60015b6137395761369f615015565b806308c379a014156136fc57506136b4615641565b806136bf57506136fe565b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016136f39190614851565b60405180910390fd5b505b6040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161373090614873565b60405180910390fd5b63f23a6e6160e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916146137c0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016137b790614893565b60405180910390fd5b505b505050505050565b505050505050565b600080823b905060008111915050919050565b8280546137f190614edc565b90600052602060002090601f016020900481019282613813576000855561385a565b82601f1061382c57805160ff191683800117855561385a565b8280016001018555821561385a579182015b8281111561385957825182559160200191906001019061383e565b5b509050613867919061386b565b5090565b5b8082111561388457600081600090555060010161386c565b5090565b600061389b61389684614c06565b614be1565b905080838252602082019050828560208602820111156138ba57600080fd5b60005b858110156138ea57816138d088826139dc565b8452602084019350602083019250506001810190506138bd565b5050509392505050565b600061390761390284614c32565b614be1565b9050808382526020820190508285602086028201111561392657600080fd5b60005b85811015613956578161393c8882613ad8565b845260208401935060208301925050600181019050613929565b5050509392505050565b600061397361396e84614c5e565b614be1565b90508281526020810184848401111561398b57600080fd5b613996848285614e9a565b509392505050565b60006139b16139ac84614c8f565b614be1565b9050828152602081018484840111156139c957600080fd5b6139d4848285614e9a565b509392505050565b6000813590506139eb816156d7565b92915050565b600082601f830112613a0257600080fd5b8135613a12848260208601613888565b91505092915050565b600082601f830112613a2c57600080fd5b8135613a3c8482602086016138f4565b91505092915050565b600081359050613a54816156ee565b92915050565b600081359050613a6981615705565b92915050565b600081519050613a7e81615705565b92915050565b600082601f830112613a9557600080fd5b8135613aa5848260208601613960565b91505092915050565b600082601f830112613abf57600080fd5b8135613acf84826020860161399e565b91505092915050565b600081359050613ae78161571c565b92915050565b600060208284031215613aff57600080fd5b6000613b0d848285016139dc565b91505092915050565b60008060408385031215613b2957600080fd5b6000613b37858286016139dc565b9250506020613b48858286016139dc565b9150509250929050565b600080600080600060a08688031215613b6a57600080fd5b6000613b78888289016139dc565b9550506020613b89888289016139dc565b945050604086013567ffffffffffffffff811115613ba657600080fd5b613bb288828901613a1b565b935050606086013567ffffffffffffffff811115613bcf57600080fd5b613bdb88828901613a1b565b925050608086013567ffffffffffffffff811115613bf857600080fd5b613c0488828901613a84565b9150509295509295909350565b600080600080600060a08688031215613c2957600080fd5b6000613c37888289016139dc565b9550506020613c48888289016139dc565b9450506040613c5988828901613ad8565b9350506060613c6a88828901613ad8565b925050608086013567ffffffffffffffff811115613c8757600080fd5b613c9388828901613a84565b9150509295509295909350565b600080600060608486031215613cb557600080fd5b6000613cc3868287016139dc565b935050602084013567ffffffffffffffff811115613ce057600080fd5b613cec86828701613a1b565b925050604084013567ffffffffffffffff811115613d0957600080fd5b613d1586828701613a1b565b9150509250925092565b60008060008060808587031215613d3557600080fd5b6000613d43878288016139dc565b945050602085013567ffffffffffffffff811115613d6057600080fd5b613d6c87828801613a1b565b935050604085013567ffffffffffffffff811115613d8957600080fd5b613d9587828801613a1b565b925050606085013567ffffffffffffffff811115613db257600080fd5b613dbe87828801613a84565b91505092959194509250565b60008060408385031215613ddd57600080fd5b6000613deb858286016139dc565b9250506020613dfc85828601613a45565b9150509250929050565b60008060408385031215613e1957600080fd5b6000613e27858286016139dc565b9250506020613e3885828601613ad8565b9150509250929050565b600080600060608486031215613e5757600080fd5b6000613e65868287016139dc565b9350506020613e7686828701613ad8565b9250506040613e8786828701613ad8565b9150509250925092565b60008060008060808587031215613ea757600080fd5b6000613eb5878288016139dc565b9450506020613ec687828801613ad8565b9350506040613ed787828801613ad8565b925050606085013567ffffffffffffffff811115613ef457600080fd5b613f0087828801613a84565b91505092959194509250565b60008060408385031215613f1f57600080fd5b600083013567ffffffffffffffff811115613f3957600080fd5b613f45858286016139f1565b925050602083013567ffffffffffffffff811115613f6257600080fd5b613f6e85828601613a1b565b9150509250929050565b600060208284031215613f8a57600080fd5b6000613f9884828501613a5a565b91505092915050565b600060208284031215613fb357600080fd5b6000613fc184828501613a6f565b91505092915050565b600060208284031215613fdc57600080fd5b600082013567ffffffffffffffff811115613ff657600080fd5b61400284828501613aae565b91505092915050565b6000806040838503121561401e57600080fd5b600083013567ffffffffffffffff81111561403857600080fd5b61404485828601613aae565b925050602061405585828601613ad8565b9150509250929050565b60006020828403121561407157600080fd5b600061407f84828501613ad8565b91505092915050565b6000806040838503121561409b57600080fd5b60006140a985828601613ad8565b92505060206140ba85828601613ad8565b9150509250929050565b60006140d083836140f4565b60208301905092915050565b60006140e88383614657565b60208301905092915050565b6140fd81614e14565b82525050565b61410c81614e14565b82525050565b600061411d82614cf5565b6141278185614d3b565b935061413283614cc0565b8060005b8381101561416357815161414a88826140c4565b975061415583614d21565b925050600181019050614136565b5085935050505092915050565b600061417b82614d00565b6141858185614d4c565b935061419083614cd0565b8060005b838110156141c15781516141a888826140dc565b97506141b383614d2e565b925050600181019050614194565b5085935050505092915050565b6141d781614e26565b82525050565b60006141e882614d0b565b6141f28185614d5d565b9350614202818560208601614ea9565b61420b81615037565b840191505092915050565b61421f81614e88565b82525050565b600061423082614d16565b61423a8185614d6e565b935061424a818560208601614ea9565b61425381615037565b840191505092915050565b600061426982614d16565b6142738185614d7f565b9350614283818560208601614ea9565b80840191505092915050565b6000815461429c81614edc565b6142a68186614d6e565b945060018216600081146142c157600181146142d357614306565b60ff1983168652602086019350614306565b6142dc85614ce0565b60005b838110156142fe578154818901526001820191506020810190506142df565b808801955050505b50505092915050565b600061431c603483614d6e565b915061432782615055565b604082019050919050565b600061433f602883614d6e565b915061434a826150a4565b604082019050919050565b6000614362601483614d6e565b915061436d826150f3565b602082019050919050565b6000614385601483614d6e565b91506143908261511c565b602082019050919050565b60006143a8602b83614d6e565b91506143b382615145565b604082019050919050565b60006143cb602683614d6e565b91506143d682615194565b604082019050919050565b60006143ee602483614d6e565b91506143f9826151e3565b604082019050919050565b6000614411602983614d6e565b915061441c82615232565b604082019050919050565b6000614434601a83614d6e565b915061443f82615281565b602082019050919050565b6000614457601083614d6e565b9150614462826152aa565b602082019050919050565b600061447a600583614d6e565b9150614485826152d3565b602082019050919050565b600061449d602583614d6e565b91506144a8826152fc565b604082019050919050565b60006144c0603283614d6e565b91506144cb8261534b565b604082019050919050565b60006144e3601f83614d6e565b91506144ee8261539a565b602082019050919050565b6000614506602383614d6e565b9150614511826153c3565b604082019050919050565b6000614529602a83614d6e565b915061453482615412565b604082019050919050565b600061454c601983614d6e565b915061455782615461565b602082019050919050565b600061456f602083614d6e565b915061457a8261548a565b602082019050919050565b6000614592600b83614d6e565b915061459d826154b3565b602082019050919050565b60006145b5601183614d6e565b91506145c0826154dc565b602082019050919050565b60006145d8602983614d6e565b91506145e382615505565b604082019050919050565b60006145fb602983614d6e565b915061460682615554565b604082019050919050565b600061461e602883614d6e565b9150614629826155a3565b604082019050919050565b6000614641602183614d6e565b915061464c826155f2565b604082019050919050565b61466081614e7e565b82525050565b61466f81614e7e565b82525050565b6000614681828461425e565b915081905092915050565b60006020820190506146a16000830184614103565b92915050565b600060a0820190506146bc6000830188614103565b6146c96020830187614103565b81810360408301526146db8186614170565b905081810360608301526146ef8185614170565b9050818103608083015261470381846141dd565b90509695505050505050565b600060a0820190506147246000830188614103565b6147316020830187614103565b61473e6040830186614666565b61474b6060830185614666565b818103608083015261475d81846141dd565b90509695505050505050565b600060408201905061477e6000830185614103565b61478b6020830184614216565b9392505050565b60006040820190506147a76000830185614103565b6147b46020830184614666565b9392505050565b600060208201905081810360008301526147d58184614112565b905092915050565b600060208201905081810360008301526147f78184614170565b905092915050565b600060408201905081810360008301526148198185614170565b9050818103602083015261482d8184614170565b90509392505050565b600060208201905061484b60008301846141ce565b92915050565b6000602082019050818103600083015261486b8184614225565b905092915050565b6000602082019050818103600083015261488c8161430f565b9050919050565b600060208201905081810360008301526148ac81614332565b9050919050565b600060208201905081810360008301526148cc81614355565b9050919050565b600060208201905081810360008301526148ec81614378565b9050919050565b6000602082019050818103600083015261490c8161439b565b9050919050565b6000602082019050818103600083015261492c816143be565b9050919050565b6000602082019050818103600083015261494c816143e1565b9050919050565b6000602082019050818103600083015261496c81614404565b9050919050565b6000602082019050818103600083015261498c81614427565b9050919050565b600060208201905081810360008301526149ac8161444a565b9050919050565b600060408201905081810360008301526149cc8161446d565b905081810360208301526149e0818461428f565b905092915050565b60006020820190508181036000830152614a0181614490565b9050919050565b60006020820190508181036000830152614a21816144b3565b9050919050565b60006020820190508181036000830152614a41816144d6565b9050919050565b60006020820190508181036000830152614a61816144f9565b9050919050565b60006020820190508181036000830152614a818161451c565b9050919050565b60006020820190508181036000830152614aa18161453f565b9050919050565b60006020820190508181036000830152614ac181614562565b9050919050565b60006040820190508181036000830152614ae181614585565b90508181036020830152614af5818461428f565b905092915050565b60006020820190508181036000830152614b16816145a8565b9050919050565b60006020820190508181036000830152614b36816145cb565b9050919050565b60006020820190508181036000830152614b56816145ee565b9050919050565b60006020820190508181036000830152614b7681614611565b9050919050565b60006020820190508181036000830152614b9681614634565b9050919050565b6000602082019050614bb26000830184614666565b92915050565b6000604082019050614bcd6000830185614666565b614bda6020830184614666565b9392505050565b6000614beb614bfc565b9050614bf78282614f0e565b919050565b6000604051905090565b600067ffffffffffffffff821115614c2157614c20614fe6565b5b602082029050602081019050919050565b600067ffffffffffffffff821115614c4d57614c4c614fe6565b5b602082029050602081019050919050565b600067ffffffffffffffff821115614c7957614c78614fe6565b5b614c8282615037565b9050602081019050919050565b600067ffffffffffffffff821115614caa57614ca9614fe6565b5b614cb382615037565b9050602081019050919050565b6000819050602082019050919050565b6000819050602082019050919050565b60008190508160005260206000209050919050565b600081519050919050565b600081519050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600082825260208201905092915050565b600081905092915050565b6000614d9582614e7e565b9150614da083614e7e565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115614dd557614dd4614f88565b5b828201905092915050565b6000614deb82614e7e565b9150614df683614e7e565b925082821015614e0957614e08614f88565b5b828203905092915050565b6000614e1f82614e5e565b9050919050565b60008115159050919050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b6000614e9382614e7e565b9050919050565b82818337600083830152505050565b60005b83811015614ec7578082015181840152602081019050614eac565b83811115614ed6576000848401525b50505050565b60006002820490506001821680614ef457607f821691505b60208210811415614f0857614f07614fb7565b5b50919050565b614f1782615037565b810181811067ffffffffffffffff82111715614f3657614f35614fe6565b5b80604052505050565b6000614f4a82614e7e565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415614f7d57614f7c614f88565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600060033d11156150345760046000803e615031600051615048565b90505b90565b6000601f19601f8301169050919050565b60008160e01c9050919050565b7f455243313135353a207472616e7366657220746f206e6f6e204552433131353560008201527f526563656976657220696d706c656d656e746572000000000000000000000000602082015250565b7f455243313135353a204552433131353552656365697665722072656a6563746560008201527f6420746f6b656e73000000000000000000000000000000000000000000000000602082015250565b7f75736572206973206e6f206f7267616e697a6572000000000000000000000000600082015250565b7f5061757361626c653a206e6f7420706175736564000000000000000000000000600082015250565b7f455243313135353a2062616c616e636520717565727920666f7220746865207a60008201527f65726f2061646472657373000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f455243313135353a206275726e20616d6f756e7420657863656564732062616c60008201527f616e636500000000000000000000000000000000000000000000000000000000602082015250565b7f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260008201527f20617070726f7665640000000000000000000000000000000000000000000000602082015250565b7f6f7267616e697a657220696e64657820697320696e76616c6964000000000000600082015250565b7f5061757361626c653a2070617573656400000000000000000000000000000000600082015250565b7f7374617465000000000000000000000000000000000000000000000000000000600082015250565b7f455243313135353a207472616e7366657220746f20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f455243313135353a207472616e736665722063616c6c6572206973206e6f742060008201527f6f776e6572206e6f7220617070726f7665640000000000000000000000000000602082015250565b7f757365722068617320696e76616c6964206f7267616e697a657220726f6c6500600082015250565b7f455243313135353a206275726e2066726f6d20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f455243313135353a20696e73756666696369656e742062616c616e636520666f60008201527f72207472616e7366657200000000000000000000000000000000000000000000602082015250565b7f757365722063616e206e6f7420736574206f776e20726f6c6500000000000000600082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f7572694d65746164617461000000000000000000000000000000000000000000600082015250565b7f7374617465206e6f7420616c6c6f776564000000000000000000000000000000600082015250565b7f455243313135353a2073657474696e6720617070726f76616c2073746174757360008201527f20666f722073656c660000000000000000000000000000000000000000000000602082015250565b7f455243313135353a206163636f756e747320616e6420696473206c656e67746860008201527f206d69736d617463680000000000000000000000000000000000000000000000602082015250565b7f455243313135353a2069647320616e6420616d6f756e7473206c656e6774682060008201527f6d69736d61746368000000000000000000000000000000000000000000000000602082015250565b7f455243313135353a206d696e7420746f20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b600060443d1015615651576156d4565b615659614bfc565b60043d036004823e80513d602482011167ffffffffffffffff821117156156815750506156d4565b808201805167ffffffffffffffff81111561569f57505050506156d4565b80602083010160043d0385018111156156bc5750505050506156d4565b6156cb82602001850186614f0e565b82955050505050505b90565b6156e081614e14565b81146156eb57600080fd5b50565b6156f781614e26565b811461570257600080fd5b50565b61570e81614e32565b811461571957600080fd5b50565b61572581614e7e565b811461573057600080fd5b5056fea2646970667358221220b896c05e3bf55df5ed877e41ffa6b59eebac239b8ff0334bc8c7c2650e84ed8964736f6c63430008020033