0x608060405234801561001057600080fd5b5061045d806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80630c9d340b1461003b5780631aafae6b14610064575b600080fd5b61004e6100493660046102b6565b610085565b60405161005b91906103a6565b60405180910390f35b610077610072366004610284565b610161565b60405190815260200161005b565b60606000835167ffffffffffffffff8111156100b157634e487b7160e01b600052604160045260246000fd5b6040519080825280602002602001820160405280156100da578160200160208202803683370190505b50905060005b84518110156101575761011a85828151811061010c57634e487b7160e01b600052603260045260246000fd5b602002602001015185610161565b82828151811061013a57634e487b7160e01b600052603260045260246000fd5b60209081029190910101528061014f816103ea565b9150506100e0565b5090505b92915050565b600073ffffffffffffffffffffffffffffffffffffffff821661019c575073ffffffffffffffffffffffffffffffffffffffff82163161015b565b813b806101ad57600091505061015b565b6040517f70a0823100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff85811660048301528416906370a082319060240160206040518083038186803b15801561021457600080fd5b505afa925050508015610244575060408051601f3d908101601f191682019092526102419181019061038e565b60015b61025257600091505061015b565b915061015b9050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461027f57600080fd5b919050565b60008060408385031215610296578182fd5b61029f8361025b565b91506102ad6020840161025b565b90509250929050565b600080604083850312156102c8578182fd5b823567ffffffffffffffff808211156102df578384fd5b818501915085601f8301126102f2578384fd5b813560208282111561030657610306610411565b808202604051601f19603f8301168101818110868211171561032a5761032a610411565b604052838152828101945085830182870184018b1015610348578889fd5b8896505b848710156103715761035d8161025b565b86526001969096019594830194830161034c565b509650610381905087820161025b565b9450505050509250929050565b60006020828403121561039f578081fd5b5051919050565b6020808252825182820181905260009190848201906040850190845b818110156103de578351835292840192918401916001016103c2565b50909695505050505050565b600060001982141561040a57634e487b7160e01b81526011600452602481fd5b5060010190565b634e487b7160e01b600052604160045260246000fdfea2646970667358221220ef8f10cedfa2892f2c631fa5cb5e257298eca06758396865936f04017d5ea80564736f6c63430008020033