token-icon

URUFU

Token

Overview[ERC-20]

Max Total Supply
10,000,000.0
URUFU
Holders
30+0.00%
Transfers
230

Profile Summary

Decimals
9

Market

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