0x608060405234801561001057600080fd5b5061072a806100206000396000f3fe60806040526004361061002d5760003560e01c8063150b7a02146100c657806317b944b61461010357610034565b3661003457005b6000733002dfc525eceacd1214ea9ed01224ba6ca41d3a90506100c48173ffffffffffffffffffffffffffffffffffffffff16632c4080596040518163ffffffff1660e01b8152600401602060405180830381865afa15801561009b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100bf9190610370565b61012c565b005b3480156100d257600080fd5b506100ed60048036038101906100e8919061044d565b610152565b6040516100fa9190610510565b60405180910390f35b34801561010f57600080fd5b5061012a6004803603810190610125919061052b565b610167565b005b3660008037600080366000845af43d6000803e806000811461014d573d6000f35b3d6000fd5b600063150b7a0260e01b905095945050505050565b73b33422238a14ccb2beae739cbe954745a71ede4973ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146101e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016101e090610609565b60405180910390fd5b6000733002dfc525eceacd1214ea9ed01224ba6ca41d3a905060008173ffffffffffffffffffffffffffffffffffffffff1663c47cf5de87876040518363ffffffff1660e01b815260040161023f929190610687565b602060405180830381865afa15801561025c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102809190610370565b90506000808273ffffffffffffffffffffffffffffffffffffffff1686866040516102ac9291906106db565b600060405180830381855af49150503d80600081146102e7576040519150601f19603f3d011682016040523d82523d6000602084013e6102ec565b606091505b5091509150816102fe57805160208201fd5b5050505050505050565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061033d82610312565b9050919050565b61034d81610332565b811461035857600080fd5b50565b60008151905061036a81610344565b92915050565b60006020828403121561038657610385610308565b5b60006103948482850161035b565b91505092915050565b6000813590506103ac81610344565b92915050565b6000819050919050565b6103c5816103b2565b81146103d057600080fd5b50565b6000813590506103e2816103bc565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f84011261040d5761040c6103e8565b5b8235905067ffffffffffffffff81111561042a576104296103ed565b5b602083019150836001820283011115610446576104456103f2565b5b9250929050565b60008060008060006080868803121561046957610468610308565b5b60006104778882890161039d565b95505060206104888882890161039d565b9450506040610499888289016103d3565b935050606086013567ffffffffffffffff8111156104ba576104b961030d565b5b6104c6888289016103f7565b92509250509295509295909350565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61050a816104d5565b82525050565b60006020820190506105256000830184610501565b92915050565b6000806000806040858703121561054557610544610308565b5b600085013567ffffffffffffffff8111156105635761056261030d565b5b61056f878288016103f7565b9450945050602085013567ffffffffffffffff8111156105925761059161030d565b5b61059e878288016103f7565b925092505092959194509250565b600082825260208201905092915050565b7f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000600082015250565b60006105f36017836105ac565b91506105fe826105bd565b602082019050919050565b60006020820190508181036000830152610622816105e6565b9050919050565b600082825260208201905092915050565b82818337600083830152505050565b6000601f19601f8301169050919050565b60006106668385610629565b935061067383858461063a565b61067c83610649565b840190509392505050565b600060208201905081810360008301526106a281848661065a565b90509392505050565b600081905092915050565b60006106c283856106ab565b93506106cf83858461063a565b82840190509392505050565b60006106e88284866106b6565b9150819050939250505056fea26469706673582212202be962966a305398ca0869c81b583477c9cd5181cf70162c349fec3d103d2e3664736f6c634300080d0033