0 txs
0 calls
constructor
No constructor.
functions
backTradeFeeAddress
viewfunction backTradeFeeAddress() view returns (address)
cancelOrderTime
viewfunction cancelOrderTime() view returns (uint256)
canWithdrawHours
viewfunction canWithdrawHours() view returns (uint256)
feeAddrSet
viewfunction feeAddrSet(string) view returns (address)
feeAmountSet
viewfunction feeAmountSet(string) view returns (uint256)
getCancelOrderTime
viewfunction getCancelOrderTime() view returns (uint256)
getCanWithdrawHours
viewfunction getCanWithdrawHours() view returns (uint256)
owner
viewfunction owner() view returns (address)
searchListByRest
viewfunction searchListByRest(uint256 _restNo) view returns (tuple[])
searchOrder
viewfunction searchOrder(uint256 _orderNo) view returns (tuple order)
searchOrderList
viewfunction searchOrderList() view returns (tuple[])
addBuyOrder
payablefunction addBuyOrder(uint256 _restNo, uint256 _coinCount, uint256 _orderAmount, uint256 _payType) payable
addSellOrder
payablefunction addSellOrder(uint256 _restNo, uint256 _coinCount, uint256 _tradeFee, uint256 _orderAmount, uint256 _payType) payable
authFromContract
nonpayablefunction authFromContract(address _recordAddr, address _restAddr, address _userAddr, address _appealAddr)
cancelOrder
payablefunction cancelOrder(uint256 _orderNo) payable returns (bool)
confirmCollect
payablefunction confirmCollect(uint256 _orderNo) payable
renounceOwnership
nonpayablefunction renounceOwnership()
setBackTradeFeeAddress
nonpayablefunction setBackTradeFeeAddress(address _address)
setCancelOrderTime
nonpayablefunction setCancelOrderTime(uint256 _count)
setCanWithdrawHours
nonpayablefunction setCanWithdrawHours(uint256 _count)
setFee
nonpayablefunction setFee(string _method, address _addr, uint256 _amount)
setPaidMoney
payablefunction setPaidMoney(uint256 _orderNo) payable returns (bool)
takeCoin
nonpayablefunction takeCoin(uint256 _o)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
events
OrderAdd
event OrderAdd(uint256 _orderNo, uint256 _restNo, uint256 _coinCount, uint256 _tradeFee, uint256 _orderAmount, uint256 _payType, uint256 _orderType, address _buyerAddr, address _sellerAddr)
OrderCancel
event OrderCancel(uint256 _orderNo)
OrderConfirmCollect
event OrderConfirmCollect(uint256 _orderNo)
OrderPaidMoney
event OrderPaidMoney(uint256 _orderNo)
OrderUpdateStatus
event OrderUpdateStatus(uint256 _orderNo, uint256 _orderStatus)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
errors
No errors.
creation bytecode
0x6080604052601e600c556018600d553480156200001b57600080fd5b50620000273362000031565b6001805562000081565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b61500e80620000916000396000f3fe60806040526004361061014b5760003560e01c8063889d8ff4116100b6578063c57666be1161006f578063c57666be1461038f578063d7eb14f3146103bc578063e72e4114146103dc578063e7df13c7146103ef578063f22b3d9e14610427578063f2fde38b1461043d57600080fd5b8063889d8ff4146102f45780638c2d1a3a146103095780638da5cb5b1461031e578063923cce5e1461033c5780639a80e66c1461035c578063bfabb4161461036f57600080fd5b8063514fcac711610108578063514fcac71461022057806357ce6486146102335780636cf75b5e14610246578063715018a6146102665780637318be661461027b578063747bced61461029b57600080fd5b80630e0e09f3146101505780630f5dccc4146101795780631168bbe41461019c57806321e1474b146101c95780634284d453146101de5780634fe188ad14610200575b600080fd5b34801561015c57600080fd5b50610166600c5481565b6040519081526020015b60405180910390f35b61018c610187366004614030565b61045d565b6040519015158152602001610170565b3480156101a857600080fd5b506101bc6101b7366004614030565b610552565b60405161017091906141b4565b3480156101d557600080fd5b50600d54610166565b3480156101ea57600080fd5b506101fe6101f936600461422b565b6108c2565b005b34801561020c57600080fd5b506101fe61021b366004614030565b6108ec565b61018c61022e366004614030565b6108f9565b6101fe610241366004614030565b610fef565b34801561025257600080fd5b506101fe610261366004614030565b6117d2565b34801561027257600080fd5b506101fe6117df565b34801561028757600080fd5b506101fe61029636600461424f565b6117f3565b3480156102a757600080fd5b506102dc6102b63660046143cd565b8051602081830181018051600f825292820191909301209152546001600160a01b031681565b6040516001600160a01b039091168152602001610170565b34801561030057600080fd5b506101bc61185f565b34801561031557600080fd5b50600c54610166565b34801561032a57600080fd5b506000546001600160a01b03166102dc565b34801561034857600080fd5b506101fe610357366004614030565b611b39565b6101fe61036a36600461444c565b611ddf565b34801561037b57600080fd5b506101fe61038a366004614487565b612392565b34801561039b57600080fd5b506103af6103aa366004614030565b612408565b604051610170919061450f565b3480156103c857600080fd5b50600e546102dc906001600160a01b031681565b6101fe6103ea366004614522565b6126f6565b3480156103fb57600080fd5b5061016661040a3660046143cd565b805160208183018101805160108252928201919093012091525481565b34801561043357600080fd5b50610166600d5481565b34801561044957600080fd5b506101fe61045836600461422b565b612bca565b600081806104865760405162461bcd60e51b815260040161047d90614554565b60405180910390fd5b6000818152600860205260409020600901546001600160a01b031633146104dc5760405162461bcd60e51b815260206004820152600a60248201526937b7363c90313abcb2b960b11b604482015260640161047d565b6105096040518060400160405280600c81526020016b736574506169644d6f6e657960a01b815250612c43565b610514836002612d71565b6040518381527f6992e0bea484754da7aaaf68b0918cd87ec1ddbda5a503f902f0b2cd0aa668709060200160405180910390a1600191505b50919050565b600a546060906000906001600160401b03811115610572576105726142ab565b6040519080825280602002602001820160405280156105ab57816020015b610598613f7d565b8152602001906001900390816105905790505b50905060005b600a548110156108bb576000600a82815481106105d0576105d061457a565b9060005260206000209060110201604051806101400160405290816000820160009054906101000a90046001600160a01b03166001600160a01b03166001600160a01b03168152602001600182015481526020016002820154815260200160038201548152602001600482015481526020016005820154815260200160068201805461065b90614590565b80601f016020809104026020016040519081016040528092919081815260200182805461068790614590565b80156106d45780601f106106a9576101008083540402835291602001916106d4565b820191906000526020600020905b8154815290600101906020018083116106b757829003601f168201915b5050509183525050600782015460208083019190915260088301546040808401919091528051610100810182526009850180546001600160a01b039081168352600a8701541693820193909352600b8501805460609095019491939284019161073c90614590565b80601f016020809104026020016040519081016040528092919081815260200182805461076890614590565b80156107b55780601f1061078a576101008083540402835291602001916107b5565b820191906000526020600020905b81548152906001019060200180831161079857829003601f168201915b505050505081526020016003820154815260200160048201548152602001600582015481526020016006820180546107ec90614590565b80601f016020809104026020016040519081016040528092919081815260200182805461081890614590565b80156108655780601f1061083a57610100808354040283529160200191610865565b820191906000526020600020905b81548152906001019060200180831161084857829003601f168201915b50505050508152602001600782015481525050815250509050848160400151036108a8578083838151811061089c5761089c61457a565b60200260200101819052505b50806108b3816145da565b9150506105b1565b5092915050565b6108ca6135e6565b600e80546001600160a01b0319166001600160a01b0392909216919091179055565b6108f46135e6565b600c55565b600081806109195760405162461bcd60e51b815260040161047d90614554565b6000818152600860205260409020600a01546001600160a01b031633148061095a57506000818152600860205260409020600901546001600160a01b031633145b6109765760405162461bcd60e51b815260040161047d906145f3565b6109a26040518060400160405280600b81526020016a31b0b731b2b627b93232b960a91b815250612c43565b600083815260086020908152604080832081516101408101835281546001600160a01b031681526001820154938101939093526002810154918301919091526003810154606083015260048101546080830152600581015460a083015260068101805460c084019190610a1490614590565b80601f0160208091040260200160405190810160405280929190818152602001828054610a4090614590565b8015610a8d5780601f10610a6257610100808354040283529160200191610a8d565b820191906000526020600020905b815481529060010190602001808311610a7057829003601f168201915b5050509183525050600782015460208083019190915260088301546040808401919091528051610100810182526009850180546001600160a01b039081168352600a8701541693820193909352600b85018054606090950194919392840191610af590614590565b80601f0160208091040260200160405190810160405280929190818152602001828054610b2190614590565b8015610b6e5780601f10610b4357610100808354040283529160200191610b6e565b820191906000526020600020905b815481529060010190602001808311610b5157829003601f168201915b50505050508152602001600382015481526020016004820154815260200160058201548152602001600682018054610ba590614590565b80601f0160208091040260200160405190810160405280929190818152602001828054610bd190614590565b8015610c1e5780601f10610bf357610100808354040283529160200191610c1e565b820191906000526020600020905b815481529060010190602001808311610c0157829003601f168201915b505050505081526020016007820154815250508152505090506000816020015103610c5b5760405162461bcd60e51b815260040161047d90614621565b806101000151600114610ca55760405162461bcd60e51b815260206004820152601260248201527121b0b713ba1031b0b731b2b61037b93232b960711b604482015260640161047d565b336001600160a01b0316816101200151602001516001600160a01b031603610d205742600c54603c610cd79190614658565b82610120015160800151610ceb919061466f565b10610d205760405162461bcd60e51b81526020600482015260056024820152641b1a5b5a5d60da1b604482015260640161047d565b6002546040828101519051630129ad5160e01b815260048101919091526000916001600160a01b031690630129ad5190602401600060405180830381865afa158015610d70573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610d98919081019061482c565b905080610100015160041480610db357508061010001516005145b15610e7157610120820180516020908101516001600160a01b039081166000908152600b835260408082208a835284528082209190915560035493519283015192810151606087015191516332f02e1d60e01b815294909216936332f02e1d93610e23939092909160040161494d565b600060405180830381600087803b158015610e3d57600080fd5b505af1158015610e51573d6000803e3d6000fd5b5050506000868152600860205260409020610e6c9150613640565b610fa6565b8160e00151600203610f3157610120820180516020908101516001600160a01b039081166000908152600b835260408082208a835284528082209190915560035493519283015192810151606087015191516332f02e1d60e01b815294909216936332f02e1d93610ee8939092909160040161494d565b600060405180830381600087803b158015610f0257600080fd5b505af1158015610f16573d6000803e3d6000fd5b5050506000868152600860205260409020610f319150613640565b60025460408084015160608501519151632b9db5df60e11b81526001600160a01b039093169263573b6bbe92610f739291600401918252602082015260400190565b600060405180830381600087803b158015610f8d57600080fd5b505af1158015610fa1573d6000803e3d6000fd5b505050505b610fb1856004612d71565b6040518581527fab15e9f4d651ec7d8276a842911d7028683655a4e1d043a54a623c2d36f3b18f9060200160405180910390a1506001949350505050565b808061100d5760405162461bcd60e51b815260040161047d90614554565b6000818152600860205260409020600a01546001600160a01b031633146110645760405162461bcd60e51b815260206004820152600b60248201526a37b7363c9039b2b63632b960a91b604482015260640161047d565b6110936040518060400160405280600e81526020016d18dbdb999a5c9b50dbdb1b1958dd60921b815250612c43565b816110b05760405162461bcd60e51b815260040161047d90614554565b600082815260086020908152604080832081516101408101835281546001600160a01b031681526001820154938101939093526002810154918301919091526003810154606083015260048101546080830152600581015460a083015260068101805460c08401919061112290614590565b80601f016020809104026020016040519081016040528092919081815260200182805461114e90614590565b801561119b5780601f106111705761010080835404028352916020019161119b565b820191906000526020600020905b81548152906001019060200180831161117e57829003601f168201915b5050509183525050600782015460208083019190915260088301546040808401919091528051610100810182526009850180546001600160a01b039081168352600a8701541693820193909352600b8501805460609095019491939284019161120390614590565b80601f016020809104026020016040519081016040528092919081815260200182805461122f90614590565b801561127c5780601f106112515761010080835404028352916020019161127c565b820191906000526020600020905b81548152906001019060200180831161125f57829003601f168201915b505050505081526020016003820154815260200160048201548152602001600582015481526020016006820180546112b390614590565b80601f01602080910402602001604051908101604052809291908181526020018280546112df90614590565b801561132c5780601f106113015761010080835404028352916020019161132c565b820191906000526020600020905b81548152906001019060200180831161130f57829003601f168201915b505050505081526020016007820154815250508152505090508061010001516002146113915760405162461bcd60e51b8152602060048201526014602482015273496e76616c6964206f726465722073746174757360601b604482015260640161047d565b610120810151516001600160a01b03166113e55760405162461bcd60e51b8152602060048201526015602482015274496e76616c6964206275796572206164647265737360581b604482015260640161047d565b6060810151336000908152600b6020908152604080832087845290915290205410156114455760405162461bcd60e51b815260206004820152600f60248201526e0c6ded2dc40dcdee840cadcdeeaced608b1b604482015260640161047d565b611450836003612d71565b336000908152600b6020908152604080832086845282528083208390556003548151635c7cee6360e01b815291516001600160a01b0390911692635c7cee6392600480820193918290030181865afa1580156114b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114d49190614981565b60048054604051639bd7417f60e01b815233928101929092529192506000916001600160a01b031690639bd7417f90602401600060405180830381865afa158015611523573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261154b9190810190614a6b565b90506000828260a0015161155f919061466f565b60e0830151805191925090600190829061157a90839061466f565b905250600480546040516316a1e96960e31b815233928101929092528251602483015260208301516044830152606482018490526001600160a01b03169063b50f4b4890608401600060405180830381600087803b1580156115db57600080fd5b505af11580156115ef573d6000803e3d6000fd5b50506004805461012089015151604051639bd7417f60e01b81526001600160a01b039182169381019390935260009450169150639bd7417f90602401600060405180830381865afa158015611648573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526116709190810190614a6b565b90506000858260a00151611684919061466f565b60e0830151805191925090600190829061169f90839061466f565b905250600480546101208a0151516040516316a1e96960e31b81526001600160a01b0391821693810193909352835160248401526020840151604484015260648301859052169063b50f4b4890608401600060405180830381600087803b15801561170957600080fd5b505af115801561171d573d6000803e3d6000fd5b50506003546101208b0151516040516301b7257760e41b8152600481018f90526001600160a01b03918216602482015291169250631b7257709150604401600060405180830381600087803b15801561177557600080fd5b505af1158015611789573d6000803e3d6000fd5b505050507f2977e4c43592a10bfbebdbacff1dd75f525cfc12644428d2f0bc595572d0e1c88a6040516117be91815260200190565b60405180910390a150505050505050505050565b6117da6135e6565b600d55565b6117e76135e6565b6117f16000613787565b565b6117fb6135e6565b600380546001600160a01b03199081166001600160a01b0387811691821790935560028054831687851617905560048054831686851617905560068054831690911790556005805490911691831691909117905561185960076137d7565b50505050565b6060600a805480602002602001604051908101604052809291908181526020016000905b82821015611b3057600084815260209081902060408051610140810182526011860290920180546001600160a01b031683526001810154938301939093526002830154908201526003820154606082015260048201546080820152600582015460a082015260068201805491929160c08401919061190090614590565b80601f016020809104026020016040519081016040528092919081815260200182805461192c90614590565b80156119795780601f1061194e57610100808354040283529160200191611979565b820191906000526020600020905b81548152906001019060200180831161195c57829003601f168201915b5050509183525050600782015460208083019190915260088301546040808401919091528051610100810182526009850180546001600160a01b039081168352600a8701541693820193909352600b850180546060909501949193928401916119e190614590565b80601f0160208091040260200160405190810160405280929190818152602001828054611a0d90614590565b8015611a5a5780601f10611a2f57610100808354040283529160200191611a5a565b820191906000526020600020905b815481529060010190602001808311611a3d57829003601f168201915b50505050508152602001600382015481526020016004820154815260200160058201548152602001600682018054611a9190614590565b80601f0160208091040260200160405190810160405280929190818152602001828054611abd90614590565b8015611b0a5780601f10611adf57610100808354040283529160200191611b0a565b820191906000526020600020905b815481529060010190602001808311611aed57829003601f168201915b505050505081526020016007820154815250508152505081526020019060010190611883565b50505050905090565b8080611b575760405162461bcd60e51b815260040161047d90614554565b6000818152600860205260409020600a01546001600160a01b0316331480611b9857506000818152600860205260409020600901546001600160a01b031633145b611bb45760405162461bcd60e51b815260040161047d906145f3565b6005546040516339ccd25f60e01b8152600481018490526000916001600160a01b0316906339ccd25f90602401600060405180830381865afa158015611bfe573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611c269190810190614c6e565b9050600d54610e10611c389190614658565b61016082015160a00151611c4c9042614d5b565b11611c865760405162461bcd60e51b815260206004820152600a6024820152693a34b6b29032b93937b960b11b604482015260640161047d565b600081608001516001600160a01b031682600001516001600160a01b031603611cd8578160e00151600203611cc057506080810151611d02565b8160e00151600303611cd3575060a08101515b611d02565b8160e00151600203611cef575060a0810151611d02565b8160e00151600303611d02575060808101515b6001600160a01b0381163314611d465760405162461bcd60e51b815260206004820152600960248201526837b83a1032b93937b960b91b604482015260640161047d565b611d51846005612d71565b60a08201516001600160a01b039081166000908152600b602090815260408083208884529091528082209190915560035490516301b7257760e41b815260048101879052336024820152911690631b72577090604401600060405180830381600087803b158015611dc157600080fd5b505af1158015611dd5573d6000803e3d6000fd5b5050505050505050565b611e0c6040518060400160405280600c81526020016b30b23229b2b63627b93232b960a11b815250612c43565b600254604051630129ad5160e01b8152600481018790526000916001600160a01b031690630129ad5190602401600060405180830381865afa158015611e56573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611e7e919081019061482c565b9050336001600160a01b031681600001516001600160a01b031603611eb55760405162461bcd60e51b815260040161047d90614d6e565b8060400151600114611efe5760405162461bcd60e51b8152602060048201526012602482015271189d5e481c995cdd081b9bdd08195e1a5cdd60721b604482015260640161047d565b60008511611f415760405162461bcd60e51b815260206004820152601060248201526f31b7b4b71031b7bab73a1032b93937b960811b604482015260640161047d565b60008311611f855760405162461bcd60e51b815260206004820152601160248201527037b93232b920b6b7bab73a1032b93937b960791b604482015260640161047d565b806101000151600114611fce5760405162461bcd60e51b81526020600482015260116024820152703932b9ba1039ba30ba3ab99032b93937b960791b604482015260640161047d565b6000611fde8260c0015187613803565b90508161012001516040015181101580156120025750816101200151606001518111155b61203d5760405162461bcd60e51b815260206004820152600c60248201526b30b6b7bab73a1032b93937b960a11b604482015260640161047d565b60048054604051639bd7417f60e01b815233928101929092526000916001600160a01b0390911690639bd7417f90602401600060405180830381865afa15801561208b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526120b39190810190614a6b565b905080608001516001141580156120cf57508060800151600214155b61210a5760405162461bcd60e51b815260206004820152600c60248201526b34b73b30b634b2103ab9b2b960a11b604482015260640161047d565b826101200151608001518160a0015110156121565760405162461bcd60e51b815260206004820152600c60248201526b31b932b234ba1032b93937b960a11b604482015260640161047d565b61012083015160a001516101008201515110156121a65760405162461bcd60e51b815260206004820152600e60248201526d36b7b93a33b0b3b29032b93937b960911b604482015260640161047d565b60006121b28888613818565b600254604051633e4a8eed60e21b8152600481018c9052602481018b90529192506001600160a01b03169063f92a3bb490604401600060405180830381600087803b15801561220057600080fd5b505af1158015612214573d6000803e3d6000fd5b5050505061222d898989898960028a6000015133613824565b506003546060850151604051630bc67f9b60e01b81526000926001600160a01b031691630bc67f9b916122639190600401614d96565b6020604051808303816000875af1158015612282573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122a69190614da9565b6006546040516323b872dd60e01b81523360048201526001600160a01b039182166024820152604481018590529192508216906323b872dd90606401600060405180830381600087803b1580156122fc57600080fd5b505af1158015612310573d6000803e3d6000fd5b50506003546060880151604051634e23ea9760e01b81526001600160a01b039092169350634e23ea979250612354913391908e906002906001908290600401614dc6565b600060405180830381600087803b15801561236e57600080fd5b505af1158015612382573d6000803e3d6000fd5b5050505050505050505050505050565b61239a6135e6565b81600f85856040516123ad929190614e1c565b908152602001604051809103902060006101000a8154816001600160a01b0302191690836001600160a01b0316021790555080601085856040516123f2929190614e1c565b9081526040519081900360200190205550505050565b612410613f7d565b8161242d5760405162461bcd60e51b815260040161047d90614554565b60008281526008602052604090206001015461245b5760405162461bcd60e51b815260040161047d90614621565b600082815260086020908152604080832081516101408101835281546001600160a01b031681526001820154938101939093526002810154918301919091526003810154606083015260048101546080830152600581015460a083015260068101805460c0840191906124cd90614590565b80601f01602080910402602001604051908101604052809291908181526020018280546124f990614590565b80156125465780601f1061251b57610100808354040283529160200191612546565b820191906000526020600020905b81548152906001019060200180831161252957829003601f168201915b5050509183525050600782015460208083019190915260088301546040808401919091528051610100810182526009850180546001600160a01b039081168352600a8701541693820193909352600b850180546060909501949193928401916125ae90614590565b80601f01602080910402602001604051908101604052809291908181526020018280546125da90614590565b80156126275780601f106125fc57610100808354040283529160200191612627565b820191906000526020600020905b81548152906001019060200180831161260a57829003601f168201915b5050505050815260200160038201548152602001600482015481526020016005820154815260200160068201805461265e90614590565b80601f016020809104026020016040519081016040528092919081815260200182805461268a90614590565b80156126d75780601f106126ac576101008083540402835291602001916126d7565b820191906000526020600020905b8154815290600101906020018083116126ba57829003601f168201915b5050509183525050600791909101546020909101529052509392505050565b6127226040518060400160405280600b81526020016a30b232213abca7b93232b960a91b815250612c43565b600254604051630129ad5160e01b8152600481018690526000916001600160a01b031690630129ad5190602401600060405180830381865afa15801561276c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612794919081019061482c565b9050336001600160a01b031681600001516001600160a01b0316036127cb5760405162461bcd60e51b815260040161047d90614d6e565b80604001516002146128155760405162461bcd60e51b81526020600482015260136024820152721cd95b1b081c995cdd081b9bdd08195e1a5cdd606a1b604482015260640161047d565b6000841180156128255750600083115b6128645760405162461bcd60e51b815260206004820152601060248201526f31b7b4b71031b7bab73a1032b93937b960811b604482015260640161047d565b8061010001516001146128ad5760405162461bcd60e51b81526020600482015260116024820152703932b9ba1039ba30ba3ab99032b93937b960791b604482015260640161047d565b60048054604051639bd7417f60e01b815233928101929092526000916001600160a01b0390911690639bd7417f90602401600060405180830381865afa1580156128fb573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526129239190810190614a6b565b9050806080015160011415801561293f57508060800151600214155b61297a5760405162461bcd60e51b815260206004820152600c60248201526b34b73b30b634b2103ab9b2b960a11b604482015260640161047d565b600254825160405163e9a5f96d60e01b81526001600160a01b03918216600482015260248101899052600092919091169063e9a5f96d90604401602060405180830381865afa1580156129d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129f59190614981565b905085811015612a395760405162461bcd60e51b815260206004820152600f60248201526e0c6ded2dc40dcdee840cadcdeeaced608b1b604482015260640161047d565b6000612a498460c0015188613803565b9050836101200151604001518110158015612a6d5750836101200151606001518111155b612aa85760405162461bcd60e51b815260206004820152600c60248201526b30b6b7bab73a1032b93937b960a11b604482015260640161047d565b836101200151608001518360a001511015612af45760405162461bcd60e51b815260206004820152600c60248201526b31b932b234ba1032b93937b960a11b604482015260640161047d565b61012084015160a00151610100840151511015612b445760405162461bcd60e51b815260206004820152600e60248201526d36b7b93a33b0b3b29032b93937b960911b604482015260640161047d565b600254604051633e4a8eed60e21b8152600481018a9052602481018990526001600160a01b039091169063f92a3bb490604401600060405180830381600087803b158015612b9157600080fd5b505af1158015612ba5573d6000803e3d6000fd5b50505050612bbf8888600089896001338b60000151613824565b505050505050505050565b612bd26135e6565b6001600160a01b038116612c375760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161047d565b612c4081613787565b50565b6000601082604051612c559190614e2c565b90815260200160405180910390205490506000600f83604051612c789190614e2c565b908152604051908190036020019020546001600160a01b031690508115612d6c576001600160a01b038116612cef5760405162461bcd60e51b815260206004820152601d60248201527f726563697069656e74206e756c6c206973206e6f7420616c6c6f776564000000604482015260640161047d565b81341015612d365760405162461bcd60e51b8152602060048201526014602482015273696e73756666696369656e742062616c616e636560601b604482015260640161047d565b6040516001600160a01b0382169083156108fc029084906000818181858888f19350505050158015611859573d6000803e3d6000fd5b505050565b8180612d8f5760405162461bcd60e51b815260040161047d90614554565b6000818152600860205260409020600a01546001600160a01b0316331480612dd057506000818152600860205260409020600901546001600160a01b031633145b612dec5760405162461bcd60e51b815260040161047d906145f3565b600083815260086020908152604080832081516101408101835281546001600160a01b031681526001820154938101939093526002810154918301919091526003810154606083015260048101546080830152600581015460a083015260068101805460c084019190612e5e90614590565b80601f0160208091040260200160405190810160405280929190818152602001828054612e8a90614590565b8015612ed75780601f10612eac57610100808354040283529160200191612ed7565b820191906000526020600020905b815481529060010190602001808311612eba57829003601f168201915b5050509183525050600782015460208083019190915260088301546040808401919091528051610100810182526009850180546001600160a01b039081168352600a8701541693820193909352600b85018054606090950194919392840191612f3f90614590565b80601f0160208091040260200160405190810160405280929190818152602001828054612f6b90614590565b8015612fb85780601f10612f8d57610100808354040283529160200191612fb8565b820191906000526020600020905b815481529060010190602001808311612f9b57829003601f168201915b50505050508152602001600382015481526020016004820154815260200160058201548152602001600682018054612fef90614590565b80601f016020809104026020016040519081016040528092919081815260200182805461301b90614590565b80156130685780601f1061303d57610100808354040283529160200191613068565b820191906000526020600020905b81548152906001019060200180831161304b57829003601f168201915b5050505050815260200160078201548152505081525050905060008160200151036130a55760405162461bcd60e51b815260040161047d90614621565b600183101580156130b7575060058311155b6130fa5760405162461bcd60e51b8152602060048201526014602482015273496e76616c6964206f726465722073746174757360601b604482015260640161047d565b8260021480156131105750806101000151600114155b156131565760405162461bcd60e51b815260206004820152601660248201527524b73b30b634b21037b93232b91039ba30ba3ab9901960511b604482015260640161047d565b82600314801561316c5750806101000151600214155b156131b25760405162461bcd60e51b8152602060048201526016602482015275496e76616c6964206f7264657220737461747573203360501b604482015260640161047d565b8260041480156131c85750806101000151600114155b1561320e5760405162461bcd60e51b8152602060048201526016602482015275125b9d985b1a59081bdc99195c881cdd185d1d5cc80d60521b604482015260640161047d565b8260051480156132245750806101000151600114155b80156132365750806101000151600214155b1561327c5760405162461bcd60e51b8152602060048201526016602482015275496e76616c6964206f7264657220737461747573203560501b604482015260640161047d565b826002036132d457610120810151516001600160a01b031633146132d45760405162461bcd60e51b815260206004820152600f60248201526e1bdb9b1e48189d5e595c8818d85b1b608a1b604482015260640161047d565b8260030361333057610120810151602001516001600160a01b031633146133305760405162461bcd60e51b815260206004820152601060248201526f1bdb9b1e481cd95b1b195c8818d85b1b60821b604482015260640161047d565b61010081018390526101208101514260a091820152600085815260086020908152604091829020845181546001600160a01b0319166001600160a01b03909116178155908401516001820155908301516002820155606083015160038201556080830151600482015590820151600582015560c082015182919060068201906133b99082614e8e565b5060e08201516007820155610100820151600882015561012082015180516009830180546001600160a01b039283166001600160a01b03199182161782556020840151600a86018054919094169116179091556040820151600b8401906134209082614e8e565b50606082015160038201556080820151600482015560a0820151600582015560c082015160068201906134539082614e8e565b5060e091909101516007909101555050600084815260096020526040902054600a805483929081106134875761348761457a565b600091825260209182902083516011929092020180546001600160a01b0319166001600160a01b0390921691909117815590820151600182015560408201516002820155606082015160038201556080820151600482015560a0820151600582015560c082015160068201906134fd9082614e8e565b5060e08201516007820155610100820151600882015561012082015180516009830180546001600160a01b039283166001600160a01b03199182161782556020840151600a86018054919094169116179091556040820151600b8401906135649082614e8e565b50606082015160038201556080820151600482015560a0820151600582015560c082015160068201906135979082614e8e565b5060e09190910151600790910155505060408051858152602081018590527f5bd27be5765507f933e2cb48522d35ec14e011f43ce75c17041898e6ed37d859910160405180910390a150505050565b6000546001600160a01b031633146117f15760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161047d565b600e546001600160a01b03166136985760405162461bcd60e51b815260206004820152601960248201527f7472616465206665652061646472657373206973206e756c6c00000000000000604482015260640161047d565b600354604051630bc67f9b60e01b81526000916001600160a01b031690630bc67f9b906136cc90600b860190600401614f4d565b6020604051808303816000875af11580156136eb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061370f9190614da9565b600e5460108401546040516323b872dd60e01b81526001600160a01b03928316600482015233602482015260448101919091529192508216906323b872dd90606401600060405180830381600087803b15801561376b57600080fd5b505af115801561377f573d6000803e3d6000fd5b505050505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80546000036137e65761271081555b60018160000160008282546137fb919061466f565b909155505050565b600061380f8284614658565b90505b92915050565b600061380f828461466f565b60006002600154036138785760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015260640161047d565b600260015561388989898888613e82565b600254604051630129ad5160e01b8152600481018b90526000916001600160a01b031690630129ad5190602401600060405180830381865afa1580156138d3573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526138fb919081019061482c565b80519091506001600160a01b03166139255760405162461bcd60e51b815260040161047d90614d6e565b6000604051806101000160405280866001600160a01b03168152602001856001600160a01b03168152602001836060015181526020018360c001518152602001428152602001600081526020016040518060200160405280600081525081526020018a8152509050600061399860075490565b600081815260086020526040902060010154909150156139e85760405162461bcd60e51b815260206004820152600b60248201526a1bdc99195c88195e1a5cdd60aa1b604482015260640161047d565b6000604051806101400160405280336001600160a01b031681526020018381526020018e81526020018d81526020018b81526020018a81526020018560800151815260200189815260200160018152602001848152509050806008600084815260200190815260200160002060008201518160000160006101000a8154816001600160a01b0302191690836001600160a01b031602179055506020820151816001015560408201518160020155606082015181600301556080820151816004015560a0820151816005015560c0820151816006019081613ac89190614e8e565b5060e08201516007820155610100820151600882015561012082015180516009830180546001600160a01b039283166001600160a01b03199182161782556020840151600a86018054919094169116179091556040820151600b840190613b2f9082614e8e565b50606082015160038201556080820151600482015560a0820151600582015560c08201516006820190613b629082614e8e565b5060e091909101516007909101555050600a805460018101825560009190915281517fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a8601190920291820180546001600160a01b0319166001600160a01b0390921691909117815560208301517fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a983015560408301517fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2aa83015560608301517fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2ab83015560808301517fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2ac83015560a08301517fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2ad83015560c083015183927fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2ae0190613ccb9082614e8e565b5060e08201516007820155610100820151600882015561012082015180516009830180546001600160a01b039283166001600160a01b03199182161782556020840151600a86018054919094169116179091556040820151600b840190613d329082614e8e565b50606082015160038201556080820151600482015560a0820151600582015560c08201516006820190613d659082614e8e565b5060e091909101516007909101555050600a54613d8490600190614d5b565b6000838152600960205260409020556002889003613dbe57336000908152600b6020908152604080832085845290915290208c9055613dee565b87600103613dee5783516001600160a01b03166000908152600b6020908152604080832085845290915290208c90555b613df860076137d7565b60408051838152602081018f90529081018d9052606081018c9052608081018b905260a081018a905260c081018990526001600160a01b0380891660e083015287166101008201527f65c63bce967237d9b3fd7a8cd7f6a75e6f9d4196256f87fc332a42a71081e05c906101200160405180910390a150600180559b9a5050505050505050505050565b83613ebd5760405162461bcd60e51b815260206004820152600b60248201526a1c995cdd139bc81b9d5b1b60aa1b604482015260640161047d565b60008311613efe5760405162461bcd60e51b815260206004820152600e60248201526d18dbda5b90dbdd5b9d081b9d5b1b60921b604482015260640161047d565b60008211613f415760405162461bcd60e51b815260206004820152601060248201526f1bdc99195c905b5bdd5b9d081b9d5b1b60821b604482015260640161047d565b806118595760405162461bcd60e51b815260206004820152600c60248201526b1c185e551e5c19481b9d5b1b60a21b604482015260640161047d565b60405180610140016040528060006001600160a01b03168152602001600081526020016000815260200160008152602001600081526020016000815260200160608152602001600081526020016000815260200161402b60405180610100016040528060006001600160a01b0316815260200160006001600160a01b031681526020016060815260200160008152602001600081526020016000815260200160608152602001600081525090565b905290565b60006020828403121561404257600080fd5b5035919050565b60005b8381101561406457818101518382015260200161404c565b50506000910152565b60008151808452614085816020860160208601614049565b601f01601f19169290920160200192915050565b600061010060018060a01b038084511685528060208501511660208601525060408301518160408601526140cf8286018261406d565b915050606083015160608501526080830151608085015260a083015160a085015260c083015184820360c0860152614107828261406d565b91505060e083015160e08501528091505092915050565b80516001600160a01b0316825260006101406020830151602085015260408301516040850152606083015160608501526080830151608085015260a083015160a085015260c08301518160c08601526141798286018261406d565b91505060e083015160e085015261010080840151818601525061012080840151858303828701526141aa8382614099565b9695505050505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561420957603f198886030184526141f785835161411e565b945092850192908501906001016141db565b5092979650505050505050565b6001600160a01b0381168114612c4057600080fd5b60006020828403121561423d57600080fd5b813561424881614216565b9392505050565b6000806000806080858703121561426557600080fd5b843561427081614216565b9350602085013561428081614216565b9250604085013561429081614216565b915060608501356142a081614216565b939692955090935050565b634e487b7160e01b600052604160045260246000fd5b60405161016081016001600160401b03811182821017156142e4576142e46142ab565b60405290565b60405161014081016001600160401b03811182821017156142e4576142e46142ab565b60405161012081016001600160401b03811182821017156142e4576142e46142ab565b60405161020081016001600160401b03811182821017156142e4576142e46142ab565b60405161018081016001600160401b03811182821017156142e4576142e46142ab565b604051601f8201601f191681016001600160401b038111828210171561439e5761439e6142ab565b604052919050565b60006001600160401b038211156143bf576143bf6142ab565b50601f01601f191660200190565b6000602082840312156143df57600080fd5b81356001600160401b038111156143f557600080fd5b8201601f8101841361440657600080fd5b8035614419614414826143a6565b614376565b81815285602083850101111561442e57600080fd5b81602084016020830137600091810160200191909152949350505050565b600080600080600060a0868803121561446457600080fd5b505083359560208501359550604085013594606081013594506080013592509050565b6000806000806060858703121561449d57600080fd5b84356001600160401b03808211156144b457600080fd5b818701915087601f8301126144c857600080fd5b8135818111156144d757600080fd5b8860208285010111156144e957600080fd5b602092830196509450508501356144ff81614216565b9396929550929360400135925050565b60208152600061380f602083018461411e565b6000806000806080858703121561453857600080fd5b5050823594602084013594506040840135936060013592509050565b6020808252600c908201526b1bdc99195c939bc81b9d5b1b60a21b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b600181811c908216806145a457607f821691505b60208210810361054c57634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016145ec576145ec6145c4565b5060010190565b60208082526014908201527327b7363c90313abcb2b91037b91039b2b63632b960611b604082015260600190565b60208082526017908201527f63757272656e74204f72646572206e6f74206578697374000000000000000000604082015260600190565b8082028115828204841417613812576138126145c4565b80820180821115613812576138126145c4565b805161468d81614216565b919050565b600082601f8301126146a357600080fd5b81516146b1614414826143a6565b8181528460208386010111156146c657600080fd5b6146d7826020830160208701614049565b949350505050565b600082601f8301126146f057600080fd5b815160206001600160401b0382111561470b5761470b6142ab565b8160051b61471a828201614376565b928352848101820192828101908785111561473457600080fd5b83870192505b848310156147535782518252918301919083019061473a565b979650505050505050565b6000610160828403121561477157600080fd5b6147796142c1565b9050815181526020820151602082015260408201516040820152606082015160608201526080820151608082015260a082015160a082015260c08201516001600160401b03808211156147cb57600080fd5b6147d785838601614692565b60c084015260e0848101519084015261010080850151908401526101208085015190840152610140808501519092508181111561481357600080fd5b61481f86828701614692565b8385015250505092915050565b60006020828403121561483e57600080fd5b81516001600160401b038082111561485557600080fd5b90830190610140828603121561486a57600080fd5b6148726142ea565b61487b83614682565b815260208301516020820152604083015160408201526060830151828111156148a357600080fd5b6148af87828601614692565b6060830152506080830151828111156148c757600080fd5b6148d387828601614692565b60808301525060a083015160a082015260c083015160c082015260e0830151828111156148ff57600080fd5b61490b878286016146df565b60e0830152506101008381015190820152610120808401518381111561493057600080fd5b61493c8882870161475e565b918301919091525095945050505050565b6001600160a01b03841681526060602082018190526000906149719083018561406d565b9050826040830152949350505050565b60006020828403121561499357600080fd5b5051919050565b6000604082840312156149ac57600080fd5b604051604081018181106001600160401b03821117156149ce576149ce6142ab565b604052825181526020928301519281019290925250919050565b600060e082840312156149fa57600080fd5b60405160e081018181106001600160401b0382111715614a1c57614a1c6142ab565b8060405250809150825181526020830151602082015260408301516040820152606083015160608201526080830151608082015260a083015160a082015260c083015160c08201525092915050565b600060208284031215614a7d57600080fd5b81516001600160401b0380821115614a9457600080fd5b908301906102008286031215614aa957600080fd5b614ab161430d565b614aba83614682565b8152602083015182811115614ace57600080fd5b614ada87828601614692565b602083015250604083015182811115614af257600080fd5b614afe87828601614692565b604083015250606083015160608201526080830151608082015260a083015160a082015260c083015160c0820152614b398660e0850161499a565b60e0820152614b4c8661012085016149e8565b61010082015295945050505050565b60006102008284031215614b6e57600080fd5b614b76614330565b9050614b8182614682565b81526020820151602082015260408201516001600160401b0380821115614ba757600080fd5b614bb385838601614692565b6040840152606084015160608401526080840151915080821115614bd657600080fd5b50614be384828501614692565b60808301525060a082015160a082015260c082015160c0820152614c0960e08301614682565b60e0820152610100828101519082015261012080830151908201526101408083015190820152610160808301519082015261018080830151908201526101a080830151908201526101c080830151908201526101e09182015191810191909152919050565b600060208284031215614c8057600080fd5b81516001600160401b0380821115614c9757600080fd5b908301906101808286031215614cac57600080fd5b614cb4614353565b614cbd83614682565b81526020830151602082015260408301516040820152614cdf60608401614682565b6060820152614cf060808401614682565b6080820152614d0160a08401614682565b60a082015260c0838101519082015260e080840151908201526101008084015190820152610120808401519082015261014080840151908201526101608084015183811115614d4f57600080fd5b61493c88828701614b5b565b81810381811115613812576138126145c4565b6020808252600e908201526d1c995cdd081b9bdd08195e1a5cdd60921b604082015260600190565b60208152600061380f602083018461406d565b600060208284031215614dbb57600080fd5b815161424881614216565b60018060a01b038716815260e06020820152600060e08201526000610100806040840152614df68184018961406d565b9150508560608301528460808301528360a08301528260c0830152979650505050505050565b8183823760009101908152919050565b60008251614e3e818460208701614049565b9190910192915050565b601f821115612d6c57600081815260208120601f850160051c81016020861015614e6f5750805b601f850160051c820191505b8181101561377f57828155600101614e7b565b81516001600160401b03811115614ea757614ea76142ab565b614ebb81614eb58454614590565b84614e48565b602080601f831160018114614ef05760008415614ed85750858301515b600019600386901b1c1916600185901b17855561377f565b600085815260208120601f198616915b82811015614f1f57888601518255948401946001909101908401614f00565b5085821015614f3d5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000602080835260008454614f6181614590565b80848701526040600180841660008114614f825760018114614f9c57614fca565b60ff1985168984015283151560051b890183019550614fca565b896000528660002060005b85811015614fc25781548b8201860152908301908801614fa7565b8a0184019650505b50939897505050505050505056fea26469706673582212208fc8de43890b27dd466df1a8925ce397bdc4d7bdea8461c01bf1d4bba2b48b6464736f6c63430008110033