token-icon

Lockable

Token

Overview[ERC-20]

Max Total Supply
10,000,000.0
LC
Holders
68+0.00%
Transfers
114

Profile Summary

Decimals
18

Market

Price
$0 @0.00000000 ETH
If you are the owner of this contract, verify it.
Deployed ByteCode
0x608060405234801561001057600080fd5b50600436106101e55760003560e01c8063896b9ad01161010f578063c92b4b5a116100a2578063dd62ed3e11610071578063dd62ed3e1461057c578063fad8b32a146105ac578063fc673c4f146105c8578063fe9d9303146105e4576101e5565b8063c92b4b5a146104f4578063ca3369c614610512578063ca5c7b911461052e578063d95b63711461054c576101e5565b80639bd9bbc6116100de5780639bd9bbc61461045c578063a9059cbb14610478578063a96ce7aa146104a8578063bc101571146104c4576101e5565b8063896b9ad0146103ea578063931fe6ee14610406578063959b8c3f1461042257806395d89b411461043e576101e5565b8063449b97161161018757806370a082311161015657806370a082311461036457806378d28bd7146103945780638078f338146103b0578063893d20e8146103cc576101e5565b8063449b9716146102de578063556f0dc7146102fa578063593557361461031857806362ad1b8314610348576101e5565b806318160ddd116101c357806318160ddd1461025657806323b872dd14610274578063313ce567146102a45780633e48eba9146102c2576101e5565b806306e48538146101ea57806306fdde0314610208578063095ea7b314610226575b600080fd5b6101f2610600565b6040516101ff9190613c5c565b60405180910390f35b61021061068e565b60405161021d9190613d17565b60405180910390f35b610240600480360381019061023b9190613daf565b610720565b60405161024d9190613e0a565b60405180910390f35b61025e610743565b60405161026b9190613e34565b60405180910390f35b61028e60048036038101906102899190613e4f565b61074d565b60405161029b9190613e0a565b60405180910390f35b6102ac6109a7565b6040516102b99190613ebe565b60405180910390f35b6102dc60048036038101906102d791906140af565b6109b0565b005b6102f860048036038101906102f391906141a0565b610db6565b005b6103026110d1565b60405161030f9190613e34565b60405180910390f35b610332600480360381019061032d9190614265565b6110da565b60405161033f9190613e34565b60405180910390f35b610362600480360381019061035d9190614292565b611123565b005b61037e60048036038101906103799190614265565b611189565b60405161038b9190613e34565b60405180910390f35b6103ae60048036038101906103a99190614345565b6111d1565b005b6103ca60048036038101906103c59190614385565b611589565b005b6103d461192e565b6040516103e19190614463565b60405180910390f35b61040460048036038101906103ff919061447e565b611958565b005b610420600480360381019061041b91906144d1565b611d13565b005b61043c60048036038101906104379190614265565b61204a565b005b6104466122ab565b6040516104539190613d17565b60405180910390f35b6104766004803603810190610471919061452d565b61233d565b005b610492600480360381019061048d9190613daf565b612367565b60405161049f9190613e0a565b60405180910390f35b6104c260048036038101906104bd919061459c565b612475565b005b6104de60048036038101906104d99190614345565b6127a9565b6040516104eb9190613e34565b60405180910390f35b6104fc612851565b6040516105099190614644565b60405180910390f35b61052c6004803603810190610527919061465f565b612877565b005b610536612b5d565b6040516105439190613e34565b60405180910390f35b610566600480360381019061056191906146b2565b612b63565b6040516105739190613e0a565b60405180910390f35b610596600480360381019061059191906146b2565b612d14565b6040516105a39190613e34565b60405180910390f35b6105c660048036038101906105c19190614265565b612d9b565b005b6105e260048036038101906105dd91906146f2565b612ffc565b005b6105fe60048036038101906105f99190614791565b61305e565b005b6060600480548060200260200160405190810160405280929190818152602001828054801561068457602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001906001019080831161063a575b5050505050905090565b60606002805461069d9061481c565b80601f01602080910402602001604051908101604052809291908181526020018280546106c99061481c565b80156107165780601f106106eb57610100808354040283529160200191610716565b820191906000526020600020905b8154815290600101906020018083116106f957829003601f168201915b5050505050905090565b60008061072b613097565b905061073881858561309f565b600191505092915050565b6000600154905090565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156107be576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107b5906148c0565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141561082e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161082590614952565b60405180910390fd5b6000610838613097565b905061086681868686604051806020016040528060008152506040518060200160405280600081525061326a565b6108928186868660405180602001604052806000815250604051806020016040528060008152506133d1565b6000600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905083811015610956576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161094d906149e4565b60405180910390fd5b61096c868386846109679190614a33565b61309f565b61099a82878787604051806020016040528060008152506040518060200160405280600081525060006135eb565b6001925050509392505050565b60006012905090565b600083805190602001209050610a6a6109c7613097565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b68f53a788856040518363ffffffff1660e01b8152600401610a24929190614a76565b602060405180830381865afa158015610a41573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a659190614ab4565b612b63565b610aa9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aa090614b53565b60405180910390fd5b6000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663bb82753e87846040518363ffffffff1660e01b8152600401610b08929190614a76565b6020604051808303816000875af1158015610b27573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b4b9190614b88565b905080600b541015610b92576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b8990614c01565b60405180910390fd5b80600c60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610c14576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c0b90614c01565b60405180910390fd5b610c23308783878760016137f3565b80600b6000828254610c359190614a33565b9250508190555080600c60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610c8b9190614a33565b92505081905550600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231876040518263ffffffff1660e01b8152600401610ced9190614463565b602060405180830381865afa158015610d0a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d2e9190614b88565b600c60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610dae576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610da590614c6d565b60405180910390fd5b505050505050565b610dc7610dc1613097565b87612b63565b610e06576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dfd90614b53565b60405180910390fd5b6000610e1187611189565b905084811015610e56576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e4d90614cd9565b60405180910390fd5b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639eb4b70e8787878b6040518563ffffffff1660e01b8152600401610eb79493929190614cf9565b600060405180830381600087803b158015610ed157600080fd5b505af1158015610ee5573d6000803e3d6000fd5b50505050610ef8873087868660016137f3565b84600b6000828254610f0a9190614d3e565b9250508190555084600c60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610f609190614d3e565b9250508190555084600b541015610fac576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fa390614de0565b60405180910390fd5b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231876040518263ffffffff1660e01b81526004016110079190614463565b602060405180830381865afa158015611024573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110489190614b88565b600c60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146110c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110bf90614c6d565b60405180910390fd5b50505050505050565b60006001905090565b6000600c60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61113461112e613097565b86612b63565b611173576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161116a90614b53565b60405180910390fd5b611182858585858560016137f3565b5050505050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611261576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161125890614e72565b60405180910390fd5b6000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663bb82753e84846040518363ffffffff1660e01b81526004016112c0929190614a76565b6020604051808303816000875af11580156112df573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113039190614b88565b905080600b54101561134a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134190614c01565b60405180910390fd5b80600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156113cc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113c390614c01565b60405180910390fd5b6113f9308483604051806020016040528060008152506040518060200160405280600081525060006137f3565b80600b600082825461140b9190614a33565b9250508190555080600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546114619190614a33565b92505081905550600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231846040518263ffffffff1660e01b81526004016114c39190614463565b602060405180830381865afa1580156114e0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115049190614b88565b600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611584576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161157b90614c6d565b60405180910390fd5b505050565b6000838051906020012090506115a66115a0613097565b87612b63565b6115e5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115dc90614b53565b60405180910390fd5b8573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141561161e57600080fd5b6000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663496b73db8888856040518463ffffffff1660e01b815260040161167f93929190614e92565b6020604051808303816000875af115801561169e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116c29190614b88565b905080600b541015611709576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161170090614c01565b60405180910390fd5b80600c60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561178b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161178290614c01565b60405180910390fd5b61179a308883878760016137f3565b80600b60008282546117ac9190614a33565b9250508190555080600c60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546118029190614a33565b92505081905550600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231876040518263ffffffff1660e01b81526004016118649190614463565b602060405180830381865afa158015611881573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118a59190614b88565b600c60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611925576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161191c90614c6d565b60405180910390fd5b50505050505050565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146119e8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119df90614e72565b60405180910390fd5b6000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663496b73db8585856040518463ffffffff1660e01b8152600401611a4993929190614e92565b6020604051808303816000875af1158015611a68573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a8c9190614b88565b905080600b541015611ad3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aca90614c01565b60405180910390fd5b80600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015611b55576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b4c90614c01565b60405180910390fd5b611b82308583604051806020016040528060008152506040518060200160405280600081525060006137f3565b80600b6000828254611b949190614a33565b9250508190555080600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611bea9190614a33565b92505081905550600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231846040518263ffffffff1660e01b8152600401611c4c9190614463565b602060405180830381865afa158015611c69573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c8d9190614b88565b600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611d0d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d0490614c6d565b60405180910390fd5b50505050565b6000818051906020012090506000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663496b73db3386856040518463ffffffff1660e01b8152600401611d8093929190614e92565b6020604051808303816000875af1158015611d9f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611dc39190614b88565b905080600b541015611e0a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e0190614c01565b60405180910390fd5b80600c60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015611e8c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e8390614c01565b60405180910390fd5b611eb9303383604051806020016040528060008152506040518060200160405280600081525060006137f3565b80600b6000828254611ecb9190614a33565b9250508190555080600c60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611f219190614a33565b92505081905550600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231856040518263ffffffff1660e01b8152600401611f839190614463565b602060405180830381865afa158015611fa0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fc49190614b88565b600c60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414612044576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161203b90614c6d565b60405180910390fd5b50505050565b8073ffffffffffffffffffffffffffffffffffffffff16612069613097565b73ffffffffffffffffffffffffffffffffffffffff1614156120c0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120b790614f3b565b60405180910390fd5b600560008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156121aa576007600061211e613097565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81549060ff0219169055612247565b6001600660006121b8613097565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b61224f613097565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167ff4caeb2d6ca8932a215a353d0703c326ec2d81fc68170f320eb2ab49e9df61f960405160405180910390a350565b6060600380546122ba9061481c565b80601f01602080910402602001604051908101604052809291908181526020018280546122e69061481c565b80156123335780601f1061230857610100808354040283529160200191612333565b820191906000526020600020905b81548152906001019060200180831161231657829003601f168201915b5050505050905090565b612362612348613097565b8484846040518060200160405280600081525060016137f3565b505050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156123d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123cf906148c0565b60405180910390fd5b60006123e2613097565b905061241081828686604051806020016040528060008152506040518060200160405280600081525061326a565b61243c8182868660405180602001604052806000815250604051806020016040528060008152506133d1565b61246a81828686604051806020016040528060008152506040518060200160405280600081525060006135eb565b600191505092915050565b6000818051906020012090506000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663bb82753e33846040518363ffffffff1660e01b81526004016124e0929190614a76565b6020604051808303816000875af11580156124ff573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125239190614b88565b905080600b54101561256a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161256190614c01565b60405180910390fd5b80600c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156125ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125e390614c01565b60405180910390fd5b612619303383604051806020016040528060008152506040518060200160405280600081525060006137f3565b80600b600082825461262b9190614a33565b9250508190555080600c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546126819190614a33565b92505081905550600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231336040518263ffffffff1660e01b81526004016126e39190614463565b602060405180830381865afa158015612700573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127249190614b88565b600c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146127a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161279b90614c6d565b60405180910390fd5b505050565b6000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663bc10157184846040518363ffffffff1660e01b8152600401612808929190614a76565b602060405180830381865afa158015612825573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128499190614b88565b905092915050565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600061288233611189565b9050828110156128c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128be90614cd9565b60405180910390fd5b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639eb4b70e858585336040518563ffffffff1660e01b81526004016129289493929190614cf9565b600060405180830381600087803b15801561294257600080fd5b505af1158015612956573d6000803e3d6000fd5b50505050612987333085604051806020016040528060008152506040518060200160405280600081525060006137f3565b82600b60008282546129999190614d3e565b9250508190555082600c60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546129ef9190614d3e565b9250508190555082600b541015612a3b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a3290614de0565b60405180910390fd5b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231856040518263ffffffff1660e01b8152600401612a969190614463565b602060405180830381865afa158015612ab3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad79190614b88565b600c60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414612b57576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b4e90614c6d565b60405180910390fd5b50505050565b600b5481565b60008173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480612c7b5750600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff168015612c7a5750600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b5b80612d0c5750600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b905092915050565b6000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b612da3613097565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415612e11576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612e0890614fcd565b60405180910390fd5b600560008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615612f0457600160076000612e71613097565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550612f98565b60066000612f10613097565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81549060ff02191690555b612fa0613097565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f50546e66e5f44d728365dc3908c63bc5cfeeab470722c1677e3073a6ac294aa160405160405180910390a350565b61300d613007613097565b85612b63565b61304c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161304390614b53565b60405180910390fd5b61305884848484613913565b50505050565b613080613069613097565b838360405180602001604052806000815250613913565b5050565b600080823b905060008111915050919050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561310f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016131069061505f565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561317f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613176906150f1565b60405180910390fd5b80600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161325d9190613e34565b60405180910390a3505050565b6000731820a4b7618bde71dce8cdc73aab6c95905fad2473ffffffffffffffffffffffffffffffffffffffff1663aabbb8ca877f29ddb589b1fb5fc7cf394961c1adf5f8c6454761adf795e67fe149f658abe8956040518363ffffffff1660e01b81526004016132db929190614a76565b602060405180830381865afa1580156132f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061331c9190614ab4565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146133c8578073ffffffffffffffffffffffffffffffffffffffff166375ab97828888888888886040518763ffffffff1660e01b815260040161339596959493929190615166565b600060405180830381600087803b1580156133af57600080fd5b505af11580156133c3573d6000803e3d6000fd5b505050505b50505050505050565b6133dd86868686613b66565b60008060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905083811015613463576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161345a90615247565b60405180910390fd5b8381036000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550836000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546134f69190614d3e565b925050819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167f06b541ddaa720db2b10a4d0cdac39b8d360425fc073085fac19bc8261467798787878760405161357593929190615267565b60405180910390a48473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040516135da9190613e34565b60405180910390a350505050505050565b6000731820a4b7618bde71dce8cdc73aab6c95905fad2473ffffffffffffffffffffffffffffffffffffffff1663aabbb8ca877fb281fc8c12954d22544db45de3159a39272895b169a852b314f9cc762e44c53b6040518363ffffffff1660e01b815260040161365c929190614a76565b602060405180830381865afa158015613679573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061369d9190614ab4565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461374c578073ffffffffffffffffffffffffffffffffffffffff166223de298989898989896040518763ffffffff1660e01b815260040161371596959493929190615166565b600060405180830381600087803b15801561372f57600080fd5b505af1158015613743573d6000803e3d6000fd5b505050506137e9565b81156137e8576137718673ffffffffffffffffffffffffffffffffffffffff16613084565b15806137a857503073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16145b6137e7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016137de90615344565b60405180910390fd5b5b5b5050505050505050565b600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161415613863576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161385a906153d6565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614156138d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016138ca90615442565b60405180910390fd5b60006138dd613097565b90506138ed81888888888861326a565b6138fb8188888888886133d1565b61390a818888888888886135eb565b50505050505050565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415613983576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161397a906154d4565b60405180910390fd5b600061398d613097565b905061399e8186600087878761326a565b6139ab8186600087613b66565b60008060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905084811015613a31576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613a2890615566565b60405180910390fd5b8481036000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508460016000828254613a889190614a33565b925050819055508573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fa78a9be3a7b862d26933ad85fb11d80ef66b8f972d7cbba06621d583943a4098878787604051613af093929190615267565b60405180910390a3600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef87604051613b569190613e34565b60405180910390a3505050505050565b50505050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000613bc382613b98565b9050919050565b613bd381613bb8565b82525050565b6000613be58383613bca565b60208301905092915050565b6000602082019050919050565b6000613c0982613b6c565b613c138185613b77565b9350613c1e83613b88565b8060005b83811015613c4f578151613c368882613bd9565b9750613c4183613bf1565b925050600181019050613c22565b5085935050505092915050565b60006020820190508181036000830152613c768184613bfe565b905092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015613cb8578082015181840152602081019050613c9d565b83811115613cc7576000848401525b50505050565b6000601f19601f8301169050919050565b6000613ce982613c7e565b613cf38185613c89565b9350613d03818560208601613c9a565b613d0c81613ccd565b840191505092915050565b60006020820190508181036000830152613d318184613cde565b905092915050565b6000604051905090565b600080fd5b600080fd5b613d5681613bb8565b8114613d6157600080fd5b50565b600081359050613d7381613d4d565b92915050565b6000819050919050565b613d8c81613d79565b8114613d9757600080fd5b50565b600081359050613da981613d83565b92915050565b60008060408385031215613dc657613dc5613d43565b5b6000613dd485828601613d64565b9250506020613de585828601613d9a565b9150509250929050565b60008115159050919050565b613e0481613def565b82525050565b6000602082019050613e1f6000830184613dfb565b92915050565b613e2e81613d79565b82525050565b6000602082019050613e496000830184613e25565b92915050565b600080600060608486031215613e6857613e67613d43565b5b6000613e7686828701613d64565b9350506020613e8786828701613d64565b9250506040613e9886828701613d9a565b9150509250925092565b600060ff82169050919050565b613eb881613ea2565b82525050565b6000602082019050613ed36000830184613eaf565b92915050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b613f1b82613ccd565b810181811067ffffffffffffffff82111715613f3a57613f39613ee3565b5b80604052505050565b6000613f4d613d39565b9050613f598282613f12565b919050565b600067ffffffffffffffff821115613f7957613f78613ee3565b5b613f8282613ccd565b9050602081019050919050565b82818337600083830152505050565b6000613fb1613fac84613f5e565b613f43565b905082815260208101848484011115613fcd57613fcc613ede565b5b613fd8848285613f8f565b509392505050565b600082601f830112613ff557613ff4613ed9565b5b8135614005848260208601613f9e565b91505092915050565b600067ffffffffffffffff82111561402957614028613ee3565b5b61403282613ccd565b9050602081019050919050565b600061405261404d8461400e565b613f43565b90508281526020810184848401111561406e5761406d613ede565b5b614079848285613f8f565b509392505050565b600082601f83011261409657614095613ed9565b5b81356140a684826020860161403f565b91505092915050565b600080600080608085870312156140c9576140c8613d43565b5b60006140d787828801613d64565b945050602085013567ffffffffffffffff8111156140f8576140f7613d48565b5b61410487828801613fe0565b935050604085013567ffffffffffffffff81111561412557614124613d48565b5b61413187828801614081565b925050606085013567ffffffffffffffff81111561415257614151613d48565b5b61415e87828801614081565b91505092959194509250565b6000819050919050565b61417d8161416a565b811461418857600080fd5b50565b60008135905061419a81614174565b92915050565b60008060008060008060c087890312156141bd576141bc613d43565b5b60006141cb89828a01613d64565b96505060206141dc89828a01613d64565b95505060406141ed89828a01613d9a565b94505060606141fe89828a0161418b565b935050608087013567ffffffffffffffff81111561421f5761421e613d48565b5b61422b89828a01614081565b92505060a087013567ffffffffffffffff81111561424c5761424b613d48565b5b61425889828a01614081565b9150509295509295509295565b60006020828403121561427b5761427a613d43565b5b600061428984828501613d64565b91505092915050565b600080600080600060a086880312156142ae576142ad613d43565b5b60006142bc88828901613d64565b95505060206142cd88828901613d64565b94505060406142de88828901613d9a565b935050606086013567ffffffffffffffff8111156142ff576142fe613d48565b5b61430b88828901614081565b925050608086013567ffffffffffffffff81111561432c5761432b613d48565b5b61433888828901614081565b9150509295509295909350565b6000806040838503121561435c5761435b613d43565b5b600061436a85828601613d64565b925050602061437b8582860161418b565b9150509250929050565b600080600080600060a086880312156143a1576143a0613d43565b5b60006143af88828901613d64565b95505060206143c088828901613d64565b945050604086013567ffffffffffffffff8111156143e1576143e0613d48565b5b6143ed88828901613fe0565b935050606086013567ffffffffffffffff81111561440e5761440d613d48565b5b61441a88828901614081565b925050608086013567ffffffffffffffff81111561443b5761443a613d48565b5b61444788828901614081565b9150509295509295909350565b61445d81613bb8565b82525050565b60006020820190506144786000830184614454565b92915050565b60008060006060848603121561449757614496613d43565b5b60006144a586828701613d64565b93505060206144b686828701613d64565b92505060406144c78682870161418b565b9150509250925092565b600080604083850312156144e8576144e7613d43565b5b60006144f685828601613d64565b925050602083013567ffffffffffffffff81111561451757614516613d48565b5b61452385828601613fe0565b9150509250929050565b60008060006060848603121561454657614545613d43565b5b600061455486828701613d64565b935050602061456586828701613d9a565b925050604084013567ffffffffffffffff81111561458657614585613d48565b5b61459286828701614081565b9150509250925092565b6000602082840312156145b2576145b1613d43565b5b600082013567ffffffffffffffff8111156145d0576145cf613d48565b5b6145dc84828501613fe0565b91505092915050565b6000819050919050565b600061460a61460561460084613b98565b6145e5565b613b98565b9050919050565b600061461c826145ef565b9050919050565b600061462e82614611565b9050919050565b61463e81614623565b82525050565b60006020820190506146596000830184614635565b92915050565b60008060006060848603121561467857614677613d43565b5b600061468686828701613d64565b935050602061469786828701613d9a565b92505060406146a88682870161418b565b9150509250925092565b600080604083850312156146c9576146c8613d43565b5b60006146d785828601613d64565b92505060206146e885828601613d64565b9150509250929050565b6000806000806080858703121561470c5761470b613d43565b5b600061471a87828801613d64565b945050602061472b87828801613d9a565b935050604085013567ffffffffffffffff81111561474c5761474b613d48565b5b61475887828801614081565b925050606085013567ffffffffffffffff81111561477957614778613d48565b5b61478587828801614081565b91505092959194509250565b600080604083850312156147a8576147a7613d43565b5b60006147b685828601613d9a565b925050602083013567ffffffffffffffff8111156147d7576147d6613d48565b5b6147e385828601614081565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061483457607f821691505b60208210811415614848576148476147ed565b5b50919050565b7f4552433737373a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006148aa602483613c89565b91506148b58261484e565b604082019050919050565b600060208201905081810360008301526148d98161489d565b9050919050565b7f4552433737373a207472616e736665722066726f6d20746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b600061493c602683613c89565b9150614947826148e0565b604082019050919050565b6000602082019050818103600083015261496b8161492f565b9050919050565b7f4552433737373a207472616e7366657220616d6f756e7420657863656564732060008201527f616c6c6f77616e63650000000000000000000000000000000000000000000000602082015250565b60006149ce602983613c89565b91506149d982614972565b604082019050919050565b600060208201905081810360008301526149fd816149c1565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000614a3e82613d79565b9150614a4983613d79565b925082821015614a5c57614a5b614a04565b5b828203905092915050565b614a708161416a565b82525050565b6000604082019050614a8b6000830185614454565b614a986020830184614a67565b9392505050565b600081519050614aae81613d4d565b92915050565b600060208284031215614aca57614ac9613d43565b5b6000614ad884828501614a9f565b91505092915050565b7f4552433737373a2063616c6c6572206973206e6f7420616e206f70657261746f60008201527f7220666f7220686f6c6465720000000000000000000000000000000000000000602082015250565b6000614b3d602c83613c89565b9150614b4882614ae1565b604082019050919050565b60006020820190508181036000830152614b6c81614b30565b9050919050565b600081519050614b8281613d83565b92915050565b600060208284031215614b9e57614b9d613d43565b5b6000614bac84828501614b73565b91505092915050565b7f42616c616e63657320617265206e6f7420696e2073796e630000000000000000600082015250565b6000614beb601883613c89565b9150614bf682614bb5565b602082019050919050565b60006020820190508181036000830152614c1a81614bde565b9050919050565b7f42616c616e63657320646964206e6f742073796e630000000000000000000000600082015250565b6000614c57601583613c89565b9150614c6282614c21565b602082019050919050565b60006020820190508181036000830152614c8681614c4a565b9050919050565b7f4552433737373a20616d6f756e7420657863656564732062616c616e63650000600082015250565b6000614cc3601e83613c89565b9150614cce82614c8d565b602082019050919050565b60006020820190508181036000830152614cf281614cb6565b9050919050565b6000608082019050614d0e6000830187614454565b614d1b6020830186613e25565b614d286040830185614a67565b614d356060830184614454565b95945050505050565b6000614d4982613d79565b9150614d5483613d79565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115614d8957614d88614a04565b5b828201905092915050565b7f4d617468206973206e6f74206f6b000000000000000000000000000000000000600082015250565b6000614dca600e83613c89565b9150614dd582614d94565b602082019050919050565b60006020820190508181036000830152614df981614dbd565b9050919050565b7f4f6e6c79206176616c6961626c6520666f7220746865206c6f636b656420636f60008201527f696e20636f6e7472616374000000000000000000000000000000000000000000602082015250565b6000614e5c602b83613c89565b9150614e6782614e00565b604082019050919050565b60006020820190508181036000830152614e8b81614e4f565b9050919050565b6000606082019050614ea76000830186614454565b614eb46020830185614454565b614ec16040830184614a67565b949350505050565b7f4552433737373a20617574686f72697a696e672073656c66206173206f70657260008201527f61746f7200000000000000000000000000000000000000000000000000000000602082015250565b6000614f25602483613c89565b9150614f3082614ec9565b604082019050919050565b60006020820190508181036000830152614f5481614f18565b9050919050565b7f4552433737373a207265766f6b696e672073656c66206173206f70657261746f60008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b6000614fb7602183613c89565b9150614fc282614f5b565b604082019050919050565b60006020820190508181036000830152614fe681614faa565b9050919050565b7f4552433737373a20617070726f76652066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000615049602583613c89565b915061505482614fed565b604082019050919050565b600060208201905081810360008301526150788161503c565b9050919050565b7f4552433737373a20617070726f766520746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006150db602383613c89565b91506150e68261507f565b604082019050919050565b6000602082019050818103600083015261510a816150ce565b9050919050565b600081519050919050565b600082825260208201905092915050565b600061513882615111565b615142818561511c565b9350615152818560208601613c9a565b61515b81613ccd565b840191505092915050565b600060c08201905061517b6000830189614454565b6151886020830188614454565b6151956040830187614454565b6151a26060830186613e25565b81810360808301526151b4818561512d565b905081810360a08301526151c8818461512d565b9050979650505050505050565b7f4552433737373a207472616e7366657220616d6f756e7420657863656564732060008201527f62616c616e636500000000000000000000000000000000000000000000000000602082015250565b6000615231602783613c89565b915061523c826151d5565b604082019050919050565b6000602082019050818103600083015261526081615224565b9050919050565b600060608201905061527c6000830186613e25565b818103602083015261528e818561512d565b905081810360408301526152a2818461512d565b9050949350505050565b7f4552433737373a20746f6b656e20726563697069656e7420636f6e747261637460008201527f20686173206e6f20696d706c656d656e74657220666f7220455243373737546f60208201527f6b656e73526563697069656e7400000000000000000000000000000000000000604082015250565b600061532e604d83613c89565b9150615339826152ac565b606082019050919050565b6000602082019050818103600083015261535d81615321565b9050919050565b7f4552433737373a2073656e642066726f6d20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006153c0602283613c89565b91506153cb82615364565b604082019050919050565b600060208201905081810360008301526153ef816153b3565b9050919050565b7f4552433737373a2073656e6420746f20746865207a65726f2061646472657373600082015250565b600061542c602083613c89565b9150615437826153f6565b602082019050919050565b6000602082019050818103600083015261545b8161541f565b9050919050565b7f4552433737373a206275726e2066726f6d20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006154be602283613c89565b91506154c982615462565b604082019050919050565b600060208201905081810360008301526154ed816154b1565b9050919050565b7f4552433737373a206275726e20616d6f756e7420657863656564732062616c6160008201527f6e63650000000000000000000000000000000000000000000000000000000000602082015250565b6000615550602383613c89565b915061555b826154f4565b604082019050919050565b6000602082019050818103600083015261557f81615543565b905091905056fea2646970667358221220799d205c940f729190a92fd02fdb68307d97c741aa4b11cec0de40e3406545fb64736f6c634300080c0033
Creation ByteCode
0x60806040523480156200001157600080fd5b506040518060400160405280600881526020017f4c6f636b61626c650000000000000000000000000000000000000000000000008152506040518060400160405280600281526020017f4c43000000000000000000000000000000000000000000000000000000000000815250600067ffffffffffffffff8111156200009c576200009b620009a1565b5b604051908082528060200260200182016040528015620000cb5781602001602082028036833780820191505090505b508260029080519060200190620000e492919062000854565b508160039080519060200190620000fd92919062000854565b50806004908051906020019062000116929190620008e5565b5060005b8151811015620001af5760016005600084848151811062000140576200013f620009d0565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080620001a69062000a38565b9150506200011a565b50731820a4b7618bde71dce8cdc73aab6c95905fad2473ffffffffffffffffffffffffffffffffffffffff166329965a1d307fac7fbab5f54a3ca8194167523c6753bfeb96a445279294b6125b68cce2177054306040518463ffffffff1660e01b8152600401620002239392919062000ae6565b600060405180830381600087803b1580156200023e57600080fd5b505af115801562000253573d6000803e3d6000fd5b50505050731820a4b7618bde71dce8cdc73aab6c95905fad2473ffffffffffffffffffffffffffffffffffffffff166329965a1d307faea199e31a596269b42cdafd93407f14436db6e4cad65417994c2eb37381e05a306040518463ffffffff1660e01b8152600401620002ca9392919062000ae6565b600060405180830381600087803b158015620002e557600080fd5b505af1158015620002fa573d6000803e3d6000fd5b5050505050505033600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506200037f336a084595161401484a0000006040518060200160405280600081525060405180602001604052806000815250620003f160201b60201c565b6040516200038d9062000974565b604051809103906000f080158015620003aa573d6000803e3d6000fd5b50600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555062000f53565b620004078484848460016200040d60201b60201c565b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16141562000480576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620004779062000b84565b60405180910390fd5b6000620004926200060e60201b60201c565b9050620004a981600088886200061660201b60201c565b8460016000828254620004bd919062000ba6565b92505081905550846000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825462000514919062000ba6565b925050819055506200053381600088888888886200061c60201b60201c565b8573ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f2fe5be0146f74c5bce36c0b80911af6c7d86ff27e89d5cfa61fc681327954e5d878787604051620005969392919062000cb8565b60405180910390a38573ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef87604051620005fe919062000d03565b60405180910390a3505050505050565b600033905090565b50505050565b6000731820a4b7618bde71dce8cdc73aab6c95905fad2473ffffffffffffffffffffffffffffffffffffffff1663aabbb8ca877fb281fc8c12954d22544db45de3159a39272895b169a852b314f9cc762e44c53b6040518363ffffffff1660e01b81526004016200068f92919062000d20565b602060405180830381865afa158015620006ad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620006d3919062000d83565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161462000788578073ffffffffffffffffffffffffffffffffffffffff166223de298989898989896040518763ffffffff1660e01b81526004016200074e9695949392919062000db5565b600060405180830381600087803b1580156200076957600080fd5b505af11580156200077e573d6000803e3d6000fd5b5050505062000837565b81156200083657620007bb8673ffffffffffffffffffffffffffffffffffffffff166200084160201b620030841760201c565b1580620007f357503073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16145b62000835576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200082c9062000ecc565b60405180910390fd5b5b5b5050505050505050565b600080823b905060008111915050919050565b828054620008629062000f1d565b90600052602060002090601f016020900481019282620008865760008555620008d2565b82601f10620008a157805160ff1916838001178555620008d2565b82800160010185558215620008d2579182015b82811115620008d1578251825591602001919060010190620008b4565b5b509050620008e1919062000982565b5090565b82805482825590600052602060002090810192821562000961579160200282015b82811115620009605782518260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055509160200191906001019062000906565b5b50905062000970919062000982565b5090565b614fc0806200651f83390190565b5b808211156200099d57600081600090555060010162000983565b5090565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000819050919050565b600062000a458262000a2e565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141562000a7b5762000a7a620009ff565b5b600182019050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000ab38262000a86565b9050919050565b62000ac58162000aa6565b82525050565b6000819050919050565b62000ae08162000acb565b82525050565b600060608201905062000afd600083018662000aba565b62000b0c602083018562000ad5565b62000b1b604083018462000aba565b949350505050565b600082825260208201905092915050565b7f4552433737373a206d696e7420746f20746865207a65726f2061646472657373600082015250565b600062000b6c60208362000b23565b915062000b798262000b34565b602082019050919050565b6000602082019050818103600083015262000b9f8162000b5d565b9050919050565b600062000bb38262000a2e565b915062000bc08362000a2e565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111562000bf85762000bf7620009ff565b5b828201905092915050565b62000c0e8162000a2e565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b8381101562000c5057808201518184015260208101905062000c33565b8381111562000c60576000848401525b50505050565b6000601f19601f8301169050919050565b600062000c848262000c14565b62000c90818562000c1f565b935062000ca281856020860162000c30565b62000cad8162000c66565b840191505092915050565b600060608201905062000ccf600083018662000c03565b818103602083015262000ce3818562000c77565b9050818103604083015262000cf9818462000c77565b9050949350505050565b600060208201905062000d1a600083018462000c03565b92915050565b600060408201905062000d37600083018562000aba565b62000d46602083018462000ad5565b9392505050565b600080fd5b62000d5d8162000aa6565b811462000d6957600080fd5b50565b60008151905062000d7d8162000d52565b92915050565b60006020828403121562000d9c5762000d9b62000d4d565b5b600062000dac8482850162000d6c565b91505092915050565b600060c08201905062000dcc600083018962000aba565b62000ddb602083018862000aba565b62000dea604083018762000aba565b62000df9606083018662000c03565b818103608083015262000e0d818562000c77565b905081810360a083015262000e23818462000c77565b9050979650505050505050565b7f4552433737373a20746f6b656e20726563697069656e7420636f6e747261637460008201527f20686173206e6f20696d706c656d656e74657220666f7220455243373737546f60208201527f6b656e73526563697069656e7400000000000000000000000000000000000000604082015250565b600062000eb4604d8362000b23565b915062000ec18262000e30565b606082019050919050565b6000602082019050818103600083015262000ee78162000ea5565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168062000f3657607f821691505b6020821081141562000f4d5762000f4c62000eee565b5b50919050565b6155bc8062000f636000396000f3fe608060405234801561001057600080fd5b50600436106101e55760003560e01c8063896b9ad01161010f578063c92b4b5a116100a2578063dd62ed3e11610071578063dd62ed3e1461057c578063fad8b32a146105ac578063fc673c4f146105c8578063fe9d9303146105e4576101e5565b8063c92b4b5a146104f4578063ca3369c614610512578063ca5c7b911461052e578063d95b63711461054c576101e5565b80639bd9bbc6116100de5780639bd9bbc61461045c578063a9059cbb14610478578063a96ce7aa146104a8578063bc101571146104c4576101e5565b8063896b9ad0146103ea578063931fe6ee14610406578063959b8c3f1461042257806395d89b411461043e576101e5565b8063449b97161161018757806370a082311161015657806370a082311461036457806378d28bd7146103945780638078f338146103b0578063893d20e8146103cc576101e5565b8063449b9716146102de578063556f0dc7146102fa578063593557361461031857806362ad1b8314610348576101e5565b806318160ddd116101c357806318160ddd1461025657806323b872dd14610274578063313ce567146102a45780633e48eba9146102c2576101e5565b806306e48538146101ea57806306fdde0314610208578063095ea7b314610226575b600080fd5b6101f2610600565b6040516101ff9190613c5c565b60405180910390f35b61021061068e565b60405161021d9190613d17565b60405180910390f35b610240600480360381019061023b9190613daf565b610720565b60405161024d9190613e0a565b60405180910390f35b61025e610743565b60405161026b9190613e34565b60405180910390f35b61028e60048036038101906102899190613e4f565b61074d565b60405161029b9190613e0a565b60405180910390f35b6102ac6109a7565b6040516102b99190613ebe565b60405180910390f35b6102dc60048036038101906102d791906140af565b6109b0565b005b6102f860048036038101906102f391906141a0565b610db6565b005b6103026110d1565b60405161030f9190613e34565b60405180910390f35b610332600480360381019061032d9190614265565b6110da565b60405161033f9190613e34565b60405180910390f35b610362600480360381019061035d9190614292565b611123565b005b61037e60048036038101906103799190614265565b611189565b60405161038b9190613e34565b60405180910390f35b6103ae60048036038101906103a99190614345565b6111d1565b005b6103ca60048036038101906103c59190614385565b611589565b005b6103d461192e565b6040516103e19190614463565b60405180910390f35b61040460048036038101906103ff919061447e565b611958565b005b610420600480360381019061041b91906144d1565b611d13565b005b61043c60048036038101906104379190614265565b61204a565b005b6104466122ab565b6040516104539190613d17565b60405180910390f35b6104766004803603810190610471919061452d565b61233d565b005b610492600480360381019061048d9190613daf565b612367565b60405161049f9190613e0a565b60405180910390f35b6104c260048036038101906104bd919061459c565b612475565b005b6104de60048036038101906104d99190614345565b6127a9565b6040516104eb9190613e34565b60405180910390f35b6104fc612851565b6040516105099190614644565b60405180910390f35b61052c6004803603810190610527919061465f565b612877565b005b610536612b5d565b6040516105439190613e34565b60405180910390f35b610566600480360381019061056191906146b2565b612b63565b6040516105739190613e0a565b60405180910390f35b610596600480360381019061059191906146b2565b612d14565b6040516105a39190613e34565b60405180910390f35b6105c660048036038101906105c19190614265565b612d9b565b005b6105e260048036038101906105dd91906146f2565b612ffc565b005b6105fe60048036038101906105f99190614791565b61305e565b005b6060600480548060200260200160405190810160405280929190818152602001828054801561068457602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001906001019080831161063a575b5050505050905090565b60606002805461069d9061481c565b80601f01602080910402602001604051908101604052809291908181526020018280546106c99061481c565b80156107165780601f106106eb57610100808354040283529160200191610716565b820191906000526020600020905b8154815290600101906020018083116106f957829003601f168201915b5050505050905090565b60008061072b613097565b905061073881858561309f565b600191505092915050565b6000600154905090565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156107be576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107b5906148c0565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141561082e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161082590614952565b60405180910390fd5b6000610838613097565b905061086681868686604051806020016040528060008152506040518060200160405280600081525061326a565b6108928186868660405180602001604052806000815250604051806020016040528060008152506133d1565b6000600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905083811015610956576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161094d906149e4565b60405180910390fd5b61096c868386846109679190614a33565b61309f565b61099a82878787604051806020016040528060008152506040518060200160405280600081525060006135eb565b6001925050509392505050565b60006012905090565b600083805190602001209050610a6a6109c7613097565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b68f53a788856040518363ffffffff1660e01b8152600401610a24929190614a76565b602060405180830381865afa158015610a41573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a659190614ab4565b612b63565b610aa9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aa090614b53565b60405180910390fd5b6000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663bb82753e87846040518363ffffffff1660e01b8152600401610b08929190614a76565b6020604051808303816000875af1158015610b27573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b4b9190614b88565b905080600b541015610b92576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b8990614c01565b60405180910390fd5b80600c60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610c14576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c0b90614c01565b60405180910390fd5b610c23308783878760016137f3565b80600b6000828254610c359190614a33565b9250508190555080600c60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610c8b9190614a33565b92505081905550600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231876040518263ffffffff1660e01b8152600401610ced9190614463565b602060405180830381865afa158015610d0a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d2e9190614b88565b600c60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610dae576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610da590614c6d565b60405180910390fd5b505050505050565b610dc7610dc1613097565b87612b63565b610e06576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dfd90614b53565b60405180910390fd5b6000610e1187611189565b905084811015610e56576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e4d90614cd9565b60405180910390fd5b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639eb4b70e8787878b6040518563ffffffff1660e01b8152600401610eb79493929190614cf9565b600060405180830381600087803b158015610ed157600080fd5b505af1158015610ee5573d6000803e3d6000fd5b50505050610ef8873087868660016137f3565b84600b6000828254610f0a9190614d3e565b9250508190555084600c60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610f609190614d3e565b9250508190555084600b541015610fac576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fa390614de0565b60405180910390fd5b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231876040518263ffffffff1660e01b81526004016110079190614463565b602060405180830381865afa158015611024573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110489190614b88565b600c60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146110c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110bf90614c6d565b60405180910390fd5b50505050505050565b60006001905090565b6000600c60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61113461112e613097565b86612b63565b611173576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161116a90614b53565b60405180910390fd5b611182858585858560016137f3565b5050505050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611261576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161125890614e72565b60405180910390fd5b6000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663bb82753e84846040518363ffffffff1660e01b81526004016112c0929190614a76565b6020604051808303816000875af11580156112df573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113039190614b88565b905080600b54101561134a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134190614c01565b60405180910390fd5b80600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156113cc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113c390614c01565b60405180910390fd5b6113f9308483604051806020016040528060008152506040518060200160405280600081525060006137f3565b80600b600082825461140b9190614a33565b9250508190555080600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546114619190614a33565b92505081905550600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231846040518263ffffffff1660e01b81526004016114c39190614463565b602060405180830381865afa1580156114e0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115049190614b88565b600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611584576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161157b90614c6d565b60405180910390fd5b505050565b6000838051906020012090506115a66115a0613097565b87612b63565b6115e5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115dc90614b53565b60405180910390fd5b8573ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141561161e57600080fd5b6000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663496b73db8888856040518463ffffffff1660e01b815260040161167f93929190614e92565b6020604051808303816000875af115801561169e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116c29190614b88565b905080600b541015611709576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161170090614c01565b60405180910390fd5b80600c60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101561178b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161178290614c01565b60405180910390fd5b61179a308883878760016137f3565b80600b60008282546117ac9190614a33565b9250508190555080600c60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546118029190614a33565b92505081905550600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231876040518263ffffffff1660e01b81526004016118649190614463565b602060405180830381865afa158015611881573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118a59190614b88565b600c60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611925576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161191c90614c6d565b60405180910390fd5b50505050505050565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146119e8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119df90614e72565b60405180910390fd5b6000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663496b73db8585856040518463ffffffff1660e01b8152600401611a4993929190614e92565b6020604051808303816000875af1158015611a68573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a8c9190614b88565b905080600b541015611ad3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aca90614c01565b60405180910390fd5b80600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015611b55576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b4c90614c01565b60405180910390fd5b611b82308583604051806020016040528060008152506040518060200160405280600081525060006137f3565b80600b6000828254611b949190614a33565b9250508190555080600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611bea9190614a33565b92505081905550600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231846040518263ffffffff1660e01b8152600401611c4c9190614463565b602060405180830381865afa158015611c69573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c8d9190614b88565b600c60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414611d0d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d0490614c6d565b60405180910390fd5b50505050565b6000818051906020012090506000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663496b73db3386856040518463ffffffff1660e01b8152600401611d8093929190614e92565b6020604051808303816000875af1158015611d9f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611dc39190614b88565b905080600b541015611e0a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e0190614c01565b60405180910390fd5b80600c60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015611e8c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e8390614c01565b60405180910390fd5b611eb9303383604051806020016040528060008152506040518060200160405280600081525060006137f3565b80600b6000828254611ecb9190614a33565b9250508190555080600c60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611f219190614a33565b92505081905550600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231856040518263ffffffff1660e01b8152600401611f839190614463565b602060405180830381865afa158015611fa0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fc49190614b88565b600c60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414612044576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161203b90614c6d565b60405180910390fd5b50505050565b8073ffffffffffffffffffffffffffffffffffffffff16612069613097565b73ffffffffffffffffffffffffffffffffffffffff1614156120c0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120b790614f3b565b60405180910390fd5b600560008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156121aa576007600061211e613097565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81549060ff0219169055612247565b6001600660006121b8613097565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b61224f613097565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167ff4caeb2d6ca8932a215a353d0703c326ec2d81fc68170f320eb2ab49e9df61f960405160405180910390a350565b6060600380546122ba9061481c565b80601f01602080910402602001604051908101604052809291908181526020018280546122e69061481c565b80156123335780601f1061230857610100808354040283529160200191612333565b820191906000526020600020905b81548152906001019060200180831161231657829003601f168201915b5050505050905090565b612362612348613097565b8484846040518060200160405280600081525060016137f3565b505050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156123d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123cf906148c0565b60405180910390fd5b60006123e2613097565b905061241081828686604051806020016040528060008152506040518060200160405280600081525061326a565b61243c8182868660405180602001604052806000815250604051806020016040528060008152506133d1565b61246a81828686604051806020016040528060008152506040518060200160405280600081525060006135eb565b600191505092915050565b6000818051906020012090506000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663bb82753e33846040518363ffffffff1660e01b81526004016124e0929190614a76565b6020604051808303816000875af11580156124ff573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125239190614b88565b905080600b54101561256a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161256190614c01565b60405180910390fd5b80600c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156125ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125e390614c01565b60405180910390fd5b612619303383604051806020016040528060008152506040518060200160405280600081525060006137f3565b80600b600082825461262b9190614a33565b9250508190555080600c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546126819190614a33565b92505081905550600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231336040518263ffffffff1660e01b81526004016126e39190614463565b602060405180830381865afa158015612700573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127249190614b88565b600c60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146127a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161279b90614c6d565b60405180910390fd5b505050565b6000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663bc10157184846040518363ffffffff1660e01b8152600401612808929190614a76565b602060405180830381865afa158015612825573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128499190614b88565b905092915050565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600061288233611189565b9050828110156128c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128be90614cd9565b60405180910390fd5b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639eb4b70e858585336040518563ffffffff1660e01b81526004016129289493929190614cf9565b600060405180830381600087803b15801561294257600080fd5b505af1158015612956573d6000803e3d6000fd5b50505050612987333085604051806020016040528060008152506040518060200160405280600081525060006137f3565b82600b60008282546129999190614d3e565b9250508190555082600c60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546129ef9190614d3e565b9250508190555082600b541015612a3b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a3290614de0565b60405180910390fd5b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231856040518263ffffffff1660e01b8152600401612a969190614463565b602060405180830381865afa158015612ab3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad79190614b88565b600c60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414612b57576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b4e90614c6d565b60405180910390fd5b50505050565b600b5481565b60008173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480612c7b5750600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff168015612c7a5750600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b5b80612d0c5750600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b905092915050565b6000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b612da3613097565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415612e11576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612e0890614fcd565b60405180910390fd5b600560008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615612f0457600160076000612e71613097565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550612f98565b60066000612f10613097565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81549060ff02191690555b612fa0613097565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f50546e66e5f44d728365dc3908c63bc5cfeeab470722c1677e3073a6ac294aa160405160405180910390a350565b61300d613007613097565b85612b63565b61304c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161304390614b53565b60405180910390fd5b61305884848484613913565b50505050565b613080613069613097565b838360405180602001604052806000815250613913565b5050565b600080823b905060008111915050919050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561310f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016131069061505f565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561317f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613176906150f1565b60405180910390fd5b80600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161325d9190613e34565b60405180910390a3505050565b6000731820a4b7618bde71dce8cdc73aab6c95905fad2473ffffffffffffffffffffffffffffffffffffffff1663aabbb8ca877f29ddb589b1fb5fc7cf394961c1adf5f8c6454761adf795e67fe149f658abe8956040518363ffffffff1660e01b81526004016132db929190614a76565b602060405180830381865afa1580156132f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061331c9190614ab4565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146133c8578073ffffffffffffffffffffffffffffffffffffffff166375ab97828888888888886040518763ffffffff1660e01b815260040161339596959493929190615166565b600060405180830381600087803b1580156133af57600080fd5b505af11580156133c3573d6000803e3d6000fd5b505050505b50505050505050565b6133dd86868686613b66565b60008060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905083811015613463576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161345a90615247565b60405180910390fd5b8381036000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550836000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546134f69190614d3e565b925050819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167f06b541ddaa720db2b10a4d0cdac39b8d360425fc073085fac19bc8261467798787878760405161357593929190615267565b60405180910390a48473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040516135da9190613e34565b60405180910390a350505050505050565b6000731820a4b7618bde71dce8cdc73aab6c95905fad2473ffffffffffffffffffffffffffffffffffffffff1663aabbb8ca877fb281fc8c12954d22544db45de3159a39272895b169a852b314f9cc762e44c53b6040518363ffffffff1660e01b815260040161365c929190614a76565b602060405180830381865afa158015613679573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061369d9190614ab4565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161461374c578073ffffffffffffffffffffffffffffffffffffffff166223de298989898989896040518763ffffffff1660e01b815260040161371596959493929190615166565b600060405180830381600087803b15801561372f57600080fd5b505af1158015613743573d6000803e3d6000fd5b505050506137e9565b81156137e8576137718673ffffffffffffffffffffffffffffffffffffffff16613084565b15806137a857503073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16145b6137e7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016137de90615344565b60405180910390fd5b5b5b5050505050505050565b600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161415613863576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161385a906153d6565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614156138d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016138ca90615442565b60405180910390fd5b60006138dd613097565b90506138ed81888888888861326a565b6138fb8188888888886133d1565b61390a818888888888886135eb565b50505050505050565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415613983576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161397a906154d4565b60405180910390fd5b600061398d613097565b905061399e8186600087878761326a565b6139ab8186600087613b66565b60008060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905084811015613a31576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613a2890615566565b60405180910390fd5b8481036000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508460016000828254613a889190614a33565b925050819055508573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fa78a9be3a7b862d26933ad85fb11d80ef66b8f972d7cbba06621d583943a4098878787604051613af093929190615267565b60405180910390a3600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef87604051613b569190613e34565b60405180910390a3505050505050565b50505050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000613bc382613b98565b9050919050565b613bd381613bb8565b82525050565b6000613be58383613bca565b60208301905092915050565b6000602082019050919050565b6000613c0982613b6c565b613c138185613b77565b9350613c1e83613b88565b8060005b83811015613c4f578151613c368882613bd9565b9750613c4183613bf1565b925050600181019050613c22565b5085935050505092915050565b60006020820190508181036000830152613c768184613bfe565b905092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015613cb8578082015181840152602081019050613c9d565b83811115613cc7576000848401525b50505050565b6000601f19601f8301169050919050565b6000613ce982613c7e565b613cf38185613c89565b9350613d03818560208601613c9a565b613d0c81613ccd565b840191505092915050565b60006020820190508181036000830152613d318184613cde565b905092915050565b6000604051905090565b600080fd5b600080fd5b613d5681613bb8565b8114613d6157600080fd5b50565b600081359050613d7381613d4d565b92915050565b6000819050919050565b613d8c81613d79565b8114613d9757600080fd5b50565b600081359050613da981613d83565b92915050565b60008060408385031215613dc657613dc5613d43565b5b6000613dd485828601613d64565b9250506020613de585828601613d9a565b9150509250929050565b60008115159050919050565b613e0481613def565b82525050565b6000602082019050613e1f6000830184613dfb565b92915050565b613e2e81613d79565b82525050565b6000602082019050613e496000830184613e25565b92915050565b600080600060608486031215613e6857613e67613d43565b5b6000613e7686828701613d64565b9350506020613e8786828701613d64565b9250506040613e9886828701613d9a565b9150509250925092565b600060ff82169050919050565b613eb881613ea2565b82525050565b6000602082019050613ed36000830184613eaf565b92915050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b613f1b82613ccd565b810181811067ffffffffffffffff82111715613f3a57613f39613ee3565b5b80604052505050565b6000613f4d613d39565b9050613f598282613f12565b919050565b600067ffffffffffffffff821115613f7957613f78613ee3565b5b613f8282613ccd565b9050602081019050919050565b82818337600083830152505050565b6000613fb1613fac84613f5e565b613f43565b905082815260208101848484011115613fcd57613fcc613ede565b5b613fd8848285613f8f565b509392505050565b600082601f830112613ff557613ff4613ed9565b5b8135614005848260208601613f9e565b91505092915050565b600067ffffffffffffffff82111561402957614028613ee3565b5b61403282613ccd565b9050602081019050919050565b600061405261404d8461400e565b613f43565b90508281526020810184848401111561406e5761406d613ede565b5b614079848285613f8f565b509392505050565b600082601f83011261409657614095613ed9565b5b81356140a684826020860161403f565b91505092915050565b600080600080608085870312156140c9576140c8613d43565b5b60006140d787828801613d64565b945050602085013567ffffffffffffffff8111156140f8576140f7613d48565b5b61410487828801613fe0565b935050604085013567ffffffffffffffff81111561412557614124613d48565b5b61413187828801614081565b925050606085013567ffffffffffffffff81111561415257614151613d48565b5b61415e87828801614081565b91505092959194509250565b6000819050919050565b61417d8161416a565b811461418857600080fd5b50565b60008135905061419a81614174565b92915050565b60008060008060008060c087890312156141bd576141bc613d43565b5b60006141cb89828a01613d64565b96505060206141dc89828a01613d64565b95505060406141ed89828a01613d9a565b94505060606141fe89828a0161418b565b935050608087013567ffffffffffffffff81111561421f5761421e613d48565b5b61422b89828a01614081565b92505060a087013567ffffffffffffffff81111561424c5761424b613d48565b5b61425889828a01614081565b9150509295509295509295565b60006020828403121561427b5761427a613d43565b5b600061428984828501613d64565b91505092915050565b600080600080600060a086880312156142ae576142ad613d43565b5b60006142bc88828901613d64565b95505060206142cd88828901613d64565b94505060406142de88828901613d9a565b935050606086013567ffffffffffffffff8111156142ff576142fe613d48565b5b61430b88828901614081565b925050608086013567ffffffffffffffff81111561432c5761432b613d48565b5b61433888828901614081565b9150509295509295909350565b6000806040838503121561435c5761435b613d43565b5b600061436a85828601613d64565b925050602061437b8582860161418b565b9150509250929050565b600080600080600060a086880312156143a1576143a0613d43565b5b60006143af88828901613d64565b95505060206143c088828901613d64565b945050604086013567ffffffffffffffff8111156143e1576143e0613d48565b5b6143ed88828901613fe0565b935050606086013567ffffffffffffffff81111561440e5761440d613d48565b5b61441a88828901614081565b925050608086013567ffffffffffffffff81111561443b5761443a613d48565b5b61444788828901614081565b9150509295509295909350565b61445d81613bb8565b82525050565b60006020820190506144786000830184614454565b92915050565b60008060006060848603121561449757614496613d43565b5b60006144a586828701613d64565b93505060206144b686828701613d64565b92505060406144c78682870161418b565b9150509250925092565b600080604083850312156144e8576144e7613d43565b5b60006144f685828601613d64565b925050602083013567ffffffffffffffff81111561451757614516613d48565b5b61452385828601613fe0565b9150509250929050565b60008060006060848603121561454657614545613d43565b5b600061455486828701613d64565b935050602061456586828701613d9a565b925050604084013567ffffffffffffffff81111561458657614585613d48565b5b61459286828701614081565b9150509250925092565b6000602082840312156145b2576145b1613d43565b5b600082013567ffffffffffffffff8111156145d0576145cf613d48565b5b6145dc84828501613fe0565b91505092915050565b6000819050919050565b600061460a61460561460084613b98565b6145e5565b613b98565b9050919050565b600061461c826145ef565b9050919050565b600061462e82614611565b9050919050565b61463e81614623565b82525050565b60006020820190506146596000830184614635565b92915050565b60008060006060848603121561467857614677613d43565b5b600061468686828701613d64565b935050602061469786828701613d9a565b92505060406146a88682870161418b565b9150509250925092565b600080604083850312156146c9576146c8613d43565b5b60006146d785828601613d64565b92505060206146e885828601613d64565b9150509250929050565b6000806000806080858703121561470c5761470b613d43565b5b600061471a87828801613d64565b945050602061472b87828801613d9a565b935050604085013567ffffffffffffffff81111561474c5761474b613d48565b5b61475887828801614081565b925050606085013567ffffffffffffffff81111561477957614778613d48565b5b61478587828801614081565b91505092959194509250565b600080604083850312156147a8576147a7613d43565b5b60006147b685828601613d9a565b925050602083013567ffffffffffffffff8111156147d7576147d6613d48565b5b6147e385828601614081565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061483457607f821691505b60208210811415614848576148476147ed565b5b50919050565b7f4552433737373a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006148aa602483613c89565b91506148b58261484e565b604082019050919050565b600060208201905081810360008301526148d98161489d565b9050919050565b7f4552433737373a207472616e736665722066726f6d20746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b600061493c602683613c89565b9150614947826148e0565b604082019050919050565b6000602082019050818103600083015261496b8161492f565b9050919050565b7f4552433737373a207472616e7366657220616d6f756e7420657863656564732060008201527f616c6c6f77616e63650000000000000000000000000000000000000000000000602082015250565b60006149ce602983613c89565b91506149d982614972565b604082019050919050565b600060208201905081810360008301526149fd816149c1565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000614a3e82613d79565b9150614a4983613d79565b925082821015614a5c57614a5b614a04565b5b828203905092915050565b614a708161416a565b82525050565b6000604082019050614a8b6000830185614454565b614a986020830184614a67565b9392505050565b600081519050614aae81613d4d565b92915050565b600060208284031215614aca57614ac9613d43565b5b6000614ad884828501614a9f565b91505092915050565b7f4552433737373a2063616c6c6572206973206e6f7420616e206f70657261746f60008201527f7220666f7220686f6c6465720000000000000000000000000000000000000000602082015250565b6000614b3d602c83613c89565b9150614b4882614ae1565b604082019050919050565b60006020820190508181036000830152614b6c81614b30565b9050919050565b600081519050614b8281613d83565b92915050565b600060208284031215614b9e57614b9d613d43565b5b6000614bac84828501614b73565b91505092915050565b7f42616c616e63657320617265206e6f7420696e2073796e630000000000000000600082015250565b6000614beb601883613c89565b9150614bf682614bb5565b602082019050919050565b60006020820190508181036000830152614c1a81614bde565b9050919050565b7f42616c616e63657320646964206e6f742073796e630000000000000000000000600082015250565b6000614c57601583613c89565b9150614c6282614c21565b602082019050919050565b60006020820190508181036000830152614c8681614c4a565b9050919050565b7f4552433737373a20616d6f756e7420657863656564732062616c616e63650000600082015250565b6000614cc3601e83613c89565b9150614cce82614c8d565b602082019050919050565b60006020820190508181036000830152614cf281614cb6565b9050919050565b6000608082019050614d0e6000830187614454565b614d1b6020830186613e25565b614d286040830185614a67565b614d356060830184614454565b95945050505050565b6000614d4982613d79565b9150614d5483613d79565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115614d8957614d88614a04565b5b828201905092915050565b7f4d617468206973206e6f74206f6b000000000000000000000000000000000000600082015250565b6000614dca600e83613c89565b9150614dd582614d94565b602082019050919050565b60006020820190508181036000830152614df981614dbd565b9050919050565b7f4f6e6c79206176616c6961626c6520666f7220746865206c6f636b656420636f60008201527f696e20636f6e7472616374000000000000000000000000000000000000000000602082015250565b6000614e5c602b83613c89565b9150614e6782614e00565b604082019050919050565b60006020820190508181036000830152614e8b81614e4f565b9050919050565b6000606082019050614ea76000830186614454565b614eb46020830185614454565b614ec16040830184614a67565b949350505050565b7f4552433737373a20617574686f72697a696e672073656c66206173206f70657260008201527f61746f7200000000000000000000000000000000000000000000000000000000602082015250565b6000614f25602483613c89565b9150614f3082614ec9565b604082019050919050565b60006020820190508181036000830152614f5481614f18565b9050919050565b7f4552433737373a207265766f6b696e672073656c66206173206f70657261746f60008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b6000614fb7602183613c89565b9150614fc282614f5b565b604082019050919050565b60006020820190508181036000830152614fe681614faa565b9050919050565b7f4552433737373a20617070726f76652066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000615049602583613c89565b915061505482614fed565b604082019050919050565b600060208201905081810360008301526150788161503c565b9050919050565b7f4552433737373a20617070726f766520746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006150db602383613c89565b91506150e68261507f565b604082019050919050565b6000602082019050818103600083015261510a816150ce565b9050919050565b600081519050919050565b600082825260208201905092915050565b600061513882615111565b615142818561511c565b9350615152818560208601613c9a565b61515b81613ccd565b840191505092915050565b600060c08201905061517b6000830189614454565b6151886020830188614454565b6151956040830187614454565b6151a26060830186613e25565b81810360808301526151b4818561512d565b905081810360a08301526151c8818461512d565b9050979650505050505050565b7f4552433737373a207472616e7366657220616d6f756e7420657863656564732060008201527f62616c616e636500000000000000000000000000000000000000000000000000602082015250565b6000615231602783613c89565b915061523c826151d5565b604082019050919050565b6000602082019050818103600083015261526081615224565b9050919050565b600060608201905061527c6000830186613e25565b818103602083015261528e818561512d565b905081810360408301526152a2818461512d565b9050949350505050565b7f4552433737373a20746f6b656e20726563697069656e7420636f6e747261637460008201527f20686173206e6f20696d706c656d656e74657220666f7220455243373737546f60208201527f6b656e73526563697069656e7400000000000000000000000000000000000000604082015250565b600061532e604d83613c89565b9150615339826152ac565b606082019050919050565b6000602082019050818103600083015261535d81615321565b9050919050565b7f4552433737373a2073656e642066726f6d20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006153c0602283613c89565b91506153cb82615364565b604082019050919050565b600060208201905081810360008301526153ef816153b3565b9050919050565b7f4552433737373a2073656e6420746f20746865207a65726f2061646472657373600082015250565b600061542c602083613c89565b9150615437826153f6565b602082019050919050565b6000602082019050818103600083015261545b8161541f565b9050919050565b7f4552433737373a206275726e2066726f6d20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b60006154be602283613c89565b91506154c982615462565b604082019050919050565b600060208201905081810360008301526154ed816154b1565b9050919050565b7f4552433737373a206275726e20616d6f756e7420657863656564732062616c6160008201527f6e63650000000000000000000000000000000000000000000000000000000000602082015250565b6000615550602383613c89565b915061555b826154f4565b604082019050919050565b6000602082019050818103600083015261557f81615543565b905091905056fea2646970667358221220799d205c940f729190a92fd02fdb68307d97c741aa4b11cec0de40e3406545fb64736f6c634300080c003360806040526040518060400160405280602081526020017f68747470733a2f2f7777772e65706967656f6e2e6f72672f6c6f636b61626c65815250600a90805190602001906200005192919062000396565b503480156200005f57600080fd5b506040518060400160405280600a81526020017f4c6f636b6564436f696e000000000000000000000000000000000000000000008152506040518060400160405280600381526020017f4c64430000000000000000000000000000000000000000000000000000000000815250600067ffffffffffffffff811115620000ea57620000e9620004d5565b5b604051908082528060200260200182016040528015620001195781602001602082028036833780820191505090505b5082600290805190602001906200013292919062000396565b5081600390805190602001906200014b92919062000396565b5080600490805190602001906200016492919062000427565b5060005b8151811015620001fd576001600560008484815181106200018e576200018d62000504565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080620001f4906200056c565b91505062000168565b50731820a4b7618bde71dce8cdc73aab6c95905fad2473ffffffffffffffffffffffffffffffffffffffff166329965a1d307fac7fbab5f54a3ca8194167523c6753bfeb96a445279294b6125b68cce2177054306040518463ffffffff1660e01b815260040162000271939291906200061a565b600060405180830381600087803b1580156200028c57600080fd5b505af1158015620002a1573d6000803e3d6000fd5b50505050731820a4b7618bde71dce8cdc73aab6c95905fad2473ffffffffffffffffffffffffffffffffffffffff166329965a1d307faea199e31a596269b42cdafd93407f14436db6e4cad65417994c2eb37381e05a306040518463ffffffff1660e01b815260040162000318939291906200061a565b600060405180830381600087803b1580156200033357600080fd5b505af115801562000348573d6000803e3d6000fd5b5050505050505033600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620006bc565b828054620003a49062000686565b90600052602060002090601f016020900481019282620003c8576000855562000414565b82601f10620003e357805160ff191683800117855562000414565b8280016001018555821562000414579182015b8281111562000413578251825591602001919060010190620003f6565b5b509050620004239190620004b6565b5090565b828054828255906000526020600020908101928215620004a3579160200282015b82811115620004a25782518260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055509160200191906001019062000448565b5b509050620004b29190620004b6565b5090565b5b80821115620004d1576000816000905550600101620004b7565b5090565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000819050919050565b6000620005798262000562565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415620005af57620005ae62000533565b5b600182019050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620005e782620005ba565b9050919050565b620005f981620005da565b82525050565b6000819050919050565b6200061481620005ff565b82525050565b6000606082019050620006316000830186620005ee565b62000640602083018562000609565b6200064f6040830184620005ee565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200069f57607f821691505b60208210811415620006b657620006b562000657565b5b50919050565b6148f480620006cc6000396000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c806395d89b4111610104578063bb82753e116100a2578063eac989f811610071578063eac989f8146105a3578063fad8b32a146105c1578063fc673c4f146105dd578063fe9d9303146105f9576101da565b8063bb82753e146104e3578063bc10157114610513578063d95b637114610543578063dd62ed3e14610573576101da565b80639eb4b70e116100de5780639eb4b70e1461044b578063a9059cbb14610467578063a96ce7aa14610497578063b68f53a7146104b3576101da565b806395d89b41146103f55780639b642de1146104135780639bd9bbc61461042f576101da565b8063313ce5671161017c57806370a082311161014b57806370a082311461036f578063893d20e81461039f578063931fe6ee146103bd578063959b8c3f146103d9576101da565b8063313ce567146102e7578063496b73db14610305578063556f0dc71461033557806362ad1b8314610353576101da565b806311df9995116101b857806311df99951461024b57806312e550b81461026957806318160ddd1461029957806323b872dd146102b7576101da565b806306e48538146101df57806306fdde03146101fd578063095ea7b31461021b575b600080fd5b6101e7610615565b6040516101f49190613210565b60405180910390f35b6102056106a3565b60405161021291906132cb565b60405180910390f35b61023560048036038101906102309190613363565b610735565b60405161024291906133be565b60405180910390f35b610253610758565b6040516102609190613438565b60405180910390f35b610283600480360381019061027e9190613489565b61077e565b60405161029091906134d8565b60405180910390f35b6102a16107d9565b6040516102ae91906134d8565b60405180910390f35b6102d160048036038101906102cc91906134f3565b6107e3565b6040516102de91906133be565b60405180910390f35b6102ef610a3d565b6040516102fc9190613562565b60405180910390f35b61031f600480360381019061031a919061357d565b610a46565b60405161032c91906134d8565b60405180910390f35b61033d610e0f565b60405161034a91906134d8565b60405180910390f35b61036d60048036038101906103689190613705565b610e18565b005b610389600480360381019061038491906137b8565b610e7e565b60405161039691906134d8565b60405180910390f35b6103a7610ec6565b6040516103b491906137f4565b60405180910390f35b6103d760048036038101906103d291906138b0565b610f5e565b005b6103f360048036038101906103ee91906137b8565b6110ea565b005b6103fd61134b565b60405161040a91906132cb565b60405180910390f35b61042d6004803603810190610428919061390c565b6113dd565b005b61044960048036038101906104449190613955565b6114bf565b005b610465600480360381019061046091906139c4565b6114e9565b005b610481600480360381019061047c9190613363565b611775565b60405161048e91906133be565b60405180910390f35b6104b160048036038101906104ac919061390c565b611883565b005b6104cd60048036038101906104c89190613489565b611922565b6040516104da91906137f4565b60405180910390f35b6104fd60048036038101906104f89190613489565b61199d565b60405161050a91906134d8565b60405180910390f35b61052d60048036038101906105289190613489565b611cf7565b60405161053a91906134d8565b60405180910390f35b61055d60048036038101906105589190613a2b565b611d52565b60405161056a91906133be565b60405180910390f35b61058d60048036038101906105889190613a2b565b611f03565b60405161059a91906134d8565b60405180910390f35b6105ab611f8a565b6040516105b891906132cb565b60405180910390f35b6105db60048036038101906105d691906137b8565b612018565b005b6105f760048036038101906105f29190613a6b565b612279565b005b610613600480360381019061060e9190613b0a565b6122db565b005b6060600480548060200260200160405190810160405280929190818152602001828054801561069957602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001906001019080831161064f575b5050505050905090565b6060600280546106b290613b95565b80601f01602080910402602001604051908101604052809291908181526020018280546106de90613b95565b801561072b5780601f106107005761010080835404028352916020019161072b565b820191906000526020600020905b81548152906001019060200180831161070e57829003601f168201915b5050505050905090565b600080610740612301565b905061074d818585612309565b600191505092915050565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002054905092915050565b6000600154905090565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610854576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161084b90613c39565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614156108c4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108bb90613ccb565b60405180910390fd5b60006108ce612301565b90506108fc8186868660405180602001604052806000815250604051806020016040528060008152506124d4565b61092881868686604051806020016040528060008152506040518060200160405280600081525061263b565b6000600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050838110156109ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109e390613d5d565b60405180910390fd5b610a02868386846109fd9190613dac565b612309565b610a308287878760405180602001604052806000815250604051806020016040528060008152506000612855565b6001925050509392505050565b60006012905090565b6000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610ad8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610acf90613e2c565b60405180910390fd5b6000600b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008481526020019081526020016000205411610b6b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b6290613e98565b60405180910390fd5b8373ffffffffffffffffffffffffffffffffffffffff16600d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c49576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c4090613f04565b60405180910390fd5b6000600b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050610cc884826040518060200160405280600081525060405180602001604052806000815250612a5d565b6000600b60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000858152602001908152602001600020819055506000600c60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000858152602001908152602001600020819055506000600d60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550809150509392505050565b60006001905090565b610e29610e23612301565b86611d52565b610e68576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e5f90613f96565b60405180910390fd5b610e7785858585856001612cb0565b5050505050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663893d20e86040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f35573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f599190613fcb565b905090565b6000818051906020012090503373ffffffffffffffffffffffffffffffffffffffff16600d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611048576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161103f90613f04565b60405180910390fd5b611053338483610a46565b50600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663896b9ad03385846040518463ffffffff1660e01b81526004016110b393929190614007565b600060405180830381600087803b1580156110cd57600080fd5b505af11580156110e1573d6000803e3d6000fd5b50505050505050565b8073ffffffffffffffffffffffffffffffffffffffff16611109612301565b73ffffffffffffffffffffffffffffffffffffffff161415611160576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611157906140b0565b60405180910390fd5b600560008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561124a57600760006111be612301565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81549060ff02191690556112e7565b600160066000611258612301565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505b6112ef612301565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167ff4caeb2d6ca8932a215a353d0703c326ec2d81fc68170f320eb2ab49e9df61f960405160405180910390a350565b60606003805461135a90613b95565b80601f016020809104026020016040519081016040528092919081815260200182805461138690613b95565b80156113d35780601f106113a8576101008083540402835291602001916113d3565b820191906000526020600020905b8154815290600101906020018083116113b657829003601f168201915b5050505050905090565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663893d20e86040518163ffffffff1660e01b8152600401602060405180830381865afa15801561144a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061146e9190613fcb565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146114a557600080fd5b80600a90805190602001906114bb92919061307d565b5050565b6114e46114ca612301565b848484604051806020016040528060008152506001612cb0565b505050565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611579576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161157090613e2c565b60405180910390fd5b6000600b60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020541461160c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116039061411c565b60405180910390fd5b61163684846040518060200160405280600081525060405180602001604052806000815250612dd0565b82600b60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008481526020019081526020016000208190555082600c60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008481526020019081526020016000208190555080600d60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156117e6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117dd90613c39565b60405180910390fd5b60006117f0612301565b905061181e8182868660405180602001604052806000815250604051806020016040528060008152506124d4565b61184a81828686604051806020016040528060008152506040518060200160405280600081525061263b565b6118788182868660405180602001604052806000815250604051806020016040528060008152506000612855565b600191505092915050565b600081805190602001209050600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166378d28bd733836040518363ffffffff1660e01b81526004016118ec92919061413c565b600060405180830381600087803b15801561190657600080fd5b505af115801561191a573d6000803e3d6000fd5b505050505050565b6000600d60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905092915050565b6000600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611a2f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a2690613e2c565b60405180910390fd5b6000600b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008481526020019081526020016000205411611ac2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ab990613e98565b60405180910390fd5b6000600b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000848152602001908152602001600020549050611b4184826040518060200160405280600081525060405180602001604052806000815250612a5d565b6000600b60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000858152602001908152602001600020819055506000600c6000600d60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600087815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000858152602001908152602001600020819055506000600d60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600085815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508091505092915050565b6000600c60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002054905092915050565b60008173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480611e6a5750600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff168015611e695750600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b5b80611efb5750600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b905092915050565b6000600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600a8054611f9790613b95565b80601f0160208091040260200160405190810160405280929190818152602001828054611fc390613b95565b80156120105780601f10611fe557610100808354040283529160200191612010565b820191906000526020600020905b815481529060010190602001808311611ff357829003601f168201915b505050505081565b612020612301565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561208e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612085906141d7565b60405180910390fd5b600560008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615612181576001600760006120ee612301565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550612215565b6006600061218d612301565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81549060ff02191690555b61221d612301565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f50546e66e5f44d728365dc3908c63bc5cfeeab470722c1677e3073a6ac294aa160405160405180910390a350565b61228a612284612301565b85611d52565b6122c9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122c090613f96565b60405180910390fd5b6122d584848484612a5d565b50505050565b6122fd6122e6612301565b838360405180602001604052806000815250612a5d565b5050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612379576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161237090614269565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156123e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123e0906142fb565b60405180910390fd5b80600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516124c791906134d8565b60405180910390a3505050565b6000731820a4b7618bde71dce8cdc73aab6c95905fad2473ffffffffffffffffffffffffffffffffffffffff1663aabbb8ca877f29ddb589b1fb5fc7cf394961c1adf5f8c6454761adf795e67fe149f658abe8956040518363ffffffff1660e01b815260040161254592919061413c565b602060405180830381865afa158015612562573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125869190613fcb565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614612632578073ffffffffffffffffffffffffffffffffffffffff166375ab97828888888888886040518763ffffffff1660e01b81526004016125ff96959493929190614370565b600060405180830381600087803b15801561261957600080fd5b505af115801561262d573d6000803e3d6000fd5b505050505b50505050505050565b61264786868686612de4565b60008060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050838110156126cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126c490614451565b60405180910390fd5b8381036000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550836000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546127609190614471565b925050819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff168873ffffffffffffffffffffffffffffffffffffffff167f06b541ddaa720db2b10a4d0cdac39b8d360425fc073085fac19bc826146779878787876040516127df939291906144c7565b60405180910390a48473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8660405161284491906134d8565b60405180910390a350505050505050565b6000731820a4b7618bde71dce8cdc73aab6c95905fad2473ffffffffffffffffffffffffffffffffffffffff1663aabbb8ca877fb281fc8c12954d22544db45de3159a39272895b169a852b314f9cc762e44c53b6040518363ffffffff1660e01b81526004016128c692919061413c565b602060405180830381865afa1580156128e3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129079190613fcb565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16146129b6578073ffffffffffffffffffffffffffffffffffffffff166223de298989898989896040518763ffffffff1660e01b815260040161297f96959493929190614370565b600060405180830381600087803b15801561299957600080fd5b505af11580156129ad573d6000803e3d6000fd5b50505050612a53565b8115612a52576129db8673ffffffffffffffffffffffffffffffffffffffff16612e86565b1580612a1257503073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16145b612a51576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a48906145a4565b60405180910390fd5b5b5b5050505050505050565b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415612acd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612ac490614636565b60405180910390fd5b6000612ad7612301565b9050612ae8818660008787876124d4565b612af58186600087612de4565b60008060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905084811015612b7b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b72906146c8565b60405180910390fd5b8481036000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508460016000828254612bd29190613dac565b925050819055508573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fa78a9be3a7b862d26933ad85fb11d80ef66b8f972d7cbba06621d583943a4098878787604051612c3a939291906144c7565b60405180910390a3600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef87604051612ca091906134d8565b60405180910390a3505050505050565b600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161415612d20576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d179061475a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415612d90576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d87906147c6565b60405180910390fd5b6000612d9a612301565b9050612daa8188888888886124d4565b612db881888888888861263b565b612dc781888888888888612855565b50505050505050565b612dde848484846001612e99565b50505050565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612e74576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612e6b90614832565b60405180910390fd5b612e8084848484613077565b50505050565b600080823b905060008111915050919050565b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415612f09576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612f009061489e565b60405180910390fd5b6000612f13612301565b9050612f228160008888612de4565b8460016000828254612f349190614471565b92505081905550846000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254612f899190614471565b92505081905550612fa08160008888888888612855565b8573ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f2fe5be0146f74c5bce36c0b80911af6c7d86ff27e89d5cfa61fc681327954e5d878787604051613001939291906144c7565b60405180910390a38573ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8760405161306791906134d8565b60405180910390a3505050505050565b50505050565b82805461308990613b95565b90600052602060002090601f0160209004810192826130ab57600085556130f2565b82601f106130c457805160ff19168380011785556130f2565b828001600101855582156130f2579182015b828111156130f15782518255916020019190600101906130d6565b5b5090506130ff9190613103565b5090565b5b8082111561311c576000816000905550600101613104565b5090565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006131778261314c565b9050919050565b6131878161316c565b82525050565b6000613199838361317e565b60208301905092915050565b6000602082019050919050565b60006131bd82613120565b6131c7818561312b565b93506131d28361313c565b8060005b838110156132035781516131ea888261318d565b97506131f5836131a5565b9250506001810190506131d6565b5085935050505092915050565b6000602082019050818103600083015261322a81846131b2565b905092915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561326c578082015181840152602081019050613251565b8381111561327b576000848401525b50505050565b6000601f19601f8301169050919050565b600061329d82613232565b6132a7818561323d565b93506132b781856020860161324e565b6132c081613281565b840191505092915050565b600060208201905081810360008301526132e58184613292565b905092915050565b6000604051905090565b600080fd5b600080fd5b61330a8161316c565b811461331557600080fd5b50565b60008135905061332781613301565b92915050565b6000819050919050565b6133408161332d565b811461334b57600080fd5b50565b60008135905061335d81613337565b92915050565b6000806040838503121561337a576133796132f7565b5b600061338885828601613318565b92505060206133998582860161334e565b9150509250929050565b60008115159050919050565b6133b8816133a3565b82525050565b60006020820190506133d360008301846133af565b92915050565b6000819050919050565b60006133fe6133f96133f48461314c565b6133d9565b61314c565b9050919050565b6000613410826133e3565b9050919050565b600061342282613405565b9050919050565b61343281613417565b82525050565b600060208201905061344d6000830184613429565b92915050565b6000819050919050565b61346681613453565b811461347157600080fd5b50565b6000813590506134838161345d565b92915050565b600080604083850312156134a05761349f6132f7565b5b60006134ae85828601613318565b92505060206134bf85828601613474565b9150509250929050565b6134d28161332d565b82525050565b60006020820190506134ed60008301846134c9565b92915050565b60008060006060848603121561350c5761350b6132f7565b5b600061351a86828701613318565b935050602061352b86828701613318565b925050604061353c8682870161334e565b9150509250925092565b600060ff82169050919050565b61355c81613546565b82525050565b60006020820190506135776000830184613553565b92915050565b600080600060608486031215613596576135956132f7565b5b60006135a486828701613318565b93505060206135b586828701613318565b92505060406135c686828701613474565b9150509250925092565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61361282613281565b810181811067ffffffffffffffff82111715613631576136306135da565b5b80604052505050565b60006136446132ed565b90506136508282613609565b919050565b600067ffffffffffffffff8211156136705761366f6135da565b5b61367982613281565b9050602081019050919050565b82818337600083830152505050565b60006136a86136a384613655565b61363a565b9050828152602081018484840111156136c4576136c36135d5565b5b6136cf848285613686565b509392505050565b600082601f8301126136ec576136eb6135d0565b5b81356136fc848260208601613695565b91505092915050565b600080600080600060a08688031215613721576137206132f7565b5b600061372f88828901613318565b955050602061374088828901613318565b94505060406137518882890161334e565b935050606086013567ffffffffffffffff811115613772576137716132fc565b5b61377e888289016136d7565b925050608086013567ffffffffffffffff81111561379f5761379e6132fc565b5b6137ab888289016136d7565b9150509295509295909350565b6000602082840312156137ce576137cd6132f7565b5b60006137dc84828501613318565b91505092915050565b6137ee8161316c565b82525050565b600060208201905061380960008301846137e5565b92915050565b600067ffffffffffffffff82111561382a576138296135da565b5b61383382613281565b9050602081019050919050565b600061385361384e8461380f565b61363a565b90508281526020810184848401111561386f5761386e6135d5565b5b61387a848285613686565b509392505050565b600082601f830112613897576138966135d0565b5b81356138a7848260208601613840565b91505092915050565b600080604083850312156138c7576138c66132f7565b5b60006138d585828601613318565b925050602083013567ffffffffffffffff8111156138f6576138f56132fc565b5b61390285828601613882565b9150509250929050565b600060208284031215613922576139216132f7565b5b600082013567ffffffffffffffff8111156139405761393f6132fc565b5b61394c84828501613882565b91505092915050565b60008060006060848603121561396e5761396d6132f7565b5b600061397c86828701613318565b935050602061398d8682870161334e565b925050604084013567ffffffffffffffff8111156139ae576139ad6132fc565b5b6139ba868287016136d7565b9150509250925092565b600080600080608085870312156139de576139dd6132f7565b5b60006139ec87828801613318565b94505060206139fd8782880161334e565b9350506040613a0e87828801613474565b9250506060613a1f87828801613318565b91505092959194509250565b60008060408385031215613a4257613a416132f7565b5b6000613a5085828601613318565b9250506020613a6185828601613318565b9150509250929050565b60008060008060808587031215613a8557613a846132f7565b5b6000613a9387828801613318565b9450506020613aa48782880161334e565b935050604085013567ffffffffffffffff811115613ac557613ac46132fc565b5b613ad1878288016136d7565b925050606085013567ffffffffffffffff811115613af257613af16132fc565b5b613afe878288016136d7565b91505092959194509250565b60008060408385031215613b2157613b206132f7565b5b6000613b2f8582860161334e565b925050602083013567ffffffffffffffff811115613b5057613b4f6132fc565b5b613b5c858286016136d7565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680613bad57607f821691505b60208210811415613bc157613bc0613b66565b5b50919050565b7f4552433737373a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000613c2360248361323d565b9150613c2e82613bc7565b604082019050919050565b60006020820190508181036000830152613c5281613c16565b9050919050565b7f4552433737373a207472616e736665722066726f6d20746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000613cb560268361323d565b9150613cc082613c59565b604082019050919050565b60006020820190508181036000830152613ce481613ca8565b9050919050565b7f4552433737373a207472616e7366657220616d6f756e7420657863656564732060008201527f616c6c6f77616e63650000000000000000000000000000000000000000000000602082015250565b6000613d4760298361323d565b9150613d5282613ceb565b604082019050919050565b60006020820190508181036000830152613d7681613d3a565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000613db78261332d565b9150613dc28361332d565b925082821015613dd557613dd4613d7d565b5b828203905092915050565b7f4f6e6c7920617661696c61626c6520666f72206d617374657220636f696e0000600082015250565b6000613e16601e8361323d565b9150613e2182613de0565b602082019050919050565b60006020820190508181036000830152613e4581613e09565b9050919050565b7f4e6f20616d6f756e74206c6f636b6564207769746820676976656e2068617368600082015250565b6000613e8260208361323d565b9150613e8d82613e4c565b602082019050919050565b60006020820190508181036000830152613eb181613e75565b9050919050565b7f4e6f74206c6f636b656420627920746869732061646472657373000000000000600082015250565b6000613eee601a8361323d565b9150613ef982613eb8565b602082019050919050565b60006020820190508181036000830152613f1d81613ee1565b9050919050565b7f4552433737373a2063616c6c6572206973206e6f7420616e206f70657261746f60008201527f7220666f7220686f6c6465720000000000000000000000000000000000000000602082015250565b6000613f80602c8361323d565b9150613f8b82613f24565b604082019050919050565b60006020820190508181036000830152613faf81613f73565b9050919050565b600081519050613fc581613301565b92915050565b600060208284031215613fe157613fe06132f7565b5b6000613fef84828501613fb6565b91505092915050565b61400181613453565b82525050565b600060608201905061401c60008301866137e5565b61402960208301856137e5565b6140366040830184613ff8565b949350505050565b7f4552433737373a20617574686f72697a696e672073656c66206173206f70657260008201527f61746f7200000000000000000000000000000000000000000000000000000000602082015250565b600061409a60248361323d565b91506140a58261403e565b604082019050919050565b600060208201905081810360008301526140c98161408d565b9050919050565b7f416d6f756e74206c6f636b65642077697468207468652073616d652068617368600082015250565b600061410660208361323d565b9150614111826140d0565b602082019050919050565b60006020820190508181036000830152614135816140f9565b9050919050565b600060408201905061415160008301856137e5565b61415e6020830184613ff8565b9392505050565b7f4552433737373a207265766f6b696e672073656c66206173206f70657261746f60008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b60006141c160218361323d565b91506141cc82614165565b604082019050919050565b600060208201905081810360008301526141f0816141b4565b9050919050565b7f4552433737373a20617070726f76652066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b600061425360258361323d565b915061425e826141f7565b604082019050919050565b6000602082019050818103600083015261428281614246565b9050919050565b7f4552433737373a20617070726f766520746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b60006142e560238361323d565b91506142f082614289565b604082019050919050565b60006020820190508181036000830152614314816142d8565b9050919050565b600081519050919050565b600082825260208201905092915050565b60006143428261431b565b61434c8185614326565b935061435c81856020860161324e565b61436581613281565b840191505092915050565b600060c08201905061438560008301896137e5565b61439260208301886137e5565b61439f60408301876137e5565b6143ac60608301866134c9565b81810360808301526143be8185614337565b905081810360a08301526143d28184614337565b9050979650505050505050565b7f4552433737373a207472616e7366657220616d6f756e7420657863656564732060008201527f62616c616e636500000000000000000000000000000000000000000000000000602082015250565b600061443b60278361323d565b9150614446826143df565b604082019050919050565b6000602082019050818103600083015261446a8161442e565b9050919050565b600061447c8261332d565b91506144878361332d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156144bc576144bb613d7d565b5b828201905092915050565b60006060820190506144dc60008301866134c9565b81810360208301526144ee8185614337565b905081810360408301526145028184614337565b9050949350505050565b7f4552433737373a20746f6b656e20726563697069656e7420636f6e747261637460008201527f20686173206e6f20696d706c656d656e74657220666f7220455243373737546f60208201527f6b656e73526563697069656e7400000000000000000000000000000000000000604082015250565b600061458e604d8361323d565b91506145998261450c565b606082019050919050565b600060208201905081810360008301526145bd81614581565b9050919050565b7f4552433737373a206275726e2066726f6d20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b600061462060228361323d565b915061462b826145c4565b604082019050919050565b6000602082019050818103600083015261464f81614613565b9050919050565b7f4552433737373a206275726e20616d6f756e7420657863656564732062616c6160008201527f6e63650000000000000000000000000000000000000000000000000000000000602082015250565b60006146b260238361323d565b91506146bd82614656565b604082019050919050565b600060208201905081810360008301526146e1816146a5565b9050919050565b7f4552433737373a2073656e642066726f6d20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b600061474460228361323d565b915061474f826146e8565b604082019050919050565b6000602082019050818103600083015261477381614737565b9050919050565b7f4552433737373a2073656e6420746f20746865207a65726f2061646472657373600082015250565b60006147b060208361323d565b91506147bb8261477a565b602082019050919050565b600060208201905081810360008301526147df816147a3565b9050919050565b7f556e6c6f636b20746f207472616e7366657261626c6520636f696e0000000000600082015250565b600061481c601b8361323d565b9150614827826147e6565b602082019050919050565b6000602082019050818103600083015261484b8161480f565b9050919050565b7f4552433737373a206d696e7420746f20746865207a65726f2061646472657373600082015250565b600061488860208361323d565b915061489382614852565b602082019050919050565b600060208201905081810360008301526148b78161487b565b905091905056fea2646970667358221220d8b96515f9fb0bfe3d9751968ebb1c42a45d8245099fd8e714ef170f6f70d32864736f6c634300080c0033
©2022-now by Spectre