0x60806040523480156200001157600080fd5b5060405162000def38038062000def83398181016040528101906200003791906200027d565b826000908162000048919062000558565b5081600190816200005a919062000558565b508060028190555080600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505050506200063f565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6200011882620000cd565b810181811067ffffffffffffffff821117156200013a5762000139620000de565b5b80604052505050565b60006200014f620000af565b90506200015d82826200010d565b919050565b600067ffffffffffffffff82111562000180576200017f620000de565b5b6200018b82620000cd565b9050602081019050919050565b60005b83811015620001b85780820151818401526020810190506200019b565b60008484015250505050565b6000620001db620001d58462000162565b62000143565b905082815260208101848484011115620001fa57620001f9620000c8565b5b6200020784828562000198565b509392505050565b600082601f830112620002275762000226620000c3565b5b815162000239848260208601620001c4565b91505092915050565b6000819050919050565b620002578162000242565b81146200026357600080fd5b50565b60008151905062000277816200024c565b92915050565b600080600060608486031215620002995762000298620000b9565b5b600084015167ffffffffffffffff811115620002ba57620002b9620000be565b5b620002c8868287016200020f565b935050602084015167ffffffffffffffff811115620002ec57620002eb620000be565b5b620002fa868287016200020f565b92505060406200030d8682870162000266565b9150509250925092565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200036a57607f821691505b60208210810362000380576200037f62000322565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620003ea7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82620003ab565b620003f68683620003ab565b95508019841693508086168417925050509392505050565b6000819050919050565b600062000439620004336200042d8462000242565b6200040e565b62000242565b9050919050565b6000819050919050565b620004558362000418565b6200046d620004648262000440565b848454620003b8565b825550505050565b600090565b6200048462000475565b620004918184846200044a565b505050565b5b81811015620004b957620004ad6000826200047a565b60018101905062000497565b5050565b601f8211156200050857620004d28162000386565b620004dd846200039b565b81016020851015620004ed578190505b62000505620004fc856200039b565b83018262000496565b50505b505050565b600082821c905092915050565b60006200052d600019846008026200050d565b1980831691505092915050565b60006200054883836200051a565b9150826002028217905092915050565b620005638262000317565b67ffffffffffffffff8111156200057f576200057e620000de565b5b6200058b825462000351565b62000598828285620004bd565b600060209050601f831160018114620005d05760008415620005bb578287015190505b620005c785826200053a565b86555062000637565b601f198416620005e08662000386565b60005b828110156200060a57848901518255600182019150602085019450602081019050620005e3565b868310156200062a578489015162000626601f8916826200051a565b8355505b6001600288020188555050505b505050505050565b6107a0806200064f6000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c806306fdde031461005c57806318160ddd1461007a57806370a082311461009857806395d89b41146100c8578063a9059cbb146100e6575b600080fd5b610064610116565b604051610071919061047f565b60405180910390f35b6100826101a4565b60405161008f91906104ba565b60405180910390f35b6100b260048036038101906100ad9190610538565b6101aa565b6040516100bf91906104ba565b60405180910390f35b6100d06101c2565b6040516100dd919061047f565b60405180910390f35b61010060048036038101906100fb9190610591565b610250565b60405161010d91906105ec565b60405180910390f35b6000805461012390610636565b80601f016020809104026020016040519081016040528092919081815260200182805461014f90610636565b801561019c5780601f106101715761010080835404028352916020019161019c565b820191906000526020600020905b81548152906001019060200180831161017f57829003601f168201915b505050505081565b60025481565b60036020528060005260406000206000915090505481565b600180546101cf90610636565b80601f01602080910402602001604051908101604052809291908181526020018280546101fb90610636565b80156102485780601f1061021d57610100808354040283529160200191610248565b820191906000526020600020905b81548152906001019060200180831161022b57829003601f168201915b505050505081565b600081600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156102d4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016102cb906106b3565b60405180910390fd5b81600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546103239190610702565b9250508190555081600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546103799190610736565b925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516103dd91906104ba565b60405180910390a36001905092915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561042957808201518184015260208101905061040e565b60008484015250505050565b6000601f19601f8301169050919050565b6000610451826103ef565b61045b81856103fa565b935061046b81856020860161040b565b61047481610435565b840191505092915050565b600060208201905081810360008301526104998184610446565b905092915050565b6000819050919050565b6104b4816104a1565b82525050565b60006020820190506104cf60008301846104ab565b92915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610505826104da565b9050919050565b610515816104fa565b811461052057600080fd5b50565b6000813590506105328161050c565b92915050565b60006020828403121561054e5761054d6104d5565b5b600061055c84828501610523565b91505092915050565b61056e816104a1565b811461057957600080fd5b50565b60008135905061058b81610565565b92915050565b600080604083850312156105a8576105a76104d5565b5b60006105b685828601610523565b92505060206105c78582860161057c565b9150509250929050565b60008115159050919050565b6105e6816105d1565b82525050565b600060208201905061060160008301846105dd565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061064e57607f821691505b60208210810361066157610660610607565b5b50919050565b7f496e73756666696369656e742062616c616e6365000000000000000000000000600082015250565b600061069d6014836103fa565b91506106a882610667565b602082019050919050565b600060208201905081810360008301526106cc81610690565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061070d826104a1565b9150610718836104a1565b92508282039050818111156107305761072f6106d3565b5b92915050565b6000610741826104a1565b915061074c836104a1565b9250828201905080821115610764576107636106d3565b5b9291505056fea26469706673582212202c0b05ba7bfabeea46d3f077ae452476a88794b81ec06cb6db42a1ed2c91a0ae64736f6c63430008120033000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000aa13e0000000000000000000000000000000000000000000000000000000000000008574849544542495400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000035742540000000000000000000000000000000000000000000000000000000000