0x60a06040523060805234801561001457600080fd5b506080516132ef61004c60003960008181610af301528181610b3c01528181610c6801528181610ca80152610e6101526132ef6000f3fe6080604052600436106102465760003560e01c80638129fc1c11610139578063b4308e8a116100b6578063e985e9c51161007a578063e985e9c5146107f8578063f2fde38b14610818578063fa7e5aa814610838578063fc75dade14610852578063fdca9a8c14610872578063ff12ec741461089257600080fd5b8063b4308e8a14610762578063b88d4fde14610777578063c51fa9d214610797578063c87b56dd146107b9578063dde4cba6146107d957600080fd5b806397f5ec67116100fd57806397f5ec671461065a5780639c3a39a21461066f578063a20bb5831461069c578063a22cb465146106bc578063b09afec1146106dc57600080fd5b80638129fc1c146104e95780638da5cb5b146104fe5780638ece9c5b1461051c5780638fd124801461052f57806395d89b411461062e57600080fd5b806342842e0e116101c7578063560cc5541161018b578063560cc554146104545780636352211e1461047457806370a0823114610494578063715018a6146104b45780637e1a362e146104c957600080fd5b806342842e0e146103e45780634f1ef286146104045780635114cb5214610417578063529de1081461042a57806352d1902d1461043f57600080fd5b80630ea362a71161020e5780630ea362a71461034157806318160ddd1461036157806323b872dd146103845780633659cfe6146103a4578063387c3267146103c457600080fd5b8063010d0a0c1461024b57806301ffc9a71461026d57806306fdde03146102a2578063081812fc146102e9578063095ea7b314610321575b600080fd5b34801561025757600080fd5b5061026b610266366004612a6a565b6108a7565b005b34801561027957600080fd5b5061028d610288366004612a9b565b6108d9565b60405190151581526020015b60405180910390f35b3480156102ae57600080fd5b50604080518082019091526015815274446566696e6974656c79204e6f7420416c69656e7360581b60208201525b6040516102999190612b10565b3480156102f557600080fd5b50610309610304366004612b23565b61092b565b6040516001600160a01b039091168152602001610299565b34801561032d57600080fd5b5061026b61033c366004612b3c565b610958565b34801561034d57600080fd5b5061026b61035c366004612b23565b610a11565b34801561036d57600080fd5b5060d354600019015b604051908152602001610299565b34801561039057600080fd5b5061026b61039f366004612b66565b610add565b3480156103b057600080fd5b5061026b6103bf366004612a6a565b610ae8565b3480156103d057600080fd5b5061026b6103df366004612ba2565b610bd1565b3480156103f057600080fd5b5061026b6103ff366004612b66565b610c42565b61026b610412366004612c8b565b610c5d565b61026b610425366004612b23565b610d2e565b34801561043657600080fd5b5061026b610e38565b34801561044b57600080fd5b50610376610e54565b34801561046057600080fd5b5061026b61046f366004612cd8565b610f07565b34801561048057600080fd5b5061030961048f366004612b23565b6111fe565b3480156104a057600080fd5b506103766104af366004612a6a565b611234565b3480156104c057600080fd5b5061026b611284565b3480156104d557600080fd5b5061026b6104e4366004612d7d565b611298565b3480156104f557600080fd5b5061026b6112b4565b34801561050a57600080fd5b506097546001600160a01b0316610309565b61026b61052a366004612dbf565b6113ee565b34801561053b57600080fd5b506105e461054a366004612a6a565b6040805160a081018252600080825260208201819052918101829052606081018290526080810191909152506001600160a01b0316600090815260ca6020908152604091829020825160a081018452905461ffff8082168352620100008204811693830193909352600160201b81048316938201939093526601000000000000830482166060820152600160401b90920416608082015290565b6040516102999190815161ffff9081168252602080840151821690830152604080840151821690830152606080840151821690830152608092830151169181019190915260a00190565b34801561063a57600080fd5b50604080518082019091526003815262444e4160e81b60208201526102dc565b34801561066657600080fd5b5061026b611510565b34801561067b57600080fd5b5061037661068a366004612b23565b600090815260cd602052604090205490565b3480156106a857600080fd5b5061026b6106b7366004612de2565b611535565b3480156106c857600080fd5b5061026b6106d7366004612e2a565b611550565b3480156106e857600080fd5b506106fc6106f7366004612b23565b61155b565b6040805182516001600160a01b03908116825260208085015190911690820152828201516001600160401b039081169282019290925260608084015183169082015260808084015183169082015260a0928301519091169181019190915260c001610299565b34801561076e57600080fd5b5061026b6116e5565b34801561078357600080fd5b5061026b610792366004612e54565b611785565b3480156107a357600080fd5b506107ac6117d6565b6040516102999190612ebb565b3480156107c557600080fd5b506102dc6107d4366004612b23565b611836565b3480156107e557600080fd5b5060d75461028d90610100900460ff1681565b34801561080457600080fd5b5061028d610813366004612eed565b611875565b34801561082457600080fd5b5061026b610833366004612a6a565b6118a3565b34801561084457600080fd5b5060d75461028d9060ff1681565b34801561085e57600080fd5b5061026b61086d366004612ba2565b611919565b34801561087e57600080fd5b5061030961088d366004612b23565b611aff565b34801561089e57600080fd5b5061026b611b58565b6108af611b74565b60d780546001600160a01b03909216620100000262010000600160b01b0319909216919091179055565b60006380ac58cd60e01b6001600160e01b03198316148061090a5750635b5e139f60e01b6001600160e01b03198316145b8061092557506301ffc9a760e01b6001600160e01b03198316145b92915050565b60008161093781611b9f565b600083815260cb60205260409020546001600160a01b031691505b50919050565b60006109638261155b565b5190506001600160a01b03838116908216141561099357604051632c1ce22d60e01b815260040160405180910390fd5b336001600160a01b038216148015906109b357506109b18133611875565b155b156109d4576040516001625d3add60e11b0319815260040160405180910390fd5b600082815260cd602052604090205415610a015760405163b86987c960e01b815260040160405180910390fd5b610a0c818484611bce565b505050565b610a19611c2a565b600260ce5560d75460ff16610a41576040516344af64b360e11b815260040160405180910390fd5b333b15610a6157604051633c589eb560e01b815260040160405180910390fd5b61022760d3541115610a86576040516399f01bfd60e01b815260040160405180910390fd5b60d25433600090815260ca6020526040902054610aa89061ffff166001612f2d565b61ffff161115610acb5760405163056daab160e51b815260040160405180910390fd5b610ad53382611c4e565b50600160ce55565b610a0c838383611d93565b306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161415610b3a5760405162461bcd60e51b8152600401610b3190612f53565b60405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610b83600080516020613253833981519152546001600160a01b031690565b6001600160a01b031614610ba95760405162461bcd60e51b8152600401610b3190612f9f565b610bb28161211d565b60408051600080825260208201909252610bce91839190612125565b50565b610bd9611b74565b610be1611c2a565b600260ce5560d654610bf5906101f4612feb565b821115610c1557604051633559ce3760e21b815260040160405180910390fd5b8160d66000828254610c279190613002565b90915550610c39905081836000612290565b5050600160ce55565b610a0c83838360405180602001604052806000815250611785565b306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161415610ca65760405162461bcd60e51b8152600401610b3190612f53565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610cef600080516020613253833981519152546001600160a01b031690565b6001600160a01b031614610d155760405162461bcd60e51b8152600401610b3190612f9f565b610d1e8261211d565b610d2a82826001612125565b5050565b6000610d398261155b565b80519091506001600160a01b03163314610d6657604051631af28e6b60e31b815260040160405180910390fd5b600082815260cd6020526040902054610d9257604051630a7bc0e560e11b815260040160405180910390fd5b600082815260cd602052604090205434811015610e0557600083815260cd60205260408082208054908390559051348281039392339291146108fc0290849084818181858888f19350505050905080610dfe57604051637d689b9b60e01b815260040160405180910390fd5b5050505050565b80341415610e20575050600090815260cd6020526040812055565b600083815260cd602052604090203482039055505050565b610e40611b74565b60d9805460ff19811660ff90911615179055565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610ef45760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c60448201527f6c6564207468726f7567682064656c656761746563616c6c00000000000000006064820152608401610b31565b5060008051602061325383398151915290565b610f0f611b74565b60005b8151811015610d2a576000828281518110610f2f57610f2f61301a565b602002602001015190506000610f448261155b565b600083815260cd6020526040902054909150156111f45762278d008160a001516001600160401b0316420311156111f45780516001600160a01b0316600090815260ca602081905260408220805460001961ffff600160201b808404821692909201160265ffff0000000019909116179055600191610fcb6097546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805461ffff600160201b80830482169098011690960265ffff00000000199096169590951790945585845260c9909252909120805490911661104f57606082015160028201805467ffffffffffffffff19166001600160401b039092169190911790555b6097546001600160a01b031681546001600160a01b0319166001600160a01b03918216178255600282018054600160401b600160c01b031916600160801b426001600160401b03160267ffffffffffffffff60401b191617905560d35460018501600081815260c96020526040902080549193928410929091161580156110d35750815b1561114757845181546001600160a01b0319166001600160a01b0390911617815560a0850151600282018054606088015177ffffffffffffffff0000000000000000ffffffffffffffff19909116600160801b6001600160401b039485160267ffffffffffffffff19161792169190911790555b600086815260cd6020526040808220805460cf54918490558851925181830394936001600160a01b0316929091146108fc0290849084818181858888f193505050509050806111a957604051637d689b9b60e01b815260040160405180910390fd5b876111bc6097546001600160a01b031690565b6001600160a01b031688600001516001600160a01b031660008051602061329a83398151915260405160405180910390a45050505050505b5050600101610f12565b60008061120a8361155b565b60208101519091506001600160a01b03161561122a57806020015161122d565b80515b9392505050565b60006001600160a01b03821661125d5760405163b1a8915f60e01b815260040160405180910390fd5b506001600160a01b0316600090815260ca6020526040902054600160201b900461ffff1690565b61128c611b74565b6112966000612415565b565b6112a0611b74565b60cf9390935560d09190915560d15560d255565b600054610100900460ff16158080156112d45750600054600160ff909116105b806112ee5750303b1580156112ee575060005460ff166001145b6113515760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610b31565b6000805460ff191660011790558015611374576000805461ff0019166101001790555b66b5303ad38b800060cf55662bb2c8eabcc00060d055600a60d155600160d281905560d381905560ce556113a6612467565b8015610bce576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a150565b6113f6611c2a565b600260ce5560d754610100900460ff16611423576040516344af64b360e11b815260040160405180910390fd5b333b1561144357604051633c589eb560e01b815260040160405180910390fd5b6127438260d65460d5546114579190613002565b6114619190613002565b111561148057604051633811f23760e21b815260040160405180910390fd5b60d15433600090815260ca60205260409020546114a290849061ffff16613002565b11156114c15760405163393f345d60e11b815260040160405180910390fd5b600081156114d2575060d0546114d7565b5060cf545b8083023481146114fa57604051633610380f60e01b815260040160405180910390fd5b611505338585612290565b5050600160ce555050565b611518611b74565b60d7805461ff001981166101009182900460ff1615909102179055565b61153d611b74565b8051610d2a9060d8906020840190612996565b610d2a338383612496565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a08101919091528161159781611b9f565b600083815260c96020908152604091829020825160c08101845281546001600160a01b039081168083526001840154918216948301949094526001600160401b03600160a01b9091048116948201949094526002909101548084166060830152600160401b810484166080830152600160801b900490921660a083015215611620579150610952565b835b60001901600081815260c960205260409020546001600160a01b0316156116e057600090815260c96020908152604091829020825160c08101845281546001600160a01b039081168083526001840154918216948301949094526001600160401b03600160a01b9091048116948201949094526002909101548084166060808401918252600160401b830486166080850152600160801b909204851660a0938401908152938652518416908501529051909116908201529150610952565b611622565b6116ed611b74565b4761170b576040516306b686a360e01b815260040160405180910390fd5b60d7546040516000916201000090046001600160a01b03169047908381818185875af1925050503d806000811461175e576040519150601f19603f3d011682016040523d82523d6000602084013e611763565b606091505b5050905080610bce57604051631844850160e01b815260040160405180910390fd5b611790848484611d93565b6001600160a01b0383163b151580156117b257506117b084848484612536565b155b156117d0576040516368d2bf6b60e11b815260040160405180910390fd5b50505050565b6117de612a1a565b60405180610120016040528060cf54815260200160d054815260200162278d00815260200160d154815260200160d254815260200160d354815260200160d554815260200160d454815260200160d654815250905090565b60608161184281611b9f565b60d861184d84612636565b60405160200161185e929190613081565b604051602081830303815290604052915050919050565b6001600160a01b03918216600090815260cc6020908152604080832093909416825291909152205460ff1690565b6118ab611b74565b6001600160a01b0381166119105760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610b31565b610bce81612415565b60006119248361155b565b80519091506001600160a01b0316331461195157604051631af28e6b60e31b815260040160405180910390fd5b80516001600160a01b038381169116141561197f5760405163553cc7b760e01b815260040160405180910390fd5b816001600160a01b031681602001516001600160a01b031614156119b657604051637bd6aaf160e01b815260040160405180910390fd5b600083815260cd6020526040902054156119e3576040516349e7e73760e01b815260040160405180910390fd5b600083815260c960205260409020600101805467ffffffffffffffff60a01b1916600160a01b426001600160401b0316021790556001600160a01b038216611a58578051602082015160405185926001600160a01b0390811692169060008051602061329a83398151915290600090a4611acd565b60208101516001600160a01b0316611a9957805160405184916001600160a01b038086169291169060008051602061329a83398151915290600090a4611acd565b82826001600160a01b031682602001516001600160a01b031660008051602061329a83398151915260405160405180910390a45b50600091825260c9602052604090912060010180546001600160a01b0319166001600160a01b03909216919091179055565b60d95460009060ff16611b2557604051633558c6dd60e01b815260040160405180910390fd5b60da548214611b4757604051631779e75360e31b815260040160405180910390fd5b505060db546001600160a01b031690565b611b60611b74565b60d7805460ff19811660ff90911615179055565b6097546001600160a01b03163314611296576040516306f51a9560e21b815260040160405180910390fd5b6001811080611bb0575060d3548110155b15610bce57604051630faaf8cd60e01b815260040160405180910390fd5b600081815260cb602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b600260ce541415611296576040516381dcb1e560e01b815260040160405180910390fd5b6001600160a01b038216611c7557604051630521650960e51b815260040160405180910390fd5b6001600160a01b038216600081815260ca602090815260408083208054600160201b6201000061ffff8084168a01811661ffff198516811783900482168b01821690920263ffffffff1990941690911792909217818104831689019092160265ffff000000001990911617905560d38054845260c990925290912080546001600160a01b0319169092178255600282018054600160801b6001600160401b03421690810277ffffffffffffffff0000000000000000ffffffffffffffff19909216171790555482015b8060d3541015611d7d5760d3546040516001600160a01b0386169060009060008051602061329a833981519152908290a460d380546001019055611d3e565b505060d580548201905560d48054909101905550565b6000611d9e8261155b565b905080600001516001600160a01b0316846001600160a01b031614611dd6576040516303b2ffcf60e21b815260040160405180910390fd5b6000336001600160a01b0386161480611df45750611df48533611875565b80611e0f575033611e048461092b565b6001600160a01b0316145b905080611e2f576040516322acdb0760e11b815260040160405180910390fd5b600083815260cd602052604090205415611e5c57604051631866e2c360e21b815260040160405180910390fd5b836001600160a01b0316856001600160a01b03161415611e8f57604051630ec83d2b60e31b815260040160405180910390fd5b6001600160a01b038416611eb657604051633d96368960e11b815260040160405180910390fd5b611ec285600085611bce565b6001600160a01b03858116600090815260ca60209081526040808320805465ffff0000000019808216600160201b9283900461ffff9081166000190181168402919091179093558a87168652838620805491821691839004841660010190931690910217905586835260c990915290208054909116611f6357606083015160028201805467ffffffffffffffff19166001600160401b039092169190911790555b80546001600160a01b038087166001600160a01b0319909216919091178255600282018054600160401b6001600160401b03428116600160801b0267ffffffffffffffff60801b1984168117839004821660010190911690910267ffffffffffffffff60401b19909116600160401b600160c01b03199092169190911717905560208401511615612043576001810180546001600160e01b03191690556001600160a01b038616600090815260ca60205260409020805460001961ffff600160401b808404821692909201160269ffff0000000000000000199091161790555b60d35460018501600081815260c960205260409020805491928310916001600160a01b03161580156120725750815b156120e35780546001600160a01b0319166001600160a01b038a1617815560a0860151600282018054606089015177ffffffffffffffff0000000000000000ffffffffffffffff19909116600160801b6001600160401b039485160267ffffffffffffffff19161792169190911790555b5050505082846001600160a01b0316866001600160a01b031660008051602061329a83398151915260405160405180910390a45050505050565b610bce611b74565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161561215857610a0c83612733565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156121b2575060408051601f3d908101601f191682019092526121af9181019061311f565b60015b6122155760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610b31565b60008051602061325383398151915281146122845760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610b31565b50610a0c8383836127cf565b6001600160a01b0383166122b757604051630521650960e51b815260040160405180910390fd5b6001600160a01b038316600081815260ca60209081526040808320805465ffff0000ffff19811661ffff8083168a018116918217600160201b61ffff1990941690921783900481168a011690910217905560d35480845260c990925290912080546001600160a01b031916909217825560028201805477ffffffffffffffff0000000000000000ffffffffffffffff1916600160801b426001600160401b031690810267ffffffffffffffff19169190911717905560d5805485019055908184019083156123d3575b818310156123ce5760d05460cf54600085815260cd602052604080822093909203909255516001850194916001600160a01b0389169160008051602061329a833981519152908290a4612380565b61240b565b5b8183101561240b576040516001840193906001600160a01b0388169060009060008051602061329a833981519152908290a46123d4565b505060d355505050565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600054610100900460ff1661248e5760405162461bcd60e51b8152600401610b3190613138565b6112966127f4565b816001600160a01b0316836001600160a01b031614156124c95760405163490b639b60e11b815260040160405180910390fd5b6001600160a01b03838116600081815260cc6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b60006001600160a01b0384163b1561262a57604051630a85bd0160e11b81526001600160a01b0385169063150b7a029061257a903390899088908890600401613183565b6020604051808303816000875af19250505080156125b5575060408051601f3d908101601f191682019092526125b2918101906131c0565b60015b612610573d8080156125e3576040519150601f19603f3d011682016040523d82523d6000602084013e6125e8565b606091505b50805161260857604051635fbda81f60e11b815260040160405180910390fd5b805181602001fd5b6001600160e01b031916630a85bd0160e11b14905061262e565b5060015b949350505050565b60608161265a5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115612684578061266e816131dd565b915061267d9050600a8361320e565b915061265e565b6000816001600160401b0381111561269e5761269e612bce565b6040519080825280601f01601f1916602001820160405280156126c8576020820181803683370190505b5090505b841561262e576126dd600183612feb565b91506126ea600a86613222565b6126f5906030613002565b60f81b81838151811061270a5761270a61301a565b60200101906001600160f81b031916908160001a90535061272c600a8661320e565b94506126cc565b6001600160a01b0381163b6127a05760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610b31565b60008051602061325383398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6127d883612824565b6000825111806127e55750805b15610a0c576117d08383612864565b600054610100900460ff1661281b5760405162461bcd60e51b8152600401610b3190613138565b61129633612415565b61282d81612733565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606001600160a01b0383163b6128cc5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610b31565b600080846001600160a01b0316846040516128e79190613236565b600060405180830381855af49150503d8060008114612922576040519150601f19603f3d011682016040523d82523d6000602084013e612927565b606091505b509150915061294f828260405180606001604052806027815260200161327360279139612958565b95945050505050565b6060831561296757508161122d565b61122d838381511561297c5781518083602001fd5b8060405162461bcd60e51b8152600401610b319190612b10565b8280546129a290613030565b90600052602060002090601f0160209004810192826129c45760008555612a0a565b82601f106129dd57805160ff1916838001178555612a0a565b82800160010185558215612a0a579182015b82811115612a0a5782518255916020019190600101906129ef565b50612a16929150612a39565b5090565b6040518061012001604052806009906020820280368337509192915050565b5b80821115612a165760008155600101612a3a565b80356001600160a01b0381168114612a6557600080fd5b919050565b600060208284031215612a7c57600080fd5b61122d82612a4e565b6001600160e01b031981168114610bce57600080fd5b600060208284031215612aad57600080fd5b813561122d81612a85565b60005b83811015612ad3578181015183820152602001612abb565b838111156117d05750506000910152565b60008151808452612afc816020860160208601612ab8565b601f01601f19169290920160200192915050565b60208152600061122d6020830184612ae4565b600060208284031215612b3557600080fd5b5035919050565b60008060408385031215612b4f57600080fd5b612b5883612a4e565b946020939093013593505050565b600080600060608486031215612b7b57600080fd5b612b8484612a4e565b9250612b9260208501612a4e565b9150604084013590509250925092565b60008060408385031215612bb557600080fd5b82359150612bc560208401612a4e565b90509250929050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715612c0c57612c0c612bce565b604052919050565b60006001600160401b03831115612c2d57612c2d612bce565b612c40601f8401601f1916602001612be4565b9050828152838383011115612c5457600080fd5b828260208301376000602084830101529392505050565b600082601f830112612c7c57600080fd5b61122d83833560208501612c14565b60008060408385031215612c9e57600080fd5b612ca783612a4e565b915060208301356001600160401b03811115612cc257600080fd5b612cce85828601612c6b565b9150509250929050565b60006020808385031215612ceb57600080fd5b82356001600160401b0380821115612d0257600080fd5b818501915085601f830112612d1657600080fd5b813581811115612d2857612d28612bce565b8060051b9150612d39848301612be4565b8181529183018401918481019088841115612d5357600080fd5b938501935b83851015612d7157843582529385019390850190612d58565b98975050505050505050565b60008060008060808587031215612d9357600080fd5b5050823594602084013594506040840135936060013592509050565b80358015158114612a6557600080fd5b60008060408385031215612dd257600080fd5b82359150612bc560208401612daf565b600060208284031215612df457600080fd5b81356001600160401b03811115612e0a57600080fd5b8201601f81018413612e1b57600080fd5b61262e84823560208401612c14565b60008060408385031215612e3d57600080fd5b612e4683612a4e565b9150612bc560208401612daf565b60008060008060808587031215612e6a57600080fd5b612e7385612a4e565b9350612e8160208601612a4e565b92506040850135915060608501356001600160401b03811115612ea357600080fd5b612eaf87828801612c6b565b91505092959194509250565b6101208101818360005b6009811015612ee4578151835260209283019290910190600101612ec5565b50505092915050565b60008060408385031215612f0057600080fd5b612f0983612a4e565b9150612bc560208401612a4e565b634e487b7160e01b600052601160045260246000fd5b600061ffff808316818516808303821115612f4a57612f4a612f17565b01949350505050565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b6163746976652070726f787960a01b606082015260800190565b600082821015612ffd57612ffd612f17565b500390565b6000821982111561301557613015612f17565b500190565b634e487b7160e01b600052603260045260246000fd5b600181811c9082168061304457607f821691505b6020821081141561095257634e487b7160e01b600052602260045260246000fd5b60008151613077818560208601612ab8565b9290920192915050565b600080845481600182811c91508083168061309d57607f831692505b60208084108214156130bd57634e487b7160e01b86526022600452602486fd5b8180156130d157600181146130e25761310f565b60ff1986168952848901965061310f565b60008b81526020902060005b868110156131075781548b8201529085019083016130ee565b505084890196505b50505050505061294f8185613065565b60006020828403121561313157600080fd5b5051919050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906131b690830184612ae4565b9695505050505050565b6000602082840312156131d257600080fd5b815161122d81612a85565b60006000198214156131f1576131f1612f17565b5060010190565b634e487b7160e01b600052601260045260246000fd5b60008261321d5761321d6131f8565b500490565b600082613231576132316131f8565b500690565b60008251613248818460208701612ab8565b919091019291505056fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa264697066735822122040bd41264bc0aa8255b486a684caca73effff2d986151fc481af2386c6cdc96d64736f6c634300080c0033