60806040523480156200001157600080fd5b506200003f60017f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbd6200040a565b60008051602062000c8f833981519152146200005f576200005f62000430565b73b56a44eb3f22569f4ddbafdfa00ca1a2411a4c0d6200009c60008051602062000c8f83398151915260001b620002b960201b620002c81760201c565b80546001600160a01b0319166001600160a01b039290921691909117905560405173b56a44eb3f22569f4ddbafdfa00ca1a2411a4c0d907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a260408051808201825260008082526020808301829052835160808082018652838252818301849052818601849052731baad9bfa20eb279d2e3f3e859e3ae9dde666c526060808401919091528651610140810188526101f481526102ee8186015280880186905280820186905280830195909552600a60a080870191909152600160c08088018290526103e760e089015261010088018290526101208801919091528851908101895260119381019384527013919508115e1c195c9d0814dd5b5b5a5d607a1b9181019190915291825286518088018852600681526545585053554d60d01b8186015282850152865180880188526007815266697066733a2f2f60c81b81860152828801528651808201909752602e808852620002b29773b56a44eb3f22569f4ddbafdfa00ca1a2411a4c0d979694959284019290919062000caf90830139905260408051606081018252600081830181815282528251602081810185529181529082015290516200027995949392919060240162000559565b60408051601f19818403018152919052602080820180516001600160e01b031662f5644560e01b179052620002cb620002bc821b17901c565b5062000637565b90565b6060620002e4838360405180606001604052806027815260200162000cdd60279139620002eb565b9392505050565b6060833b620003505760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084015b60405180910390fd5b600080856001600160a01b0316856040516200036d919062000604565b600060405180830381855af49150503d8060008114620003aa576040519150601f19603f3d011682016040523d82523d6000602084013e620003af565b606091505b509092509050620003c2828286620003cc565b9695505050505050565b60608315620003dd575081620002e4565b825115620003ee5782518084602001fd5b8160405162461bcd60e51b815260040162000347919062000622565b6000828210156200042b57634e487b7160e01b600052601160045260246000fd5b500390565b634e487b7160e01b600052600160045260246000fd5b8060005b600a8110156200046f57815161ffff168452602093840193909101906001016200044a565b50505050565b60005b838110156200049257818101518382015260200162000478565b838111156200046f5750506000910152565b60008151808452620004be81602086016020860162000475565b601f01601f19169290920160200192915050565b600082608081018360005b600481101562000510578383038752620004f9838351620004a4565b6020978801979093509190910190600101620004dd565b509095945050505050565b600082604081018360005b60028110156200051057838303875262000542838351620004a4565b602097880197909350919091019060010162000526565b60006102408288835b600281101562000585578151151583526020928301929091019060010162000562565b505050604083018760005b6004811015620005ba5781516001600160a01b031683526020928301929091019060010162000590565b505050620005cc60c084018762000446565b80610200840152620005e181840186620004d2565b9050828103610220840152620005f881856200051b565b98975050505050505050565b600082516200061881846020870162000475565b9190910192915050565b602081526000620002e46020830184620004a4565b61064880620006476000396000f3fe60806040526004361061002d5760003560e01c80632909643d146100445780635c60da1b146100645761003c565b3661003c5761003a610095565b005b61003a610095565b34801561005057600080fd5b5061003a61005f366004610469565b6100d0565b34801561007057600080fd5b50610079610290565b6040516001600160a01b03909116815260200160405180910390f35b6100ce6100c97f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b6102f7565b565b73e8c8616e68f9d491c70c95216518fd1c3b0d64d033146100f057600080fd5b60408051306020808301919091526001600160a01b038916828401528251808303840181526060830190935282519201919091207f19457468657265756d205369676e6564204d6573736167653a0a3332000000006080830152609c82018190529060009060bc0160408051601f1981840301815282825280516020918201206000845290830180835281905260ff8816918301919091526060820186905260808201859052915060019060a0016020604051602081039080840390855afa1580156101c0573d6000803e3d6000fd5b505050602060405103516001600160a01b0316731baad9bfa20eb279d2e3f3e859e3ae9dde666c526001600160a01b0316146101fb57600080fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b038a1617905586511515806102415750855b156102525761025088886102cb565b505b6040516001600160a01b038916907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a25050505050505050565b60006102c37f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b90565b60606102f083836040518060600160405280602781526020016105ec6027913961031b565b9392505050565b3660008037600080366000845af43d6000803e808015610316573d6000f35b3d6000fd5b6060833b61037f5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084015b60405180910390fd5b600080856001600160a01b03168560405161039a919061059c565b600060405180830381855af49150503d80600081146103d5576040519150601f19603f3d011682016040523d82523d6000602084013e6103da565b606091505b50915091506103ea8282866103f4565b9695505050505050565b606083156104035750816102f0565b8251156104135782518084602001fd5b8160405162461bcd60e51b815260040161037691906105b8565b634e487b7160e01b600052604160045260246000fd5b8035801515811461045357600080fd5b919050565b803560ff8116811461045357600080fd5b60008060008060008060c0878903121561048257600080fd5b86356001600160a01b038116811461049957600080fd5b9550602087013567ffffffffffffffff808211156104b657600080fd5b818901915089601f8301126104ca57600080fd5b8135818111156104dc576104dc61042d565b604051601f8201601f19908116603f011681019083821181831017156105045761050461042d565b816040528281528c602084870101111561051d57600080fd5b82602086016020830137600060208483010152809950505050505061054460408801610443565b935061055260608801610458565b92506080870135915060a087013590509295509295509295565b60005b8381101561058757818101518382015260200161056f565b83811115610596576000848401525b50505050565b600082516105ae81846020870161056c565b9190910192915050565b60208152600082518060208401526105d781604085016020870161056c565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122029f66e8049913192c9e1eeed6811ca6036e21ba6c7a9f4b295c7819cea0bf16564736f6c634300080c0033360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc516d524d73533767673944426d4763636f796763707973754148584e7835317879586461424a5941376d57646b65416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564