0x60806040526004361061012e5760003560e01c80638da5cb5b116100ab578063c816841b1161006f578063c816841b14610361578063dd62ed3e1461037f578063ddca3f43146103c5578063e086e5ec146103da578063e8078d94146103ef578063f2fde38b146103f757600080fd5b80638da5cb5b146102ce57806395d89b41146102ec578063a457c2d714610301578063a9059cbb14610321578063aacebbe31461034157600080fd5b806339509351116100f257806339509351146101f65780635342acb41461021657806370a082311461024f578063715018a61461028557806375f0a8741461029c57600080fd5b806306fdde031461013a578063095ea7b31461016557806318160ddd1461019557806323b872dd146101b4578063313ce567146101d457600080fd5b3661013557005b600080fd5b34801561014657600080fd5b5061014f610417565b60405161015c9190611448565b60405180910390f35b34801561017157600080fd5b506101856101803660046114ae565b6104a9565b604051901515815260200161015c565b3480156101a157600080fd5b506004545b60405190815260200161015c565b3480156101c057600080fd5b506101856101cf3660046114da565b6104c0565b3480156101e057600080fd5b5060035460405160ff909116815260200161015c565b34801561020257600080fd5b506101856102113660046114ae565b61056e565b34801561022257600080fd5b5061018561023136600461151b565b6001600160a01b031660009081526007602052604090205460ff1690565b34801561025b57600080fd5b506101a661026a36600461151b565b6001600160a01b031660009081526005602052604090205490565b34801561029157600080fd5b5061029a6105aa565b005b3480156102a857600080fd5b506008546001600160a01b03165b6040516001600160a01b03909116815260200161015c565b3480156102da57600080fd5b506000546001600160a01b03166102b6565b3480156102f857600080fd5b5061014f610627565b34801561030d57600080fd5b5061018561031c3660046114ae565b610636565b34801561032d57600080fd5b5061018561033c3660046114ae565b6106c5565b34801561034d57600080fd5b5061018561035c36600461151b565b6106d2565b34801561036d57600080fd5b50600a546001600160a01b03166102b6565b34801561038b57600080fd5b506101a661039a366004611538565b6001600160a01b03918216600090815260066020908152604080832093909416825291909152205490565b3480156103d157600080fd5b50600b546101a6565b3480156103e657600080fd5b5061018561075e565b6101856107dd565b34801561040357600080fd5b5061029a61041236600461151b565b610b41565b60606001805461042690611571565b80601f016020809104026020016040519081016040528092919081815260200182805461045290611571565b801561049f5780601f106104745761010080835404028352916020019161049f565b820191906000526020600020905b81548152906001019060200180831161048257829003601f168201915b5050505050905090565b60006104b6338484610c2b565b5060015b92915050565b6001600160a01b038316600090815260066020908152604080832033845290915281205460001914610559576105348260405180606001604052806028815260200161174e602891396001600160a01b03871660009081526006602090815260408083203384529091529020549190610d4f565b6001600160a01b03851660009081526006602090815260408083203384529091529020555b610564848484610d7b565b5060019392505050565b3360008181526006602090815260408083206001600160a01b038716845290915281205490916104b69185906105a59086906115c1565b610c2b565b6000546001600160a01b031633146105dd5760405162461bcd60e51b81526004016105d4906115d4565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b60606002805461042690611571565b3360009081526006602090815260408083206001600160a01b0386168452909152812054828110156106b85760405162461bcd60e51b815260206004820152602560248201527f546f6b656e3a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016105d4565b6105643385858403610c2b565b60006104b6338484610d7b565b6008546000906001600160a01b0316336001600160a01b0316146107385760405162461bcd60e51b815260206004820152601c60248201527f546f6b656e3a206f6e6c79206d61726b6574696e672077616c6c65740000000060448201526064016105d4565b50600880546001600160a01b0319166001600160a01b0392909216919091179055600190565b6008546000906001600160a01b0316336001600160a01b0316146107c45760405162461bcd60e51b815260206004820152601c60248201527f546f6b656e3a206f6e6c79206d61726b6574696e672077616c6c65740000000060448201526064016105d4565b6008546000906104ba906001600160a01b0316476111e0565b600080546001600160a01b031633146108085760405162461bcd60e51b81526004016105d4906115d4565b600a546001600160a01b0316156108555760405162461bcd60e51b8152602060048201526011602482015270151bdad95b8e8813140818dc99585d1959607a1b60448201526064016105d4565b600034116108955760405162461bcd60e51b815260206004820152600d60248201526c0a8ded6cadc74409cde408aa89609b1b60448201526064016105d4565b306000908152600660209081526040808320600980546001600160a01b0390811686529184529382902060001990559254815163c45a015560e01b8152915193169263c45a0155926004808401939192918290030181865afa1580156108ff573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109239190611609565b6001600160a01b031663c9c6539630600960009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610985573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109a99190611609565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156109f6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a1a9190611609565b600a80546001600160a01b0319166001600160a01b039283161790556009543060008181526005602052604080822054815163f305d71960e01b8152600481019490945260248401526044830182905260648301919091523360848301524260a483015251919092169163f305d71991349160c480820192606092909190829003018185885af1158015610ab2573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610ad79190611626565b5050600a546040805160016209351760e01b0319815290516001600160a01b03909216925063fff6cae991600480830192600092919082900301818387803b158015610b2257600080fd5b505af1158015610b36573d6000803e3d6000fd5b505050506001905090565b6000546001600160a01b03163314610b6b5760405162461bcd60e51b81526004016105d4906115d4565b6001600160a01b038116610bd05760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105d4565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610c8d5760405162461bcd60e51b8152602060048201526024808201527f546f6b656e3a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016105d4565b6001600160a01b038216610cee5760405162461bcd60e51b815260206004820152602260248201527f546f6b656e3a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016105d4565b6001600160a01b0383811660008181526006602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60008184841115610d735760405162461bcd60e51b81526004016105d49190611448565b505050900390565b6001600160a01b038316610ddf5760405162461bcd60e51b815260206004820152602560248201527f546f6b656e3a205472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016105d4565b6001600160a01b038216610e415760405162461bcd60e51b815260206004820152602360248201527f546f6b656e3a205472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016105d4565b60008111610eaa5760405162461bcd60e51b815260206004820152603060248201527f546f6b656e3a205472616e7366657220616d6f756e74206d757374206265206760448201526f726561746572207468616e207a65726f60801b60648201526084016105d4565b6001600160a01b03831660009081526007602052604090205460019060ff1680610eec57506001600160a01b03831660009081526007602052604090205460ff165b15610ef5575060005b600c5460ff16158015610f055750805b1561111257600a546001600160a01b0390811690841603610fa957600a546001600160a01b0316600090815260056020526040812054610f469060c86112c7565b306000908152600560205260409020541190508015610fa757600c805460ff19166001179055600a546001600160a01b0316600090815260056020526040902054610f9b90610f969060c86112c7565b6112da565b50600c805460ff191690555b505b600b54156110de576000610fd36064610fcd600b548661142490919063ffffffff16565b906112c7565b9050610fdf8382611430565b925061101e81604051806060016040528060268152602001611728602691396001600160a01b0388166000908152600560205260409020549190610d4f565b6001600160a01b03861660009081526005602052604080822092909255308152205461104a908261143c565b30600081815260056020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061109b9085815260200190565b60405180910390a36004546110b19060056112c7565b600a546001600160a01b031660009081526005602052604090205410156110d8576000600b555b50611112565b6004546110ec9060056112c7565b600a546001600160a01b031660009081526005602052604090205410611112576005600b555b61114f82604051806060016040528060268152602001611728602691396001600160a01b0387166000908152600560205260409020549190610d4f565b6001600160a01b03808616600090815260056020526040808220939093559085168152205461117e908361143c565b6001600160a01b0380851660008181526005602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111d29086815260200190565b60405180910390a350505050565b600082478311156112065760405163cd78605960e01b81523060048201526024016105d4565b600080841161126d57604051600160fd1b81526001600160a01b03831690600101600060405180830381855af49150503d8060008114611262576040519150601f19603f3d011682016040523d82523d6000602084013e611267565b606091505b506112bd565b6040516001600160a01b038316908590600081818185875af1925050503d80600081146112b6576040519150601f19603f3d011682016040523d82523d6000602084013e6112bb565b606091505b505b5095945050505050565b60006112d38284611654565b9392505050565b60408051600280825260608201835260009283929190602083019080368337019050509050308160008151811061131357611313611676565b6001600160a01b03928316602091820292909201810191909152600954604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561136c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113909190611609565b816001815181106113a3576113a3611676565b6001600160a01b03928316602091820292909201015260095460405163791ac94760e01b815291169063791ac947906113e990869060009086903090429060040161168c565b600060405180830381600087803b15801561140357600080fd5b505af1158015611417573d6000803e3d6000fd5b5060019695505050505050565b60006112d382846116fd565b60006112d38284611714565b60006112d382846115c1565b600060208083528351808285015260005b8181101561147557858101830151858201604001528201611459565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146114ab57600080fd5b50565b600080604083850312156114c157600080fd5b82356114cc81611496565b946020939093013593505050565b6000806000606084860312156114ef57600080fd5b83356114fa81611496565b9250602084013561150a81611496565b929592945050506040919091013590565b60006020828403121561152d57600080fd5b81356112d381611496565b6000806040838503121561154b57600080fd5b823561155681611496565b9150602083013561156681611496565b809150509250929050565b600181811c9082168061158557607f821691505b6020821081036115a557634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156104ba576104ba6115ab565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60006020828403121561161b57600080fd5b81516112d381611496565b60008060006060848603121561163b57600080fd5b8351925060208401519150604084015190509250925092565b60008261167157634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156116dc5784516001600160a01b0316835293830193918301916001016116b7565b50506001600160a01b03969096166060850152505050608001529392505050565b80820281158282048414176104ba576104ba6115ab565b818103818111156104ba576104ba6115ab56fe546f6b656e3a205472616e7366657220616d6f756e7420657863656564732062616c616e6365546f6b656e3a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122070067058ebb7cde8d87b0ba1478b2984b16ef60c583aadf4dbd2d853e2d971d264736f6c63430008140033
0x60c0604052600c60809081526b47726179446f676520496e7560a01b60a0526001906200002d908262000251565b506040805180820190915260048152634742544760e01b602082015260029062000058908262000251565b506003805460ff191660129081179091556200007690600a62000432565b620000879064174876e8006200044a565b600455600980546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d1790556005600b55600c805460ff19169055348015620000cc57600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060008054600880546001600160a01b0319166001600160a01b0392831617905530808352600760209081526040808520805460ff1990811660019081179092558654909516865281862080549095161790935560045482855260058252838520819055835190815292519193927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929081900390910190a362000464565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620001d757607f821691505b602082108103620001f857634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200024c57600081815260208120601f850160051c81016020861015620002275750805b601f850160051c820191505b81811015620002485782815560010162000233565b5050505b505050565b81516001600160401b038111156200026d576200026d620001ac565b62000285816200027e8454620001c2565b84620001fe565b602080601f831160018114620002bd5760008415620002a45750858301515b600019600386901b1c1916600185901b17855562000248565b600085815260208120601f198616915b82811015620002ee57888601518255948401946001909101908401620002cd565b50858210156200030d5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620003745781600019048211156200035857620003586200031d565b808516156200036657918102915b93841c939080029062000338565b509250929050565b6000826200038d575060016200042c565b816200039c575060006200042c565b8160018114620003b55760028114620003c057620003e0565b60019150506200042c565b60ff841115620003d457620003d46200031d565b50506001821b6200042c565b5060208310610133831016604e8410600b841016171562000405575081810a6200042c565b62000411838362000333565b80600019048211156200042857620004286200031d565b0290505b92915050565b60006200044360ff8416836200037c565b9392505050565b80820281158282048414176200042c576200042c6200031d565b6117ab80620004746000396000f3fe60806040526004361061012e5760003560e01c80638da5cb5b116100ab578063c816841b1161006f578063c816841b14610361578063dd62ed3e1461037f578063ddca3f43146103c5578063e086e5ec146103da578063e8078d94146103ef578063f2fde38b146103f757600080fd5b80638da5cb5b146102ce57806395d89b41146102ec578063a457c2d714610301578063a9059cbb14610321578063aacebbe31461034157600080fd5b806339509351116100f257806339509351146101f65780635342acb41461021657806370a082311461024f578063715018a61461028557806375f0a8741461029c57600080fd5b806306fdde031461013a578063095ea7b31461016557806318160ddd1461019557806323b872dd146101b4578063313ce567146101d457600080fd5b3661013557005b600080fd5b34801561014657600080fd5b5061014f610417565b60405161015c9190611448565b60405180910390f35b34801561017157600080fd5b506101856101803660046114ae565b6104a9565b604051901515815260200161015c565b3480156101a157600080fd5b506004545b60405190815260200161015c565b3480156101c057600080fd5b506101856101cf3660046114da565b6104c0565b3480156101e057600080fd5b5060035460405160ff909116815260200161015c565b34801561020257600080fd5b506101856102113660046114ae565b61056e565b34801561022257600080fd5b5061018561023136600461151b565b6001600160a01b031660009081526007602052604090205460ff1690565b34801561025b57600080fd5b506101a661026a36600461151b565b6001600160a01b031660009081526005602052604090205490565b34801561029157600080fd5b5061029a6105aa565b005b3480156102a857600080fd5b506008546001600160a01b03165b6040516001600160a01b03909116815260200161015c565b3480156102da57600080fd5b506000546001600160a01b03166102b6565b3480156102f857600080fd5b5061014f610627565b34801561030d57600080fd5b5061018561031c3660046114ae565b610636565b34801561032d57600080fd5b5061018561033c3660046114ae565b6106c5565b34801561034d57600080fd5b5061018561035c36600461151b565b6106d2565b34801561036d57600080fd5b50600a546001600160a01b03166102b6565b34801561038b57600080fd5b506101a661039a366004611538565b6001600160a01b03918216600090815260066020908152604080832093909416825291909152205490565b3480156103d157600080fd5b50600b546101a6565b3480156103e657600080fd5b5061018561075e565b6101856107dd565b34801561040357600080fd5b5061029a61041236600461151b565b610b41565b60606001805461042690611571565b80601f016020809104026020016040519081016040528092919081815260200182805461045290611571565b801561049f5780601f106104745761010080835404028352916020019161049f565b820191906000526020600020905b81548152906001019060200180831161048257829003601f168201915b5050505050905090565b60006104b6338484610c2b565b5060015b92915050565b6001600160a01b038316600090815260066020908152604080832033845290915281205460001914610559576105348260405180606001604052806028815260200161174e602891396001600160a01b03871660009081526006602090815260408083203384529091529020549190610d4f565b6001600160a01b03851660009081526006602090815260408083203384529091529020555b610564848484610d7b565b5060019392505050565b3360008181526006602090815260408083206001600160a01b038716845290915281205490916104b69185906105a59086906115c1565b610c2b565b6000546001600160a01b031633146105dd5760405162461bcd60e51b81526004016105d4906115d4565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b60606002805461042690611571565b3360009081526006602090815260408083206001600160a01b0386168452909152812054828110156106b85760405162461bcd60e51b815260206004820152602560248201527f546f6b656e3a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016105d4565b6105643385858403610c2b565b60006104b6338484610d7b565b6008546000906001600160a01b0316336001600160a01b0316146107385760405162461bcd60e51b815260206004820152601c60248201527f546f6b656e3a206f6e6c79206d61726b6574696e672077616c6c65740000000060448201526064016105d4565b50600880546001600160a01b0319166001600160a01b0392909216919091179055600190565b6008546000906001600160a01b0316336001600160a01b0316146107c45760405162461bcd60e51b815260206004820152601c60248201527f546f6b656e3a206f6e6c79206d61726b6574696e672077616c6c65740000000060448201526064016105d4565b6008546000906104ba906001600160a01b0316476111e0565b600080546001600160a01b031633146108085760405162461bcd60e51b81526004016105d4906115d4565b600a546001600160a01b0316156108555760405162461bcd60e51b8152602060048201526011602482015270151bdad95b8e8813140818dc99585d1959607a1b60448201526064016105d4565b600034116108955760405162461bcd60e51b815260206004820152600d60248201526c0a8ded6cadc74409cde408aa89609b1b60448201526064016105d4565b306000908152600660209081526040808320600980546001600160a01b0390811686529184529382902060001990559254815163c45a015560e01b8152915193169263c45a0155926004808401939192918290030181865afa1580156108ff573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109239190611609565b6001600160a01b031663c9c6539630600960009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610985573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109a99190611609565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156109f6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a1a9190611609565b600a80546001600160a01b0319166001600160a01b039283161790556009543060008181526005602052604080822054815163f305d71960e01b8152600481019490945260248401526044830182905260648301919091523360848301524260a483015251919092169163f305d71991349160c480820192606092909190829003018185885af1158015610ab2573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610ad79190611626565b5050600a546040805160016209351760e01b0319815290516001600160a01b03909216925063fff6cae991600480830192600092919082900301818387803b158015610b2257600080fd5b505af1158015610b36573d6000803e3d6000fd5b505050506001905090565b6000546001600160a01b03163314610b6b5760405162461bcd60e51b81526004016105d4906115d4565b6001600160a01b038116610bd05760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016105d4565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610c8d5760405162461bcd60e51b8152602060048201526024808201527f546f6b656e3a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016105d4565b6001600160a01b038216610cee5760405162461bcd60e51b815260206004820152602260248201527f546f6b656e3a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016105d4565b6001600160a01b0383811660008181526006602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60008184841115610d735760405162461bcd60e51b81526004016105d49190611448565b505050900390565b6001600160a01b038316610ddf5760405162461bcd60e51b815260206004820152602560248201527f546f6b656e3a205472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016105d4565b6001600160a01b038216610e415760405162461bcd60e51b815260206004820152602360248201527f546f6b656e3a205472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016105d4565b60008111610eaa5760405162461bcd60e51b815260206004820152603060248201527f546f6b656e3a205472616e7366657220616d6f756e74206d757374206265206760448201526f726561746572207468616e207a65726f60801b60648201526084016105d4565b6001600160a01b03831660009081526007602052604090205460019060ff1680610eec57506001600160a01b03831660009081526007602052604090205460ff165b15610ef5575060005b600c5460ff16158015610f055750805b1561111257600a546001600160a01b0390811690841603610fa957600a546001600160a01b0316600090815260056020526040812054610f469060c86112c7565b306000908152600560205260409020541190508015610fa757600c805460ff19166001179055600a546001600160a01b0316600090815260056020526040902054610f9b90610f969060c86112c7565b6112da565b50600c805460ff191690555b505b600b54156110de576000610fd36064610fcd600b548661142490919063ffffffff16565b906112c7565b9050610fdf8382611430565b925061101e81604051806060016040528060268152602001611728602691396001600160a01b0388166000908152600560205260409020549190610d4f565b6001600160a01b03861660009081526005602052604080822092909255308152205461104a908261143c565b30600081815260056020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061109b9085815260200190565b60405180910390a36004546110b19060056112c7565b600a546001600160a01b031660009081526005602052604090205410156110d8576000600b555b50611112565b6004546110ec9060056112c7565b600a546001600160a01b031660009081526005602052604090205410611112576005600b555b61114f82604051806060016040528060268152602001611728602691396001600160a01b0387166000908152600560205260409020549190610d4f565b6001600160a01b03808616600090815260056020526040808220939093559085168152205461117e908361143c565b6001600160a01b0380851660008181526005602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111d29086815260200190565b60405180910390a350505050565b600082478311156112065760405163cd78605960e01b81523060048201526024016105d4565b600080841161126d57604051600160fd1b81526001600160a01b03831690600101600060405180830381855af49150503d8060008114611262576040519150601f19603f3d011682016040523d82523d6000602084013e611267565b606091505b506112bd565b6040516001600160a01b038316908590600081818185875af1925050503d80600081146112b6576040519150601f19603f3d011682016040523d82523d6000602084013e6112bb565b606091505b505b5095945050505050565b60006112d38284611654565b9392505050565b60408051600280825260608201835260009283929190602083019080368337019050509050308160008151811061131357611313611676565b6001600160a01b03928316602091820292909201810191909152600954604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561136c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113909190611609565b816001815181106113a3576113a3611676565b6001600160a01b03928316602091820292909201015260095460405163791ac94760e01b815291169063791ac947906113e990869060009086903090429060040161168c565b600060405180830381600087803b15801561140357600080fd5b505af1158015611417573d6000803e3d6000fd5b5060019695505050505050565b60006112d382846116fd565b60006112d38284611714565b60006112d382846115c1565b600060208083528351808285015260005b8181101561147557858101830151858201604001528201611459565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146114ab57600080fd5b50565b600080604083850312156114c157600080fd5b82356114cc81611496565b946020939093013593505050565b6000806000606084860312156114ef57600080fd5b83356114fa81611496565b9250602084013561150a81611496565b929592945050506040919091013590565b60006020828403121561152d57600080fd5b81356112d381611496565b6000806040838503121561154b57600080fd5b823561155681611496565b9150602083013561156681611496565b809150509250929050565b600181811c9082168061158557607f821691505b6020821081036115a557634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156104ba576104ba6115ab565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60006020828403121561161b57600080fd5b81516112d381611496565b60008060006060848603121561163b57600080fd5b8351925060208401519150604084015190509250925092565b60008261167157634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156116dc5784516001600160a01b0316835293830193918301916001016116b7565b50506001600160a01b03969096166060850152505050608001529392505050565b80820281158282048414176104ba576104ba6115ab565b818103818111156104ba576104ba6115ab56fe546f6b656e3a205472616e7366657220616d6f756e7420657863656564732062616c616e6365546f6b656e3a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122070067058ebb7cde8d87b0ba1478b2984b16ef60c583aadf4dbd2d853e2d971d264736f6c63430008140033