0xb6720696ef899830362b563bcdd7c5b441d3471670b9cd6aeae907705006c48e608060405234801561000f575f80fd5b50604051615d08380380615d0883398101604081905261002e916100c5565b600280546001600160a01b0319166001600160a01b03831617905561005282610059565b50506100f6565b600180546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b80516001600160a01b03811681146100c0575f80fd5b919050565b5f80604083850312156100d6575f80fd5b6100df836100aa565b91506100ed602084016100aa565b90509250929050565b615c05806101035f395ff3fe608060405234801561000f575f80fd5b506004361061005f575f3560e01c806251e6111461006357806310d863be14610092578063300d42c3146100a557806339f02d6d146100ba5780638da5cb5b146100cd578063f2fde38b146100de575b5f80fd5b61007661007136600461052a565b6100f1565b6040516001600160a01b03909116815260200160405180910390f35b600354610076906001600160a01b031681565b6100b86100b336600461057f565b6103e0565b005b600254610076906001600160a01b031681565b6001546001600160a01b0316610076565b6100b86100ec36600461057f565b61045f565b5f6100fa6104a4565b600354604051632fd702bb60e11b81523360048201526001600160a01b0390911690635fae057690602401602060405180830381865afa158015610140573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061016491906105a5565b61018157604051630b46905560e21b815260040160405180910390fd5b60025460405163576148ef60e11b81523360048201526001600160a01b039091169063aec291de90602401602060405180830381865afa1580156101c7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101eb91906105a5565b80156102115750336102056101808401610160850161057f565b6001600160a01b031614155b1561022f57604051630782484160e21b815260040160405180910390fd5b6002546040515f9184916001600160a01b039091169061024e9061051d565b61025992919061063c565b604051809103905ff080158015610272573d5f803e3d5ffd5b506002549091506001600160a01b031663c375d1ce8261029a6101808701610160880161057f565b6102ac6101a08801610180890161057f565b6102be6101e089016101c08a0161057f565b6102d06101c08a016101a08b0161057f565b6040805160e088901b6001600160e01b03191681526001600160a01b03968716600482015294861660248601529285166044850152908416606484015290921660848201529086013560a4820152608086013560c4820152602086013560e4820152610104015f604051808303815f87803b15801561034d575f80fd5b505af115801561035f573d5f803e3d5ffd5b50610376925050506101a08401610180850161057f565b6001600160a01b03166103916101808501610160860161057f565b6001600160a01b0316826001600160a01b03167f15aec673cf9aaef68d41813551aebf31ff261159aa1f187799a9d2bb088a5a0460405160405180910390a490506103db60015f55565b919050565b6103e86104a4565b6001546001600160a01b0316331461041357604051630b2db9b760e31b815260040160405180910390fd5b6001600160a01b03811661043a57604051631cdaa1ed60e31b815260040160405180910390fd5b600380546001600160a01b0319166001600160a01b03831617905560015f5550565b50565b6104676104a4565b6001546001600160a01b0316331461049257604051630b2db9b760e31b815260040160405180910390fd5b61049b816104cc565b61045c60015f55565b60025f54036104c6576040516306fda65d60e31b815260040160405180910390fd5b60025f55565b600180546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6153de806107f283390190565b5f6020828403121561053a575f80fd5b813567ffffffffffffffff811115610550575f80fd5b82016102808185031215610562575f80fd5b9392505050565b80356001600160a01b03811681146103db575f80fd5b5f6020828403121561058f575f80fd5b61056282610569565b801515811461045c575f80fd5b5f602082840312156105b5575f80fd5b815161056281610598565b5f808335601e198436030181126105d5575f80fd5b830160208101925035905067ffffffffffffffff8111156105f4575f80fd5b803603821315610602575f80fd5b9250929050565b81835281816020850137505f828201602090810191909152601f909101601f19169091010190565b80356103db81610598565b60408082528335828201526020840135606080840191909152908401356080808401919091529084013560a0808401919091529084013560c0808401919091529084013560e080840191909152908401356101008084019190915290840135610120808401919091529084013561014080840191909152908401356101608301525f906106cb908501856105c0565b6102806101808501526106e36102c085018284610609565b9150506106f36101608601610569565b6001600160a01b03166101a084015261070f6101808601610569565b6001600160a01b03166101c084015261072b6101a08601610569565b6001600160a01b03166101e08401526107476101c08601610569565b6001600160a01b03166102008401526107636101e08601610569565b6001600160a01b031661022084015261077f6102008601610569565b6001600160a01b031661024084015261079b6102208601610569565b6001600160a01b03166102608401526107b76102408601610569565b6001600160a01b03166102808401526107d36102608601610631565b15156102a08401526001600160a01b0384166020840152905061056256fe608060405234801561000f575f80fd5b506040516153de3803806153de83398101604081905261002e916107bc565b60015f55601980546001600160a01b0319908116338083169190911717909155602280549091166001600160a01b03831617905561006b82610072565b5050610aed565b6101608101516001600160a01b03166100c45760405162461bcd60e51b815260206004820152600f60248201526e13195b99195c881c995c5d5a5c9959608a1b60448201526064015b60405180910390fd5b6101808101516001600160a01b03166101135760405162461bcd60e51b8152602060048201526011602482015270109bdc9c9bddd95c881c995c5d5a5c9959607a1b60448201526064016100bb565b6101e08101516001600160a01b031661016e5760405162461bcd60e51b815260206004820152601560248201527f46656573206d616e61676572207265717569726564000000000000000000000060448201526064016100bb565b8061016001516001600160a01b03168161018001516001600160a01b0316036101cc5760405162461bcd60e51b815260206004820152601060248201526f24b73b30b634b2103137b93937bbb2b960811b60448201526064016100bb565b8061016001516001600160a01b0316816101e001516001600160a01b03161415801561021457508061018001516001600160a01b0316816101e001516001600160a01b031614155b6102605760405162461bcd60e51b815260206004820152601460248201527f496e76616c69642066656573206d616e6167657200000000000000000000000060448201526064016100bb565b8051610e1011156102b35760405162461bcd60e51b815260206004820152601860248201527f46756e64696e6720706572696f6420746f6f2073686f7274000000000000000060448201526064016100bb565b612710816060015182604001516102ca9190610960565b6102d4919061097d565b8160400151116102ff5760405162461bcd60e51b8152602060048201525f60248201526044016100bb565b5f8160800151116103405760405162461bcd60e51b815260206004820152600b60248201526a24b73b30b634b21020a82960a91b60448201526064016100bb565b610e10816020015110156103965760405162461bcd60e51b815260206004820152601a60248201527f5061796d656e7420696e74657276616c20746f6f2073686f727400000000000060448201526064016100bb565b612328816060015111156103ec5760405162461bcd60e51b815260206004820152601860248201527f4f726967696e6174696f6e2066656520746f6f2068696768000000000000000060448201526064016100bb565b6101a08101516001600160a01b03166104565760a0810151156104515760405162461bcd60e51b815260206004820152601a60248201527f496e76616c696420696e697469616c20636f6c6c61746572616c00000000000060448201526064016100bb565b6104bb565b5f8160a0015111801561046f5750612ee08160a0015111155b6104bb5760405162461bcd60e51b815260206004820152601a60248201527f496e76616c696420696e697469616c20636f6c6c61746572616c00000000000060448201526064016100bb565b601a546001600160a01b0316156105145760405162461bcd60e51b815260206004820152601360248201527f416c726561647920696e697469616c697a65640000000000000000000000000060448201526064016100bb565b610160810151601a80546001600160a01b03199081166001600160a01b0393841617909155610180830151601b805483169184169190911790556101e0830151602180546101c0860151601c805486169187169190911790556101a0860151601d80548616918716919091179055610260860151928516600161ff0160a01b031990911617600160a81b921515929092029190911790558251600855608083015160035560208084015160045560a0840151600b5560c0840151600c55610220840151601e8054841691851691909117905561024084015181548316908416179055610200830151601f80549092169216919091179055606081015160408201516127109161062291610960565b61062c919061097d565b816040015161063b919061099c565b60025560408101516001819055600f819055600454600354620f4240926204cfe0929161066791610960565b6106719190610960565b61067b919061097d565b610685919061097d565b6010556021805460ff60a01b1916600160a01b17905560e0810151600d55610100810151600e556101208101516016556101408101516018906106c89082610a33565b5050565b634e487b7160e01b5f52604160045260245ffd5b60405161028081016001600160401b0381118282101715610703576107036106cc565b60405290565b5f82601f830112610718575f80fd5b81516001600160401b03811115610731576107316106cc565b604051601f8201601f19908116603f011681016001600160401b038111828210171561075f5761075f6106cc565b604052818152838201602001851015610776575f80fd5b8160208501602083015e5f918101602001919091529392505050565b80516001600160a01b03811681146107a8575f80fd5b919050565b805180151581146107a8575f80fd5b5f80604083850312156107cd575f80fd5b82516001600160401b038111156107e2575f80fd5b830161028081860312156107f4575f80fd5b6107fc6106e0565b815181526020808301519082015260408083015190820152606080830151908201526080808301519082015260a0808301519082015260c0808301519082015260e08083015190820152610100808301519082015261012080830151908201526101408201516001600160401b03811115610875575f80fd5b61088187828501610709565b610140830152506108956101608301610792565b6101608201526108a86101808301610792565b6101808201526108bb6101a08301610792565b6101a08201526108ce6101c08301610792565b6101c08201526108e16101e08301610792565b6101e08201526108f46102008301610792565b6102008201526109076102208301610792565b61022082015261091a6102408301610792565b61024082015261092d61026083016107ad565b6102608201529250610943905060208401610792565b90509250929050565b634e487b7160e01b5f52601160045260245ffd5b80820281158282048414176109775761097761094c565b92915050565b5f8261099757634e487b7160e01b5f52601260045260245ffd5b500490565b818103818111156109775761097761094c565b600181811c908216806109c357607f821691505b6020821081036109e157634e487b7160e01b5f52602260045260245ffd5b50919050565b601f821115610a2e57805f5260205f20601f840160051c81016020851015610a0c5750805b601f840160051c820191505b81811015610a2b575f8155600101610a18565b50505b505050565b81516001600160401b03811115610a4c57610a4c6106cc565b610a6081610a5a84546109af565b846109e7565b6020601f821160018114610a92575f8315610a7b5750848201515b5f19600385901b1c1916600184901b178455610a2b565b5f84815260208120601f198516915b82811015610ac15787850151825560209485019460019092019101610aa1565b5084821015610ade57868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b6148e480610afa5f395ff3fe608060405234801561000f575f80fd5b50600436106103b4575f3560e01c80636f0b0c1c116101f5578063a3fdafaa11610114578063d60d685a116100a9578063df74e24b11610079578063df74e24b1461079d578063eb2be795146107a6578063ee3f1bdc146107b9578063f4c80798146107cc575f80fd5b8063d60d685a14610764578063d7530e1314610778578063dbc162de14610781578063dc77532c14610794575f80fd5b8063bad6ec8a116100e4578063bad6ec8a1461072c578063bbb0e2d014610735578063bcead63e14610748578063caa4d4c21461075b575f80fd5b8063a3fdafaa146106e0578063ac7c5429146106e9578063b2016bd414610706578063b3a8156e14610719575f80fd5b80638db579941161018a5780639e53111f1161015a5780639e53111f146106bd578063a05f0986146106c6578063a076bf88146106cf578063a2a3f64a146106d8575f80fd5b80638db579941461067a5780638e2be37b14610682578063951b9ce3146106975780639cf160f6146106aa575f80fd5b80637c007bb5116101c55780637c007bb51461064e5780637d32c505146106565780637df1f1b91461065e57806381a1517b14610671575f80fd5b80636f0b0c1c1461062157806374d7c62b14610629578063796b23bb146106325780637b6f0a581461063b575f80fd5b8063373071f2116102e15780634f322ae8116102765780636140e50d116102465780636140e50d146105e957806362c09037146105fc5780636a9d5a22146106055780636acc830214610618575f80fd5b80634f322ae8146105b15780635060599c146105ba57806350c00197146105cd578063585f777e146105e0575f80fd5b806344e02dbc116102b157806344e02dbc1461054a57806347c421b51461055d578063481c6a75146105705780634bbe9e3514610583575f80fd5b8063373071f2146104f457806340ff10f414610507578063412387d81461052e5780634281f8ee14610537575f80fd5b80631e0bbf9e116103575780632630c12f116103275780632630c12f146104b357806328a07025146104c65780633560df8c146104ce578063371fd8e6146104e1575f80fd5b80631e0bbf9e146104505780631f093943146104595780631f21cc911461046257806325af34cd1461048d575f80fd5b80631108897311610392578063110889731461040157806314a6bf0f1461040a578063196e74a71461043f5780631d224ccd14610448575f80fd5b806306dc40fe146103b857806309c12ccb146103c257806310c73eaf146103dd575b5f80fd5b6103c06107d5565b005b6103ca610899565b6040519081526020015b60405180910390f35b6021546103f190600160a81b900460ff1681565b60405190151581526020016103d4565b6103ca60125481565b610412610932565b604080519687526020870195909552938501929092526060840152608083015260a082015260c0016103d4565b6103ca600f5481565b6010546103ca565b6103ca600d5481565b6103ca60175481565b601954610475906001600160a01b031681565b6040516001600160a01b0390911681526020016103d4565b6021546104a190600160a01b900460ff1681565b60405160ff90911681526020016103d4565b601f54610475906001600160a01b031681565b6103c06109d5565b6103c06104dc3660046142a9565b610e43565b6103c06104ef3660046142a9565b610edd565b6103c06105023660046142c0565b61103a565b6103ca7f3ad4b457f434f621640480685c573524122d3242a2d1681cf0bffeadc03ad2fe81565b6103ca60055481565b6103c06105453660046142ed565b61113c565b6103c06105583660046142a9565b611349565b6103c061056b3660046142c0565b61165f565b602154610475906001600160a01b031681565b6105966105913660046142a9565b6117c5565b604080519384526020840192909252908201526060016103d4565b6103ca60035481565b6103c06105c83660046142a9565b61192e565b6103c06105db36600461430d565b611c1d565b6103ca600a5481565b6103c06105f73660046142a9565b611c70565b6103ca60075481565b6103c06106133660046142a9565b611dac565b6103ca60025481565b6103c0611f7f565b6103ca60085481565b6103ca60095481565b6103c06106493660046142a9565b612224565b6103c06122f8565b6103c061250c565b601b54610475906001600160a01b031681565b6103ca600e5481565b6103c06126ed565b61068a61286d565b6040516103d49190614384565b602254610475906001600160a01b031681565b601e54610475906001600160a01b031681565b6103ca60115481565b6103ca60135481565b6103ca600c5481565b6103c06128f9565b6103ca60155481565b6106f1612b1a565b604080519283526020830191909152016103d4565b601d54610475906001600160a01b031681565b602054610475906001600160a01b031681565b6103ca600b5481565b6103c06107433660046142c0565b612b4b565b601a54610475906001600160a01b031681565b6103ca60015481565b6103ca5f8051602061488f83398151915281565b6103ca60165481565b601c54610475906001600160a01b031681565b6103ca60045481565b6103ca60145481565b6103ca6107b43660046143b9565b612c34565b6103c06107c73660046142ed565b612c4a565b6103ca60065481565b6107dd612cfa565b601b546001600160a01b031633146108105760405162461bcd60e51b8152600401610807906143e8565b60405180910390fd5b602154600160a01b900460ff1660041461083c5760405162461bcd60e51b81526004016108079061440f565b600a541561085c5760405162461bcd60e51b81526004016108079061443b565b610864612d51565b5f61086d612e29565b5090505f8061087b83612efc565b509150915061088b838383612ff2565b50505061089760015f55565b565b6021545f90600160a01b900460ff166004146108b457505f90565b5f600554426108c39190614478565b90505f600454821061090b576004546108dc90836144a5565b156108fe576004546108ee90836144b8565b6108f99060016144cb565b61090e565b6004546108f990836144b8565b60015b90506004548161091e91906144de565b60055461092b91906144cb565b9250505090565b6021545f9081908190819081908190600319600160a01b90910460ff16016109cd575f600554426109639190614478565b905060045481106109aa5760045461097b90826144a5565b1561099d5760045461098d90826144b8565b6109989060016144cb565b6109ad565b60045461099890826144b8565b60015b96506109b7612e29565b965094506109c485612efc565b91955093509150505b909192939495565b6109dd612cfa565b601a546001600160a01b03163314610a075760405162461bcd60e51b8152600401610807906144f5565b602154600160a01b900460ff1660041480610a2e5750602154600160a01b900460ff166003145b610a4a5760405162461bcd60e51b81526004016108079061440f565b5f600a5411610a9b5760405162461bcd60e51b815260206004820152601760248201527f4c6f616e20776173206e6f742063616c6c6564207965740000000000000000006044820152606401610807565b600a544211610aec5760405162461bcd60e51b815260206004820152601b60248201527f43616c6c6261636b20706572696f64206e6f7420656c617073656400000000006044820152606401610807565b6021805460ff60a01b1916600360a11b1790555f601755601d546001600160a01b031615610c4b57601d546040516370a0823160e01b81523060048201526001600160a01b03909116905f9082906370a0823190602401602060405180830381865afa158015610b5e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b82919061451a565b90508015610c4857601a54610bc590839083906001600160a01b03167f3ad4b457f434f621640480685c573524122d3242a2d1681cf0bffeadc03ad2fe306131b9565b6040516370a0823160e01b81523060048201526001600160a01b038316906370a0823190602401602060405180830381865afa158015610c07573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c2b919061451a565b15610c485760405162461bcd60e51b815260040161080790614531565b50505b601c546040516370a0823160e01b81523060048201526001600160a01b03909116905f9082906370a0823190602401602060405180830381865afa158015610c95573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cb9919061451a565b90508015610d8b57601e54610cd89082906001600160a01b03166133e9565b6040516370a0823160e01b81523060048201526001600160a01b038316906370a0823190602401602060405180830381865afa158015610d1a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d3e919061451a565b15610d8b5760405162461bcd60e51b815260206004820152601960248201527f5072696e636970616c207472616e73666572206661696c6564000000000000006044820152606401610807565b6040517f9a58d31d8f7fdddecb51c0d0f0ef958b1153ca1b2cfbc44e1904857b06892bd2905f90a1601a54610dc8906001600160a01b03166136f6565b15610e3057601a5f9054906101000a90046001600160a01b03166001600160a01b0316632a33cf056040518163ffffffff1660e01b81526004015f604051808303815f87803b158015610e19575f80fd5b505af1158015610e2b573d5f803e3d5ffd5b505050505b610e38613731565b505061089760015f55565b610e4b612cfa565b601b546001600160a01b03163314610e755760405162461bcd60e51b8152600401610807906143e8565b602154600160a01b900460ff16600414610ea15760405162461bcd60e51b81526004016108079061440f565b5f8111610ec05760405162461bcd60e51b815260040161080790614568565b610ec8612d51565b610ed18161378c565b610eda60015f55565b50565b610ee5612cfa565b601b546001600160a01b03163314610f0f5760405162461bcd60e51b8152600401610807906143e8565b602154600160a01b900460ff16600414610f3b5760405162461bcd60e51b81526004016108079061440f565b5f8111610f5a5760405162461bcd60e51b815260040161080790614568565b610f62612d51565b600a5415610f7857610f738161378c565b610ed1565b5f610f81612e29565b5090505f80610f8f83612efc565b5091509150805f03610fac57610fa48461378c565b505050610ed1565b80841015610ffc5760405162461bcd60e51b815260206004820152601b60248201527f4d696e205061796d656e7420616d6f756e7420726571756972656400000000006044820152606401610807565b5f6110078286614478565b9050611014848484612ff2565b805f036110245750505050610ed1565b61102d8161378c565b50505050610eda60015f55565b611042612cfa565b6021546001600160a01b0316331461108b5760405162461bcd60e51b815260206004820152600c60248201526b27b7363c9036b0b730b3b2b960a11b6044820152606401610807565b6001600160a01b0381166110e15760405162461bcd60e51b815260206004820152601760248201527f4665657320636f6c6c6563746f722072657175697265640000000000000000006044820152606401610807565b601e80546001600160a01b0319166001600160a01b0383169081179091556040519081527f5ea1ce7aaa8768d418a01cb4e25de0d1a95e71abaa79d5cbe09fed2ef14bf3ad906020015b60405180910390a1610eda60015f55565b611144612cfa565b601a546001600160a01b0316331461116e5760405162461bcd60e51b8152600401610807906144f5565b602154600160a01b900460ff16600414806111955750602154600160a01b900460ff166003145b6111b15760405162461bcd60e51b81526004016108079061440f565b610e108210156112035760405162461bcd60e51b815260206004820152601760248201527f496e76616c69642043616c6c6261636b20706572696f640000000000000000006044820152606401610807565b61070881101561124c5760405162461bcd60e51b8152602060048201526014602482015273125b9d985b1a590811dc9858d9481c195c9a5bd960621b6044820152606401610807565b600a541561129c5760405162461bcd60e51b815260206004820152601760248201527f4c6f616e207761732063616c6c656420616c72656164790000000000000000006044820152606401610807565b601554156112ec5760405162461bcd60e51b815260206004820152601b60248201527f52657475726e2074686520636f6c6c61746572616c20666972737400000000006044820152606401610807565b6112f681836144cb565b61130090426144cb565b600a5560408051838152602081018390527ff7f602ccf97515995560481567b0c15cc137fad4df27a2273d0f053a25de167b910160405180910390a161134560015f55565b5050565b611351612cfa565b601a546001600160a01b0316331461137b5760405162461bcd60e51b8152600401610807906144f5565b602154600160a01b900460ff166004146113a75760405162461bcd60e51b81526004016108079061440f565b602154600160a81b900460ff166113d05760405162461bcd60e51b81526004016108079061459f565b5f81116114195760405162461bcd60e51b815260206004820152601760248201527611195c1bdcda5d08185b5bdd5b9d081c995c5d5a5c9959604a1b6044820152606401610807565b6015548111156114765760405162461bcd60e51b815260206004820152602260248201527f416d6f756e742067726561746572207468616e2063617074757265642066756e604482015261647360f01b6064820152608401610807565b601d546040516370a0823160e01b81523060048201526001600160a01b03909116905f9082906370a0823190602401602060405180830381865afa1580156114c0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906114e4919061451a565b90505f6114f184836144cb565b90508360155f8282546115049190614478565b90915550506040516323b872dd60e01b8152336004820152306024820152604481018590526001600160a01b038416906323b872dd906064015f604051808303815f87803b158015611554575f80fd5b505af1158015611566573d5f803e3d5ffd5b50506040516370a0823160e01b81523060048201528392506001600160a01b03861691506370a0823190602401602060405180830381865afa1580156115ae573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115d2919061451a565b1461161f5760405162461bcd60e51b815260206004820152601960248201527f436f6c6c61746572616c206465706f736974206661696c6564000000000000006044820152606401610807565b6040518481527fd4b44dbb2eb0a21a784d57f31a7dc819a1dd5ddbbc494f16d7a581fe63abc730906020015b60405180910390a1505050610eda60015f55565b611667612cfa565b601a546001600160a01b031633146116915760405162461bcd60e51b8152600401610807906144f5565b601f546001600160a01b0390811690821681036116e55760405162461bcd60e51b815260206004820152601260248201527113dc9858db1948185b1c9958591e481cd95d60721b6044820152606401610807565b601d5482906001600160a01b03161561171857600a54156117185760405162461bcd60e51b81526004016108079061443b565b6001600160a01b03811661175f5760405162461bcd60e51b815260206004820152600e60248201526d496e76616c6964204f7261636c6560901b6044820152606401610807565b601f80546001600160a01b0319166001600160a01b0383811691821790925560408051928516835260208301919091527f9a5fc18543d5f1839b4df2c0e66c1e40018bf0f771543dba26a78309915e9ffc910160405180910390a15050610eda60015f55565b5f805f806117d1612e29565b5090505f6117de82612efc565b509150505f811180156117f057505f82115b1561190457808610156118455760405162461bcd60e51b815260206004820152601b60248201527f496e73756666696369656e74207061796d656e7420616d6f756e7400000000006044820152606401610807565b5f828710156118545786611856565b825b602054604051633c93ae5960e01b8152600481018390525f8051602061488f83398151915260248201523060448201529192505f916001600160a01b0390911690633c93ae59906064016040805180830381865afa1580156118ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118de91906145e1565b9095509050808210156118f1575f6118fb565b6118fb8183614478565b96505050611908565b5f94505b846014546011546119199190614478565b61192391906144cb565b935050509193909250565b611936612cfa565b601a546001600160a01b031633146119605760405162461bcd60e51b8152600401610807906144f5565b602154600160a01b900460ff1660041461198c5760405162461bcd60e51b81526004016108079061440f565b602154600160a81b900460ff166119b55760405162461bcd60e51b81526004016108079061459f565b600a54156119d55760405162461bcd60e51b81526004016108079061443b565b601d546040516370a0823160e01b81523060048201526001600160a01b03909116905f9082906370a0823190602401602060405180830381865afa158015611a1f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a43919061451a565b90505f8111611a945760405162461bcd60e51b815260206004820152601760248201527f4e6f20636f6c6c61746572616c20617661696c61626c650000000000000000006044820152606401610807565b80831115611ae45760405162461bcd60e51b815260206004820152601b60248201527f416d6f756e742067726561746572207468616e2062616c616e636500000000006044820152606401610807565b5f611aef8483614478565b90508360155f828254611b0291906144cb565b9091555050601a5460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018690529084169063a9059cbb906044015f604051808303815f87803b158015611b52575f80fd5b505af1158015611b64573d5f803e3d5ffd5b50506040516370a0823160e01b81523060048201528392506001600160a01b03861691506370a0823190602401602060405180830381865afa158015611bac573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611bd0919061451a565b14611bed5760405162461bcd60e51b815260040161080790614531565b6040518481527f0ca3f9db1ded4edb6bab47a1f70df28e54a87f20a8005b3191ba99d611fe3a269060200161164b565b611c25612cfa565b601a546001600160a01b03163314611c4f5760405162461bcd60e51b8152600401610807906144f5565b60168390556018611c6182848361469a565b50611c6b60015f55565b505050565b611c78612cfa565b601a546001600160a01b03163314611ca25760405162461bcd60e51b8152600401610807906144f5565b602154600160a01b900460ff16600414611cce5760405162461bcd60e51b81526004016108079061440f565b5f8111611d0b5760405162461bcd60e51b815260206004820152600b60248201526a24b73b30b634b21020a82960a91b6044820152606401610807565b6003548103611d4e5760405162461bcd60e51b815260206004820152600f60248201526e10541488185b1c9958591e481cd95d608a1b6044820152606401610807565b600a5415611d6e5760405162461bcd60e51b81526004016108079061443b565b600681905560035460408051918252602082018390527f31571bd12beebadefe6d461c32f37f35c2d6678d50424b45b06380bffbc61792910161112b565b611db4612cfa565b601a546001600160a01b03163314611dde5760405162461bcd60e51b8152600401610807906144f5565b601d546001600160a01b0316611e2f5760405162461bcd60e51b8152602060048201526016602482015275151a1a5cc81b1bd85b881a5cc81d5b9cd958dd5c995960521b6044820152606401610807565b5f8111611e7e5760405162461bcd60e51b815260206004820152601a60248201527f4d61696e74656e616e636520726174696f2072657175697265640000000000006044820152606401610807565b600b54811115611ed05760405162461bcd60e51b815260206004820152601a60248201527f4d61696e74656e616e636520726174696f20746f6f20686967680000000000006044820152606401610807565b80600c5403611f155760405162461bcd60e51b815260206004820152601160248201527015985b1d5948185b1c9958591e481cd95d607a1b6044820152606401610807565b600a5415611f355760405162461bcd60e51b81526004016108079061443b565b600c5460408051918252602082018390527f22bc1411bd53d4aeca8fadf974cf86260b904da9add56411d7644898edd061db910160405180910390a1600c819055610eda60015f55565b611f87612cfa565b601b546001600160a01b03163314611fb15760405162461bcd60e51b8152600401610807906143e8565b601d546001600160a01b03166120025760405162461bcd60e51b8152602060048201526016602482015275151a1a5cc81b1bd85b881a5cc81d5b9cd958dd5c995960521b6044820152606401610807565b602154600160a01b900460ff1660021461202e5760405162461bcd60e51b815260040161080790614754565b600954421161207f5760405162461bcd60e51b815260206004820152601a60248201527f46756e64696e6720706572696f64206e6f7420656c61707365640000000000006044820152606401610807565b601d546040516370a0823160e01b81523060048201526001600160a01b03909116905f9082906370a0823190602401602060405180830381865afa1580156120c9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906120ed919061451a565b6021805460ff60a01b1916600560a01b179055601b5460405163a9059cbb60e01b81526001600160a01b0391821660048201526024810183905291925083169063a9059cbb906044015f604051808303815f87803b15801561214d575f80fd5b505af115801561215f573d5f803e3d5ffd5b50506040516370a0823160e01b81523060048201526001600160a01b03851692506370a082319150602401602060405180830381865afa1580156121a5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121c9919061451a565b156121e65760405162461bcd60e51b815260040161080790614531565b6040518181527f51ff97cc720f24f53afaf5ea5fce33e92adba055ba2db0b05565c9cbb997189c9060200160405180910390a1505061089760015f55565b61222c612cfa565b601b546001600160a01b031633146122565760405162461bcd60e51b8152600401610807906143e8565b602154600160a01b900460ff166004146122825760405162461bcd60e51b81526004016108079061440f565b5f81116122c35760405162461bcd60e51b815260206004820152600f60248201526e105b5bdd5b9d081c995c5d5a5c9959608a1b6044820152606401610807565b60178190556040518181527fefbc911a7675b709af69e860b5b557d9eacc64f1dc0da9c65bd8f527b6f4d4b09060200161112b565b612300612cfa565b601a546001600160a01b0316331461232a5760405162461bcd60e51b8152600401610807906144f5565b5f6017541161237b5760405162461bcd60e51b815260206004820181905260248201527f5072696e636970616c20696e637265617365206e6f74207265717565737465646044820152606401610807565b600a541561239b5760405162461bcd60e51b81526004016108079061443b565b6017545f6123a7612e29565b5090505f6123b482612efc565b505090505f81836123c591906144cb565b600f546123d291906144cb565b5f60175590506123e284826144cb565b600f819055600454600354620f4240926204cfe09291612401916144de565b61240b91906144de565b61241591906144b8565b61241f91906144b8565b6010555f601255426007556040518481527f90e09fa9962ec1e9380cfed780b241602e269ec39765fe91f6c659c4ee1a1a6a9060200160405180910390a1601c54612474906001600160a01b03163386613a0e565b601b5461248b9085906001600160a01b03166133e9565b601a546124a0906001600160a01b03166136f6565b156124ff57601a54604051632c0e375f60e21b8152600481018690526001600160a01b039091169063b038dd7c906024015f604051808303815f87803b1580156124e8575f80fd5b505af11580156124fa573d5f803e3d5ffd5b505050505b5050505061089760015f55565b612514612cfa565b6020546001600160a01b03166125625760405162461bcd60e51b81526020600482015260136024820152721199595cc81bdc9858db19481b9bdd081cd95d606a1b6044820152606401610807565b601e546001600160a01b03166125b35760405162461bcd60e51b81526020600482015260166024820152751199595cc818dbdb1b1958dd1bdc881b9bdd081cd95d60521b6044820152606401610807565b601f546001600160a01b03166126025760405162461bcd60e51b8152602060048201526014602482015273141c9a58d9481bdc9858db19481b9bdd081cd95d60621b6044820152606401610807565b601b546001600160a01b0316331461262c5760405162461bcd60e51b8152600401610807906143e8565b602154600160a01b900460ff166001146126585760405162461bcd60e51b815260040161080790614754565b6021805460ff60a01b1916600160a11b17905560085461267890426144cb565b600955601d546001600160a01b0316156126b4575f612698600b54613d4b565b601d549091506126b2906001600160a01b03163383613a0e565b505b6040517f61dc0c1aaa6801db1882c4a7f77a841874ba89609ff4994a309c2367729989c8905f90a16126e4613fe5565b61089760015f55565b6126f5612cfa565b601a546001600160a01b0316331461271f5760405162461bcd60e51b8152600401610807906144f5565b602154600160a01b900460ff1660021461274b5760405162461bcd60e51b815260040161080790614754565b60095442908111156127985760405162461bcd60e51b8152602060048201526016602482015275119d5b991a5b99c81c195c9a5bd908195b185c1cd95960521b6044820152606401610807565b600581905560078190555f6009556021805460ff60a01b1916600160a21b179055601c546002546127d4916001600160a01b0316903390613a0e565b7f7d9dbe62ecb99a82d1fa23f8fbeb023a662906ee47b869430374baa1b52ce69c60025460405161280791815260200190565b60405180910390a1600254601b5461282891906001600160a01b03166133e9565b7fef378dda6ea161f534c8efd5c2be3df4d667b51e10b077d20c70eeb20d50759a60025460405161285b91815260200190565b60405180910390a15061089760015f55565b6018805461287a90614617565b80601f01602080910402602001604051908101604052809291908181526020018280546128a690614617565b80156128f15780601f106128c8576101008083540402835291602001916128f1565b820191905f5260205f20905b8154815290600101906020018083116128d457829003601f168201915b505050505081565b612901612cfa565b601b546001600160a01b0316331461292b5760405162461bcd60e51b8152600401610807906143e8565b602154600160a01b900460ff166004146129575760405162461bcd60e51b81526004016108079061440f565b5f600654116129a85760405162461bcd60e51b815260206004820152601b60248201527f4e6f206e657720415052207761732070726f706f7365642079657400000000006044820152606401610807565b600a54156129c85760405162461bcd60e51b81526004016108079061443b565b5f6129d1612e29565b5090505f6129de82612efc565b505060038054600680549092555f90915542600755909150612a0082846144cb565b600f54612a0d91906144cb565b600f8190555f601255600454600354620f4240926204cfe09291612a30916144de565b612a3a91906144de565b612a4491906144b8565b612a4e91906144b8565b6010556003546040805183815260208101929092527f7675bc29230b95bb316acd6727dd32b8fb7fc9bd5c716a88a4bbb14856ffae5b910160405180910390a1601a54612aa3906001600160a01b03166136f6565b1561088b57601a546001600160a01b031663b038dd7c612ac384866144cb565b6040518263ffffffff1660e01b8152600401612ae191815260200190565b5f604051808303815f87803b158015612af8575f80fd5b505af1158015612b0a573d5f803e3d5ffd5b5050505050505061089760015f55565b601d545f9081906001600160a01b031615612b4757612b3a600b54613d4b565b9150612b44614015565b90505b9091565b612b53612cfa565b6021546001600160a01b03163314612b9c5760405162461bcd60e51b815260206004820152600c60248201526b27b7363c9036b0b730b3b2b960a11b6044820152606401610807565b6001600160a01b038116612be95760405162461bcd60e51b81526020600482015260146024820152731199595cc81bdc9858db19481c995c5d5a5c995960621b6044820152606401610807565b602080546001600160a01b0319166001600160a01b03831690811782556040519081527f7d53745bf90917260ad487906ab3f9a6f0274b9ceb0ee1dc16560e7ec4225eb7910161112b565b5f612c4185858585614047565b95945050505050565b612c52612cfa565b601a546001600160a01b03163314612c7c5760405162461bcd60e51b8152600401610807906144f5565b600a5415612c9c5760405162461bcd60e51b81526004016108079061443b565b600d54600e546040805192835260208301859052820152606081018290527fa89252e0e89fe8b6b9a4ed8e0f0d321888acdf27dfe58c2a3d174be75a940d9f9060800160405180910390a1600d829055600e81905561134560015f55565b60025f5403612d4b5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610807565b60025f55565b601d546001600160a01b0316612d6357565b5f612d6c614015565b601d546040516370a0823160e01b81523060048201529192506001600160a01b031690829082906370a0823190602401602060405180830381865afa158015612db7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612ddb919061451a565b10156113455760405162461bcd60e51b815260206004820152601e60248201527f496e73756666696369656e74206d61696e74656e616e636520726174696f00006044820152606401610807565b5f805f4290505f60075482612e3e9190614478565b90505f6004548210612e8657600454612e5790836144a5565b15612e7957600454612e6990836144b8565b612e749060016144cb565b612e89565b600454612e7490836144b8565b60015b90505f620f42406204cfe083600454612ea291906144de565b600354600f54612eb291906144de565b612ebc91906144de565b612ec691906144b8565b612ed091906144b8565b90505f6012548211612ee2575f612eef565b601254612eef9083614478565b9792965091945050505050565b5f805f8084600f54612f0e91906144cb565b90505f600a54118015612f225750600a5442115b15612f565761271061016d600e5483612f3b91906144de565b612f4591906144b8565b612f4f91906144b8565b9350612fa1565b5f6010548611612f66575f612f73565b601054612f739087614478565b905061271061016d600d5483612f8991906144de565b612f9391906144b8565b612f9d91906144b8565b9450505b600a545f03612fcb5783600f54612fb891906144cb565b9150612fc484866144cb565b9250612fea565b8484600f54612fda91906144cb565b612fe491906144cb565b91508192505b509193909250565b5f81116130115760405162461bcd60e51b815260040161080790614568565b5f83116130545760405162461bcd60e51b8152602060048201526011602482015270139bc81a5b9d195c995cdd1cc81bddd959607a1b6044820152606401610807565b5f61305f83856144cb565b9050808210156130b15760405162461bcd60e51b815260206004820152601b60248201527f4d696e207061796d656e7420616d6f756e7420726571756972656400000000006044820152606401610807565b6130bb83856144cb565b8211156131005760405162461bcd60e51b815260206004820152601360248201527213585e08185b5bdd5b9d08195e18d959591959606a1b6044820152606401610807565b5f61310b8484614478565b90508060125f82825461311e91906144cb565b925050819055508060115f82825461313691906144cb565b9091555050601c54613152906001600160a01b03163385613a0e565b601c54601a5461317f916001600160a01b03908116918691165f8051602061488f833981519152306131b9565b6040518381527f148419e72560b203e753ab7ca6a09093f8ed8adb501fbf7b5893c2c75b40a28b9060200160405180910390a15050505050565b602054604051633c93ae5960e01b815260048101869052602481018490526001600160a01b0383811660448301525f928392911690633c93ae59906064016040805180830381865afa158015613211573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061323591906145e1565b915091508086116132885760405162461bcd60e51b815260206004820152601960248201527f466565733a20496e73756666696369656e7420616d6f756e74000000000000006044820152606401610807565b801561336d575f8051602061488f83398151915284036132b9578060145f8282546132b391906144cb565b90915550505b601e5460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018390529088169063a9059cbb906044015f604051808303815f87803b158015613304575f80fd5b505af1158015613316573d5f803e3d5ffd5b5050601e54604080518681526020810186905230818301526001600160a01b039092166060830152517faea185c12ee7ee5bc1075a8c0365d8a4d442436c908ece4424cca922ab151a4b9350908190036080019150a15b6001600160a01b03871663a9059cbb86613387848a614478565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044015f604051808303815f87803b1580156133ca575f80fd5b505af11580156133dc573d5f803e3d5ffd5b5050505050505050505050565b601c546040516370a0823160e01b81523060048201526001600160a01b03909116905f9082906370a0823190602401602060405180830381865afa158015613433573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613457919061451a565b90505f811180156134685750838110155b6134ab5760405162461bcd60e51b8152602060048201526014602482015273496e73756666696369656e742062616c616e636560601b6044820152606401610807565b6040516370a0823160e01b81526001600160a01b0384811660048301525f91908416906370a0823190602401602060405180830381865afa1580156134f2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613516919061451a565b90505f61352386836144cb565b90505f6135308785614478565b60405163a9059cbb60e01b81526001600160a01b038881166004830152602482018a90529192509086169063a9059cbb906044015f604051808303815f87803b15801561357b575f80fd5b505af115801561358d573d5f803e3d5ffd5b50506040516370a0823160e01b81523060048201528392506001600160a01b03881691506370a0823190602401602060405180830381865afa1580156135d5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135f9919061451a565b1461363d5760405162461bcd60e51b815260206004820152601460248201527310985b185b98d94818da1958dac819985a5b195960621b6044820152606401610807565b6040516370a0823160e01b81526001600160a01b0387811660048301528391908716906370a0823190602401602060405180830381865afa158015613684573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906136a8919061451a565b146136ed5760405162461bcd60e51b8152602060048201526015602482015274151c985b9cd9995c8818da1958dac819985a5b1959605a1b6044820152606401610807565b50505050505050565b5f7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470823f80821480159061372957508015155b949350505050565b602254604051637df6c6d360e01b81523360048201526001600160a01b0390911690637df6c6d3906024015b5f604051808303815f87803b158015613774575f80fd5b505af1158015613786573d5f803e3d5ffd5b50505050565b5f613795612e29565b5090505f6137a282612efc565b925050505f600a5411156137fc578083146137f75760405162461bcd60e51b8152602060048201526015602482015274119d5b1b081c185e5b595b9d08195e1c1958dd1959605a1b6044820152606401610807565b61384a565b811561384a5760405162461bcd60e51b815260206004820152601a60248201527f4d75737420726570617920696e746572657374732066697273740000000000006044820152606401610807565b8083111561389a5760405162461bcd60e51b815260206004820152601760248201527f416d6f756e742065786365656473206e657420646562740000000000000000006044820152606401610807565b5f600f5484116138aa57836138ae565b600f545b90508060135f8282546138c191906144cb565b9250508190555080600f5f8282546138d99190614478565b92505081905550620f42406204cfe0600454600354600f546138fb91906144de565b61390591906144de565b61390f91906144b8565b61391991906144b8565b601055601c54613933906001600160a01b03163386613a0e565b6040518481527fa0fc0a06153c1547b1d42a53717eb5c4ab2af9266072799044ddde9c45941c019060200160405180910390a1601a5461397d9085906001600160a01b03166133e9565b601a54613992906001600160a01b03166136f6565b156139fd57601a5460025460135460405163e75c7a0960e01b8152600481019290925260248201526001600160a01b039091169063e75c7a09906044015f604051808303815f87803b1580156139e6575f80fd5b505af11580156139f8573d5f803e3d5ffd5b505050505b600f545f036137865761378661407d565b5f8111613a575760405162461bcd60e51b815260206004820152601760248201527611195c1bdcda5d08185b5bdd5b9d081c995c5d5a5c9959604a1b6044820152606401610807565b604051636eb1769f60e11b81526001600160a01b03838116600483015230602483015282919085169063dd62ed3e90604401602060405180830381865afa158015613aa4573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613ac8919061451a565b1015613b0f5760405162461bcd60e51b8152602060048201526016602482015275496e73756666696369656e7420616c6c6f77616e636560501b6044820152606401610807565b6040516370a0823160e01b81526001600160a01b0383811660048301528291908516906370a0823190602401602060405180830381865afa158015613b56573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613b7a919061451a565b1015613bbd5760405162461bcd60e51b8152602060048201526012602482015271496e73756666696369656e742066756e647360701b6044820152606401610807565b6040516370a0823160e01b81523060048201525f906001600160a01b038516906370a0823190602401602060405180830381865afa158015613c01573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613c25919061451a565b90505f613c3283836144cb565b6040516323b872dd60e01b81526001600160a01b03868116600483015230602483015260448201869052919250908616906323b872dd906064015f604051808303815f87803b158015613c83575f80fd5b505af1158015613c95573d5f803e3d5ffd5b50506040516370a0823160e01b81523060048201525f92506001600160a01b03881691506370a0823190602401602060405180830381865afa158015613cdd573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613d01919061451a565b9050818114613d435760405162461bcd60e51b815260206004820152600e60248201526d11195c1bdcda5d0819985a5b195960921b6044820152606401610807565b505050505050565b601d545f906001600160a01b0316613d6457505f919050565b601f54601c54604051630681320d60e51b81526001600160a01b0391821660048201525f92919091169063d02641a090602401602060405180830381865afa158015613db2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613dd6919061451a565b90505f8111613e275760405162461bcd60e51b815260206004820152601b60248201527f496e76616c696420707269636520666f72207072696e636970616c00000000006044820152606401610807565b601f54601d54604051630681320d60e51b81526001600160a01b0391821660048201525f92919091169063d02641a090602401602060405180830381865afa158015613e75573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613e99919061451a565b90505f8111613eea5760405162461bcd60e51b815260206004820152601c60248201527f496e76616c696420707269636520666f7220636f6c6c61746572616c000000006044820152606401610807565b601d546040805163313ce56760e01b815290516001600160a01b03909216915f91839163313ce567916004808201926020929091908290030181865afa158015613f36573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613f5a9190614780565b60ff1690506006811015613fb05760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420636f6c6c61746572616c20746f6b656e00000000000000006044820152606401610807565b5f61271087600154613fc291906144de565b613fcc91906144b8565b9050613fda85828685614047565b979650505050505050565b602254604051638883244360e01b81523360048201526001600160a01b039091169063888324439060240161375d565b5f80614022600c54613d4b565b9050806015541115614034575f614041565b6015546140419082614478565b91505090565b5f8261405385876144de565b61405d91906144b8565b614068600684614478565b61407390600a614883565b612c4191906144de565b6021805460ff60a01b1916600760a01b1790555f601755601d546001600160a01b0316156141fc57601d546040516370a0823160e01b81523060048201526001600160a01b03909116905f9082906370a0823190602401602060405180830381865afa1580156140ef573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614113919061451a565b601b5460405163a9059cbb60e01b81526001600160a01b0391821660048201526024810183905291925083169063a9059cbb906044015f604051808303815f87803b158015614160575f80fd5b505af1158015614172573d5f803e3d5ffd5b50506040516370a0823160e01b81523060048201526001600160a01b03851692506370a082319150602401602060405180830381865afa1580156141b8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906141dc919061451a565b156141f95760405162461bcd60e51b815260040161080790614531565b50505b6040517f24b0e8acd761e7935443a4d95c9556064a90d497069fb2df1278a365bc654e8e905f90a1601a54614239906001600160a01b03166136f6565b156142a157601a5f9054906101000a90046001600160a01b03166001600160a01b031663ba4bb7a46040518163ffffffff1660e01b81526004015f604051808303815f87803b15801561428a575f80fd5b505af115801561429c573d5f803e3d5ffd5b505050505b610897613731565b5f602082840312156142b9575f80fd5b5035919050565b5f602082840312156142d0575f80fd5b81356001600160a01b03811681146142e6575f80fd5b9392505050565b5f80604083850312156142fe575f80fd5b50508035926020909101359150565b5f805f6040848603121561431f575f80fd5b83359250602084013567ffffffffffffffff81111561433c575f80fd5b8401601f8101861361434c575f80fd5b803567ffffffffffffffff811115614362575f80fd5b866020828401011115614373575f80fd5b939660209190910195509293505050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b5f805f80608085870312156143cc575f80fd5b5050823594602084013594506040840135936060013592509050565b6020808252600d908201526c27b7363c903137b93937bbb2b960991b604082015260600190565b6020808252601290820152714c6f616e206973206e6f742061637469766560701b604082015260600190565b6020808252600f908201526e131bd85b881dd85cc818d85b1b1959608a1b604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b8181038181111561448b5761448b614464565b92915050565b634e487b7160e01b5f52601260045260245ffd5b5f826144b3576144b3614491565b500690565b5f826144c6576144c6614491565b500490565b8082018082111561448b5761448b614464565b808202811582820484141761448b5761448b614464565b6020808252600b908201526a27b7363c903632b73232b960a91b604082015260600190565b5f6020828403121561452a575f80fd5b5051919050565b6020808252601a908201527f436f6c6c61746572616c207472616e73666572206661696c6564000000000000604082015260600190565b60208082526017908201527f5061796d656e7420616d6f756e74207265717569726564000000000000000000604082015260600190565b60208082526022908201527f43616e6e6f74207365697a6520626f72726f776572277320636f6c6c61746572604082015261185b60f21b606082015260800190565b5f80604083850312156145f2575f80fd5b505080516020909101519092909150565b634e487b7160e01b5f52604160045260245ffd5b600181811c9082168061462b57607f821691505b60208210810361464957634e487b7160e01b5f52602260045260245ffd5b50919050565b601f821115611c6b57805f5260205f20601f840160051c810160208510156146745750805b601f840160051c820191505b81811015614693575f8155600101614680565b5050505050565b67ffffffffffffffff8311156146b2576146b2614603565b6146c6836146c08354614617565b8361464f565b5f601f8411600181146146f7575f85156146e05750838201355b5f19600387901b1c1916600186901b178355614693565b5f83815260208120601f198716915b828110156147265786850135825560209485019460019092019101614706565b5086821015614742575f1960f88860031b161c19848701351681555b505060018560011b0183555050505050565b602080825260129082015271496e76616c6964206c6f616e20737461746560701b604082015260600190565b5f60208284031215614790575f80fd5b815160ff811681146142e6575f80fd5b6001815b60018411156147db578085048111156147bf576147bf614464565b60018416156147cd57908102905b60019390931c9280026147a4565b935093915050565b5f826147f15750600161448b565b816147fd57505f61448b565b8160018114614813576002811461481d57614839565b600191505061448b565b60ff84111561482e5761482e614464565b50506001821b61448b565b5060208310610133831016604e8410600b841016171561485c575081810a61448b565b6148685f1984846147a0565b805f190482111561487b5761487b614464565b029392505050565b5f6142e683836147e356fedb8a6e06c12150eae87bf037b754ee30881850129e29aab701c4ea11fdca99f1a2646970667358221220079c40925dc79b41ee08b5095c10531fbc28de28dc44a40e2ba1130c14a39de764736f6c634300081a0033a264697066735822122085b9fefa118abaac36b4ccb6630f992519993cf648f5217636b5960d7995a54d64736f6c634300081a0033000000000000000000000000931250786dfd106b1e63c7fd8f0d854876a452000000000000000000000000000618275ceadd535c315eba326a8cde50aa1f3382