0x60806040525f5f5f6101000a81548160ff0219169083151502179055503480156026575f5ffd5b50335f60016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506107f7806100745f395ff3fe608060405234801561000f575f5ffd5b506004361061004a575f3560e01c80632106b0fa1461004e5780633b111c251461007e5780638da5cb5b1461009a578063f2fde38b146100b8575b5f5ffd5b61006860048036038101906100639190610425565b6100d4565b604051610075919061047d565b60405180910390f35b610098600480360381019061009391906104f0565b6100df565b005b6100a2610289565b6040516100af919061053d565b60405180910390f35b6100d260048036038101906100cd9190610556565b6102ae565b005b5f6001905092915050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361014d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610144906105db565b60405180910390fd5b5f8273ffffffffffffffffffffffffffffffffffffffff1682836040516024016101779190610608565b6040516020818303038152906040527fa6b206bf000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516102019190610673565b5f6040518083038185875af1925050503d805f811461023b576040519150601f19603f3d011682016040523d82523d5f602084013e610240565b606091505b5050905080610284576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161027b906106d3565b60405180910390fd5b505050565b5f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f60019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461033d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103349061073b565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036103ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103a2906107a3565b60405180910390fd5b805f60016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b5f5ffd5b5f819050919050565b610404816103f2565b811461040e575f5ffd5b50565b5f8135905061041f816103fb565b92915050565b5f5f6040838503121561043b5761043a6103ee565b5b5f61044885828601610411565b925050602061045985828601610411565b9150509250929050565b5f8115159050919050565b61047781610463565b82525050565b5f6020820190506104905f83018461046e565b92915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6104bf82610496565b9050919050565b6104cf816104b5565b81146104d9575f5ffd5b50565b5f813590506104ea816104c6565b92915050565b5f5f60408385031215610506576105056103ee565b5b5f610513858286016104dc565b925050602061052485828601610411565b9150509250929050565b610537816104b5565b82525050565b5f6020820190506105505f83018461052e565b92915050565b5f6020828403121561056b5761056a6103ee565b5b5f610578848285016104dc565b91505092915050565b5f82825260208201905092915050565b7f496e76616c696420636f6e7472616374206164647265737300000000000000005f82015250565b5f6105c5601883610581565b91506105d082610591565b602082019050919050565b5f6020820190508181035f8301526105f2816105b9565b9050919050565b610602816103f2565b82525050565b5f60208201905061061b5f8301846105f9565b92915050565b5f81519050919050565b5f81905092915050565b8281835e5f83830152505050565b5f61064d82610621565b610657818561062b565b9350610667818560208601610635565b80840191505092915050565b5f61067e8284610643565b915081905092915050565b7f4661696c656420746f2063616c6c206f7468657220636f6e74726163740000005f82015250565b5f6106bd601d83610581565b91506106c882610689565b602082019050919050565b5f6020820190508181035f8301526106ea816106b1565b9050919050565b7f43616c6c6572206973206e6f7420746865206f776e65720000000000000000005f82015250565b5f610725601783610581565b9150610730826106f1565b602082019050919050565b5f6020820190508181035f83015261075281610719565b9050919050565b7f496e76616c6964206164647265737320666f72206e6577206f776e65720000005f82015250565b5f61078d601d83610581565b915061079882610759565b602082019050919050565b5f6020820190508181035f8301526107ba81610781565b905091905056fea264697066735822122019767ca0d6b745cf8781a42a770c78db39bed6fb39820321b5fa9fc4a73bf19d64736f6c634300081c0033