6080604052601260ff16600a6200001791906200026e565b63297c1e00620000289190620002be565b5f5534801562000036575f80fd5b505f5460015f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503373ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5f54604051620000da919062000319565b60405180910390a362000334565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b600185111562000172578086048111156200014a5762000149620000e8565b5b60018516156200015a5780820291505b80810290506200016a8562000115565b94506200012a565b94509492505050565b5f826200018c57600190506200025e565b816200019b575f90506200025e565b8160018114620001b45760028114620001bf57620001f5565b60019150506200025e565b60ff841115620001d457620001d3620000e8565b5b8360020a915084821115620001ee57620001ed620000e8565b5b506200025e565b5060208310610133831016604e8410600b84101617156200022f5782820a905083811115620002295762000228620000e8565b5b6200025e565b6200023e848484600162000121565b92509050818404811115620002585762000257620000e8565b5b81810290505b9392505050565b5f819050919050565b5f6200027a8262000265565b9150620002878362000265565b9250620002b67fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846200017b565b905092915050565b5f620002ca8262000265565b9150620002d78362000265565b9250828202620002e78162000265565b91508282048414831517620003015762000300620000e8565b5b5092915050565b620003138162000265565b82525050565b5f6020820190506200032e5f83018462000308565b92915050565b610f6580620003425f395ff3fe608060405260043610610094575f3560e01c806370a082311161005857806370a082311461019357806395d89b41146101cf578063a9059cbb146101f9578063c3fe3e2814610235578063dd62ed3e1461024b5761009b565b806306fdde031461009d578063095ea7b3146100c757806318160ddd1461010357806323b872dd1461012d578063313ce567146101695761009b565b3661009b57005b005b3480156100a8575f80fd5b506100b1610287565b6040516100be91906109f5565b60405180910390f35b3480156100d2575f80fd5b506100ed60048036038101906100e89190610aa6565b6102c0565b6040516100fa9190610afe565b60405180910390f35b34801561010e575f80fd5b506101176102d6565b6040516101249190610b26565b60405180910390f35b348015610138575f80fd5b50610153600480360381019061014e9190610b3f565b6102de565b6040516101609190610afe565b60405180910390f35b348015610174575f80fd5b5061017d610383565b60405161018a9190610baa565b60405180910390f35b34801561019e575f80fd5b506101b960048036038101906101b49190610bc3565b610388565b6040516101c69190610b26565b60405180910390f35b3480156101da575f80fd5b506101e36103ce565b6040516101f091906109f5565b60405180910390f35b348015610204575f80fd5b5061021f600480360381019061021a9190610aa6565b610407565b60405161022c9190610afe565b60405180910390f35b348015610240575f80fd5b5061024961041d565b005b348015610256575f80fd5b50610271600480360381019061026c9190610bee565b6104ba565b60405161027e9190610b26565b60405180910390f35b6040518060400160405280600f81526020017f646f67677973686962617368696265000000000000000000000000000000000081525081565b5f6102cc33848461053c565b6001905092915050565b5f8054905090565b5f6102ea8484846106ff565b61037884338460025f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546103739190610c59565b61053c565b600190509392505050565b601281565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6040518060400160405280600381526020017f445353000000000000000000000000000000000000000000000000000000000081525081565b5f6104133384846106ff565b6001905092915050565b61138860015f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054101561049f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161049690610cd6565b60405180910390fd5b6104ac33306113886106ff565b6104b8303360036106ff565b565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036105aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105a190610d3e565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610618576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161060f90610da6565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516106f29190610b26565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361076d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161076490610e0e565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036107db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107d290610e76565b60405180910390fd5b8060015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054101561085b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161085290610ede565b60405180910390fd5b8060015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546108a79190610c59565b925050819055508060015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546108fa9190610efc565b925050819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161095e9190610b26565b60405180910390a3505050565b5f81519050919050565b5f82825260208201905092915050565b5f5b838110156109a2578082015181840152602081019050610987565b5f8484015250505050565b5f601f19601f8301169050919050565b5f6109c78261096b565b6109d18185610975565b93506109e1818560208601610985565b6109ea816109ad565b840191505092915050565b5f6020820190508181035f830152610a0d81846109bd565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610a4282610a19565b9050919050565b610a5281610a38565b8114610a5c575f80fd5b50565b5f81359050610a6d81610a49565b92915050565b5f819050919050565b610a8581610a73565b8114610a8f575f80fd5b50565b5f81359050610aa081610a7c565b92915050565b5f8060408385031215610abc57610abb610a15565b5b5f610ac985828601610a5f565b9250506020610ada85828601610a92565b9150509250929050565b5f8115159050919050565b610af881610ae4565b82525050565b5f602082019050610b115f830184610aef565b92915050565b610b2081610a73565b82525050565b5f602082019050610b395f830184610b17565b92915050565b5f805f60608486031215610b5657610b55610a15565b5b5f610b6386828701610a5f565b9350506020610b7486828701610a5f565b9250506040610b8586828701610a92565b9150509250925092565b5f60ff82169050919050565b610ba481610b8f565b82525050565b5f602082019050610bbd5f830184610b9b565b92915050565b5f60208284031215610bd857610bd7610a15565b5b5f610be584828501610a5f565b91505092915050565b5f8060408385031215610c0457610c03610a15565b5b5f610c1185828601610a5f565b9250506020610c2285828601610a5f565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f610c6382610a73565b9150610c6e83610a73565b9250828203905081811115610c8657610c85610c2c565b5b92915050565b7f496e73756666696369656e742062616c616e636520666f722067616d650000005f82015250565b5f610cc0601d83610975565b9150610ccb82610c8c565b602082019050919050565b5f6020820190508181035f830152610ced81610cb4565b9050919050565b7f417070726f76652066726f6d20746865207a65726f20616464726573730000005f82015250565b5f610d28601d83610975565b9150610d3382610cf4565b602082019050919050565b5f6020820190508181035f830152610d5581610d1c565b9050919050565b7f417070726f766520746f20746865207a65726f206164647265737300000000005f82015250565b5f610d90601b83610975565b9150610d9b82610d5c565b602082019050919050565b5f6020820190508181035f830152610dbd81610d84565b9050919050565b7f5472616e736665722066726f6d20746865207a65726f206164647265737300005f82015250565b5f610df8601e83610975565b9150610e0382610dc4565b602082019050919050565b5f6020820190508181035f830152610e2581610dec565b9050919050565b7f5472616e7366657220746f20746865207a65726f2061646472657373000000005f82015250565b5f610e60601c83610975565b9150610e6b82610e2c565b602082019050919050565b5f6020820190508181035f830152610e8d81610e54565b9050919050565b7f496e73756666696369656e742062616c616e63650000000000000000000000005f82015250565b5f610ec8601483610975565b9150610ed382610e94565b602082019050919050565b5f6020820190508181035f830152610ef581610ebc565b9050919050565b5f610f0682610a73565b9150610f1183610a73565b9250828201905080821115610f2957610f28610c2c565b5b9291505056fea26469706673582212208e63d337eecae27e0f0c8b445a6c636cf392ae05378a99eae3399fb332024b5264736f6c63430008180033