0x608060405273ade8b779418009085cc6f28729a663d949dab1b4600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555068056bc75e2d631000006002556402540be40060035534801561007b57600080fd5b5061009861008d61009d60201b60201c565b6100a560201b60201c565b610169565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b610c0f806101786000396000f3fe6080604052600436106100595760003560e01c806317ffc320146100625780633ccfd60b1461008b578063715018a6146100a25780638da5cb5b146100b9578063d617b738146100e4578063f2fde38b1461010d57610060565b3661006057005b005b34801561006e57600080fd5b50610089600480360381019061008491906106d1565b610136565b005b34801561009757600080fd5b506100a0610297565b005b3480156100ae57600080fd5b506100b76102e8565b005b3480156100c557600080fd5b506100ce6102fc565b6040516100db919061070d565b60405180910390f35b3480156100f057600080fd5b5061010b600480360381019061010691906108ad565b610325565b005b34801561011957600080fd5b50610134600480360381019061012f91906108f6565b61047f565b005b61013e610503565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561017857600080fd5b60008173ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016101b3919061070d565b60206040518083038186803b1580156101cb57600080fd5b505afa1580156101df573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102039190610959565b90508173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff1660e01b8152600401610240929190610995565b602060405180830381600087803b15801561025a57600080fd5b505af115801561026e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061029291906109f6565b505050565b61029f610503565b3373ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f193505050501580156102e5573d6000803e3d6000fd5b50565b6102f0610503565b6102fa6000610581565b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61032d610503565b60005b815181101561047b57600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83838151811061038a57610389610a23565b5b60200260200101516002546040518363ffffffff1660e01b81526004016103b2929190610995565b602060405180830381600087803b1580156103cc57600080fd5b505af11580156103e0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061040491906109f6565b5081818151811061041857610417610a23565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff166108fc6003549081150290604051600060405180830381858888f19350505050158015610467573d6000803e3d6000fd5b50808061047390610a81565b915050610330565b5050565b610487610503565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156104f7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104ee90610b4d565b60405180910390fd5b61050081610581565b50565b61050b610645565b73ffffffffffffffffffffffffffffffffffffffff166105296102fc565b73ffffffffffffffffffffffffffffffffffffffff161461057f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161057690610bb9565b60405180910390fd5b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600033905090565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061068c82610661565b9050919050565b600061069e82610681565b9050919050565b6106ae81610693565b81146106b957600080fd5b50565b6000813590506106cb816106a5565b92915050565b6000602082840312156106e7576106e6610657565b5b60006106f5848285016106bc565b91505092915050565b61070781610681565b82525050565b600060208201905061072260008301846106fe565b92915050565b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6107768261072d565b810181811067ffffffffffffffff821117156107955761079461073e565b5b80604052505050565b60006107a861064d565b90506107b4828261076d565b919050565b600067ffffffffffffffff8211156107d4576107d361073e565b5b602082029050602081019050919050565b600080fd5b6107f381610681565b81146107fe57600080fd5b50565b600081359050610810816107ea565b92915050565b6000610829610824846107b9565b61079e565b9050808382526020820190506020840283018581111561084c5761084b6107e5565b5b835b8181101561087557806108618882610801565b84526020840193505060208101905061084e565b5050509392505050565b600082601f83011261089457610893610728565b5b81356108a4848260208601610816565b91505092915050565b6000602082840312156108c3576108c2610657565b5b600082013567ffffffffffffffff8111156108e1576108e061065c565b5b6108ed8482850161087f565b91505092915050565b60006020828403121561090c5761090b610657565b5b600061091a84828501610801565b91505092915050565b6000819050919050565b61093681610923565b811461094157600080fd5b50565b6000815190506109538161092d565b92915050565b60006020828403121561096f5761096e610657565b5b600061097d84828501610944565b91505092915050565b61098f81610923565b82525050565b60006040820190506109aa60008301856106fe565b6109b76020830184610986565b9392505050565b60008115159050919050565b6109d3816109be565b81146109de57600080fd5b50565b6000815190506109f0816109ca565b92915050565b600060208284031215610a0c57610a0b610657565b5b6000610a1a848285016109e1565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000610a8c82610923565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415610abf57610abe610a52565b5b600182019050919050565b600082825260208201905092915050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000610b37602683610aca565b9150610b4282610adb565b604082019050919050565b60006020820190508181036000830152610b6681610b2a565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000610ba3602083610aca565b9150610bae82610b6d565b602082019050919050565b60006020820190508181036000830152610bd281610b96565b905091905056fea2646970667358221220c2145c7e799f3075951cda5ba328565f486d12a1c98c4b28545302389cf2e45564736f6c63430008090033