600a805461ffff1916600117905560e060405260276080818152906200378f60a03980516200003791600c91602090910190620001e2565b5060408051808201909152600580825264464154323160d81b60209092019182526200006691600d91620001e2565b503480156200007457600080fd5b50604051620037e4380380620037e4833981016040819052620000979162000288565b604080516020810190915260008152620000b18162000177565b50620000bd3362000190565b600480546001600160a01b0319166001600160a01b0383161790556040805160608101909152602e808252620037b66020830139604051602001620001039190620002f8565b604051602081830303815290604052600b908051906020019062000129929190620001e2565b50620001706040518060600160405280602e8152602001620037b6602e91396040516020016200015a919062000334565b60408051601f1981840301815291905262000177565b50620003a9565b80516200018c906002906020840190620001e2565b5050565b600380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b828054620001f0906200036c565b90600052602060002090601f0160209004810192826200021457600085556200025f565b82601f106200022f57805160ff19168380011785556200025f565b828001600101855582156200025f579182015b828111156200025f57825182559160200191906001019062000242565b506200026d92915062000271565b5090565b5b808211156200026d576000815560010162000272565b6000602082840312156200029b57600080fd5b81516001600160a01b0381168114620002b357600080fd5b9392505050565b6000815160005b81811015620002dd5760208185018101518683015201620002c1565b81811115620002ed576000828601525b509290920192915050565b66697066733a2f2f60c81b81526000620003166007830184620002ba565b6d17b6b2ba30b230ba30973539b7b760911b8152600e019392505050565b66697066733a2f2f60c81b81526000620003526007830184620002ba565b6917bdb4b23e973539b7b760b11b8152600a019392505050565b600181811c908216806200038157607f821691505b60208210811415620003a357634e487b7160e01b600052602260045260246000fd5b50919050565b6133d680620003b96000396000f3fe6080604052600436106101fd5760003560e01c8063715018a61161011d578063c751958d116100b0578063e985e9c51161007f578063f2fde38b11610064578063f2fde38b1461061c578063f5298aca1461063c578063f7d975771461065c57600080fd5b8063e985e9c5146105dc578063f242432a146105fc57600080fd5b8063c751958d14610552578063d96a094a14610572578063dbd3939214610585578063e8a3d485146105c757600080fd5b8063a22cb465116100ec578063a22cb465146104ba578063b2609d77146104da578063b5b49727146104fa578063c204642c1461053257600080fd5b8063715018a6146104525780638da5cb5b14610467578063938e3d7b1461048557806395d89b41146104a557600080fd5b80632eb2c2d61161019557806346a7dadc1161016457806346a7dadc146103c55780634e1273f4146103e5578063691562a0146104125780636b20c4541461043257600080fd5b80632eb2c2d61461033657806335403023146103565780633ccfd60b1461038357806343a73d9a1461039857600080fd5b80630c31ba98116101d15780630c31ba98146102a95780630e89341c146102c957806321775c92146102e957806326a49e371461030957600080fd5b8062fdd58e1461020257806301ffc9a71461023557806302fe53051461026557806306fdde0314610287575b600080fd5b34801561020e57600080fd5b5061022261021d366004612d55565b61067c565b6040519081526020015b60405180910390f35b34801561024157600080fd5b50610255610250366004612efc565b610728565b604051901515815260200161022c565b34801561027157600080fd5b50610285610280366004612f53565b6107c3565b005b34801561029357600080fd5b5061029c610817565b60405161022c9190613166565b3480156102b557600080fd5b506102856102c4366004612d81565b6108a5565b3480156102d557600080fd5b5061029c6102e4366004612f9c565b61095b565b3480156102f557600080fd5b50610285610304366004612ee1565b6109ef565b34801561031557600080fd5b50610222610324366004612f9c565b60056020526000908152604090205481565b34801561034257600080fd5b50610285610351366004612b93565b610a51565b34801561036257600080fd5b50610222610371366004612f9c565b60066020526000908152604090205481565b34801561038f57600080fd5b50610285610af3565b3480156103a457600080fd5b506103ad610b6e565b6040516001600160a01b03909116815260200161022c565b3480156103d157600080fd5b506102856103e0366004612b3d565b610bca565b3480156103f157600080fd5b50610405610400366004612dea565b610c41565b60405161022c9190613125565b34801561041e57600080fd5b5061028561042d366004612db6565b610d7f565b34801561043e57600080fd5b5061028561044d366004612caa565b610fec565b34801561045e57600080fd5b50610285611071565b34801561047357600080fd5b506003546001600160a01b03166103ad565b34801561049157600080fd5b506102856104a0366004612f53565b6110c5565b3480156104b157600080fd5b5061029c611120565b3480156104c657600080fd5b506102856104d5366004612d20565b61112d565b3480156104e657600080fd5b506102856104f5366004612ee1565b611138565b34801561050657600080fd5b50610222610515366004612fb5565b600760209081526000928352604080842090915290825290205481565b34801561053e57600080fd5b5061028561054d366004612e4e565b611193565b34801561055e57600080fd5b5061028561056d366004612e93565b6113c7565b610285610580366004612f9c565b611457565b34801561059157600080fd5b506102226105a0366004612d55565b60009081526007602090815260408083206001600160a01b03949094168352929052205490565b3480156105d357600080fd5b5061029c6117c6565b3480156105e857600080fd5b506102556105f7366004612b5a565b611858565b34801561060857600080fd5b50610285610617366004612c41565b611944565b34801561062857600080fd5b50610285610637366004612b3d565b6119cb565b34801561064857600080fd5b50610285610657366004612d81565b611a98565b34801561066857600080fd5b50610285610677366004612fda565b611b1d565b60006001600160a01b0383166106ff5760405162461bcd60e51b815260206004820152602b60248201527f455243313135353a2062616c616e636520717565727920666f7220746865207a60448201527f65726f206164647265737300000000000000000000000000000000000000000060648201526084015b60405180910390fd5b506000818152602081815260408083206001600160a01b03861684529091529020545b92915050565b60006001600160e01b031982167fd9b67a2600000000000000000000000000000000000000000000000000000000148061078b57506001600160e01b031982167f0e89341c00000000000000000000000000000000000000000000000000000000145b8061072257507f01ffc9a7000000000000000000000000000000000000000000000000000000006001600160e01b0319831614610722565b6003546001600160a01b0316331461080b5760405162461bcd60e51b8152602060048201819052602482015260008051602061338183398151915260448201526064016106f6565b61081481611bb7565b50565b600c8054610824906131eb565b80601f0160208091040260200160405190810160405280929190818152602001828054610850906131eb565b801561089d5780601f106108725761010080835404028352916020019161089d565b820191906000526020600020905b81548152906001019060200180831161088057829003601f168201915b505050505081565b6003546001600160a01b031633146108ed5760405162461bcd60e51b8152602060048201819052602482015260008051602061338183398151915260448201526064016106f6565b80156109305760008281526008602090815260408083206001600160a01b03871684529091528120805483929061092590849061319d565b909155506109569050565b60008281526008602090815260408083206001600160a01b038716845290915290208190555b505050565b60606002805461096a906131eb565b80601f0160208091040260200160405190810160405280929190818152602001828054610996906131eb565b80156109e35780601f106109b8576101008083540402835291602001916109e3565b820191906000526020600020905b8154815290600101906020018083116109c657829003601f168201915b50505050509050919050565b6003546001600160a01b03163314610a375760405162461bcd60e51b8152602060048201819052602482015260008051602061338183398151915260448201526064016106f6565b600a80549115156101000261ff0019909216919091179055565b6001600160a01b038516331480610a6d5750610a6d8533611858565b610adf5760405162461bcd60e51b815260206004820152603260248201527f455243313135353a207472616e736665722063616c6c6572206973206e6f742060448201527f6f776e6572206e6f7220617070726f766564000000000000000000000000000060648201526084016106f6565b610aec8585858585611bca565b5050505050565b6003546001600160a01b03163314610b3b5760405162461bcd60e51b8152602060048201819052602482015260008051602061338183398151915260448201526064016106f6565b6040514790339082156108fc029083906000818181858888f19350505050158015610b6a573d6000803e3d6000fd5b5050565b6003546000906001600160a01b03163314610bb95760405162461bcd60e51b8152602060048201819052602482015260008051602061338183398151915260448201526064016106f6565b506004546001600160a01b03165b90565b6003546001600160a01b03163314610c125760405162461bcd60e51b8152602060048201819052602482015260008051602061338183398151915260448201526064016106f6565b6004805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b60608151835114610cba5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e67746860448201527f206d69736d61746368000000000000000000000000000000000000000000000060648201526084016106f6565b6000835167ffffffffffffffff811115610cd657610cd661329a565b604051908082528060200260200182016040528015610cff578160200160208202803683370190505b50905060005b8451811015610d7757610d4a858281518110610d2357610d23613284565b6020026020010151858381518110610d3d57610d3d613284565b602002602001015161067c565b828281518110610d5c57610d5c613284565b6020908102919091010152610d7081613253565b9050610d05565b509392505050565b6003546001600160a01b03163314610dc75760405162461bcd60e51b8152602060048201819052602482015260008051602061338183398151915260448201526064016106f6565b60028160ff161115610e0a5760405162461bcd60e51b815260206004820152600c60248201526b496e76616c6964207479706560a01b60448201526064016106f6565b600a5460ff610100909104161515600114610e675760405162461bcd60e51b815260206004820152601760248201527f4d696e74696e67206e6f7420656e61626c65642079657400000000000000000060448201526064016106f6565b606a610e828260ff1660009081526006602052604090205490565b10610edf5760405162461bcd60e51b815260206004820152602760248201527f4e6f7420656e6f756768206c65667420746f206d696e742074686174206d616e60448201526679206974656d7360c81b60648201526084016106f6565b6000610eed8260ff16611e28565b60008181526009602052604090205490915060ff1615610f4f5760405162461bcd60e51b815260206004820152601860248201527f416c7265616479206d696e7465642074686174206f6e652e000000000000000060448201526064016106f6565b610f6b8382600160405180602001604052806000815250611e4e565b60ff821660009081526007602090815260408083206001600160a01b03871684529091528120805460019290610fa290849061319d565b909155505060ff82166000908152600660205260408120805460019290610fca90849061319d565b90915550506000908152600960205260409020805460ff191660011790555050565b6001600160a01b03831633148061100857506110088333611858565b6110665760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260448201526808185c1c1c9bdd995960ba1b60648201526084016106f6565b610956838383611f74565b6003546001600160a01b031633146110b95760405162461bcd60e51b8152602060048201819052602482015260008051602061338183398151915260448201526064016106f6565b6110c360006121a9565b565b6003546001600160a01b0316331461110d5760405162461bcd60e51b8152602060048201819052602482015260008051602061338183398151915260448201526064016106f6565b8051610b6a90600b906020840190612920565b600d8054610824906131eb565b610b6a338383612208565b6003546001600160a01b031633146111805760405162461bcd60e51b8152602060048201819052602482015260008051602061338183398151915260448201526064016106f6565b600a805460ff1916911515919091179055565b6003546001600160a01b031633146111db5760405162461bcd60e51b8152602060048201819052602482015260008051602061338183398151915260448201526064016106f6565b600281111561121b5760405162461bcd60e51b815260206004820152600c60248201526b496e76616c6964207479706560a01b60448201526064016106f6565b60006001835161122b91906131d4565b600083815260066020526040902054909150606a9061124b90839061319d565b106112a85760405162461bcd60e51b815260206004820152602760248201527f4e6f7420656e6f756768206c65667420746f206d696e742074686174206d616e60448201526679206974656d7360c81b60648201526084016106f6565b60006112b383611e28565b905060005b828111610aec576112ff8582815181106112d4576112d4613284565b602002602001015182846112e8919061319d565b600160405180602001604052806000815250611e4e565b600084815260076020526040812086516001929088908590811061132557611325613284565b60200260200101516001600160a01b03166001600160a01b03168152602001908152602001600020600082825461135c919061319d565b9091555050600084815260066020526040812080546001929061138090849061319d565b909155506001905060096000611396848661319d565b81526020810191909152604001600020805460ff1916911515919091179055806113bf81613253565b9150506112b8565b6003546001600160a01b0316331461140f5760405162461bcd60e51b8152602060048201819052602482015260008051602061338183398151915260448201526064016106f6565b60005b83518110156114515761143f84828151811061143057611430613284565b602002602001015184846108a5565b8061144981613253565b915050611412565b50505050565b600a5460ff6101009091041615156001146114b45760405162461bcd60e51b815260206004820152601760248201527f4d696e74696e67206e6f7420656e61626c65642079657400000000000000000060448201526064016106f6565b6003546001600160a01b03163314806114d05750600a5460ff16155b806115005750600a5460ff1680156115005750600081815260086020908152604080832033845290915290205415155b6115725760405162461bcd60e51b815260206004820152602660248201527f596f75206d757374206265206f6e2074686520616c6c6f77206c69737420746f60448201527f206d696e742e000000000000000000000000000000000000000000000000000060648201526084016106f6565b6000818152600560205260409020543410156115d05760405162461bcd60e51b815260206004820152601e60248201527f4e6f7420656e6f75676820657468657220746f20636f76657220636f7374000060448201526064016106f6565b60028111156116105760405162461bcd60e51b815260206004820152600c60248201526b496e76616c6964207479706560a01b60448201526064016106f6565b600081815260066020526040902054606a101561167f5760405162461bcd60e51b815260206004820152602760248201527f4e6f7420656e6f756768206c65667420746f206d696e742074686174206d616e60448201526679206974656d7360c81b60648201526084016106f6565b600061168a82611e28565b60008181526009602052604090205490915060ff16156116ec5760405162461bcd60e51b815260206004820152601860248201527f416c7265616479206d696e7465642074686174206f6e652e000000000000000060448201526064016106f6565b6117083382600160405180602001604052806000815250611e4e565b60008281526008602090815260408083203384529091529020541561175757600082815260086020908152604080832033845290915281208054600192906117519084906131d4565b90915550505b6000828152600760209081526040808320338452909152812080546001929061178190849061319d565b909155505060008281526006602052604081208054600192906117a590849061319d565b90915550506000908152600960205260409020805460ff1916600117905550565b6060600b80546117d5906131eb565b80601f0160208091040260200160405190810160405280929190818152602001828054611801906131eb565b801561184e5780601f106118235761010080835404028352916020019161184e565b820191906000526020600020905b81548152906001019060200180831161183157829003601f168201915b5050505050905090565b600480546040517fc45527910000000000000000000000000000000000000000000000000000000081526001600160a01b038581169382019390935260009291821691841690829063c45527919060240160206040518083038186803b1580156118c157600080fd5b505afa1580156118d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118f99190612f36565b6001600160a01b03161415611912576001915050610722565b6001600160a01b0380851660009081526001602090815260408083209387168352929052205460ff165b949350505050565b6001600160a01b03851633148061196057506119608533611858565b6119be5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260448201526808185c1c1c9bdd995960ba1b60648201526084016106f6565b610aec85858585856122fd565b6003546001600160a01b03163314611a135760405162461bcd60e51b8152602060048201819052602482015260008051602061338183398151915260448201526064016106f6565b6001600160a01b038116611a8f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016106f6565b610814816121a9565b6001600160a01b038316331480611ab45750611ab48333611858565b611b125760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7260448201526808185c1c1c9bdd995960ba1b60648201526084016106f6565b61095683838361249b565b6003546001600160a01b03163314611b655760405162461bcd60e51b8152602060048201819052602482015260008051602061338183398151915260448201526064016106f6565b6002821115611ba55760405162461bcd60e51b815260206004820152600c60248201526b496e76616c6964207479706560a01b60448201526064016106f6565b60009182526005602052604090912055565b8051610b6a906002906020840190612920565b8151835114611c2c5760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016106f6565b6001600160a01b038416611c905760405162461bcd60e51b815260206004820152602560248201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604482015264647265737360d81b60648201526084016106f6565b3360005b8451811015611dba576000858281518110611cb157611cb1613284565b602002602001015190506000858381518110611ccf57611ccf613284565b602090810291909101810151600084815280835260408082206001600160a01b038e168352909352919091205490915081811015611d625760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60448201526939103a3930b739b332b960b11b60648201526084016106f6565b6000838152602081815260408083206001600160a01b038e8116855292528083208585039055908b16825281208054849290611d9f90849061319d565b9250508190555050505080611db390613253565b9050611c94565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051611e0a929190613138565b60405180910390a4611e20818787878787612615565b505050505050565b6000611e35606a836131b5565b600083815260066020526040902054610722919061319d565b6001600160a01b038416611eca5760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f2061646472657360448201527f730000000000000000000000000000000000000000000000000000000000000060648201526084016106f6565b33611ee481600087611edb886127ca565b610aec886127ca565b6000848152602081815260408083206001600160a01b038916845290915281208054859290611f1490849061319d565b909155505060408051858152602081018590526001600160a01b0380881692600092918516917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4610aec81600087878787612815565b6001600160a01b038316611fd65760405162461bcd60e51b815260206004820152602360248201527f455243313135353a206275726e2066726f6d20746865207a65726f206164647260448201526265737360e81b60648201526084016106f6565b80518251146120385760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b60648201526084016106f6565b604080516020810190915260009081905233905b835181101561214a57600084828151811061206957612069613284565b60200260200101519050600084838151811061208757612087613284565b602090810291909101810151600084815280835260408082206001600160a01b038c1683529093529190912054909150818110156121135760405162461bcd60e51b8152602060048201526024808201527f455243313135353a206275726e20616d6f756e7420657863656564732062616c604482015263616e636560e01b60648201526084016106f6565b6000928352602083815260408085206001600160a01b038b168652909152909220910390558061214281613253565b91505061204c565b5060006001600160a01b0316846001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb868660405161219b929190613138565b60405180910390a450505050565b600380546001600160a01b0383811673ffffffffffffffffffffffffffffffffffffffff19831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b816001600160a01b0316836001600160a01b031614156122905760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c2073746174757360448201527f20666f722073656c66000000000000000000000000000000000000000000000060648201526084016106f6565b6001600160a01b03838116600081815260016020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6001600160a01b0384166123615760405162461bcd60e51b815260206004820152602560248201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604482015264647265737360d81b60648201526084016106f6565b33612371818787611edb886127ca565b6000848152602081815260408083206001600160a01b038a168452909152902054838110156123f55760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60448201526939103a3930b739b332b960b11b60648201526084016106f6565b6000858152602081815260408083206001600160a01b038b811685529252808320878503905590881682528120805486929061243290849061319d565b909155505060408051868152602081018690526001600160a01b03808916928a821692918616917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4612492828888888888612815565b50505050505050565b6001600160a01b0383166124fd5760405162461bcd60e51b815260206004820152602360248201527f455243313135353a206275726e2066726f6d20746865207a65726f206164647260448201526265737360e81b60648201526084016106f6565b3361252d8185600061250e876127ca565b612517876127ca565b5050604080516020810190915260009052505050565b6000838152602081815260408083206001600160a01b0388168452909152902054828110156125aa5760405162461bcd60e51b8152602060048201526024808201527f455243313135353a206275726e20616d6f756e7420657863656564732062616c604482015263616e636560e01b60648201526084016106f6565b6000848152602081815260408083206001600160a01b03898116808652918452828520888703905582518981529384018890529092908616917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a45050505050565b6001600160a01b0384163b15611e205760405163bc197c8160e01b81526001600160a01b0385169063bc197c81906126599089908990889088908890600401613084565b602060405180830381600087803b15801561267357600080fd5b505af19250505080156126a3575060408051601f3d908101601f191682019092526126a091810190612f19565b60015b612759576126af6132b0565b806308c379a014156126e957506126c46132cb565b806126cf57506126eb565b8060405162461bcd60e51b81526004016106f69190613166565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e204552433131353560448201527f526563656976657220696d706c656d656e74657200000000000000000000000060648201526084016106f6565b6001600160e01b0319811663bc197c8160e01b146124925760405162461bcd60e51b815260206004820152602860248201527f455243313135353a204552433131353552656365697665722072656a656374656044820152676420746f6b656e7360c01b60648201526084016106f6565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061280457612804613284565b602090810291909101015292915050565b6001600160a01b0384163b15611e205760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e619061285990899089908890889088906004016130e2565b602060405180830381600087803b15801561287357600080fd5b505af19250505080156128a3575060408051601f3d908101601f191682019092526128a091810190612f19565b60015b6128af576126af6132b0565b6001600160e01b0319811663f23a6e6160e01b146124925760405162461bcd60e51b815260206004820152602860248201527f455243313135353a204552433131353552656365697665722072656a656374656044820152676420746f6b656e7360c01b60648201526084016106f6565b82805461292c906131eb565b90600052602060002090601f01602090048101928261294e5760008555612994565b82601f1061296757805160ff1916838001178555612994565b82800160010185558215612994579182015b82811115612994578251825591602001919060010190612979565b506129a09291506129a4565b5090565b5b808211156129a057600081556001016129a5565b600067ffffffffffffffff8311156129d3576129d361329a565b6040516129ea601f8501601f191660200182613226565b8091508381528484840111156129ff57600080fd5b83836020830137600060208583010152509392505050565b600082601f830112612a2857600080fd5b81356020612a3582613179565b604051612a428282613226565b8381528281019150858301600585901b87018401881015612a6257600080fd5b60005b85811015612a8a578135612a7881613355565b84529284019290840190600101612a65565b5090979650505050505050565b600082601f830112612aa857600080fd5b81356020612ab582613179565b604051612ac28282613226565b8381528281019150858301600585901b87018401881015612ae257600080fd5b60005b85811015612a8a57813584529284019290840190600101612ae5565b80358015158114612b1157600080fd5b919050565b600082601f830112612b2757600080fd5b612b36838335602085016129b9565b9392505050565b600060208284031215612b4f57600080fd5b8135612b3681613355565b60008060408385031215612b6d57600080fd5b8235612b7881613355565b91506020830135612b8881613355565b809150509250929050565b600080600080600060a08688031215612bab57600080fd5b8535612bb681613355565b94506020860135612bc681613355565b9350604086013567ffffffffffffffff80821115612be357600080fd5b612bef89838a01612a97565b94506060880135915080821115612c0557600080fd5b612c1189838a01612a97565b93506080880135915080821115612c2757600080fd5b50612c3488828901612b16565b9150509295509295909350565b600080600080600060a08688031215612c5957600080fd5b8535612c6481613355565b94506020860135612c7481613355565b93506040860135925060608601359150608086013567ffffffffffffffff811115612c9e57600080fd5b612c3488828901612b16565b600080600060608486031215612cbf57600080fd5b8335612cca81613355565b9250602084013567ffffffffffffffff80821115612ce757600080fd5b612cf387838801612a97565b93506040860135915080821115612d0957600080fd5b50612d1686828701612a97565b9150509250925092565b60008060408385031215612d3357600080fd5b8235612d3e81613355565b9150612d4c60208401612b01565b90509250929050565b60008060408385031215612d6857600080fd5b8235612d7381613355565b946020939093013593505050565b600080600060608486031215612d9657600080fd5b8335612da181613355565b95602085013595506040909401359392505050565b60008060408385031215612dc957600080fd5b8235612dd481613355565b9150602083013560ff81168114612b8857600080fd5b60008060408385031215612dfd57600080fd5b823567ffffffffffffffff80821115612e1557600080fd5b612e2186838701612a17565b93506020850135915080821115612e3757600080fd5b50612e4485828601612a97565b9150509250929050565b60008060408385031215612e6157600080fd5b823567ffffffffffffffff811115612e7857600080fd5b612e8485828601612a17565b95602094909401359450505050565b600080600060608486031215612ea857600080fd5b833567ffffffffffffffff811115612ebf57600080fd5b612ecb86828701612a17565b9660208601359650604090950135949350505050565b600060208284031215612ef357600080fd5b612b3682612b01565b600060208284031215612f0e57600080fd5b8135612b368161336a565b600060208284031215612f2b57600080fd5b8151612b368161336a565b600060208284031215612f4857600080fd5b8151612b3681613355565b600060208284031215612f6557600080fd5b813567ffffffffffffffff811115612f7c57600080fd5b8201601f81018413612f8d57600080fd5b61193c848235602084016129b9565b600060208284031215612fae57600080fd5b5035919050565b60008060408385031215612fc857600080fd5b823591506020830135612b8881613355565b60008060408385031215612fed57600080fd5b50508035926020909101359150565b600081518084526020808501945080840160005b8381101561302c57815187529582019590820190600101613010565b509495945050505050565b6000815180845260005b8181101561305d57602081850181015186830182015201613041565b8181111561306f576000602083870101525b50601f01601f19169290920160200192915050565b60006001600160a01b03808816835280871660208401525060a060408301526130b060a0830186612ffc565b82810360608401526130c28186612ffc565b905082810360808401526130d68185613037565b98975050505050505050565b60006001600160a01b03808816835280871660208401525084604083015283606083015260a0608083015261311a60a0830184613037565b979650505050505050565b602081526000612b366020830184612ffc565b60408152600061314b6040830185612ffc565b828103602084015261315d8185612ffc565b95945050505050565b602081526000612b366020830184613037565b600067ffffffffffffffff8211156131935761319361329a565b5060051b60200190565b600082198211156131b0576131b061326e565b500190565b60008160001904831182151516156131cf576131cf61326e565b500290565b6000828210156131e6576131e661326e565b500390565b600181811c908216806131ff57607f821691505b6020821081141561322057634e487b7160e01b600052602260045260246000fd5b50919050565b601f8201601f1916810167ffffffffffffffff8111828210171561324c5761324c61329a565b6040525050565b60006000198214156132675761326761326e565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b600060033d1115610bc75760046000803e5060005160e01c90565b600060443d10156132d95790565b6040516003193d81016004833e81513d67ffffffffffffffff816024840111818411171561330957505050505090565b82850191508151818111156133215750505050505090565b843d870101602082850101111561333b5750505050505090565b61334a60208286010187613226565b509095945050505050565b6001600160a01b038116811461081457600080fd5b6001600160e01b03198116811461081457600080fdfe4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a26469706673582212200a1e9f2f3511eb1317ba63ebf5e04185885a1861802de2cc84b5e596b51d3c7564736f6c6343000807003354686520576573204c616e6720462e412e542e2053657269657320322041697264726f70202331516d5578574468676253375542634e39666a77566d774d426777374d45644e794a6f6a6e6d426f5564695354614e000000000000000000000000a5409ec958c83c3f309868babaca7c86dcb077c1