0x60806040526004361061010d5760003560e01c80638a8c523c11610095578063a9059cbb11610064578063a9059cbb146102cb578063a9128ff0146102eb578063ae9b6e101461030b578063cc1776d31461032b578063dd62ed3e1461034c57600080fd5b80638a8c523c1461026e5780638da5cb5b1461028357806395d89b41146101195780639fac68cb146102ab57600080fd5b8063313ce567116100dc578063313ce567146101ca5780634f7041a5146101ec57806370a082311461020c578063715018a614610242578063751039fc1461025957600080fd5b806306fdde0314610119578063095ea7b31461015757806318160ddd1461018757806323b872dd146101aa57600080fd5b3661011457005b600080fd5b34801561012557600080fd5b50604080518082018252600681526521a7a7a5a2a960d11b6020820152905161014e9190611183565b60405180910390f35b34801561016357600080fd5b506101776101723660046111ed565b610392565b604051901515815260200161014e565b34801561019357600080fd5b5061019c6103a9565b60405190815260200161014e565b3480156101b657600080fd5b506101776101c5366004611219565b6103ca565b3480156101d657600080fd5b5060095b60405160ff909116815260200161014e565b3480156101f857600080fd5b506003546101da9062010000900460ff1681565b34801561021857600080fd5b5061019c61022736600461125a565b6001600160a01b031660009081526001602052604090205490565b34801561024e57600080fd5b5061025761041c565b005b34801561026557600080fd5b50610257610499565b34801561027a57600080fd5b506102576104db565b34801561028f57600080fd5b506000546040516001600160a01b03909116815260200161014e565b3480156102b757600080fd5b506102576102c6366004611293565b61072b565b3480156102d757600080fd5b506101776102e63660046111ed565b6107ae565b3480156102f757600080fd5b506102576103063660046112d0565b6107bb565b34801561031757600080fd5b506102576103263660046112fa565b610869565b34801561033757600080fd5b506003546101da906301000000900460ff1681565b34801561035857600080fd5b5061019c61036736600461137e565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b600061039f338484610945565b5060015b92915050565b60006103b76009600a6114b1565b6103c5906305f5e1006114c0565b905090565b60006103d7848484610a6a565b6001600160a01b03841660009081526002602090815260408083203380855292529091205461041291869161040d9086906114df565b610945565b5060019392505050565b6000546001600160a01b0316331461044f5760405162461bcd60e51b8152600401610446906114f6565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146104c35760405162461bcd60e51b8152600401610446906114f6565b6104cb6103a9565b6005556104d66103a9565b600655565b6000546001600160a01b031633146105055760405162461bcd60e51b8152600401610446906114f6565b60035460ff161561054a5760405162461bcd60e51b815260206004820152600f60248201526e105b1c9958591e48195b98589b1959608a1b6044820152606401610446565b6003805460ff19166001179055600a54600780546001600160a01b0319166001600160a01b0390921691821790556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa1580156105b3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105d7919061152b565b6001600160a01b031663e6a4390530600760009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610639573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061065d919061152b565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381865afa1580156106a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106cc919061152b565b600880546001600160a01b0319166001600160a01b039290921691821790556107295760405162461bcd60e51b815260206004820152600f60248201526e139bc81c185a5c8818dc99585d1959608a1b6044820152606401610446565b565b6000546001600160a01b031633146107555760405162461bcd60e51b8152600401610446906114f6565b801561078557336000908152600160205260408120805484929061077a9084906114df565b909155506107aa9050565b33600090815260016020526040812080548492906107a4908490611548565b90915550505b5050565b600061039f338484610a6a565b6000546001600160a01b031633146107e55760405162461bcd60e51b8152600401610446906114f6565b60648260ff16111580156107fd575060648160ff1611155b6108375760405162461bcd60e51b815260206004820152600b60248201526a092dcecc2d8d2c840a8c2f60ab1b6044820152606401610446565b6003805463ffff000019166201000060ff9485160263ff00000019161763010000009290931691909102919091179055565b6000546001600160a01b031633146108935760405162461bcd60e51b8152600401610446906114f6565b816108ce5760405162461bcd60e51b815260206004820152600b60248201526a456d70747920757365727360a81b6044820152606401610446565b60005b8281101561093f5781600c60008686858181106108f0576108f0611560565b9050602002016020810190610905919061125a565b6001600160a01b031681526020810191909152604001600020805460ff19169115159190911790558061093781611576565b9150506108d1565b50505050565b6001600160a01b0383166109a75760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610446565b6001600160a01b038216610a085760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610446565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b60008111610aa85760405162461bcd60e51b815260206004820152600b60248201526a16995c9bc8185b5bdd5b9d60aa1b6044820152606401610446565b6001600160a01b0383166000908152600c602052604090205460ff16158015610aea57506001600160a01b0382166000908152600c602052604090205460ff16155b610b255760405162461bcd60e51b815260206004820152600c60248201526b125b88189b1858dadb1a5cdd60a21b6044820152606401610446565b60035460ff16610bc8576001600160a01b0383166000908152600b602052604090205460ff1680610b6e57506001600160a01b0382166000908152600b602052604090205460ff165b80610b865750600a546001600160a01b038381169116145b610bc85760405162461bcd60e51b8152602060048201526013602482015272151c98591a5b99c81b9bdd08195b98589b1959606a1b6044820152606401610446565b6008546001600160a01b03848116911614801590610bf457506008546001600160a01b03838116911614155b80610c1757506001600160a01b0383166000908152600b602052604090205460ff165b80610c3a57506001600160a01b0382166000908152600b602052604090205460ff165b80610c4c5750600354610100900460ff165b15610c6157610c5c838383610ee0565b505050565b6008546001600160a01b0390811690831603610da557610c7f6103a9565b600554141580610cd457506001600160a01b0383166000908152600d6020526040902054610cae906002611548565b43108015610cd457506001600160a01b0383166000908152600e60205260409020548111155b610d175760405162461bcd60e51b815260206004820152601460248201527313dd995c881b585e081cd95b1b08185b5bdd5b9d60621b6044820152606401610446565b6001600160a01b0383166000908152600e602052604081208054839290610d3f9084906114df565b90915550506004543060009081526001602052604090205410610da5576003805461ff001916610100179055610d92610d8d306001600160a01b031660009081526001602052604090205490565b610f81565b6003805461ff0019169055610da56110dc565b6008546001600160a01b038481169116148015610dd05750600a546001600160a01b03838116911614155b15610eb957600554811115610e1c5760405162461bcd60e51b815260206004820152601260248201527113dd995c881b585e081d1e08185b5bdd5b9d60721b6044820152606401610446565b60065481610e3f846001600160a01b031660009081526001602052604090205490565b610e499190611548565b1115610e905760405162461bcd60e51b815260206004820152601660248201527513dd995c881b585e081dd85b1b195d08185b5bdd5b9d60521b6044820152606401610446565b6001600160a01b0382166000908152600d60209081526040808320439055600e90915290208190555b600854610ed790849083906001600160a01b0386811691161461111e565b9050610c5c8383835b6001600160a01b03831660009081526001602052604081208054839290610f089084906114df565b90915550506001600160a01b03821660009081526001602052604081208054839290610f35908490611548565b92505081905550816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610a5d91815260200190565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110610fb657610fb6611560565b6001600160a01b03928316602091820292909201810191909152600754604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561100f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611033919061152b565b8160018151811061104657611046611560565b6001600160a01b03928316602091820292909201015260075461106c9130911684610945565b60075460095460405163791ac94760e01b81526001600160a01b039283169263791ac947926110a99287926000928892911690429060040161158f565b600060405180830381600087803b1580156110c357600080fd5b505af19250505080156110d4575060015b6107aa575050565b4715610729576009546040516001600160a01b03909116904780156108fc02916000818181858888f1935050505015801561111b573d6000803e3d6000fd5b50565b600080826111375760035462010000900460ff16611145565b6003546301000000900460ff165b60ff1690506000606461115883876114c0565b6111629190611600565b905061116f863083610ee0565b61117981866114df565b9695505050505050565b600060208083528351808285015260005b818110156111b057858101830151858201604001528201611194565b818111156111c2576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b038116811461111b57600080fd5b6000806040838503121561120057600080fd5b823561120b816111d8565b946020939093013593505050565b60008060006060848603121561122e57600080fd5b8335611239816111d8565b92506020840135611249816111d8565b929592945050506040919091013590565b60006020828403121561126c57600080fd5b8135611277816111d8565b9392505050565b8035801515811461128e57600080fd5b919050565b600080604083850312156112a657600080fd5b823591506112b66020840161127e565b90509250929050565b803560ff8116811461128e57600080fd5b600080604083850312156112e357600080fd5b6112ec836112bf565b91506112b6602084016112bf565b60008060006040848603121561130f57600080fd5b833567ffffffffffffffff8082111561132757600080fd5b818601915086601f83011261133b57600080fd5b81358181111561134a57600080fd5b8760208260051b850101111561135f57600080fd5b602092830195509350611375918601905061127e565b90509250925092565b6000806040838503121561139157600080fd5b823561139c816111d8565b915060208301356113ac816111d8565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156114085781600019048211156113ee576113ee6113b7565b808516156113fb57918102915b93841c93908002906113d2565b509250929050565b60008261141f575060016103a3565b8161142c575060006103a3565b8160018114611442576002811461144c57611468565b60019150506103a3565b60ff84111561145d5761145d6113b7565b50506001821b6103a3565b5060208310610133831016604e8410600b841016171561148b575081810a6103a3565b61149583836113cd565b80600019048211156114a9576114a96113b7565b029392505050565b600061127760ff841683611410565b60008160001904831182151516156114da576114da6113b7565b500290565b6000828210156114f1576114f16113b7565b500390565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60006020828403121561153d57600080fd5b8151611277816111d8565b6000821982111561155b5761155b6113b7565b500190565b634e487b7160e01b600052603260045260246000fd5b600060018201611588576115886113b7565b5060010190565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156115df5784516001600160a01b0316835293830193918301916001016115ba565b50506001600160a01b03969096166060850152505050608001529392505050565b60008261161d57634e487b7160e01b600052601260045260246000fd5b50049056fea26469706673582212203d52df4b7dc2b66603a2baa28c72fb435ba8799e66cda018a920bda278012c9f64736f6c634300080f0033
0x60806040526003805463ffff00001916630a0a0000179055612710620000286009600a620003a7565b62000038906305f5e100620003bf565b62000045906019620003bf565b620000519190620003e1565b6004556064620000646009600a620003a7565b62000074906305f5e100620003bf565b62000081906002620003bf565b6200008d9190620003e1565b6005556064620000a06009600a620003a7565b620000b0906305f5e100620003bf565b620000bd906002620003bf565b620000c99190620003e1565b600655600a80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d179055348015620000ff57600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506200014f6009600a620003a7565b6200015f906305f5e100620003bf565b60016000620001766000546001600160a01b031690565b6001600160a01b03168152602081019190915260400160002055620001a36000546001600160a01b031690565b600980546001600160a01b0319166001600160a01b0392909216919091179055306000908152600b602081905260408220805460ff1916600190811790915591620001f66000546001600160a01b031690565b6001600160a01b031681526020810191909152604001600020805460ff1916911515919091179055620002316000546001600160a01b031690565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6200026b6009600a620003a7565b6200027b906305f5e100620003bf565b60405190815260200160405180910390a362000404565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620002e9578160001904821115620002cd57620002cd62000292565b80851615620002db57918102915b93841c9390800290620002ad565b509250929050565b6000826200030257506001620003a1565b816200031157506000620003a1565b81600181146200032a5760028114620003355762000355565b6001915050620003a1565b60ff84111562000349576200034962000292565b50506001821b620003a1565b5060208310610133831016604e8410600b84101617156200037a575081810a620003a1565b620003868383620002a8565b80600019048211156200039d576200039d62000292565b0290505b92915050565b6000620003b860ff841683620002f1565b9392505050565b6000816000190483118215151615620003dc57620003dc62000292565b500290565b600082620003ff57634e487b7160e01b600052601260045260246000fd5b500490565b61165880620004146000396000f3fe60806040526004361061010d5760003560e01c80638a8c523c11610095578063a9059cbb11610064578063a9059cbb146102cb578063a9128ff0146102eb578063ae9b6e101461030b578063cc1776d31461032b578063dd62ed3e1461034c57600080fd5b80638a8c523c1461026e5780638da5cb5b1461028357806395d89b41146101195780639fac68cb146102ab57600080fd5b8063313ce567116100dc578063313ce567146101ca5780634f7041a5146101ec57806370a082311461020c578063715018a614610242578063751039fc1461025957600080fd5b806306fdde0314610119578063095ea7b31461015757806318160ddd1461018757806323b872dd146101aa57600080fd5b3661011457005b600080fd5b34801561012557600080fd5b50604080518082018252600681526521a7a7a5a2a960d11b6020820152905161014e9190611183565b60405180910390f35b34801561016357600080fd5b506101776101723660046111ed565b610392565b604051901515815260200161014e565b34801561019357600080fd5b5061019c6103a9565b60405190815260200161014e565b3480156101b657600080fd5b506101776101c5366004611219565b6103ca565b3480156101d657600080fd5b5060095b60405160ff909116815260200161014e565b3480156101f857600080fd5b506003546101da9062010000900460ff1681565b34801561021857600080fd5b5061019c61022736600461125a565b6001600160a01b031660009081526001602052604090205490565b34801561024e57600080fd5b5061025761041c565b005b34801561026557600080fd5b50610257610499565b34801561027a57600080fd5b506102576104db565b34801561028f57600080fd5b506000546040516001600160a01b03909116815260200161014e565b3480156102b757600080fd5b506102576102c6366004611293565b61072b565b3480156102d757600080fd5b506101776102e63660046111ed565b6107ae565b3480156102f757600080fd5b506102576103063660046112d0565b6107bb565b34801561031757600080fd5b506102576103263660046112fa565b610869565b34801561033757600080fd5b506003546101da906301000000900460ff1681565b34801561035857600080fd5b5061019c61036736600461137e565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b600061039f338484610945565b5060015b92915050565b60006103b76009600a6114b1565b6103c5906305f5e1006114c0565b905090565b60006103d7848484610a6a565b6001600160a01b03841660009081526002602090815260408083203380855292529091205461041291869161040d9086906114df565b610945565b5060019392505050565b6000546001600160a01b0316331461044f5760405162461bcd60e51b8152600401610446906114f6565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146104c35760405162461bcd60e51b8152600401610446906114f6565b6104cb6103a9565b6005556104d66103a9565b600655565b6000546001600160a01b031633146105055760405162461bcd60e51b8152600401610446906114f6565b60035460ff161561054a5760405162461bcd60e51b815260206004820152600f60248201526e105b1c9958591e48195b98589b1959608a1b6044820152606401610446565b6003805460ff19166001179055600a54600780546001600160a01b0319166001600160a01b0390921691821790556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa1580156105b3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105d7919061152b565b6001600160a01b031663e6a4390530600760009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610639573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061065d919061152b565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381865afa1580156106a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106cc919061152b565b600880546001600160a01b0319166001600160a01b039290921691821790556107295760405162461bcd60e51b815260206004820152600f60248201526e139bc81c185a5c8818dc99585d1959608a1b6044820152606401610446565b565b6000546001600160a01b031633146107555760405162461bcd60e51b8152600401610446906114f6565b801561078557336000908152600160205260408120805484929061077a9084906114df565b909155506107aa9050565b33600090815260016020526040812080548492906107a4908490611548565b90915550505b5050565b600061039f338484610a6a565b6000546001600160a01b031633146107e55760405162461bcd60e51b8152600401610446906114f6565b60648260ff16111580156107fd575060648160ff1611155b6108375760405162461bcd60e51b815260206004820152600b60248201526a092dcecc2d8d2c840a8c2f60ab1b6044820152606401610446565b6003805463ffff000019166201000060ff9485160263ff00000019161763010000009290931691909102919091179055565b6000546001600160a01b031633146108935760405162461bcd60e51b8152600401610446906114f6565b816108ce5760405162461bcd60e51b815260206004820152600b60248201526a456d70747920757365727360a81b6044820152606401610446565b60005b8281101561093f5781600c60008686858181106108f0576108f0611560565b9050602002016020810190610905919061125a565b6001600160a01b031681526020810191909152604001600020805460ff19169115159190911790558061093781611576565b9150506108d1565b50505050565b6001600160a01b0383166109a75760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610446565b6001600160a01b038216610a085760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610446565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b60008111610aa85760405162461bcd60e51b815260206004820152600b60248201526a16995c9bc8185b5bdd5b9d60aa1b6044820152606401610446565b6001600160a01b0383166000908152600c602052604090205460ff16158015610aea57506001600160a01b0382166000908152600c602052604090205460ff16155b610b255760405162461bcd60e51b815260206004820152600c60248201526b125b88189b1858dadb1a5cdd60a21b6044820152606401610446565b60035460ff16610bc8576001600160a01b0383166000908152600b602052604090205460ff1680610b6e57506001600160a01b0382166000908152600b602052604090205460ff165b80610b865750600a546001600160a01b038381169116145b610bc85760405162461bcd60e51b8152602060048201526013602482015272151c98591a5b99c81b9bdd08195b98589b1959606a1b6044820152606401610446565b6008546001600160a01b03848116911614801590610bf457506008546001600160a01b03838116911614155b80610c1757506001600160a01b0383166000908152600b602052604090205460ff165b80610c3a57506001600160a01b0382166000908152600b602052604090205460ff165b80610c4c5750600354610100900460ff165b15610c6157610c5c838383610ee0565b505050565b6008546001600160a01b0390811690831603610da557610c7f6103a9565b600554141580610cd457506001600160a01b0383166000908152600d6020526040902054610cae906002611548565b43108015610cd457506001600160a01b0383166000908152600e60205260409020548111155b610d175760405162461bcd60e51b815260206004820152601460248201527313dd995c881b585e081cd95b1b08185b5bdd5b9d60621b6044820152606401610446565b6001600160a01b0383166000908152600e602052604081208054839290610d3f9084906114df565b90915550506004543060009081526001602052604090205410610da5576003805461ff001916610100179055610d92610d8d306001600160a01b031660009081526001602052604090205490565b610f81565b6003805461ff0019169055610da56110dc565b6008546001600160a01b038481169116148015610dd05750600a546001600160a01b03838116911614155b15610eb957600554811115610e1c5760405162461bcd60e51b815260206004820152601260248201527113dd995c881b585e081d1e08185b5bdd5b9d60721b6044820152606401610446565b60065481610e3f846001600160a01b031660009081526001602052604090205490565b610e499190611548565b1115610e905760405162461bcd60e51b815260206004820152601660248201527513dd995c881b585e081dd85b1b195d08185b5bdd5b9d60521b6044820152606401610446565b6001600160a01b0382166000908152600d60209081526040808320439055600e90915290208190555b600854610ed790849083906001600160a01b0386811691161461111e565b9050610c5c8383835b6001600160a01b03831660009081526001602052604081208054839290610f089084906114df565b90915550506001600160a01b03821660009081526001602052604081208054839290610f35908490611548565b92505081905550816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610a5d91815260200190565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110610fb657610fb6611560565b6001600160a01b03928316602091820292909201810191909152600754604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561100f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611033919061152b565b8160018151811061104657611046611560565b6001600160a01b03928316602091820292909201015260075461106c9130911684610945565b60075460095460405163791ac94760e01b81526001600160a01b039283169263791ac947926110a99287926000928892911690429060040161158f565b600060405180830381600087803b1580156110c357600080fd5b505af19250505080156110d4575060015b6107aa575050565b4715610729576009546040516001600160a01b03909116904780156108fc02916000818181858888f1935050505015801561111b573d6000803e3d6000fd5b50565b600080826111375760035462010000900460ff16611145565b6003546301000000900460ff165b60ff1690506000606461115883876114c0565b6111629190611600565b905061116f863083610ee0565b61117981866114df565b9695505050505050565b600060208083528351808285015260005b818110156111b057858101830151858201604001528201611194565b818111156111c2576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b038116811461111b57600080fd5b6000806040838503121561120057600080fd5b823561120b816111d8565b946020939093013593505050565b60008060006060848603121561122e57600080fd5b8335611239816111d8565b92506020840135611249816111d8565b929592945050506040919091013590565b60006020828403121561126c57600080fd5b8135611277816111d8565b9392505050565b8035801515811461128e57600080fd5b919050565b600080604083850312156112a657600080fd5b823591506112b66020840161127e565b90509250929050565b803560ff8116811461128e57600080fd5b600080604083850312156112e357600080fd5b6112ec836112bf565b91506112b6602084016112bf565b60008060006040848603121561130f57600080fd5b833567ffffffffffffffff8082111561132757600080fd5b818601915086601f83011261133b57600080fd5b81358181111561134a57600080fd5b8760208260051b850101111561135f57600080fd5b602092830195509350611375918601905061127e565b90509250925092565b6000806040838503121561139157600080fd5b823561139c816111d8565b915060208301356113ac816111d8565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156114085781600019048211156113ee576113ee6113b7565b808516156113fb57918102915b93841c93908002906113d2565b509250929050565b60008261141f575060016103a3565b8161142c575060006103a3565b8160018114611442576002811461144c57611468565b60019150506103a3565b60ff84111561145d5761145d6113b7565b50506001821b6103a3565b5060208310610133831016604e8410600b841016171561148b575081810a6103a3565b61149583836113cd565b80600019048211156114a9576114a96113b7565b029392505050565b600061127760ff841683611410565b60008160001904831182151516156114da576114da6113b7565b500290565b6000828210156114f1576114f16113b7565b500390565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60006020828403121561153d57600080fd5b8151611277816111d8565b6000821982111561155b5761155b6113b7565b500190565b634e487b7160e01b600052603260045260246000fd5b600060018201611588576115886113b7565b5060010190565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156115df5784516001600160a01b0316835293830193918301916001016115ba565b50506001600160a01b03969096166060850152505050608001529392505050565b60008261161d57634e487b7160e01b600052601260045260246000fd5b50049056fea26469706673582212203d52df4b7dc2b66603a2baa28c72fb435ba8799e66cda018a920bda278012c9f64736f6c634300080f0033