0x608060405234801561001057600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061044d806100606000396000f3fe60806040526004361061003f5760003560e01c806312065fe014610044578063748d2d131461006f578063893d20e81461008b578063f2fde38b146100b6575b600080fd5b34801561005057600080fd5b506100596100df565b60405161006691906102c5565b60405180910390f35b61008960048036038101906100849190610343565b6100e7565b005b34801561009757600080fd5b506100a0610131565b6040516100ad919061037f565b60405180910390f35b3480156100c257600080fd5b506100dd60048036038101906100d89190610343565b61015a565b005b600047905090565b8073ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f1935050505015801561012d573d6000803e3d6000fd5b5050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146101e8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101df906103f7565b60405180910390fd5b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f20785b27e5fe438f15d8e2c5ccf83f449d08d77cba6151a2857a22015412860660405160405180910390a35050565b6000819050919050565b6102bf816102ac565b82525050565b60006020820190506102da60008301846102b6565b92915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610310826102e5565b9050919050565b61032081610305565b811461032b57600080fd5b50565b60008135905061033d81610317565b92915050565b600060208284031215610359576103586102e0565b5b60006103678482850161032e565b91505092915050565b61037981610305565b82525050565b60006020820190506103946000830184610370565b92915050565b600082825260208201905092915050565b7f4163636573732044656e69656400000000000000000000000000000000000000600082015250565b60006103e1600d8361039a565b91506103ec826103ab565b602082019050919050565b60006020820190508181036000830152610410816103d4565b905091905056fea264697066735822122036e94d0fc0fde074b76e4bb056f34349bd6ea25d222bb1e80622cd940680cd8564736f6c63430008120033