608060405234801561001057600080fd5b506040516106c43803806106c483398101604081905261002f916103c6565b73aa6ab798c96f347f079dd2148d694c423aea8c816040518060400160405280601981526020017f45646974696f6e73206f662054657272656c6c204a6f6e6573000000000000008152506040518060400160405280600481526020016322a7aa2560e11b81525087873388888888631fbd240289898989898989896040516024016100c298979695949392919061051a565b6040516020818303038152906040529060e01b6020820180516001600160e01b0383818316178352505050506101008282600061011560201b60201c565b505050505050505050505050505050506105fa565b61011e83610141565b60008251118061012b5750805b1561013c5761013a8383610181565b505b505050565b61014a816101ad565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606101a6838360405180606001604052806027815260200161069d60279139610260565b9392505050565b6001600160a01b0381163b61021f5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161027d91906105cb565b600060405180830381855af49150503d80600081146102b8576040519150601f19603f3d011682016040523d82523d6000602084013e6102bd565b606091505b5090925090506102cf868383876102d9565b9695505050505050565b60608315610348578251600003610341576001600160a01b0385163b6103415760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610216565b5081610352565b610352838361035a565b949350505050565b81511561036a5781518083602001fd5b8060405162461bcd60e51b815260040161021691906105e7565b80516001600160a01b038116811461039b57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b8051801515811461039b57600080fd5b600080600080600060a086880312156103de57600080fd5b6103e786610384565b60208781015160408901519297509550906001600160401b038082111561040d57600080fd5b818901915089601f83011261042157600080fd5b815181811115610433576104336103a0565b8060051b604051601f19603f83011681018181108582111715610458576104586103a0565b60405291825284820192508381018501918c83111561047657600080fd5b938501935b8285101561049b5761048c85610384565b8452938501939285019261047b565b8098505050505050506104b0606087016103b6565b91506104be60808701610384565b90509295509295909350565b60005b838110156104e55781810151838201526020016104cd565b50506000910152565b600081518084526105068160208601602086016104ca565b601f01601f19169290920160200192915050565b600061010080835261052e8184018c6104ee565b9050602083820381850152610543828c6104ee565b6001600160a01b038b81166040870152606086018b9052898116608087015285820360a08701528851808352838a019450909183019060005b8181101561059a57855184168352948401949184019160010161057c565b505087151560c087015293506105af92505050565b6001600160a01b03831660e08301529998505050505050505050565b600082516105dd8184602087016104ca565b9190910192915050565b6020815260006101a660208301846104ee565b6095806106086000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6065565b565b600060607f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5473ffffffffffffffffffffffffffffffffffffffff1690565b905090565b3660008037600080366000845af43d6000803e8080156083573d6000f35b3d6000fdfea164736f6c6343000813000a416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c65640000000000000000000000006ce9f49239e8adaf5bda1154262a3a054fad9db300000000000000000000000000000000000000000000000000000000000003e800000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000056fe4de01b15bb2afa969f914692867acac27ba50000000000000000000000000000000000000000000000000000000000000000