60806040523480156200001157600080fd5b506040516200354c3803806200354c833981016040819052620000349162000139565b80620000408162000064565b50600b6200004f82826200029d565b506200005d60003362000076565b5062000369565b60026200007282826200029d565b5050565b60008281526003602090815260408083206001600160a01b038516845290915290205462000072908390839060ff16620000725760008281526003602090815260408083206001600160a01b03851684529091529020805460ff19166001179055620000df3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b634e487b7160e01b600052604160045260246000fd5b600060208083850312156200014d57600080fd5b82516001600160401b03808211156200016557600080fd5b818501915085601f8301126200017a57600080fd5b8151818111156200018f576200018f62000123565b604051601f8201601f19908116603f01168101908382118183101715620001ba57620001ba62000123565b816040528281528886848701011115620001d357600080fd5b600093505b82841015620001f75784840186015181850187015292850192620001d8565b600086848301015280965050505050505092915050565b600181811c908216806200022357607f821691505b6020821081036200024457634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200029857600081815260208120601f850160051c81016020861015620002735750805b601f850160051c820191505b8181101562000294578281556001016200027f565b5050505b505050565b81516001600160401b03811115620002b957620002b962000123565b620002d181620002ca84546200020e565b846200024a565b602080601f831160018114620003095760008415620002f05750858301515b600019600386901b1c1916600185901b17855562000294565b600085815260208120601f198616915b828110156200033a5788860151825594840194600190910190840162000319565b5085821015620003595787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6131d380620003796000396000f3fe608060405234801561001057600080fd5b506004361061021b5760003560e01c806391d1485411610125578063b8b31cc3116100ad578063e16118cb1161007c578063e16118cb14610565578063e6425f1314610585578063e985e9c5146105ae578063f1e67f84146105ea578063f242432a146105fd57600080fd5b8063b8b31cc31461050a578063d547741f1461051d578063ddaa0f0414610530578063e037ed631461054357600080fd5b8063a0bcfc7f116100f4578063a0bcfc7f14610488578063a217fddf1461049b578063a22cb465146104a3578063ac8a584a146104b6578063aee2d0b9146104c957600080fd5b806391d148541461043a5780639824d39f1461044d578063983d2737146104605780639870d7fe1461047557600080fd5b80632b57ebc0116101a857806341563b691161017757806341563b69146103995780634e1273f4146103bc57806357841074146103dc578063702204781461040757806378fc7ea51461041a57600080fd5b80632b57ebc01461034d5780632eb2c2d6146103605780632f2ff15d1461037357806336568abe1461038657600080fd5b80630cbd1c00116101ef5780630cbd1c00146102b95780630e89341c146102e45780631a32e20c146102f7578063248a9ca3146103175780632b04e8401461033a57600080fd5b8062fdd58e1461022057806301ffc9a7146102465780630411b2521461026957806306fdde031461027e575b600080fd5b61023361022e36600461229b565b610610565b6040519081526020015b60405180910390f35b6102596102543660046122db565b6106a9565b604051901515815260200161023d565b61027c6102773660046122f8565b6106b4565b005b60408051808201909152601681527547656e736f6b697368694f6e6c696e652e4974656d7360501b60208201525b60405161023d919061238a565b6102336102c736600461229b565b600a60209081526000928352604080842090915290825290205481565b6102ac6102f236600461239d565b6106d6565b6102336103053660046123b6565b60076020526000908152604090205481565b61023361032536600461239d565b60009081526003602052604090206001015490565b61023361034836600461229b565b61070a565b61027c61035b3660046123d1565b61071d565b61027c61036e36600461254f565b6107d3565b61027c6103813660046125f8565b61081f565b61027c6103943660046125f8565b610844565b6102596103a736600461239d565b60066020526000908152604090205460ff1681565b6103cf6103ca366004612624565b6108c2565b60405161023d9190612729565b6102336103ea36600461229b565b600960209081526000928352604080842090915290825290205481565b61027c610415366004612787565b6109eb565b61023361042836600461239d565b60046020526000908152604090205481565b6102596104483660046125f8565b610ac0565b61027c61045b366004612820565b610aeb565b61023360008051602061317e83398151915281565b61027c6104833660046123b6565b610bf4565b61027c6104963660046128e3565b610c36565b610233600081565b61027c6104b1366004612964565b610c6a565b61027c6104c43660046123b6565b610c75565b6104f26104d736600461239d565b6008602052600090815260409020546001600160a01b031681565b6040516001600160a01b03909116815260200161023d565b61027c61051836600461298e565b610cb4565b61027c61052b3660046125f8565b610ec1565b61027c61053e3660046129d4565b610ee6565b6105566105513660046123b6565b610fb2565b60405161023d93929190612a3f565b61023361057336600461239d565b60056020526000908152604090205481565b6104f261059336600461239d565b6000908152600860205260409020546001600160a01b031690565b6102596105bc366004612ac6565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205460ff1690565b61027c6105f8366004612787565b61122d565b61027c61060b366004612af0565b611300565b60006001600160a01b0383166106805760405162461bcd60e51b815260206004820152602a60248201527f455243313135353a2061646472657373207a65726f206973206e6f742061207660448201526930b634b21037bbb732b960b11b60648201526084015b60405180910390fd5b506000818152602081815260408083206001600160a01b03861684529091529020545b92915050565b60006106a382611345565b6106d08484848460405180602001604052806000815250611300565b50505050565b6060600b6106e38361136a565b6040516020016106f4929190612b8e565b6040516020818303038152906040529050919050565b60006107168383610610565b9392505050565b61073560008051602061317e83398151915233610ac0565b6107515760405162461bcd60e51b815260040161067790612c15565b8161075c8285610610565b101561079f5760405162461bcd60e51b81526020600482015260126024820152714e6f7420656e6f7567682062616c616e636560701b6044820152606401610677565b600083815260056020526040812080548492906107bd908490612c62565b909155506107ce90508184846113fc565b505050565b6001600160a01b0385163314806107ef57506107ef85336105bc565b61080b5760405162461bcd60e51b815260040161067790612c75565b610818858585858561158c565b5050505050565b60008281526003602052604090206001015461083a81611777565b6107ce8383611781565b6001600160a01b03811633146108b45760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610677565b6108be8282611807565b5050565b606081518351146109275760405162461bcd60e51b815260206004820152602960248201527f455243313135353a206163636f756e747320616e6420696473206c656e677468604482015268040dad2e6dac2e8c6d60bb1b6064820152608401610677565b600083516001600160401b0381111561094257610942612406565b60405190808252806020026020018201604052801561096b578160200160208202803683370190505b50905060005b84518110156109e3576109b685828151811061098f5761098f612cc3565b60200260200101518583815181106109a9576109a9612cc3565b6020026020010151610610565b8282815181106109c8576109c8612cc3565b60209081029190910101526109dc81612cd9565b9050610971565b509392505050565b610a0360008051602061317e83398151915233610ac0565b610a1f5760405162461bcd60e51b815260040161067790612c15565b848314610a3e5760405162461bcd60e51b815260040161067790612cf2565b60005b85811015610ab757610aa5878783818110610a5e57610a5e612cc3565b90506020020135868684818110610a7757610a77612cc3565b90506020020135858585818110610a9057610a90612cc3565b905060200201602081019061035b91906123b6565b80610aaf81612cd9565b915050610a41565b50505050505050565b60009182526003602090815260408084206001600160a01b0393909316845291905290205460ff1690565b610b0360008051602061317e83398151915233610ac0565b610b1f5760405162461bcd60e51b815260040161067790612c15565b8685148015610b2d57508683145b8015610b3857508681145b610b545760405162461bcd60e51b815260040161067790612cf2565b60005b87811015610be957610b74898983818110610a5e57610a5e612cc3565b610bd7878783818110610b8957610b89612cc3565b90506020020135868684818110610ba257610ba2612cc3565b90506020020135858585818110610bbb57610bbb612cc3565b9050602002016020810190610bd091906123b6565b6001610cb4565b80610be181612cd9565b915050610b57565b505050505050505050565b610bff600033610ac0565b610c1b5760405162461bcd60e51b815260040161067790612d21565b610c3360008051602061317e8339815191528261186e565b50565b610c41600033610ac0565b610c5d5760405162461bcd60e51b815260040161067790612d21565b600b6107ce828483612d9e565b6108be338383611878565b610c80600033610ac0565b610c9c5760405162461bcd60e51b815260040161067790612d21565b610c3360008051602061317e83398151915282610ec1565b610ccc60008051602061317e83398151915233610ac0565b610ce85760405162461bcd60e51b815260040161067790612c15565b60008481526006602052604090205460ff16151581151514610d3c5760405162461bcd60e51b815260206004820152600d60248201526c125b9d985b1a59081a5b9c1d5d609a1b6044820152606401610677565b6000848152600460205260409020548015610dc7576000858152600560205260409020548190610d6d908690612e5d565b1115610dc75760405162461bcd60e51b815260206004820152602360248201527f457863656564206d6178696d756d206974656d20737570706c79206f66206e666044820152621d125960ea1b6064820152608401610677565b8115610e81576000858152600560205260409020541580610df6575060008581526006602052604090205460ff165b610e425760405162461bcd60e51b815260206004820152601760248201527f6e66744964206973206e6f74206120554743206974656d0000000000000000006044820152606401610677565b6000858152600660209081526040808320805460ff191660011790556008909152902080546001600160a01b0385166001600160a01b03199091161790555b60008581526005602052604081208054869290610e9f908490612e5d565b9250508190555061081883868660405180602001604052806000815250611958565b600082815260036020526040902060010154610edc81611777565b6107ce8383611807565b610ef1600033610ac0565b610f0d5760405162461bcd60e51b815260040161067790612d21565b828114610f4c5760405162461bcd60e51b815260206004820152600d60248201526c125b9d985b1a59081a5b9c1d5d609a1b6044820152606401610677565b60005b8381101561081857828282818110610f6957610f69612cc3565b9050602002013560046000878785818110610f8657610f86612cc3565b905060200201358152602001908152602001600020819055508080610faa90612cd9565b915050610f4f565b6001600160a01b0381166000908152600760205260408120546060918291829160015b828111611030576001600160a01b038716600090815260096020908152604080832084845290915290205461100b908890610610565b1561101e578161101a81612cd9565b9250505b8061102881612cd9565b915050610fd5565b506000816001600160401b0381111561104b5761104b612406565b604051908082528060200260200182016040528015611074578160200160208202803683370190505b5090506000826001600160401b0381111561109157611091612406565b6040519080825280602002602001820160405280156110c457816020015b60608152602001906001900390816110af5790505b5090506000836001600160401b038111156110e1576110e1612406565b60405190808252806020026020018201604052801561110a578160200160208202803683370190505b509050600060015b86811161121c576001600160a01b038b166000908152600960209081526040808320848452909152812054611148908d90610610565b90508015611209576001600160a01b038c166000908152600960209081526040808320858452909152902054865187908590811061118857611188612cc3565b6020908102919091018101919091526001600160a01b038d16600090815260098252604080822085835290925220546111c0906106d6565b8584815181106111d2576111d2612cc3565b6020026020010181905250808484815181106111f0576111f0612cc3565b60209081029190910101528261120581612cd9565b9350505b508061121481612cd9565b915050611112565b509299909850909650945050505050565b61124560008051602061317e83398151915233610ac0565b6112615760405162461bcd60e51b815260040161067790612c15565b8483146112805760405162461bcd60e51b815260040161067790612cf2565b60005b85811015610ab7576112ee8787838181106112a0576112a0612cc3565b905060200201358686848181106112b9576112b9612cc3565b905060200201358585858181106112d2576112d2612cc3565b90506020020160208101906112e791906123b6565b6000610cb4565b806112f881612cd9565b915050611283565b6001600160a01b03851633148061131c575061131c85336105bc565b6113385760405162461bcd60e51b815260040161067790612c75565b6108188585858585611a72565b60006001600160e01b03198216637965db0b60e01b14806106a357506106a382611b9f565b6060600061137783611bef565b60010190506000816001600160401b0381111561139657611396612406565b6040519080825280601f01601f1916602001820160405280156113c0576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846113ca57509392505050565b6001600160a01b03831661145e5760405162461bcd60e51b815260206004820152602360248201527f455243313135353a206275726e2066726f6d20746865207a65726f206164647260448201526265737360e81b6064820152608401610677565b33600061146a84611cc7565b9050600061147784611cc7565b905061149783876000858560405180602001604052806000815250611d12565b6000858152602081815260408083206001600160a01b038a168452909152902054848110156115145760405162461bcd60e51b8152602060048201526024808201527f455243313135353a206275726e20616d6f756e7420657863656564732062616c604482015263616e636560e01b6064820152608401610677565b6000868152602081815260408083206001600160a01b038b81168086529184528285208a8703905582518b81529384018a90529092908816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4604080516020810190915260009052610ab7565b81518351146115ee5760405162461bcd60e51b815260206004820152602860248201527f455243313135353a2069647320616e6420616d6f756e7473206c656e677468206044820152670dad2e6dac2e8c6d60c31b6064820152608401610677565b6001600160a01b0384166116145760405162461bcd60e51b815260040161067790612e70565b33611623818787878787611d12565b60005b845181101561170957600085828151811061164357611643612cc3565b60200260200101519050600085838151811061166157611661612cc3565b602090810291909101810151600084815280835260408082206001600160a01b038e1683529093529190912054909150818110156116b15760405162461bcd60e51b815260040161067790612eb5565b6000838152602081815260408083206001600160a01b038e8116855292528083208585039055908b168252812080548492906116ee908490612e5d565b925050819055505050508061170290612cd9565b9050611626565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051611759929190612eff565b60405180910390a461176f818787878787611e2e565b505050505050565b610c338133611f89565b61178b8282610ac0565b6108be5760008281526003602090815260408083206001600160a01b03851684529091529020805460ff191660011790556117c33390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6118118282610ac0565b156108be5760008281526003602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6108be8282611781565b816001600160a01b0316836001600160a01b0316036118eb5760405162461bcd60e51b815260206004820152602960248201527f455243313135353a2073657474696e6720617070726f76616c20737461747573604482015268103337b91039b2b63360b91b6064820152608401610677565b6001600160a01b03838116600081815260016020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6001600160a01b0384166119b85760405162461bcd60e51b815260206004820152602160248201527f455243313135353a206d696e7420746f20746865207a65726f206164647265736044820152607360f81b6064820152608401610677565b3360006119c485611cc7565b905060006119d185611cc7565b90506119e283600089858589611d12565b6000868152602081815260408083206001600160a01b038b16845290915281208054879290611a12908490612e5d565b909155505060408051878152602081018790526001600160a01b03808a1692600092918716917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4610ab783600089898989611fe2565b6001600160a01b038416611a985760405162461bcd60e51b815260040161067790612e70565b336000611aa485611cc7565b90506000611ab185611cc7565b9050611ac1838989858589611d12565b6000868152602081815260408083206001600160a01b038c16845290915290205485811015611b025760405162461bcd60e51b815260040161067790612eb5565b6000878152602081815260408083206001600160a01b038d8116855292528083208985039055908a16825281208054889290611b3f908490612e5d565b909155505060408051888152602081018890526001600160a01b03808b16928c821692918816917fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f62910160405180910390a4610be9848a8a8a8a8a611fe2565b60006001600160e01b03198216636cdb3d1360e11b1480611bd057506001600160e01b031982166303a24d0760e21b145b806106a357506301ffc9a760e01b6001600160e01b03198316146106a3565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b8310611c2e5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310611c5a576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc100008310611c7857662386f26fc10000830492506010015b6305f5e1008310611c90576305f5e100830492506008015b6127108310611ca457612710830492506004015b60648310611cb6576064830492506002015b600a83106106a35760010192915050565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110611d0157611d01612cc3565b602090810291909101015292915050565b6001600160a01b03841615611e295760005b8351811015611e2757611d50848281518110611d4257611d42612cc3565b60200260200101518661209d565b611e15576001600160a01b038516600090815260076020526040812054611d78906001612e5d565b9050848281518110611d8c57611d8c612cc3565b6020908102919091018101516001600160a01b0388166000818152600984526040808220868352855280822093909355908152600a90925281208651839290889086908110611ddd57611ddd612cc3565b60209081029190910181015182528181019290925260409081016000908120939093556001600160a01b038916835260079091529020555b80611e1f81612cd9565b915050611d24565b505b61176f565b6001600160a01b0384163b1561176f5760405163bc197c8160e01b81526001600160a01b0385169063bc197c8190611e729089908990889088908890600401612f2d565b6020604051808303816000875af1925050508015611ead575060408051601f3d908101601f19168201909252611eaa91810190612f8b565b60015b611f5957611eb9612fa8565b806308c379a003611ef25750611ecd612fc4565b80611ed85750611ef4565b8060405162461bcd60e51b8152600401610677919061238a565b505b60405162461bcd60e51b815260206004820152603460248201527f455243313135353a207472616e7366657220746f206e6f6e2d455243313135356044820152732932b1b2b4bb32b91034b6b83632b6b2b73a32b960611b6064820152608401610677565b6001600160e01b0319811663bc197c8160e01b14610ab75760405162461bcd60e51b81526004016106779061304d565b611f938282610ac0565b6108be57611fa0816120d2565b611fab8360206120e4565b604051602001611fbc929190613095565b60408051601f198184030181529082905262461bcd60e51b82526106779160040161238a565b6001600160a01b0384163b1561176f5760405163f23a6e6160e01b81526001600160a01b0385169063f23a6e6190612026908990899088908890889060040161310a565b6020604051808303816000875af1925050508015612061575060408051601f3d908101601f1916820190925261205e91810190612f8b565b60015b61206d57611eb9612fa8565b6001600160e01b0319811663f23a6e6160e01b14610ab75760405162461bcd60e51b81526004016106779061304d565b6001600160a01b0381166000908152600a60209081526040808320858452909152812054819015610716575060019392505050565b60606106a36001600160a01b03831660145b606060006120f383600261314f565b6120fe906002612e5d565b6001600160401b0381111561211557612115612406565b6040519080825280601f01601f19166020018201604052801561213f576020820181803683370190505b509050600360fc1b8160008151811061215a5761215a612cc3565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061218957612189612cc3565b60200101906001600160f81b031916908160001a90535060006121ad84600261314f565b6121b8906001612e5d565b90505b6001811115612230576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106121ec576121ec612cc3565b1a60f81b82828151811061220257612202612cc3565b60200101906001600160f81b031916908160001a90535060049490941c9361222981613166565b90506121bb565b5083156107165760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610677565b80356001600160a01b038116811461229657600080fd5b919050565b600080604083850312156122ae57600080fd5b6122b78361227f565b946020939093013593505050565b6001600160e01b031981168114610c3357600080fd5b6000602082840312156122ed57600080fd5b8135610716816122c5565b6000806000806080858703121561230e57600080fd5b6123178561227f565b93506123256020860161227f565b93969395505050506040820135916060013590565b60005b8381101561235557818101518382015260200161233d565b50506000910152565b6000815180845261237681602086016020860161233a565b601f01601f19169290920160200192915050565b602081526000610716602083018461235e565b6000602082840312156123af57600080fd5b5035919050565b6000602082840312156123c857600080fd5b6107168261227f565b6000806000606084860312156123e657600080fd5b83359250602084013591506123fd6040850161227f565b90509250925092565b634e487b7160e01b600052604160045260246000fd5b601f8201601f191681016001600160401b038111828210171561244157612441612406565b6040525050565b60006001600160401b0382111561246157612461612406565b5060051b60200190565b600082601f83011261247c57600080fd5b8135602061248982612448565b604051612496828261241c565b83815260059390931b85018201928281019150868411156124b657600080fd5b8286015b848110156124d157803583529183019183016124ba565b509695505050505050565b600082601f8301126124ed57600080fd5b81356001600160401b0381111561250657612506612406565b60405161251d601f8301601f19166020018261241c565b81815284602083860101111561253257600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600060a0868803121561256757600080fd5b6125708661227f565b945061257e6020870161227f565b935060408601356001600160401b038082111561259a57600080fd5b6125a689838a0161246b565b945060608801359150808211156125bc57600080fd5b6125c889838a0161246b565b935060808801359150808211156125de57600080fd5b506125eb888289016124dc565b9150509295509295909350565b6000806040838503121561260b57600080fd5b8235915061261b6020840161227f565b90509250929050565b6000806040838503121561263757600080fd5b82356001600160401b038082111561264e57600080fd5b818501915085601f83011261266257600080fd5b8135602061266f82612448565b60405161267c828261241c565b83815260059390931b850182019282810191508984111561269c57600080fd5b948201945b838610156126c1576126b28661227f565b825294820194908201906126a1565b965050860135925050808211156126d757600080fd5b506126e48582860161246b565b9150509250929050565b600081518084526020808501945080840160005b8381101561271e57815187529582019590820190600101612702565b509495945050505050565b60208152600061071660208301846126ee565b60008083601f84011261274e57600080fd5b5081356001600160401b0381111561276557600080fd5b6020830191508360208260051b850101111561278057600080fd5b9250929050565b600080600080600080606087890312156127a057600080fd5b86356001600160401b03808211156127b757600080fd5b6127c38a838b0161273c565b909850965060208901359150808211156127dc57600080fd5b6127e88a838b0161273c565b9096509450604089013591508082111561280157600080fd5b5061280e89828a0161273c565b979a9699509497509295939492505050565b6000806000806000806000806080898b03121561283c57600080fd5b88356001600160401b038082111561285357600080fd5b61285f8c838d0161273c565b909a50985060208b013591508082111561287857600080fd5b6128848c838d0161273c565b909850965060408b013591508082111561289d57600080fd5b6128a98c838d0161273c565b909650945060608b01359150808211156128c257600080fd5b506128cf8b828c0161273c565b999c989b5096995094979396929594505050565b600080602083850312156128f657600080fd5b82356001600160401b038082111561290d57600080fd5b818501915085601f83011261292157600080fd5b81358181111561293057600080fd5b86602082850101111561294257600080fd5b60209290920196919550909350505050565b8035801515811461229657600080fd5b6000806040838503121561297757600080fd5b6129808361227f565b915061261b60208401612954565b600080600080608085870312156129a457600080fd5b84359350602085013592506129bb6040860161227f565b91506129c960608601612954565b905092959194509250565b600080600080604085870312156129ea57600080fd5b84356001600160401b0380821115612a0157600080fd5b612a0d8883890161273c565b90965094506020870135915080821115612a2657600080fd5b50612a338782880161273c565b95989497509550505050565b606081526000612a5260608301866126ee565b602083820381850152612a6582876126ee565b915083820360408501528185518084528284019150828160051b85010183880160005b83811015612ab657601f19878403018552612aa483835161235e565b94860194925090850190600101612a88565b50909a9950505050505050505050565b60008060408385031215612ad957600080fd5b612ae28361227f565b915061261b6020840161227f565b600080600080600060a08688031215612b0857600080fd5b612b118661227f565b9450612b1f6020870161227f565b9350604086013592506060860135915060808601356001600160401b03811115612b4857600080fd5b6125eb888289016124dc565b600181811c90821680612b6857607f821691505b602082108103612b8857634e487b7160e01b600052602260045260246000fd5b50919050565b6000808454612b9c81612b54565b60018281168015612bb45760018114612bc957612bf8565b60ff1984168752821515830287019450612bf8565b8860005260208060002060005b85811015612bef5781548a820152908401908201612bd6565b50505082870194505b505050508351612c0c81836020880161233a565b01949350505050565b6020808252601a908201527f43616c6c6572206973206e6f7420746865206f70657261746f72000000000000604082015260600190565b634e487b7160e01b600052601160045260246000fd5b818103818111156106a3576106a3612c4c565b6020808252602e908201527f455243313135353a2063616c6c6572206973206e6f7420746f6b656e206f776e60408201526d195c881bdc88185c1c1c9bdd995960921b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b600060018201612ceb57612ceb612c4c565b5060010190565b602080825260159082015274082e4e4c2f240d8cadccee8d040dad2e6dac2e8c6d605b1b604082015260600190565b60208082526017908201527f43616c6c6572206973206e6f74207468652061646d696e000000000000000000604082015260600190565b601f8211156107ce57600081815260208120601f850160051c81016020861015612d7f5750805b601f850160051c820191505b8181101561176f57828155600101612d8b565b6001600160401b03831115612db557612db5612406565b612dc983612dc38354612b54565b83612d58565b6000601f841160018114612dfd5760008515612de55750838201355b600019600387901b1c1916600186901b178355610818565b600083815260209020601f19861690835b82811015612e2e5786850135825560209485019460019092019101612e0e565b5086821015612e4b5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b808201808211156106a3576106a3612c4c565b60208082526025908201527f455243313135353a207472616e7366657220746f20746865207a65726f206164604082015264647265737360d81b606082015260800190565b6020808252602a908201527f455243313135353a20696e73756666696369656e742062616c616e636520666f60408201526939103a3930b739b332b960b11b606082015260800190565b604081526000612f1260408301856126ee565b8281036020840152612f2481856126ee565b95945050505050565b6001600160a01b0386811682528516602082015260a060408201819052600090612f59908301866126ee565b8281036060840152612f6b81866126ee565b90508281036080840152612f7f818561235e565b98975050505050505050565b600060208284031215612f9d57600080fd5b8151610716816122c5565b600060033d1115612fc15760046000803e5060005160e01c5b90565b600060443d1015612fd25790565b6040516003193d81016004833e81513d6001600160401b03816024840111818411171561300157505050505090565b82850191508151818111156130195750505050505090565b843d87010160208285010111156130335750505050505090565b6130426020828601018761241c565b509095945050505050565b60208082526028908201527f455243313135353a204552433131353552656365697665722072656a656374656040820152676420746f6b656e7360c01b606082015260800190565b7f416363657373436f6e74726f6c3a206163636f756e74200000000000000000008152600083516130cd81601785016020880161233a565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516130fe81602884016020880161233a565b01602801949350505050565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190526000906131449083018461235e565b979650505050505050565b80820281158282048414176106a3576106a3612c4c565b60008161317557613175612c4c565b50600019019056fe523a704056dcd17bcf83bed8b68c59416dac1119be77755efe3bde0a64e46e0ca264697066735822122038e99542bc8ec986f6d93f1991502f58a48bf5c974444021e59188be8492063264736f6c634300081100330000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000003368747470733a2f2f6170692d6d61726b65742d7374672e67656e736f2e67616d652f67616d652f636f6e73756d7074696f6e2f00000000000000000000000000