60806040526001600a556000601160006101000a81548160ff0219169083151502179055506040518060600160405280600160ff168152602001600360ff168152602001600560ff1681525060129060036200005d929190620004a3565b506040518060600160405280600260ff168152602001600660ff168152602001600a60ff16815250601690600362000097929190620004a3565b50348015620000a557600080fd5b506040516200630f3803806200630f8339818101604052810190620000cb919062000671565b6040518060400160405280600b81526020017f44796e616d6963204e46540000000000000000000000000000000000000000008152506040518060400160405280600481526020017f444e465400000000000000000000000000000000000000000000000000000000815250816000908162000148919062000913565b5080600190816200015a919062000913565b5050506200017d620001716200034d60201b60201c565b6200035560201b60201c565b620001a273779877a7b0d9e8603169ddbd7836e478b46247896200041b60201b60201c565b620001c7736090149792daaee9d1d568c9f9a6f6b46aa29efd6200045f60201b60201c565b7f6361393833363663633733313439353762386330313263373266303561656562600e81905550600a670de0b6b3a7640000600162000207919062000a29565b62000213919062000aa3565b600f8190555060405180606001604052806040518060400160405280600881526020017f686f6e676b6f6e6700000000000000000000000000000000000000000000000081525081526020016040518060400160405280600581526020017f746f6b796f00000000000000000000000000000000000000000000000000000081525081526020016040518060400160405280600881526020017f7368616e67686169000000000000000000000000000000000000000000000000815250815250601f906003620002e5929190620004ed565b506040518060600160405280600060ff168152602001600060ff168152602001600060ff1681525060219060036200031f9291906200054d565b506000600d8190555080601b8190555042601c819055506000601d819055506000601e819055505062000adb565b600033905090565b6000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b80600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b80600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b8260048101928215620004da579160200282015b82811115620004d9578251829060ff16905591602001919060010190620004b7565b5b509050620004e99190620005a4565b5090565b8280548282559060005260206000209081019282156200053a579160200282015b828111156200053957825182908162000528919062000913565b50916020019190600101906200050e565b5b509050620005499190620005c3565b5090565b82805482825590600052602060002090810192821562000591579160200282015b8281111562000590578251829060ff169055916020019190600101906200056e565b5b509050620005a09190620005a4565b5090565b5b80821115620005bf576000816000905550600101620005a5565b5090565b5b80821115620005e75760008181620005dd9190620005eb565b50600101620005c4565b5090565b508054620005f9906200070c565b6000825580601f106200060d57506200062e565b601f0160209004906000526020600020908101906200062d9190620005a4565b5b50565b600080fd5b6000819050919050565b6200064b8162000636565b81146200065757600080fd5b50565b6000815190506200066b8162000640565b92915050565b6000602082840312156200068a576200068962000631565b5b60006200069a848285016200065a565b91505092915050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200072557607f821691505b6020821081036200073b576200073a620006dd565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620007a57fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000766565b620007b1868362000766565b95508019841693508086168417925050509392505050565b6000819050919050565b6000620007f4620007ee620007e88462000636565b620007c9565b62000636565b9050919050565b6000819050919050565b6200081083620007d3565b620008286200081f82620007fb565b84845462000773565b825550505050565b600090565b6200083f62000830565b6200084c81848462000805565b505050565b5b8181101562000874576200086860008262000835565b60018101905062000852565b5050565b601f821115620008c3576200088d8162000741565b620008988462000756565b81016020851015620008a8578190505b620008c0620008b78562000756565b83018262000851565b50505b505050565b600082821c905092915050565b6000620008e860001984600802620008c8565b1980831691505092915050565b6000620009038383620008d5565b9150826002028217905092915050565b6200091e82620006a3565b67ffffffffffffffff8111156200093a5762000939620006ae565b5b6200094682546200070c565b6200095382828562000878565b600060209050601f8311600181146200098b576000841562000976578287015190505b620009828582620008f5565b865550620009f2565b601f1984166200099b8662000741565b60005b82811015620009c5578489015182556001820191506020850194506020810190506200099e565b86831015620009e55784890151620009e1601f891682620008d5565b8355505b6001600288020188555050505b505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000a368262000636565b915062000a438362000636565b925082820262000a538162000636565b9150828204841483151762000a6d5762000a6c620009fa565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600062000ab08262000636565b915062000abd8362000636565b92508262000ad05762000acf62000a74565b5b828204905092915050565b6158248062000aeb6000396000f3fe6080604052600436106101cd5760003560e01c8063715018a6116100f7578063a29545b811610095578063cbcc082611610064578063cbcc082614610668578063d05dcc6a146106a5578063e985e9c5146106e7578063f2fde38b14610724576101cd565b8063a29545b8146105bb578063adccea12146105d7578063b88d4fde14610602578063c87b56dd1461062b576101cd565b80638da5cb5b116100d15780638da5cb5b146105255780638dc654a21461055057806395d89b4114610567578063a22cb46514610592576101cd565b8063715018a6146104b8578063899ad2da146104cf5780638ada066e146104fa576101cd565b806342842e0e1161016f5780636352211e1161013e5780636352211e146103c35780636a51b918146104005780636e04ff0d1461043d57806370a082311461047b576101cd565b806342842e0e1461031d5780634357855e146103465780634585e33b1461036f578063472e5b6714610398576101cd565b8063095ea7b3116101ab578063095ea7b31461027757806318d65615146102a057806320c6bab3146102cb57806323b872dd146102f4576101cd565b806301ffc9a7146101d257806306fdde031461020f578063081812fc1461023a575b600080fd5b3480156101de57600080fd5b506101f960048036038101906101f4919061365b565b61074d565b60405161020691906136a3565b60405180910390f35b34801561021b57600080fd5b5061022461082f565b604051610231919061374e565b60405180910390f35b34801561024657600080fd5b50610261600480360381019061025c91906137a6565b6108c1565b60405161026e9190613814565b60405180910390f35b34801561028357600080fd5b5061029e6004803603810190610299919061385b565b610907565b005b3480156102ac57600080fd5b506102b5610a1e565b6040516102c291906138b4565b60405180910390f35b3480156102d757600080fd5b506102f260048036038101906102ed91906137a6565b610cbc565b005b34801561030057600080fd5b5061031b600480360381019061031691906138cf565b610cc6565b005b34801561032957600080fd5b50610344600480360381019061033f91906138cf565b610d26565b005b34801561035257600080fd5b5061036d6004803603810190610368919061394e565b610d46565b005b34801561037b57600080fd5b50610396600480360381019061039191906139f3565b610ec8565b005b3480156103a457600080fd5b506103ad610f2d565b6040516103ba9190613a4f565b60405180910390f35b3480156103cf57600080fd5b506103ea60048036038101906103e591906137a6565b610f33565b6040516103f79190613814565b60405180910390f35b34801561040c57600080fd5b50610427600480360381019061042291906137a6565b610fb9565b604051610434919061374e565b60405180910390f35b34801561044957600080fd5b50610464600480360381019061045f91906139f3565b611065565b604051610472929190613abf565b60405180910390f35b34801561048757600080fd5b506104a2600480360381019061049d9190613aef565b611084565b6040516104af9190613a4f565b60405180910390f35b3480156104c457600080fd5b506104cd61113b565b005b3480156104db57600080fd5b506104e461114f565b6040516104f19190613a4f565b60405180910390f35b34801561050657600080fd5b5061050f611159565b60405161051c9190613a4f565b60405180910390f35b34801561053157600080fd5b5061053a61116a565b6040516105479190613814565b60405180910390f35b34801561055c57600080fd5b50610565611194565b005b34801561057357600080fd5b5061057c6112e1565b604051610589919061374e565b60405180910390f35b34801561059e57600080fd5b506105b960048036038101906105b49190613b48565b611373565b005b6105d560048036038101906105d09190613cf1565b611389565b005b3480156105e357600080fd5b506105ec6114a8565b6040516105f99190613a4f565b60405180910390f35b34801561060e57600080fd5b5061062960048036038101906106249190613dee565b6114ae565b005b34801561063757600080fd5b50610652600480360381019061064d91906137a6565b611510565b60405161065f919061374e565b60405180910390f35b34801561067457600080fd5b5061068f600480360381019061068a91906137a6565b61156a565b60405161069c9190613a4f565b60405180910390f35b3480156106b157600080fd5b506106cc60048036038101906106c791906137a6565b61158e565b6040516106de96959493929190613e71565b60405180910390f35b3480156106f357600080fd5b5061070e60048036038101906107099190613ed9565b611652565b60405161071b91906136a3565b60405180910390f35b34801561073057600080fd5b5061074b60048036038101906107469190613aef565b6116e6565b005b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061081857507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80610828575061082782611769565b5b9050919050565b60606000805461083e90613f48565b80601f016020809104026020016040519081016040528092919081815260200182805461086a90613f48565b80156108b75780601f1061088c576101008083540402835291602001916108b7565b820191906000526020600020905b81548152906001019060200180831161089a57829003601f168201915b5050505050905090565b60006108cc826117d3565b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600061091282610f33565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610982576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161097990613feb565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166109a161181e565b73ffffffffffffffffffffffffffffffffffffffff1614806109d057506109cf816109ca61181e565b611652565b5b610a0f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a069061407d565b60405180910390fd5b610a198383611826565b505050565b600080610a35600e5430634357855e60e01b6118df565b905060006040518060600160405280602c8152602001615783602c913990506000601f60205481548110610a6c57610a6b61409d565b5b906000526020600020018054610a8190613f48565b80601f0160208091040260200160405190810160405280929190818152602001828054610aad90613f48565b8015610afa5780601f10610acf57610100808354040283529160200191610afa565b820191906000526020600020905b815481529060010190602001808311610add57829003601f168201915b50505050509050600060405180606001604052806024815260200161575f60249139905060008383604051602001610b33929190614108565b604051602081830303815290604052905060008282604051602001610b59929190614108565b6040516020818303038152906040529050610bb46040518060400160405280600381526020017f676574000000000000000000000000000000000000000000000000000000000081525082886119109092919063ffffffff16565b610c336040518060400160405280600481526020017f70617468000000000000000000000000000000000000000000000000000000008152506040518060400160405280600e81526020017f63757272656e742c74656d705f63000000000000000000000000000000000000815250886119109092919063ffffffff16565b6000670de0b6b3a76400009050610c8a6040518060400160405280600581526020017f74696d657300000000000000000000000000000000000000000000000000000081525082896119439092919063ffffffff16565b6001601e6000828254610c9d919061415b565b92505081905550610cb087600f54611976565b97505050505050505090565b80600d8190555050565b610cd7610cd161181e565b826119ad565b610d16576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d0d90614201565b60405180910390fd5b610d21838383611a42565b505050565b610d41838383604051806020016040528060008152506114ae565b505050565b81600b600082815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610de8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ddf90614293565b60405180910390fd5b600b600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055807f7cc135e0cebb02c3480ae5d74d377283180a2601f8f644edf7987b009316c63a60405160405180910390a2827fe78d462e5b267f45854758f0687f24365bbc54861f62fa130714b75dcb2416ad83604051610e7b9190613a4f565b60405180910390a2670de0b6b3a764000082610e9791906142e2565b602160205481548110610ead57610eac61409d565b5b9060005260206000200181905550610ec3611d3b565b505050565b42601c81905550610ed7610a1e565b506001601d6000828254610eeb919061415b565b92505081905550600160206000828254610f05919061415b565b925050819055506003602054610f1b9190614313565b602081905550610f29611d3b565b5050565b60205481565b600080610f3f83611f46565b9050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610fb0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fa790614390565b60405180910390fd5b80915050919050565b601f8181548110610fc957600080fd5b906000526020600020016000915090508054610fe490613f48565b80601f016020809104026020016040519081016040528092919081815260200182805461101090613f48565b801561105d5780601f106110325761010080835404028352916020019161105d565b820191906000526020600020905b81548152906001019060200180831161104057829003601f168201915b505050505081565b60006060601b54601c544261107a91906143b0565b1191509250929050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036110f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110eb90614456565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b611143611f83565b61114d6000612001565b565b6000601d54905090565b600061116560106120c7565b905090565b6000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61119c611f83565b60006111a66120d5565b90508073ffffffffffffffffffffffffffffffffffffffff1663a9059cbb338373ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016111fe9190613814565b602060405180830381865afa15801561121b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061123f919061448b565b6040518363ffffffff1660e01b815260040161125c9291906144b8565b6020604051808303816000875af115801561127b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061129f91906144f6565b6112de576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112d59061456f565b60405180910390fd5b50565b6060600180546112f090613f48565b80601f016020809104026020016040519081016040528092919081815260200182805461131c90613f48565b80156113695780601f1061133e57610100808354040283529160200191611369565b820191906000526020600020905b81548152906001019060200180831161134c57829003601f168201915b5050505050905090565b61138561137e61181e565b83836120ff565b5050565b601160009054906101000a900460ff16156113a357600080fd5b6113b6336113b160106120c7565b61226b565b600042905060008190506000600a836113cf919061415b565b905060006113dc85612289565b905060006113e9866122ab565b905060006040518060c0016040528089815260200186815260200185815260200184815260200183815260200182815250601a600061142860106120c7565b8152602001908152602001600020600082015181600001908161144b919061473b565b506020820151816001015560408201518160020155606082015181600301556080820151816004015560a0820151816005015590505061149361148e60106120c7565b6122cd565b5061149e60106123d2565b5050505050505050565b600d5481565b6114bf6114b961181e565b836119ad565b6114fe576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114f590614201565b60405180910390fd5b61150a848484846123e8565b50505050565b606061151b82612444565b61155a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115519061487f565b60405180910390fd5b611563826122cd565b9050919050565b6021818154811061157a57600080fd5b906000526020600020016000915090505481565b601a6020528060005260406000206000915090508060000180546115b190613f48565b80601f01602080910402602001604051908101604052809291908181526020018280546115dd90613f48565b801561162a5780601f106115ff5761010080835404028352916020019161162a565b820191906000526020600020905b81548152906001019060200180831161160d57829003601f168201915b5050505050908060010154908060020154908060030154908060040154908060050154905086565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6116ee611f83565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361175d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161175490614911565b60405180910390fd5b61176681612001565b50565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b6117dc81612444565b61181b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161181290614390565b60405180910390fd5b50565b600033905090565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff1661189983610f33565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6118e7613568565b6118ef613568565b61190685858584612485909392919063ffffffff16565b9150509392505050565b61192782846080015161253590919063ffffffff16565b61193e81846080015161253590919063ffffffff16565b505050565b61195a82846080015161253590919063ffffffff16565b61197181846080015161255a90919063ffffffff16565b505050565b60006119a5600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168484612607565b905092915050565b6000806119b983610f33565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614806119fb57506119fa8185611652565b5b80611a3957508373ffffffffffffffffffffffffffffffffffffffff16611a21846108c1565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff16611a6282610f33565b73ffffffffffffffffffffffffffffffffffffffff1614611ab8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aaf906149a3565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611b27576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b1e90614a35565b60405180910390fd5b611b3483838360016126d3565b8273ffffffffffffffffffffffffffffffffffffffff16611b5482610f33565b73ffffffffffffffffffffffffffffffffffffffff1614611baa576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ba1906149a3565b60405180910390fd5b6004600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4611d3683838360016126d9565b505050565b60005b611d4860106120c7565b811015611f43576000601a60008381526020019081526020016000206000018054611d7290613f48565b80601f0160208091040260200160405190810160405280929190818152602001828054611d9e90613f48565b8015611deb5780601f10611dc057610100808354040283529160200191611deb565b820191906000526020600020905b815481529060010190602001808311611dce57829003601f168201915b505050505090506000601f60205481548110611e0a57611e0961409d565b5b906000526020600020018054611e1f90613f48565b80601f0160208091040260200160405190810160405280929190818152602001828054611e4b90613f48565b8015611e985780601f10611e6d57610100808354040283529160200191611e98565b820191906000526020600020905b815481529060010190602001808311611e7b57829003601f168201915b5050505050905080604051602001611eb09190614a55565b6040516020818303038152906040528051906020012082604051602001611ed79190614a55565b6040516020818303038152906040528051906020012003611f2e57602160205481548110611f0857611f0761409d565b5b9060005260206000200154601a6000858152602001908152602001600020600501819055505b50508080611f3b90614a6c565b915050611d3e565b50565b60006002600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b611f8b61181e565b73ffffffffffffffffffffffffffffffffffffffff16611fa961116a565b73ffffffffffffffffffffffffffffffffffffffff1614611fff576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ff690614b00565b60405180910390fd5b565b6000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600081600001549050919050565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361216d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161216490614b6c565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c318360405161225e91906136a3565b60405180910390a3505050565b6122858282604051806020016040528060008152506126df565b5050565b600060128260ff16600481106122a2576122a161409d565b5b01549050919050565b600060168260ff16600481106122c4576122c361409d565b5b01549050919050565b60606123ac601a6000848152602001908152602001600020600001612307601a60008681526020019081526020016000206001015461273a565b612326601a60008781526020019081526020016000206002015461273a565b612345601a60008881526020019081526020016000206003015461273a565b612364601a60008981526020019081526020016000206004015461273a565b612383601a60008a81526020019081526020016000206005015461273a565b60405160200161239896959493929190614fc5565b604051602081830303815290604052612808565b6040516020016123bc91906150f8565b6040516020818303038152906040529050919050565b6001816000016000828254019250508190555050565b6123f3848484611a42565b6123ff8484848461296b565b61243e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124359061518c565b60405180910390fd5b50505050565b60008073ffffffffffffffffffffffffffffffffffffffff1661246683611f46565b73ffffffffffffffffffffffffffffffffffffffff1614159050919050565b61248d613568565b61249d8560800151610100612af2565b508385600001818152505082856020019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508185604001907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191690817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681525050849050949350505050565b6125428260038351612b5c565b6125558183612ce190919063ffffffff16565b505050565b7fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000008112156125915761258c8282612d03565b612603565b67ffffffffffffffff8113156125b0576125ab8282612d7a565b612602565b600081126125c9576125c482600083612b5c565b612601565b612600826001837fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6125fb91906151b6565b612b5c565b5b5b5b5050565b600080600a54905060018161261c919061415b565b600a819055506000634042994660e01b60008087600001513089604001518760018c608001516000015160405160240161265d989796959493929190615208565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505090506126c886838684612dc6565b925050509392505050565b50505050565b50505050565b6126e98383612f5b565b6126f6600084848461296b565b612735576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161272c9061518c565b60405180910390fd5b505050565b60606000600161274984613178565b01905060008167ffffffffffffffff81111561276857612767613b8d565b5b6040519080825280601f01601f19166020018201604052801561279a5781602001600182028036833780820191505090505b509050600082602001820190505b6001156127fd578080600190039150507f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a85816127f1576127f06142b3565b5b049450600085036127a8575b819350505050919050565b6060600082510361282a57604051806020016040528060008152509050612966565b60006040518060600160405280604081526020016157af6040913990506000600360028551612859919061415b565b61286391906142e2565b600461286f919061528d565b67ffffffffffffffff81111561288857612887613b8d565b5b6040519080825280601f01601f1916602001820160405280156128ba5781602001600182028036833780820191505090505b509050600182016020820185865187015b80821015612926576003820191508151603f8160121c168501518453600184019350603f81600c1c168501518453600184019350603f8160061c168501518453600184019350603f81168501518453600184019350506128cb565b505060038651066001811461294257600281146129555761295d565b603d6001830353603d600283035361295d565b603d60018303535b50505080925050505b919050565b600061298c8473ffffffffffffffffffffffffffffffffffffffff166132cb565b15612ae5578373ffffffffffffffffffffffffffffffffffffffff1663150b7a026129b561181e565b8786866040518563ffffffff1660e01b81526004016129d794939291906152cf565b6020604051808303816000875af1925050508015612a1357506040513d601f19601f82011682018060405250810190612a109190615330565b60015b612a95573d8060008114612a43576040519150601f19603f3d011682016040523d82523d6000602084013e612a48565b606091505b506000815103612a8d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a849061518c565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050612aea565b600190505b949350505050565b612afa6135d5565b6000602083612b099190614313565b14612b3557602082612b1b9190614313565b6020612b2791906143b0565b82612b32919061415b565b91505b81836020018181525050604051808452600081528281016020016040525082905092915050565b60178167ffffffffffffffff1611612b9357612b8d8160058460ff16901b60ff1617846132ee90919063ffffffff16565b50612cdc565b60ff8167ffffffffffffffff1611612be957612bc2601860058460ff16901b17846132ee90919063ffffffff16565b50612be38167ffffffffffffffff1660018561330e9092919063ffffffff16565b50612cdb565b61ffff8167ffffffffffffffff1611612c4057612c19601960058460ff16901b17846132ee90919063ffffffff16565b50612c3a8167ffffffffffffffff1660028561330e9092919063ffffffff16565b50612cda565b63ffffffff8167ffffffffffffffff1611612c9957612c72601a60058460ff16901b17846132ee90919063ffffffff16565b50612c938167ffffffffffffffff1660048561330e9092919063ffffffff16565b50612cd9565b612cb6601b60058460ff16901b17846132ee90919063ffffffff16565b50612cd78167ffffffffffffffff1660088561330e9092919063ffffffff16565b505b5b5b5b505050565b612ce96135d5565b612cfb83846000015151848551613330565b905092915050565b612d2160036005600660ff16901b17836132ee90919063ffffffff16565b50612d7682827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff612d5291906151b6565b604051602001612d629190613a4f565b60405160208183030381529060405261341f565b5050565b612d9860026005600660ff16901b17836132ee90919063ffffffff16565b50612dc28282604051602001612dae9190613a4f565b60405160208183030381529060405261341f565b5050565b60003084604051602001612ddb92919061540c565b60405160208183030381529060405280519060200120905084600b600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550807fb5e6e01e79f91267dc17b4e6314d5d4d03593d2ceee0fbb452b750bd70ea5af960405160405180910390a2600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634000aea08685856040518463ffffffff1660e01b8152600401612ed193929190615438565b6020604051808303816000875af1158015612ef0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612f1491906144f6565b612f53576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612f4a906154e8565b60405180910390fd5b949350505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612fca576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612fc190615554565b60405180910390fd5b612fd381612444565b15613013576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161300a906155c0565b60405180910390fd5b6130216000838360016126d3565b61302a81612444565b1561306a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613061906155c0565b60405180910390fd5b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46131746000838360016126d9565b5050565b600080600090507a184f03e93ff9f4daa797ed6e38ed64bf6a1f01000000000000000083106131d6577a184f03e93ff9f4daa797ed6e38ed64bf6a1f01000000000000000083816131cc576131cb6142b3565b5b0492506040810190505b6d04ee2d6d415b85acef81000000008310613213576d04ee2d6d415b85acef81000000008381613209576132086142b3565b5b0492506020810190505b662386f26fc10000831061324257662386f26fc100008381613238576132376142b3565b5b0492506010810190505b6305f5e100831061326b576305f5e1008381613261576132606142b3565b5b0492506008810190505b6127108310613290576127108381613286576132856142b3565b5b0492506004810190505b606483106132b357606483816132a9576132a86142b3565b5b0492506002810190505b600a83106132c2576001810190505b80915050919050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6132f66135d5565b6133068384600001515184613444565b905092915050565b6133166135d5565b61332784856000015151858561349a565b90509392505050565b6133386135d5565b825182111561334657600080fd5b84602001518285613357919061415b565b111561338c5761338b85600261337c88602001518887613377919061415b565b613528565b613386919061528d565b613544565b5b6000808651805187602083010193508088870111156133ab5787860182525b60208701925050505b602084106133f257805182526020826133cd919061415b565b91506020816133dc919061415b565b90506020846133eb91906143b0565b93506133b4565b60006001856020036101000a03905080198251168184511681811785525050508692505050949350505050565b61342c8260028351612b5c565b61343f8183612ce190919063ffffffff16565b505050565b61344c6135d5565b8360200151831061347257613471846002866020015161346c919061528d565b613544565b5b8351805160208583010184815381860361348d576001820183525b5050508390509392505050565b6134a26135d5565b846020015184836134b3919061415b565b11156134db576134da85600286856134cb919061415b565b6134d5919061528d565b613544565b5b60006001836101006134ed9190615713565b6134f791906143b0565b9050855183868201018583198251161781528151858801111561351a5784870182525b505085915050949350505050565b60008183111561353a5782905061353e565b8190505b92915050565b6000826000015190506135578383612af2565b506135628382612ce1565b50505050565b6040518060a0016040528060008019168152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19168152602001600081526020016135cf6135d5565b81525090565b604051806040016040528060608152602001600081525090565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61363881613603565b811461364357600080fd5b50565b6000813590506136558161362f565b92915050565b600060208284031215613671576136706135f9565b5b600061367f84828501613646565b91505092915050565b60008115159050919050565b61369d81613688565b82525050565b60006020820190506136b86000830184613694565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156136f85780820151818401526020810190506136dd565b60008484015250505050565b6000601f19601f8301169050919050565b6000613720826136be565b61372a81856136c9565b935061373a8185602086016136da565b61374381613704565b840191505092915050565b600060208201905081810360008301526137688184613715565b905092915050565b6000819050919050565b61378381613770565b811461378e57600080fd5b50565b6000813590506137a08161377a565b92915050565b6000602082840312156137bc576137bb6135f9565b5b60006137ca84828501613791565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006137fe826137d3565b9050919050565b61380e816137f3565b82525050565b60006020820190506138296000830184613805565b92915050565b613838816137f3565b811461384357600080fd5b50565b6000813590506138558161382f565b92915050565b60008060408385031215613872576138716135f9565b5b600061388085828601613846565b925050602061389185828601613791565b9150509250929050565b6000819050919050565b6138ae8161389b565b82525050565b60006020820190506138c960008301846138a5565b92915050565b6000806000606084860312156138e8576138e76135f9565b5b60006138f686828701613846565b935050602061390786828701613846565b925050604061391886828701613791565b9150509250925092565b61392b8161389b565b811461393657600080fd5b50565b60008135905061394881613922565b92915050565b60008060408385031215613965576139646135f9565b5b600061397385828601613939565b925050602061398485828601613791565b9150509250929050565b600080fd5b600080fd5b600080fd5b60008083601f8401126139b3576139b261398e565b5b8235905067ffffffffffffffff8111156139d0576139cf613993565b5b6020830191508360018202830111156139ec576139eb613998565b5b9250929050565b60008060208385031215613a0a57613a096135f9565b5b600083013567ffffffffffffffff811115613a2857613a276135fe565b5b613a348582860161399d565b92509250509250929050565b613a4981613770565b82525050565b6000602082019050613a646000830184613a40565b92915050565b600081519050919050565b600082825260208201905092915050565b6000613a9182613a6a565b613a9b8185613a75565b9350613aab8185602086016136da565b613ab481613704565b840191505092915050565b6000604082019050613ad46000830185613694565b8181036020830152613ae68184613a86565b90509392505050565b600060208284031215613b0557613b046135f9565b5b6000613b1384828501613846565b91505092915050565b613b2581613688565b8114613b3057600080fd5b50565b600081359050613b4281613b1c565b92915050565b60008060408385031215613b5f57613b5e6135f9565b5b6000613b6d85828601613846565b9250506020613b7e85828601613b33565b9150509250929050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b613bc582613704565b810181811067ffffffffffffffff82111715613be457613be3613b8d565b5b80604052505050565b6000613bf76135ef565b9050613c038282613bbc565b919050565b600067ffffffffffffffff821115613c2357613c22613b8d565b5b613c2c82613704565b9050602081019050919050565b82818337600083830152505050565b6000613c5b613c5684613c08565b613bed565b905082815260208101848484011115613c7757613c76613b88565b5b613c82848285613c39565b509392505050565b600082601f830112613c9f57613c9e61398e565b5b8135613caf848260208601613c48565b91505092915050565b600060ff82169050919050565b613cce81613cb8565b8114613cd957600080fd5b50565b600081359050613ceb81613cc5565b92915050565b60008060408385031215613d0857613d076135f9565b5b600083013567ffffffffffffffff811115613d2657613d256135fe565b5b613d3285828601613c8a565b9250506020613d4385828601613cdc565b9150509250929050565b600067ffffffffffffffff821115613d6857613d67613b8d565b5b613d7182613704565b9050602081019050919050565b6000613d91613d8c84613d4d565b613bed565b905082815260208101848484011115613dad57613dac613b88565b5b613db8848285613c39565b509392505050565b600082601f830112613dd557613dd461398e565b5b8135613de5848260208601613d7e565b91505092915050565b60008060008060808587031215613e0857613e076135f9565b5b6000613e1687828801613846565b9450506020613e2787828801613846565b9350506040613e3887828801613791565b925050606085013567ffffffffffffffff811115613e5957613e586135fe565b5b613e6587828801613dc0565b91505092959194509250565b600060c0820190508181036000830152613e8b8189613715565b9050613e9a6020830188613a40565b613ea76040830187613a40565b613eb46060830186613a40565b613ec16080830185613a40565b613ece60a0830184613a40565b979650505050505050565b60008060408385031215613ef057613eef6135f9565b5b6000613efe85828601613846565b9250506020613f0f85828601613846565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680613f6057607f821691505b602082108103613f7357613f72613f19565b5b50919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b6000613fd56021836136c9565b9150613fe082613f79565b604082019050919050565b6000602082019050818103600083015261400481613fc8565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60008201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c000000602082015250565b6000614067603d836136c9565b91506140728261400b565b604082019050919050565b600060208201905081810360008301526140968161405a565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600081905092915050565b60006140e2826136be565b6140ec81856140cc565b93506140fc8185602086016136da565b80840191505092915050565b600061411482856140d7565b915061412082846140d7565b91508190509392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061416682613770565b915061417183613770565b92508282019050808211156141895761418861412c565b5b92915050565b7f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560008201527f72206f7220617070726f76656400000000000000000000000000000000000000602082015250565b60006141eb602d836136c9565b91506141f68261418f565b604082019050919050565b6000602082019050818103600083015261421a816141de565b9050919050565b7f536f75726365206d75737420626520746865206f7261636c65206f662074686560008201527f2072657175657374000000000000000000000000000000000000000000000000602082015250565b600061427d6028836136c9565b915061428882614221565b604082019050919050565b600060208201905081810360008301526142ac81614270565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006142ed82613770565b91506142f883613770565b925082614308576143076142b3565b5b828204905092915050565b600061431e82613770565b915061432983613770565b925082614339576143386142b3565b5b828206905092915050565b7f4552433732313a20696e76616c696420746f6b656e2049440000000000000000600082015250565b600061437a6018836136c9565b915061438582614344565b602082019050919050565b600060208201905081810360008301526143a98161436d565b9050919050565b60006143bb82613770565b91506143c683613770565b92508282039050818111156143de576143dd61412c565b5b92915050565b7f4552433732313a2061646472657373207a65726f206973206e6f74206120766160008201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b60006144406029836136c9565b915061444b826143e4565b604082019050919050565b6000602082019050818103600083015261446f81614433565b9050919050565b6000815190506144858161377a565b92915050565b6000602082840312156144a1576144a06135f9565b5b60006144af84828501614476565b91505092915050565b60006040820190506144cd6000830185613805565b6144da6020830184613a40565b9392505050565b6000815190506144f081613b1c565b92915050565b60006020828403121561450c5761450b6135f9565b5b600061451a848285016144e1565b91505092915050565b7f556e61626c6520746f207472616e736665720000000000000000000000000000600082015250565b60006145596012836136c9565b915061456482614523565b602082019050919050565b600060208201905081810360008301526145888161454c565b9050919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026145f17fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826145b4565b6145fb86836145b4565b95508019841693508086168417925050509392505050565b6000819050919050565b600061463861463361462e84613770565b614613565b613770565b9050919050565b6000819050919050565b6146528361461d565b61466661465e8261463f565b8484546145c1565b825550505050565b600090565b61467b61466e565b614686818484614649565b505050565b5b818110156146aa5761469f600082614673565b60018101905061468c565b5050565b601f8211156146ef576146c08161458f565b6146c9846145a4565b810160208510156146d8578190505b6146ec6146e4856145a4565b83018261468b565b50505b505050565b600082821c905092915050565b6000614712600019846008026146f4565b1980831691505092915050565b600061472b8383614701565b9150826002028217905092915050565b614744826136be565b67ffffffffffffffff81111561475d5761475c613b8d565b5b6147678254613f48565b6147728282856146ae565b600060209050601f8311600181146147a55760008415614793578287015190505b61479d858261471f565b865550614805565b601f1984166147b38661458f565b60005b828110156147db578489015182556001820191506020850194506020810190506147b6565b868310156147f857848901516147f4601f891682614701565b8355505b6001600288020188555050505b505050505050565b7f455243373231204d657461646174613a2055524920717565727920666f72206e60008201527f6f6e6578697374656e7420746f6b656e00000000000000000000000000000000602082015250565b60006148696030836136c9565b91506148748261480d565b604082019050919050565b600060208201905081810360008301526148988161485c565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b60006148fb6026836136c9565b91506149068261489f565b604082019050919050565b6000602082019050818103600083015261492a816148ee565b9050919050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b600061498d6025836136c9565b915061499882614931565b604082019050919050565b600060208201905081810360008301526149bc81614980565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000614a1f6024836136c9565b9150614a2a826149c3565b604082019050919050565b60006020820190508181036000830152614a4e81614a12565b9050919050565b6000614a6182846140d7565b915081905092915050565b6000614a7782613770565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203614aa957614aa861412c565b5b600182019050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000614aea6020836136c9565b9150614af582614ab4565b602082019050919050565b60006020820190508181036000830152614b1981614add565b9050919050565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b6000614b566019836136c9565b9150614b6182614b20565b602082019050919050565b60006020820190508181036000830152614b8581614b49565b9050919050565b7f7b226e616d65223a202200000000000000000000000000000000000000000000600082015250565b6000614bc2600a836140cc565b9150614bcd82614b8c565b600a82019050919050565b60008154614be581613f48565b614bef81866140cc565b94506001821660008114614c0a5760018114614c1f57614c52565b60ff1983168652811515820286019350614c52565b614c288561458f565b60005b83811015614c4a57815481890152600182019150602081019050614c2b565b838801955050505b50505092915050565b7f222c000000000000000000000000000000000000000000000000000000000000600082015250565b6000614c916002836140cc565b9150614c9c82614c5b565b600282019050919050565b7f2261747472696275746573223a205b7b2274726169745f74797065223a20224360008201527f72656174696f6e2044617465222c202276616c7565223a200000000000000000602082015250565b6000614d036038836140cc565b9150614d0e82614ca7565b603882019050919050565b7f7d2c000000000000000000000000000000000000000000000000000000000000600082015250565b6000614d4f6002836140cc565b9150614d5a82614d19565b600282019050919050565b7f7b2274726169745f74797065223a20224578706972792044617465222c20227660008201527f616c7565223a2000000000000000000000000000000000000000000000000000602082015250565b6000614dc16027836140cc565b9150614dcc82614d65565b602782019050919050565b7f7b2274726169745f74797065223a2022496e697469616c205072696365222c2060008201527f2276616c7565223a200000000000000000000000000000000000000000000000602082015250565b6000614e336029836140cc565b9150614e3e82614dd7565b602982019050919050565b7f7b2274726169745f74797065223a2022436c61696d20416d6f756e74222c202260008201527f76616c7565223a20000000000000000000000000000000000000000000000000602082015250565b6000614ea56028836140cc565b9150614eb082614e49565b602882019050919050565b7f7b2274726169745f74797065223a202254656d7065726174757265222c20227660008201527f616c7565223a2000000000000000000000000000000000000000000000000000602082015250565b6000614f176027836140cc565b9150614f2282614ebb565b602782019050919050565b7f7d00000000000000000000000000000000000000000000000000000000000000600082015250565b6000614f636001836140cc565b9150614f6e82614f2d565b600182019050919050565b7f5d7d000000000000000000000000000000000000000000000000000000000000600082015250565b6000614faf6002836140cc565b9150614fba82614f79565b600282019050919050565b6000614fd082614bb5565b9150614fdc8289614bd8565b9150614fe782614c84565b9150614ff282614cf6565b9150614ffe82886140d7565b915061500982614d42565b915061501482614db4565b915061502082876140d7565b915061502b82614d42565b915061503682614e26565b915061504282866140d7565b915061504d82614d42565b915061505882614e98565b915061506482856140d7565b915061506f82614d42565b915061507a82614f0a565b915061508682846140d7565b915061509182614f56565b915061509c82614fa2565b9150819050979650505050505050565b7f646174613a6170706c69636174696f6e2f6a736f6e3b6261736536342c000000600082015250565b60006150e2601d836140cc565b91506150ed826150ac565b601d82019050919050565b6000615103826150d5565b915061510f82846140d7565b915081905092915050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b60006151766032836136c9565b91506151818261511a565b604082019050919050565b600060208201905081810360008301526151a581615169565b9050919050565b6000819050919050565b60006151c1826151ac565b91506151cc836151ac565b92508282039050818112600084121682821360008512151617156151f3576151f261412c565b5b92915050565b61520281613603565b82525050565b60006101008201905061521e600083018b613805565b61522b602083018a613a40565b61523860408301896138a5565b6152456060830188613805565b61525260808301876151f9565b61525f60a0830186613a40565b61526c60c0830185613a40565b81810360e083015261527e8184613a86565b90509998505050505050505050565b600061529882613770565b91506152a383613770565b92508282026152b181613770565b915082820484148315176152c8576152c761412c565b5b5092915050565b60006080820190506152e46000830187613805565b6152f16020830186613805565b6152fe6040830185613a40565b81810360608301526153108184613a86565b905095945050505050565b60008151905061532a8161362f565b92915050565b600060208284031215615346576153456135f9565b5b60006153548482850161531b565b91505092915050565b600061537861537361536e846137d3565b614613565b6137d3565b9050919050565b600061538a8261535d565b9050919050565b600061539c8261537f565b9050919050565b60008160601b9050919050565b60006153bb826153a3565b9050919050565b60006153cd826153b0565b9050919050565b6153e56153e082615391565b6153c2565b82525050565b6000819050919050565b61540661540182613770565b6153eb565b82525050565b600061541882856153d4565b60148201915061542882846153f5565b6020820191508190509392505050565b600060608201905061544d6000830186613805565b61545a6020830185613a40565b818103604083015261546c8184613a86565b9050949350505050565b7f756e61626c6520746f207472616e73666572416e6443616c6c20746f206f726160008201527f636c650000000000000000000000000000000000000000000000000000000000602082015250565b60006154d26023836136c9565b91506154dd82615476565b604082019050919050565b60006020820190508181036000830152615501816154c5565b9050919050565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b600061553e6020836136c9565b915061554982615508565b602082019050919050565b6000602082019050818103600083015261556d81615531565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b60006155aa601c836136c9565b91506155b582615574565b602082019050919050565b600060208201905081810360008301526155d98161559d565b9050919050565b60008160011c9050919050565b6000808291508390505b6001851115615637578086048111156156135761561261412c565b5b60018516156156225780820291505b8081029050615630856155e0565b94506155f7565b94509492505050565b600082615650576001905061570c565b8161565e576000905061570c565b8160018114615674576002811461567e576156ad565b600191505061570c565b60ff8411156156905761568f61412c565b5b8360020a9150848211156156a7576156a661412c565b5b5061570c565b5060208310610133831016604e8410600b84101617156156e25782820a9050838111156156dd576156dc61412c565b5b61570c565b6156ef84848460016155ed565b925090508184048111156157065761570561412c565b5b81810290505b9392505050565b600061571e82613770565b915061572983613770565b92506157567fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484615640565b90509291505056fe264b65793d33306537333765343430343834666431386135313334303339323231303036687474703a2f2f6170692e776561746865726170692e636f6d2f76312f63757272656e742e6a736f6e3f713d4142434445464748494a4b4c4d4e4f505152535455565758595a6162636465666768696a6b6c6d6e6f707172737475767778797a303132333435363738392b2fa2646970667358221220c3b02a462e74c70bc2e168002d4d94b6b6658adf70f33ecf816614fb61c2841064736f6c634300081300330000000000000000000000000000000000000000000000000000000000000001