0x608060405234801561001057600080fd5b5061592b80620000216000396000f3fe6080604052600436106104895760003560e01c80636f6c352911610255578063a7602c7e11610144578063d547741f116100c1578063ea598cb011610085578063ea598cb014610e45578063eff9884314610e65578063f2fde38b14610e7b578063f5eb42dc14610e9b578063fb8363b614610ebb578063fc72ed5b14610ee857600080fd5b8063d547741f14610d73578063d8990b6614610d93578063dd62ed3e14610db5578063e30c397814610dfb578063e6c8a5f314610e1057600080fd5b8063bc4f2d6d11610108578063bc4f2d6d14610ce8578063be2b9cd514610d08578063cc23e3a214610d1e578063cc4eedc914610d3e578063d5002f2e14610d5e57600080fd5b8063a7602c7e14610c58578063a7d6889614610c6e578063a9059cbb14610c8e578063b187bd2614610cae578063b9e205ae14610cc857600080fd5b80638abdf5aa116101d257806395d89b411161019657806395d89b4114610bb5578063996c6cc314610be3578063a1e8028014610c03578063a217fddf14610c23578063a457c2d714610c3857600080fd5b80638abdf5aa14610b2a5780638da5cb5b14610b405780638fcb4e5b14610b5557806391d1485414610b755780639264274414610b9557600080fd5b80637b9fe087116102195780637b9fe08714610a9f5780637e203c8b14610abf578063829c1c5714610ad457806382fe535a14610af457806389067c5e14610b1457600080fd5b80636f6c352914610a1d57806370a0823114610a3f578063715018a614610a5f57806379ba509714610a7457806379ff118914610a8957600080fd5b806336568abe1161037c5780635148e961116102f95780635cf4cde0116102bd5780635cf4cde014610931578063656ce55f1461094757806366442a061461096757806368cd79b3146109bd5780636e247910146109dd5780636ea6c4d9146109fd57600080fd5b80635148e9611461088357806358e3b5ec146108a35780635a9249e6146108b95780635ae79ae0146108f15780635cdf76f81461091157600080fd5b8063410dbf7e11610340578063410dbf7e146107bb578063420fa47e146107db5780634310d1281461080f57806344be0404146108435780634772daef1461086357600080fd5b806336568abe14610711578063389ed26714610731578063395093511461076557806339c5dec7146107855780633ba0b9a9146107a557600080fd5b806320ba56981161040a5780632d1ede9a116103ce5780632d1ede9a1461067f5780632e17de781461069f5780632f2ff15d146106bf578063313ce567146106df578063355274ea146106fb57600080fd5b806320ba5698146105f6578063230957211461060c57806323b872dd1461061f578063248a9ca31461063f5780632680f5cd1461065f57600080fd5b80630fbdc677116104515780630fbdc6771461057557806316c38b3c146105955780631723be12146105b557806318160ddd146105cb5780631924063e146105e057600080fd5b806301ffc9a71461048e57806302ba45ed146104c357806306fdde03146104f1578063095ea7b31461053357806309c26fb114610553575b600080fd5b34801561049a57600080fd5b506104ae6104a9366004614f74565b610f08565b60405190151581526020015b60405180910390f35b3480156104cf57600080fd5b506104e36104de366004614f9e565b610f3f565b6040519081526020016104ba565b3480156104fd57600080fd5b5060408051808201909152601081526f5269767573205374616b65642054414f60801b60208201525b6040516104ba9190614ffd565b34801561053f57600080fd5b506104ae61054e366004615027565b610f6e565b34801561055f57600080fd5b5061057361056e3660046150f4565b610f84565b005b34801561058157600080fd5b50610573610590366004614f9e565b611286565b3480156105a157600080fd5b506105736105b0366004615171565b611357565b3480156105c157600080fd5b506104e360145481565b3480156105d757600080fd5b506104e3611414565b3480156105ec57600080fd5b506104e360115481565b34801561060257600080fd5b506104e360045481565b61057361061a366004614f9e565b611424565b34801561062b57600080fd5b506104ae61063a36600461518e565b611980565b34801561064b57600080fd5b506104e361065a366004614f9e565b611a28565b34801561066b57600080fd5b5061057361067a366004614f9e565b611a4a565b34801561068b57600080fd5b5061057361069a36600461518e565b611b86565b3480156106ab57600080fd5b506105736106ba366004614f9e565b611e21565b3480156106cb57600080fd5b506105736106da3660046151ca565b61212a565b3480156106eb57600080fd5b50604051600981526020016104ba565b34801561070757600080fd5b506104e3600a5481565b34801561071d57600080fd5b5061057361072c3660046151ca565b61214c565b34801561073d57600080fd5b506104e37f139c2898040ef16910dc9f44dc697df79363da767d8bc92f2e310312b816e46d81565b34801561077157600080fd5b506104ae610780366004615027565b612184565b34801561079157600080fd5b506105736107a03660046151f6565b6121ba565b3480156107b157600080fd5b506104e360035481565b3480156107c757600080fd5b506105736107d6366004614f9e565b612292565b3480156107e757600080fd5b506104e37f9e3114703ec4a93cd6bc7e2610274229541e8ba5acacf7825f26bce4fae601e081565b34801561081b57600080fd5b506104e37f7e21c1f853a961caf8adc0c26c941d090de97558d402e0fe1d0eea44495dee7d81565b34801561084f57600080fd5b5061057361085e366004614f9e565b61235f565b34801561086f57600080fd5b5061057361087e366004615211565b6123e8565b34801561088f57600080fd5b5061057361089e3660046151f6565b612461565b3480156108af57600080fd5b506104e360135481565b3480156108c557600080fd5b506015546108d9906001600160a01b031681565b6040516001600160a01b0390911681526020016104ba565b3480156108fd57600080fd5b506104e361090c366004614f9e565b612522565b34801561091d57600080fd5b5061057361092c366004614f9e565b61256b565b34801561093d57600080fd5b506104e360075481565b34801561095357600080fd5b506104e3610962366004614f9e565b61263c565b34801561097357600080fd5b50610987610982366004615027565b612654565b604080519586526020860194909452911515928401929092526001600160a01b039091166060830152608082015260a0016104ba565b3480156109c957600080fd5b506105736109d8366004614f9e565b6126ae565b3480156109e957600080fd5b506104e36109f8366004614f9e565b612782565b348015610a0957600080fd5b506104e3610a18366004614f9e565b61279b565b348015610a2957600080fd5b506104e36000805160206158d683398151915281565b348015610a4b57600080fd5b506104e3610a5a3660046151f6565b6127cc565b348015610a6b57600080fd5b506105736127ee565b348015610a8057600080fd5b506105736127f8565b348015610a9557600080fd5b506104e360125481565b348015610aab57600080fd5b50610573610aba366004615027565b61283d565b348015610acb57600080fd5b50610526612a60565b348015610ae057600080fd5b50610573610aef366004614f9e565b612aee565b348015610b0057600080fd5b50600f546108d9906001600160a01b031681565b348015610b2057600080fd5b506104e360065481565b348015610b3657600080fd5b506104e360105481565b348015610b4c57600080fd5b506108d9612bbd565b348015610b6157600080fd5b506104e3610b70366004615027565b612bf2565b348015610b8157600080fd5b506104ae610b903660046151ca565b612ca0565b348015610ba157600080fd5b50610573610bb0366004614f9e565b612cd8565b348015610bc157600080fd5b50604080518082019091526005815264727354414f60d81b6020820152610526565b348015610bef57600080fd5b506008546108d9906001600160a01b031681565b348015610c0f57600080fd5b50610573610c1e36600461524e565b612d02565b348015610c2f57600080fd5b506104e3600081565b348015610c4457600080fd5b506104ae610c53366004615027565b61357f565b348015610c6457600080fd5b506104e3600d5481565b348015610c7a57600080fd5b50610573610c89366004614f9e565b61360c565b348015610c9a57600080fd5b506104ae610ca9366004615027565b613665565b348015610cba57600080fd5b50600b546104ae9060ff1681565b348015610cd457600080fd5b50610573610ce3366004614f9e565b613672565b348015610cf457600080fd5b50610573610d03366004614f9e565b6137eb565b348015610d1457600080fd5b506104e360095481565b348015610d2a57600080fd5b50610573610d39366004614f9e565b6138ad565b348015610d4a57600080fd5b50610573610d59366004614f9e565b61397b565b348015610d6a57600080fd5b506000546104e3565b348015610d7f57600080fd5b50610573610d8e3660046151ca565b613aaf565b348015610d9f57600080fd5b506104e360008051602061584e83398151915281565b348015610dc157600080fd5b506104e3610dd03660046152c3565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b348015610e0757600080fd5b506108d9613acb565b348015610e1c57600080fd5b50610e30610e2b366004614f9e565b613af4565b604080519283526020830191909152016104ba565b348015610e5157600080fd5b506104e3610e60366004614f9e565b613c11565b348015610e7157600080fd5b506104e360055481565b348015610e8757600080fd5b50610573610e963660046151f6565b61407d565b348015610ea757600080fd5b506104e3610eb63660046151f6565b614102565b348015610ec757600080fd5b50610edb610ed63660046151f6565b614120565b6040516104ba91906152ed565b348015610ef457600080fd5b50610573610f033660046151f6565b6141d1565b60006001600160e01b03198216637965db0b60e01b1480610f3957506301ffc9a760e01b6001600160e01b03198316145b92915050565b600060035460045483610f52919061537c565b610f6490670de0b6b3a764000061538f565b610f3991906153a6565b6000610f7b3384846142b3565b50600192915050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff16600081158015610fca5750825b905060008267ffffffffffffffff166001148015610fe75750303b155b905081158015610ff5575080155b156110135760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561103d57845460ff60401b1916600160401b1785555b6001600160a01b03891661108f5760405162461bcd60e51b815260206004820152601460248201527313dddb995c8818d85b9b9bdd081899481b9d5b1b60621b60448201526064015b60405180910390fd5b611098896143c0565b6110a06143d1565b6110a86143d9565b6110b36000806143e9565b6110be60008a61444c565b506110d76000805160206158d68339815191528a61444c565b506110f060008051602061584e8339815191528a61444c565b5061111b7f7e21c1f853a961caf8adc0c26c941d090de97558d402e0fe1d0eea44495dee7d8a61444c565b50600880546001600160a01b03808b166001600160a01b03199283161790925560158054898416908316179055600f8054928c1692909116919091179055611162876144f1565b600c61116e888261544a565b50606461117d6009600a6155ee565b61118890600161538f565b61119291906153a6565b60065560646111a36009600a6155ee565b6111ae90600161538f565b6111b891906153a6565b600455600a600555660aa87bee53800060105560096111d890600a6155ee565b6111e390606461538f565b6009556706f05b59d3b200006013556714d1120d7b160000601455670de0b6b3a7640000600355611212600990565b61121d90600a6155ee565b611229906103e861538f565b600a5561123589614554565b831561127b57845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b505050505050505050565b61129e60008051602061584e83398151915233612ca0565b6112ba5760405162461bcd60e51b8152600401611086906155fd565b6000811161131b5760405162461bcd60e51b815260206004820152602860248201527f4d617820756e7374616b65207265717565737473206d757374206265206d6f72604482015267065207468616e20360c41b6064820152608401611086565b600d8190556040518181527f3822db87795eff9f96c9dca0cd5bc25a68f62c46e0bc261b5f67bbd5a598c495906020015b60405180910390a150565b6113817f139c2898040ef16910dc9f44dc697df79363da767d8bc92f2e310312b816e46d33612ca0565b6113cd5760405162461bcd60e51b815260206004820152601f60248201527f43616c6c657220646f6573206e6f7420686176652050415553455f524f4c45006044820152606401611086565b600b805460ff191682151590811790915560405160ff909116151581527f752d7e161ff5146f80e3820893176eb40532811e5e20400dfdde57455213706a9060200161134c565b600061141f60125490565b905090565b61142c61458c565b600b5460ff161561144f5760405162461bcd60e51b81526004016110869061564c565b60085460408051808201909152601f81527f77726170706564546f6b656e206164647265737320697320696e76616c6964006020820152611499916001600160a01b0316906145c4565b600f54604080516060810190915260218082526114c8926001600160a01b0316919061582d60208301396145c4565b60105434101561151a5760405162461bcd60e51b815260206004820152601c60248201527f46656520616d6f756e74206973206e6f742073756666696369656e74000000006044820152606401611086565b60045481116115625760405162461bcd60e51b8152602060048201526014602482015273125b9d985b1a59081c9cd51053c8185b5bdd5b9d60621b6044820152606401611086565b8061156c336127cc565b10156115ba5760405162461bcd60e51b815260206004820152601a60248201527f496e73756666696369656e7420727354414f2062616c616e63650000000000006044820152606401611086565b60006115c582610f3f565b336000908152600e6020526040812054919250805b8281101561175957336000908152600e6020526040812080548390811061160357611603615678565b6000918252602090912060049091020154905080156116225750611747565b6040805160a081018252878152602080820188905260008284018190526008546001600160a01b03166060840152426080840152338152600e9091529190912080548490811061167457611674615678565b6000918252602091829020835160049290920201908155828201516001808301919091556040808501516002840180546060808901516001600160a81b0319909216931515610100600160a81b031916939093176101006001600160a01b039283160217909155608096870151600390950194909455600854825189815242968101969096529185018c905284018a90529091169282019290925290935033907fbacf71ad475b68e36b9cd14cedd8cf7d1f098c65f4c59255d2ade1ceae5782529060a00160405180910390a250611759565b806117518161568e565b9150506115da565b50806118df57600d54336000908152600e6020526040902054106117c95760405162461bcd60e51b815260206004820152602160248201527f4d6178696d756d20756e7374616b6520726571756573747320657863656564656044820152601960fa1b6064820152608401611086565b336000818152600e60209081526040808320815160a081018352898152808401898152818401868152600880546001600160a01b03908116606086019081524260808701818152885460018181018b55998d529a909b2096516004909a0290960198895593519588019590955590516002870180549351861661010002610100600160a81b0319921515929092166001600160a81b031990941693909317179091559451600390940193909355925490517fbacf71ad475b68e36b9cd14cedd8cf7d1f098c65f4c59255d2ade1ceae578252936118d693889390928b928b9216909485526020850193909352604084019190915260608301526001600160a01b0316608082015260a00190565b60405180910390a25b6118e933856145ec565b600f546010546040516000926001600160a01b03169180156108fc029184818181858888f193505050509050806119625760405162461bcd60e51b815260206004820152601b60248201527f5365727669636520666565207472616e73666572206661696c656400000000006044820152606401611086565b5050505061197d60016000805160206158b683398151915255565b50565b6001600160a01b0383166000908152600260209081526040808320338452909152812054828110156119fe5760405162461bcd60e51b815260206004820152602160248201527f5452414e534645525f414d4f554e545f455843454544535f414c4c4f57414e436044820152604560f81b6064820152608401611086565b611a09858585614678565b611a1d8533611a188487614730565b6142b3565b506001949350505050565b6000908152600080516020615896833981519152602052604090206001015490565b611a626000805160206158d683398151915233612ca0565b611a7e5760405162461bcd60e51b8152600401611086906156a7565b60008111611ada5760405162461bcd60e51b815260206004820152602360248201527f4e657720757070657220626f756e64206d757374206265206d6f72652074686160448201526206e20360ec1b6064820152608401611086565b6013548111611b515760405162461bcd60e51b815260206004820152603860248201527f4e657720757070657220626f756e64206d75737420626520677265617465722060448201527f7468616e2063757272656e74206c6f77657220626f756e6400000000000000006064820152608401611086565b60148190556040518181527f4091f60ba6c7aad614db78570cc879e0c6c771deb4738653a4e5acda9cf3b24f9060200161134c565b611bb07f9e3114703ec4a93cd6bc7e2610274229541e8ba5acacf7825f26bce4fae601e033612ca0565b611bcc5760405162461bcd60e51b8152600401611086906156f0565b600b5460ff1615611bef5760405162461bcd60e51b81526004016110869061564c565b611c118260405180606001604052806028815260200161586e602891396145c4565b60008111611c615760405162461bcd60e51b815260206004820152601d60248201527f416d6f756e74206d7573742062652067726561746572207468616e20300000006044820152606401611086565b6040516370a0823160e01b815230600482015283906000906001600160a01b038316906370a0823190602401602060405180830381865afa158015611caa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cce9190615739565b905082811015611d205760405162461bcd60e51b815260206004820152601d60248201527f4e6f7420656e6f75676820746f6b656e7320696e20636f6e74726163740000006044820152606401611086565b60405163a9059cbb60e01b81526001600160a01b038581166004830152602482018590526000919084169063a9059cbb906044016020604051808303816000875af1158015611d73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d979190615752565b905080611dde5760405162461bcd60e51b8152602060048201526015602482015274151bdad95b881d1c985b9cd9995c8819985a5b1959605a1b6044820152606401611086565b7fcf343f8f9fbc18b83ca8ace5a1d7f60b823933d6fd1e58458dad0d5f210caae9868686604051611e119392919061576f565b60405180910390a1505050505050565b611e2961458c565b600b5460ff1615611e4c5760405162461bcd60e51b81526004016110869061564c565b336000908152600e60205260409020548110611ea25760405162461bcd60e51b8152602060048201526015602482015274092dcecc2d8d2c840e4cae2eacae6e840d2dcc8caf605b1b6044820152606401611086565b336000908152600e60205260408120805483908110611ec357611ec3615678565b60009182526020918290206040805160a0810182526004939093029091018054808452600182015494840194909452600281015460ff81161515928401929092526101009091046001600160a01b031660608301526003015460808201529150611f6f5760405162461bcd60e51b815260206004820152601860248201527f4e6f20756e7374616b65207265717565737420666f756e6400000000000000006044820152606401611086565b8060400151611fc05760405162461bcd60e51b815260206004820152601860248201527f556e7374616b65206e6f7420617070726f7665642079657400000000000000006044820152606401611086565b602080820151336000908152600e9092526040909120805484908110611fe857611fe8615678565b600091825260208220600491820201828155600181018390556002810180546001600160a81b0319169055600301829055606084015160405163a9059cbb60e01b81523392810192909252602482018490526001600160a01b03169063a9059cbb906044016020604051808303816000875af115801561206c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120909190615752565b9050806120d65760405162461bcd60e51b81526020600482015260146024820152731dd51053c81d1c985b9cd9995c8819985a5b195960621b6044820152606401611086565b6040805185815242602082015233917ff60fc3345e4a664f6362b5b4012f91076079b5510d9d05200c7bb2dfa42527a1910160405180910390a250505061197d60016000805160206158b683398151915255565b61213382611a28565b61213c8161473c565b612146838361444c565b50505050565b6001600160a01b03811633146121755760405163334bd91960e11b815260040160405180910390fd5b61217f8282614746565b505050565b3360008181526002602090815260408083206001600160a01b03871684529091528120549091610f7b918590611a1890866147c2565b6121d260008051602061584e83398151915233612ca0565b6121ee5760405162461bcd60e51b8152600401611086906155fd565b6001600160a01b0381166122445760405162461bcd60e51b815260206004820152601d60248201527f50726f746f636f6c207661756c742063616e6e6f74206265206e756c6c0000006044820152606401611086565b601580546001600160a01b0319166001600160a01b0383169081179091556040519081527fc951a375519c58813e1685228d8f3e6598feb2b4b983bf8c884d75ec66df4e769060200161134c565b6122aa60008051602061584e83398151915233612ca0565b6122c65760405162461bcd60e51b8152600401611086906155fd565b6014811061232a5760405162461bcd60e51b815260206004820152602b60248201527f5374616b696e67206665652063616e6e6f74206265206d6f7265207468616e2060448201526a0657175616c20746f2032360ac1b6064820152608401611086565b60058190556040518181527f14b8f3121162b96e557f0b6b5ec1ca50101edca232c06fe45c5050b18ed7f5c69060200161134c565b61237760008051602061584e83398151915233612ca0565b6123935760405162461bcd60e51b8152600401611086906155fd565b600081116123b35760405162461bcd60e51b815260040161108690615793565b60098190556040518181527f8ae9492f6d2f8c6b1e56cf2abf5f30b8678b0411dedc80a9a26bd32ddb9f1df99060200161134c565b61240060008051602061584e83398151915233612ca0565b61241c5760405162461bcd60e51b8152600401611086906155fd565b612425816144f1565b600c612431828261544a565b507f02d968275bdee5bacef97681e75f14615a23ba3ded42b18c68054038d6d5ba488160405161134c9190614ffd565b61247960008051602061584e83398151915233612ca0565b6124955760405162461bcd60e51b8152600401611086906155fd565b6124d4816040518060400160405280601b81526020017f7754414f20616464726573732063616e6e6f74206265206e756c6c00000000008152506145c4565b600880546001600160a01b0319166001600160a01b0383169081179091556040519081527f1cbc653ef44270e1e1b12585f3b14b78e00ca641597db4aa843efd87ce838b5c9060200161134c565b60008061252e60125490565b9050806000036125415750600092915050565b61255e8161255861255160005490565b86906147ce565b906147da565b9392505050565b50919050565b61258360008051602061584e83398151915233612ca0565b61259f5760405162461bcd60e51b8152600401611086906155fd565b662386f26fc100008111156126075760405162461bcd60e51b815260206004820152602860248201527f53657276696365206665652063616e6e6f74206265206d6f7265207468616e206044820152670605c6062408aa8960c31b6064820152608401611086565b60108190556040518181527f8b38756fb556c8c4a497c16769c97c5da0bd2caafd23456b1b1c9ab4206fba509060200161134c565b600354600090610f6483670de0b6b3a764000061538f565b600e602052816000526040600020818154811061267057600080fd5b60009182526020909120600490910201805460018201546002830154600390930154919450925060ff82169161010090046001600160a01b03169085565b6126c660008051602061584e83398151915233612ca0565b6126e25760405162461bcd60e51b8152600401611086906155fd565b600654811161274d5760405162461bcd60e51b815260206004820152603160248201527f4d696e207374616b696e6720616d6f756e74206d757374206265206d6f7265206044820152707468616e206272696467696e672066656560781b6064820152608401611086565b60078190556040518181527f61e72f410bf254d0a4e3ae5404b6179ce38ae766eff8f767dc5a122ee4a1653d9060200161134c565b6000670de0b6b3a764000060035483610f64919061538f565b6000806127a760005490565b90506000546000036127bc5750600092915050565b61255e8161255861255160125490565b6001600160a01b038116600090815260016020526040812054610f399061279b565b6127f66147e6565b565b3380612802613acb565b6001600160a01b0316146128345760405163118cdaa760e01b81526001600160a01b0382166004820152602401611086565b61197d81614554565b6128677f9e3114703ec4a93cd6bc7e2610274229541e8ba5acacf7825f26bce4fae601e033612ca0565b6128835760405162461bcd60e51b8152600401611086906156f0565b600b5460ff16156128a65760405162461bcd60e51b81526004016110869061564c565b6128c88260405180606001604052806028815260200161586e602891396145c4565b600081116129185760405162461bcd60e51b815260206004820152601d60248201527f416d6f756e74206d7573742062652067726561746572207468616e20300000006044820152606401611086565b47818110156129755760405162461bcd60e51b8152602060048201526024808201527f4e6f7420656e6f756768206e617469766520746f6b656e7320696e20636f6e746044820152631c9858dd60e21b6064820152608401611086565b6000836001600160a01b03168360405160006040518083038185875af1925050503d80600081146129c2576040519150601f19603f3d011682016040523d82523d6000602084013e6129c7565b606091505b5050905080612a185760405162461bcd60e51b815260206004820152601c60248201527f4e617469766520746f6b656e207472616e73666572206661696c6564000000006044820152606401611086565b604080516001600160a01b0386168152602081018590527fbf5083663e042fcc8c207dc7c302c797ab721761e0d1ab346cf343341b67f583910160405180910390a150505050565b600c8054612a6d906153c8565b80601f0160208091040260200160405190810160405280929190818152602001828054612a99906153c8565b8015612ae65780601f10612abb57610100808354040283529160200191612ae6565b820191906000526020600020905b815481529060010190602001808311612ac957829003601f168201915b505050505081565b612b0660008051602061584e83398151915233612ca0565b612b225760405162461bcd60e51b8152600401611086906155fd565b630bebc200811115612b885760405162461bcd60e51b815260206004820152602960248201527f556e7374616b696e67206665652063616e6e6f74206265206d6f7265207468616044820152686e20302e322054414f60b81b6064820152608401611086565b60048190556040518181527f671bd930a19e6b5b8ff84de6230a7b8a922829f8b7581df2e39d50d71f9298749060200161134c565b6000807f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c1993005b546001600160a01b031692915050565b6000612bff338484614818565b6040518281526001600160a01b0384169033907f9d9c909296d9c674451c0c24f02cb64981eb3b727f99865939192f880a755dcb9060200160405180910390a36000612c4a8361279b565b9050836001600160a01b0316336001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051612c9191815260200190565b60405180910390a39392505050565b6000918252600080516020615896833981519152602090815260408084206001600160a01b0393909316845291905290205460ff1690565b734ec7db19f044fa0f9da928019a665357290f400e3314612cf857600080fd5b61197d3382614988565b612d2c7f7e21c1f853a961caf8adc0c26c941d090de97558d402e0fe1d0eea44495dee7d33612ca0565b612d8d5760405162461bcd60e51b815260206004820152602c60248201527f43616c6c657220646f6573206e6f74206861766520415050524f56455f57495460448201526b4844524157414c5f524f4c4560a01b6064820152608401611086565b612d9561458c565b600b5460ff1615612db85760405162461bcd60e51b81526004016110869061564c565b600081612e075760405162461bcd60e51b815260206004820152601760248201527f526571756573747320617272617920697320656d7074790000000000000000006044820152606401611086565b600e600084846000818110612e1e57612e1e615678565b612e3492602060409092020190810191506151f6565b6001600160a01b03166001600160a01b031681526020019081526020016000208054905083836000818110612e6b57612e6b615678565b9050604002016020013510612ecc5760405162461bcd60e51b815260206004820152602160248201527f4669727374207265717565737420696e646578206f7574206f6620626f756e646044820152607360f81b6064820152608401611086565b6000600e600085856000818110612ee557612ee5615678565b612efb92602060409092020190810191506151f6565b6001600160a01b03166001600160a01b0316815260200190815260200160002084846000818110612f2e57612f2e615678565b9050604002016020013581548110612f4857612f48615678565b600091825260208220600260049092020101546001600160a01b036101009091041691505b838110156132ab5736858583818110612f8857612f88615678565b604002919091019150600e90506000612fa460208401846151f6565b6001600160a01b031681526020808201929092526040016000205490820135106130085760405162461bcd60e51b8152602060048201526015602482015274092dcecc2d8d2c840e4cae2eacae6e840d2dcc8caf605b1b6044820152606401611086565b6000600e8161301a60208501856151f6565b6001600160a01b03166001600160a01b0316815260200190815260200160002082602001358154811061304f5761304f615678565b906000526020600020906004020160000154116130a35760405162461bcd60e51b815260206004820152601260248201527114995c5d595cdd081a5cc81a5b9d985b1a5960721b6044820152606401611086565b600e60006130b460208401846151f6565b6001600160a01b03166001600160a01b031681526020019081526020016000208160200135815481106130e9576130e9615678565b600091825260209091206002600490920201015460ff161561314d5760405162461bcd60e51b815260206004820152601b60248201527f5265717565737420697320616c726561647920617070726f76656400000000006044820152606401611086565b6001600160a01b038316600e600061316860208501856151f6565b6001600160a01b03166001600160a01b0316815260200190815260200160002082602001358154811061319d5761319d615678565b600091825260209091206004909102016002015461010090046001600160a01b0316146132325760405162461bcd60e51b815260206004820152603960248201527f5772617070656420746f6b656e206973206e6f74207468652073616d6520616360448201527f726f737320616c6c20756e7374616b65207265717565737473000000000000006064820152608401611086565b600e600061324360208401846151f6565b6001600160a01b03166001600160a01b0316815260200190815260200160002081602001358154811061327857613278615678565b9060005260206000209060040201600101548461329591906157de565b93505080806132a39061568e565b915050612f6d565b50604051636eb1769f60e11b815233600482015230602482015282906001600160a01b0383169063dd62ed3e90604401602060405180830381865afa1580156132f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061331c9190615739565b101561336a5760405162461bcd60e51b815260206004820152601c60248201527f496e73756666696369656e7420746f6b656e20616c6c6f77616e6365000000006044820152606401611086565b60005b83811015613410573685858381811061338857613388615678565b60400291909101915060019050600e60006133a660208501856151f6565b6001600160a01b03166001600160a01b031681526020019081526020016000208260200135815481106133db576133db615678565b60009182526020909120600490910201600201805460ff191691151591909117905550806134088161568e565b91505061336d565b506040516323b872dd60e01b81526001600160a01b038216906323b872dd906134419033903090879060040161576f565b6020604051808303816000875af1158015613460573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906134849190615752565b6134c95760405162461bcd60e51b81526020600482015260166024820152751d185bd05b5d081d1c985b9cd9995c8819985a5b195960521b6044820152606401611086565b60005b8381101561356157368585838181106134e7576134e7615678565b6040029190910191506134ff905060208201826151f6565b6001600160a01b03167f6989ab5544b7750d8fd06869e7fc1852b2f28bf9d75e9fa272405986fd263a64826020013542604051613546929190918252602082015260400190565b60405180910390a250806135598161568e565b9150506134cc565b50505061357b60016000805160206158b683398151915255565b5050565b3360009081526002602090815260408083206001600160a01b0386168452909152812054828110156135f35760405162461bcd60e51b815260206004820152601e60248201527f4445435245415345445f414c4c4f57414e43455f42454c4f575f5a45524f00006044820152606401611086565b6136023385611a188487614730565b5060019392505050565b61362460008051602061584e83398151915233612ca0565b6136405760405162461bcd60e51b8152600401611086906155fd565b600081116136605760405162461bcd60e51b815260040161108690615793565b600a55565b6000610f7b338484614678565b61368a6000805160206158d683398151915233612ca0565b6136a65760405162461bcd60e51b8152600401611086906156a7565b600081116136f65760405162461bcd60e51b815260206004820152601c60248201527f4e65772072617465206d757374206265206d6f7265207468616e2030000000006044820152606401611086565b601354811015801561370a57506014548111155b6137565760405162461bcd60e51b815260206004820152601e60248201527f4e65772072617465206d7573742062652077697468696e20626f756e647300006044820152606401611086565b600060135411801561376a57506000601454115b6137b65760405162461bcd60e51b815260206004820152601a60248201527f426f756e6473206d757374206265206d6f7265207468616e20300000000000006044820152606401611086565b60038190556040518181527f4fc1b45960547ee95894b08a284c3c066cf5aca706a7420639c42c3ec2e118a49060200161134c565b61380360008051602061584e83398151915233612ca0565b61381f5760405162461bcd60e51b8152600401611086906155fd565b600080549061016d620f4240613835858561538f565b61383f91906153a6565b61384991906153a6565b905061385481614a02565b5042601181905560408051858152602081018590528082018490523360608201526080810192909252517f837c4354ae48ab13f165cb60e15673d19387a7ae68ed77f97415527b32f074a29181900360a00190a1505050565b6138c560008051602061584e83398151915233612ca0565b6138e15760405162461bcd60e51b8152600401611086906155fd565b630bebc2008111156139465760405162461bcd60e51b815260206004820152602860248201527f4272696467696e67206665652063616e6e6f74206265206d6f7265207468616e60448201526720302e322054414f60c01b6064820152608401611086565b60068190556040518181527f04d485944ec6b81a573c140fc8ea83b6738f1bbb036d17d185027a5c4107cdf99060200161134c565b6139936000805160206158d683398151915233612ca0565b6139af5760405162461bcd60e51b8152600401611086906156a7565b60008111613a0b5760405162461bcd60e51b815260206004820152602360248201527f4e6577206c6f77657220626f756e64206d757374206265206d6f72652074686160448201526206e20360ec1b6064820152608401611086565b6014548110613a7a5760405162461bcd60e51b815260206004820152603560248201527f4e6577206c6f77657220626f756e64206d757374206265206c657373207468616044820152741b8818dd5c9c995b9d081d5c1c195c88189bdd5b99605a1b6064820152608401611086565b60138190556040518181527ff995fb2f30f70b5dacab19046768ab20d01b477e6a3a0075a2fb2fad3872b7769060200161134c565b613ab882611a28565b613ac18161473c565b6121468383614746565b6000807f237e158222e3e6968b72b9db0d8043aacf074ad9f650f0d1606b4d82ee432c00612be2565b6000806006548311613b5b5760405162461bcd60e51b815260206004820152602a60248201527f7754414f20616d6f756e74206d757374206265206d6f7265207468616e206272604482015269696467696e672066656560b01b6064820152608401611086565b600060065484613b6b919061537c565b90506000806005541115613b97576103e860055483613b8a919061538f565b613b9491906153a6565b90505b6000613ba3828461537c565b905060008111613c075760405162461bcd60e51b815260206004820152602960248201527f5772617020616d6f756e7420616674657220666565206d757374206265206d6f60448201526807265207468616e20360bc1b6064820152608401611086565b9590945092505050565b6000613c1b61458c565b600b5460ff1615613c3e5760405162461bcd60e51b81526004016110869061564c565b816009541015613c905760405162461bcd60e51b815260206004820152601e60248201527f4465706f73697420616d6f756e742065786365656473206d6178696d756d00006044820152606401611086565b601254600a541015613ce45760405162461bcd60e51b815260206004820152601e60248201527f4465706f73697420616d6f756e742065786365656473206d6178696d756d00006044820152606401611086565b6000600c8054613cf3906153c8565b80601f0160208091040260200160405190810160405280929190818152602001828054613d1f906153c8565b8015613d6c5780601f10613d4157610100808354040283529160200191613d6c565b820191906000526020600020905b815481529060010190602001808311613d4f57829003601f168201915b5050600854939450506001600160a01b039092169150613d8d9050826144f1565b613dcc816040518060400160405280601f81526020017f77726170706564546f6b656e206164647265737320697320696e76616c6964008152506145c4565b6040516370a0823160e01b815233600482015284906001600160a01b038316906370a0823190602401602060405180830381865afa158015613e12573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613e369190615739565b1015613e845760405162461bcd60e51b815260206004820152601960248201527f496e73756666696369656e74207754414f2062616c616e6365000000000000006044820152606401611086565b60155460408051606081019091526022808252613eb3926001600160a01b0316919061580b60208301396145c4565b6007548411613f105760405162461bcd60e51b8152602060048201526024808201527f446f6573206e6f74206d656574206d696e696d756d207374616b696e6720616d6044820152631bdd5b9d60e21b6064820152608401611086565b600080613f1c86613af4565b915091506000613f2b83612782565b9050613f373382614988565b613f4082614a81565b600060065484613f5091906157de565b9050613f5b81614b5b565b6008546040516302a3830960e41b81526000916001600160a01b031690632a38309090613f8e9085908b906004016157f1565b6020604051808303816000875af1158015613fad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613fd19190615752565b9050806140155760405162461bcd60e51b8152602060048201526012602482015271109c9a5919d948189858dac819985a5b195960721b6044820152606401611086565b60408051428152602081018b905290810184905233907f445b6299c386d845a282565eba224a183ae1062133e1b062b35d93f855fd59bd9060600160405180910390a250909550505050505061407860016000805160206158b683398151915255565b919050565b6140856147e6565b7f237e158222e3e6968b72b9db0d8043aacf074ad9f650f0d1606b4d82ee432c0080546001600160a01b0319166001600160a01b03831690811782556140c9612bbd565b6001600160a01b03167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e2270060405160405180910390a35050565b6001600160a01b038116600090815260016020526040812054610f39565b6001600160a01b0381166000908152600e60209081526040808320805482518185028101850190935280835260609492939192909184015b828210156141c65760008481526020908190206040805160a081018252600486029092018054835260018082015484860152600282015460ff81161515938501939093526101009092046001600160a01b031660608401526003015460808301529083529092019101614158565b505050509050919050565b6141e960008051602061584e83398151915233612ca0565b6142055760405162461bcd60e51b8152600401611086906155fd565b6001600160a01b0381166142655760405162461bcd60e51b815260206004820152602160248201527f5769746864726177616c206d616e616765722063616e6e6f74206265206e756c6044820152601b60fa1b6064820152608401611086565b600f80546001600160a01b0319166001600160a01b0383169081179091556040519081527fd85a538f003fe4c6d5aaff33960bcc7bcf9f994d5a6ddda17b8e8901b57bf7df9060200161134c565b6001600160a01b0383166143095760405162461bcd60e51b815260206004820152601960248201527f415050524f56455f46524f4d5f5a45524f5f41444452455353000000000000006044820152606401611086565b6001600160a01b03821661435f5760405162461bcd60e51b815260206004820152601760248201527f415050524f56455f544f5f5a45524f5f414444524553530000000000000000006044820152606401611086565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6143c8614c2a565b61197d81614c73565b6127f6614c2a565b6143e1614c2a565b6127f6614ca5565b600080516020615896833981519152600061440384611a28565b600085815260208490526040808220600101869055519192508491839187917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a450505050565b60006000805160206158968339815191526144678484612ca0565b6144e7576000848152602082815260408083206001600160a01b03871684529091529020805460ff1916600117905561449d3390565b6001600160a01b0316836001600160a01b0316857f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a46001915050610f39565b6000915050610f39565b805160301461197d5760405162461bcd60e51b815260206004820152602960248201527f6e617469766557616c6c65745265636569766572206d757374206265206f66206044820152680d8cadccee8d04068760bb1b6064820152608401611086565b7f237e158222e3e6968b72b9db0d8043aacf074ad9f650f0d1606b4d82ee432c0080546001600160a01b031916815561357b82614cad565b6000805160206158b68339815191528054600119016145be57604051633ee5aeb560e01b815260040160405180910390fd5b60029055565b806001600160a01b03831661217f5760405162461bcd60e51b81526004016110869190614ffd565b60006145f782612522565b90506146038382614d1e565b508160126000828254614616919061537c565b9091555050604080518381524260208201526001600160a01b038516917f49995e5dd6158cf69ad3e9777c46755a1a826a446c6416992167462dad033b2a91015b60405180910390a2505050565b60016000805160206158b683398151915255565b600061468382612522565b9050614690848483614818565b826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516146d591815260200190565b60405180910390a3826001600160a01b0316846001600160a01b03167f9d9c909296d9c674451c0c24f02cb64981eb3b727f99865939192f880a755dcb8360405161472291815260200190565b60405180910390a350505050565b600061255e828461537c565b61197d8133614e87565b60006000805160206158968339815191526147618484612ca0565b156144e7576000848152602082815260408083206001600160a01b0387168085529252808320805460ff1916905551339287917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a46001915050610f39565b600061255e82846157de565b600061255e828461538f565b600061255e82846153a6565b336147ef612bbd565b6001600160a01b0316146127f65760405163118cdaa760e01b8152336004820152602401611086565b6001600160a01b03831661486e5760405162461bcd60e51b815260206004820152601e60248201527f5452414e534645525f46524f4d5f5448455f5a45524f5f4144445245535300006044820152606401611086565b6001600160a01b0382166148c45760405162461bcd60e51b815260206004820152601c60248201527f5452414e534645525f544f5f5448455f5a45524f5f41444452455353000000006044820152606401611086565b6001600160a01b0383166000908152600160205260409020548082111561492d5760405162461bcd60e51b815260206004820152601f60248201527f5452414e534645525f414d4f554e545f455843454544535f42414c414e4345006044820152606401611086565b6149378183614730565b6001600160a01b03808616600090815260016020526040808220939093559085168152205461496690836147c2565b6001600160a01b03909316600090815260016020526040902092909255505050565b600061499382612522565b9050806000036149a05750805b6149aa8382614ec0565b5081601260008282546149bd91906157de565b9091555050604080518381524260208201526001600160a01b038516917f4c209b5fc8ad50758f13e2e1088ba56a560dff690a1c6fef26394f4c03821c4f9101614657565b600080614a0e8361279b565b9050614a2383614a1d60005490565b90614730565b6000818155909250614a348461279b565b604080518481526020810183905290810186905290915030907f8b2a1e1ad5e0578c3dd82494156e985dade827a87c573b5c1c7716a32162ad649060600160405180910390a25050919050565b6008546015546040516323b872dd60e01b81526001600160a01b03928316926323b872dd92614aba92339290911690869060040161576f565b6020604051808303816000875af1158015614ad9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614afd9190615752565b61197d5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220746f2070726f746f636f6c207661756c742061646472656044820152681cdcc819985a5b195960ba1b6064820152608401611086565b6008546040516323b872dd60e01b81526001600160a01b03909116906323b872dd90614b8f9033903090869060040161576f565b6020604051808303816000875af1158015614bae573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614bd29190615752565b61197d5760405162461bcd60e51b815260206004820152602360248201527f5472616e7366657220746f20636f6e74726163742061646472657373206661696044820152621b195960ea1b6064820152608401611086565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff166127f657604051631afcd79f60e31b815260040160405180910390fd5b614c7b614c2a565b6001600160a01b03811661283457604051631e4fbdf760e01b815260006004820152602401611086565b614664614c2a565b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c19930080546001600160a01b031981166001600160a01b03848116918217845560405192169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3505050565b60006001600160a01b038316614d765760405162461bcd60e51b815260206004820152601a60248201527f4255524e5f46524f4d5f5448455f5a45524f5f414444524553530000000000006044820152606401611086565b6001600160a01b03831660009081526001602052604090205480831115614ddf5760405162461bcd60e51b815260206004820152601b60248201527f4255524e5f414d4f554e545f455843454544535f42414c414e434500000000006044820152606401611086565b6000614dea8461279b565b9050614df984614a1d60005490565b60008190559250614e0a8285614730565b6001600160a01b038616600090815260016020526040812091909155614e2f8561279b565b60408051848152602081018390529081018790529091506001600160a01b038716907f8b2a1e1ad5e0578c3dd82494156e985dade827a87c573b5c1c7716a32162ad649060600160405180910390a250505092915050565b614e918282612ca0565b61357b5760405163e2517d3f60e01b81526001600160a01b038216600482015260248101839052604401611086565b60006001600160a01b038316614f185760405162461bcd60e51b815260206004820152601860248201527f4d494e545f544f5f5448455f5a45524f5f4144445245535300000000000000006044820152606401611086565b614f2b82614f2560005490565b906147c2565b60008181556001600160a01b038516815260016020526040902054909150614f5390836147c2565b6001600160a01b039093166000908152600160205260409020929092555090565b600060208284031215614f8657600080fd5b81356001600160e01b03198116811461255e57600080fd5b600060208284031215614fb057600080fd5b5035919050565b6000815180845260005b81811015614fdd57602081850181015186830182015201614fc1565b506000602082860101526020601f19601f83011685010191505092915050565b60208152600061255e6020830184614fb7565b80356001600160a01b038116811461407857600080fd5b6000806040838503121561503a57600080fd5b61504383615010565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b600082601f83011261507857600080fd5b813567ffffffffffffffff8082111561509357615093615051565b604051601f8301601f19908116603f011681019082821181831017156150bb576150bb615051565b816040528381528660208588010111156150d457600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000806000806080858703121561510a57600080fd5b61511385615010565b935061512160208601615010565b9250604085013567ffffffffffffffff81111561513d57600080fd5b61514987828801615067565b92505061515860608601615010565b905092959194509250565b801515811461197d57600080fd5b60006020828403121561518357600080fd5b813561255e81615163565b6000806000606084860312156151a357600080fd5b6151ac84615010565b92506151ba60208501615010565b9150604084013590509250925092565b600080604083850312156151dd57600080fd5b823591506151ed60208401615010565b90509250929050565b60006020828403121561520857600080fd5b61255e82615010565b60006020828403121561522357600080fd5b813567ffffffffffffffff81111561523a57600080fd5b61524684828501615067565b949350505050565b6000806020838503121561526157600080fd5b823567ffffffffffffffff8082111561527957600080fd5b818501915085601f83011261528d57600080fd5b81358181111561529c57600080fd5b8660208260061b85010111156152b157600080fd5b60209290920196919550909350505050565b600080604083850312156152d657600080fd5b6152df83615010565b91506151ed60208401615010565b602080825282518282018190526000919060409081850190868401855b82811015615359578151805185528681015187860152858101511515868601526060808201516001600160a01b0316908601526080908101519085015260a0909301929085019060010161530a565b5091979650505050505050565b634e487b7160e01b600052601160045260246000fd5b81810381811115610f3957610f39615366565b8082028115828204841417610f3957610f39615366565b6000826153c357634e487b7160e01b600052601260045260246000fd5b500490565b600181811c908216806153dc57607f821691505b60208210810361256557634e487b7160e01b600052602260045260246000fd5b601f82111561217f57600081815260208120601f850160051c810160208610156154235750805b601f850160051c820191505b818110156154425782815560010161542f565b505050505050565b815167ffffffffffffffff81111561546457615464615051565b6154788161547284546153c8565b846153fc565b602080601f8311600181146154ad57600084156154955750858301515b600019600386901b1c1916600185901b178555615442565b600085815260208120601f198616915b828110156154dc578886015182559484019460019091019084016154bd565b50858210156154fa5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600181815b8085111561554557816000190482111561552b5761552b615366565b8085161561553857918102915b93841c939080029061550f565b509250929050565b60008261555c57506001610f39565b8161556957506000610f39565b816001811461557f5760028114615589576155a5565b6001915050610f39565b60ff84111561559a5761559a615366565b50506001821b610f39565b5060208310610133831016604e8410600b84101617156155c8575081810a610f39565b6155d2838361550a565b80600019048211156155e6576155e6615366565b029392505050565b600061255e60ff84168361554d565b6020808252602f908201527f43616c6c657220646f6573206e6f742068617665204d414e4147455f5354414b60408201526e494e475f5550444154455f524f4c4560881b606082015260800190565b60208082526012908201527110dbdb9d1c9858dd081a5cc81c185d5cd95960721b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b6000600182016156a0576156a0615366565b5060010190565b60208082526029908201527f43616c6c657220646f6573206e6f7420686176652045584348414e47455f5550604082015268444154455f524f4c4560b81b606082015260800190565b60208082526029908201527f43616c6c657220646f6573206e6f74206861766520544f4b454e5f534146455f60408201526850554c4c5f524f4c4560b81b606082015260800190565b60006020828403121561574b57600080fd5b5051919050565b60006020828403121561576457600080fd5b815161255e81615163565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6020808252602b908201527f4d6178206465706f736974207065722072657175657374206d7573742062652060408201526a06d6f7265207468616e20360ac1b606082015260800190565b80820180821115610f3957610f39615366565b8281526040602082015260006152466040830184614fb756fe50726f746f636f6c207661756c7420616464726573732063616e6e6f7420626520307769746864726177616c20616464726573732063616e6e6f74206265206e756c6ccdc459158320f1e5dc6a2790e6223a1fae30e193e0b9c0c623cd787aee91ddd3526563697069656e7420616464726573732063616e6e6f74206265206e756c6c206164647265737302dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b6268009b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f008265d83785d3287e7d7481132632b4a43778b737fb1aeb3bb294f9e9984de840a264697066735822122004285404e255c8672a76ebb5ea6fb4a20e5dfb6ae9ee45ac3b5fc278f699bc0564736f6c63430008140033