6080604052612710600d556000600e556000600f60006101000a81548160ff0219169083151502179055506806aaf7c8516d0c00006010553480156200004457600080fd5b506040518060400160405280600d81526020017f6e66746f776e20736861726573000000000000000000000000000000000000008152506040518060400160405280600c81526020017f4e46544f574e53484152455300000000000000000000000000000000000000008152508160009080519060200190620000c99291906200035c565b508060019080519060200190620000e29291906200035c565b50505062000105620000f9620001b960201b60201c565b620001c160201b60201c565b6001600b819055506200013760405180606001604052806023815260200162005c72602391396200028760201b60201c565b33601260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506103e8601160006101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff160217905550620004f3565b600033905090565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b62000297620001b960201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16620002bd6200033260201b60201c565b73ffffffffffffffffffffffffffffffffffffffff161462000316576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200030d906200046d565b60405180910390fd5b80600c90805190602001906200032e9291906200035c565b5050565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b8280546200036a90620004be565b90600052602060002090601f0160209004810192826200038e5760008555620003da565b82601f10620003a957805160ff1916838001178555620003da565b82800160010185558215620003da579182015b82811115620003d9578251825591602001919060010190620003bc565b5b509050620003e99190620003ed565b5090565b5b8082111562000408576000816000905550600101620003ee565b5090565b600082825260208201905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000620004556020836200040c565b915062000462826200041d565b602082019050919050565b60006020820190508181036000830152620004888162000446565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620004d757607f821691505b602082108103620004ed57620004ec6200048f565b5b50919050565b61576f80620005036000396000f3fe60806040526004361061020f5760003560e01c8063715018a611610118578063c467201e116100a0578063f10829101161006f578063f1082910146107b0578063f1a78add146107db578063f2fde38b14610804578063f4a0a5281461082d578063fcd02980146108565761020f565b8063c467201e146106e0578063c87b56dd1461070b578063d5abeb0114610748578063e985e9c5146107735761020f565b806391f2700a116100e757806391f2700a1461060f57806395d89b4114610638578063a22cb46514610663578063b3e82dc91461068c578063b88d4fde146106b75761020f565b8063715018a614610579578063771282f614610590578063842f10d1146105bb5780638da5cb5b146105e45761020f565b80632f745c591161019b5780634f6ccce71161016a5780634f6ccce71461046e57806355f804b3146104ab5780636352211e146104d45780636817c76c1461051157806370a082311461053c5761020f565b80632f745c59146103c857806331beb605146104055780633ccfd60b1461042e57806342842e0e146104455761020f565b806318160ddd116101e257806318160ddd146102e25780631d96a0821461030d5780631f85e3ca1461033857806323b872dd146103615780632a55205a1461038a5761020f565b806301ffc9a71461021457806306fdde0314610251578063081812fc1461027c578063095ea7b3146102b9575b600080fd5b34801561022057600080fd5b5061023b60048036038101906102369190613648565b610872565b6040516102489190613690565b60405180910390f35b34801561025d57600080fd5b506102666108ec565b6040516102739190613744565b60405180910390f35b34801561028857600080fd5b506102a3600480360381019061029e919061379c565b61097e565b6040516102b0919061380a565b60405180910390f35b3480156102c557600080fd5b506102e060048036038101906102db9190613851565b610a03565b005b3480156102ee57600080fd5b506102f7610b1a565b60405161030491906138a0565b60405180910390f35b34801561031957600080fd5b50610322610b27565b60405161032f919061380a565b60405180910390f35b34801561034457600080fd5b5061035f600480360381019061035a91906138e7565b610b4d565b005b34801561036d57600080fd5b5061038860048036038101906103839190613914565b610be6565b005b34801561039657600080fd5b506103b160048036038101906103ac9190613967565b610c46565b6040516103bf9291906139a7565b60405180910390f35b3480156103d457600080fd5b506103ef60048036038101906103ea9190613851565b610d09565b6040516103fc91906138a0565b60405180910390f35b34801561041157600080fd5b5061042c600480360381019061042791906139d0565b610dae565b005b34801561043a57600080fd5b50610443610e6e565b005b34801561045157600080fd5b5061046c60048036038101906104679190613914565b610fbc565b005b34801561047a57600080fd5b506104956004803603810190610490919061379c565b610fdc565b6040516104a291906138a0565b60405180910390f35b3480156104b757600080fd5b506104d260048036038101906104cd9190613b32565b61104d565b005b3480156104e057600080fd5b506104fb60048036038101906104f6919061379c565b6110e3565b604051610508919061380a565b60405180910390f35b34801561051d57600080fd5b50610526611194565b60405161053391906138a0565b60405180910390f35b34801561054857600080fd5b50610563600480360381019061055e91906139d0565b61119a565b60405161057091906138a0565b60405180910390f35b34801561058557600080fd5b5061058e611251565b005b34801561059c57600080fd5b506105a56112d9565b6040516105b291906138a0565b60405180910390f35b3480156105c757600080fd5b506105e260048036038101906105dd9190613bdb565b6112df565b005b3480156105f057600080fd5b506105f9611421565b604051610606919061380a565b60405180910390f35b34801561061b57600080fd5b50610636600480360381019061063191906139d0565b61144b565b005b34801561064457600080fd5b5061064d611535565b60405161065a9190613744565b60405180910390f35b34801561066f57600080fd5b5061068a60048036038101906106859190613c28565b6115c7565b005b34801561069857600080fd5b506106a16115dd565b6040516106ae919061380a565b60405180910390f35b3480156106c357600080fd5b506106de60048036038101906106d99190613d09565b611603565b005b3480156106ec57600080fd5b506106f5611665565b6040516107029190613690565b60405180910390f35b34801561071757600080fd5b50610732600480360381019061072d919061379c565b611678565b60405161073f9190613744565b60405180910390f35b34801561075457600080fd5b5061075d61171f565b60405161076a91906138a0565b60405180910390f35b34801561077f57600080fd5b5061079a60048036038101906107959190613d8c565b611725565b6040516107a79190613690565b60405180910390f35b3480156107bc57600080fd5b506107c56117b9565b6040516107d29190613df7565b60405180910390f35b3480156107e757600080fd5b5061080260048036038101906107fd9190613e3e565b6117db565b005b34801561081057600080fd5b5061082b600480360381019061082691906139d0565b61192c565b005b34801561083957600080fd5b50610854600480360381019061084f919061379c565b611a23565b005b610870600480360381019061086b919061408b565b611aa9565b005b60007f2a55205a000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806108e557506108e482611f51565b5b9050919050565b6060600080546108fb906140e8565b80601f0160208091040260200160405190810160405280929190818152602001828054610927906140e8565b80156109745780601f1061094957610100808354040283529160200191610974565b820191906000526020600020905b81548152906001019060200180831161095757829003601f168201915b5050505050905090565b600061098982611fcb565b6109c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109bf9061418b565b60405180910390fd5b6004600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000610a0e826110e3565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610a7e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a759061421d565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16610a9d612037565b73ffffffffffffffffffffffffffffffffffffffff161480610acc5750610acb81610ac6612037565b611725565b5b610b0b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b02906142af565b60405180910390fd5b610b15838361203f565b505050565b6000600880549050905090565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610b55612037565b73ffffffffffffffffffffffffffffffffffffffff16610b73611421565b73ffffffffffffffffffffffffffffffffffffffff1614610bc9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bc09061431b565b60405180910390fd5b80600f60006101000a81548160ff02191690831515021790555050565b610bf7610bf1612037565b826120f8565b610c36576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c2d906143ad565b60405180910390fd5b610c418383836121d6565b505050565b60008060008311610c8c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c839061443f565b60405180910390fd5b6000612710601160009054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff1685610ccd919061448e565b610cd79190614517565b9050601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168192509250509250929050565b6000610d148361119a565b8210610d55576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d4c906145ba565b60405180910390fd5b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002054905092915050565b610db6612037565b73ffffffffffffffffffffffffffffffffffffffff16610dd4611421565b73ffffffffffffffffffffffffffffffffffffffff1614610e2a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e219061431b565b60405180910390fd5b80601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b610e76612037565b73ffffffffffffffffffffffffffffffffffffffff16610e94611421565b73ffffffffffffffffffffffffffffffffffffffff1614610eea576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ee19061431b565b60405180910390fd5b6000309050600033905060008173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1631604051610f319061460b565b60006040518083038185875af1925050503d8060008114610f6e576040519150601f19603f3d011682016040523d82523d6000602084013e610f73565b606091505b5050905080610fb7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fae9061466c565b60405180910390fd5b505050565b610fd783838360405180602001604052806000815250611603565b505050565b6000610fe6610b1a565b8210611027576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161101e906146fe565b60405180910390fd5b6008828154811061103b5761103a61471e565b5b90600052602060002001549050919050565b611055612037565b73ffffffffffffffffffffffffffffffffffffffff16611073611421565b73ffffffffffffffffffffffffffffffffffffffff16146110c9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110c09061431b565b60405180910390fd5b80600c90805190602001906110df929190613539565b5050565b6000806002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361118b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611182906147bf565b60405180910390fd5b80915050919050565b60105481565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361120a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161120190614851565b60405180910390fd5b600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b611259612037565b73ffffffffffffffffffffffffffffffffffffffff16611277611421565b73ffffffffffffffffffffffffffffffffffffffff16146112cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112c49061431b565b60405180910390fd5b6112d7600061243c565b565b600e5481565b6112e7612037565b73ffffffffffffffffffffffffffffffffffffffff16611305611421565b73ffffffffffffffffffffffffffffffffffffffff161461135b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113529061431b565b60405180910390fd5b600d5482829050600e5461136f9190614871565b11156113b0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113a790614913565b60405180910390fd5b60005b8282905081101561141c57600e60008154809291906113d190614933565b91905055506114098383838181106113ec576113eb61471e565b5b905060200201602081019061140191906139d0565b600e54612502565b808061141490614933565b9150506113b3565b505050565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b611453612037565b73ffffffffffffffffffffffffffffffffffffffff16611471611421565b73ffffffffffffffffffffffffffffffffffffffff16146114c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114be9061431b565b60405180910390fd5b600e60008154809291906114da90614933565b9190505550600d54600e541115611526576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161151d90614913565b60405180910390fd5b61153281600e54612502565b50565b606060018054611544906140e8565b80601f0160208091040260200160405190810160405280929190818152602001828054611570906140e8565b80156115bd5780601f10611592576101008083540402835291602001916115bd565b820191906000526020600020905b8154815290600101906020018083116115a057829003601f168201915b5050505050905090565b6115d96115d2612037565b8383612520565b5050565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61161461160e612037565b836120f8565b611653576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161164a906143ad565b60405180910390fd5b61165f8484848461268c565b50505050565b600f60009054906101000a900460ff1681565b606061168382611fcb565b6116c2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116b9906149ed565b60405180910390fd5b60006116cc6126e8565b905060008151116116ec5760405180602001604052806000815250611717565b806116f68461277a565b604051602001611707929190614a49565b6040516020818303038152906040525b915050919050565b600d5481565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b601160009054906101000a90046fffffffffffffffffffffffffffffffff1681565b6117e3612037565b73ffffffffffffffffffffffffffffffffffffffff16611801611421565b73ffffffffffffffffffffffffffffffffffffffff1614611857576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161184e9061431b565b60405180910390fd5b612710816fffffffffffffffffffffffffffffffff1611156118ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118a590614ab9565b60405180910390fd5b81601260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080601160006101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff1602179055505050565b611934612037565b73ffffffffffffffffffffffffffffffffffffffff16611952611421565b73ffffffffffffffffffffffffffffffffffffffff16146119a8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161199f9061431b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611a17576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a0e90614b4b565b60405180910390fd5b611a208161243c565b50565b611a2b612037565b73ffffffffffffffffffffffffffffffffffffffff16611a49611421565b73ffffffffffffffffffffffffffffffffffffffff1614611a9f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a969061431b565b60405180910390fd5b8060108190555050565b3073ffffffffffffffffffffffffffffffffffffffff16816040015173ffffffffffffffffffffffffffffffffffffffff1614611b1b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b1290614bb7565b60405180910390fd5b600f60009054906101000a900460ff16611b6a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b6190614c23565b60405180910390fd5b806080015163ffffffff16601054611b82919061448e565b3414611bc3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bba90614c8f565b60405180910390fd5b6000816080015163ffffffff1611611c10576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c0790614cfb565b60405180910390fd5b600d54600e54826080015163ffffffff16611c2b9190614871565b1115611c6c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c6390614d67565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff16816060015173ffffffffffffffffffffffffffffffffffffffff1614611cde576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cd590614dd3565b60405180910390fd5b4281602001511015611d25576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d1c90614e3f565b60405180910390fd5b600081600001518260200151836040015184606001518560800151604051602001611d54959493929190614e7d565b604051602081830303815290604052805190602001209050601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611dc9828460a00151604001518560a00151600001518660a00151602001516128da565b73ffffffffffffffffffffffffffffffffffffffff1614611e1f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e1690614f1c565b60405180910390fd5b6014600083600001516fffffffffffffffffffffffffffffffff19166fffffffffffffffffffffffffffffffff1916815260200190815260200160002060009054906101000a900460ff1615611eaa576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ea190614f88565b60405180910390fd5b60016014600084600001516fffffffffffffffffffffffffffffffff19166fffffffffffffffffffffffffffffffff1916815260200190815260200160002060006101000a81548160ff02191690831515021790555060005b826080015163ffffffff16811015611f4c57600e6000815480929190611f2890614933565b9190505550611f3933600e54612502565b8080611f4490614933565b915050611f03565b505050565b60007f780e9d63000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480611fc45750611fc382612905565b5b9050919050565b60008073ffffffffffffffffffffffffffffffffffffffff166002600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614159050919050565b600033905090565b816004600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff166120b2836110e3565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b600061210382611fcb565b612142576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121399061501a565b60405180910390fd5b600061214d836110e3565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148061218f575061218e8185611725565b5b806121cd57508373ffffffffffffffffffffffffffffffffffffffff166121b58461097e565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff166121f6826110e3565b73ffffffffffffffffffffffffffffffffffffffff161461224c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612243906150ac565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036122bb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122b29061513e565b60405180910390fd5b6122c68383836129e7565b6122d160008261203f565b6001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254612321919061515e565b925050819055506001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546123789190614871565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46124378383836129f7565b505050565b6000600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b61251c8282604051806020016040528060008152506129fc565b5050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361258e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612585906151de565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c318360405161267f9190613690565b60405180910390a3505050565b6126978484846121d6565b6126a384848484612a57565b6126e2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016126d990615270565b60405180910390fd5b50505050565b6060600c80546126f7906140e8565b80601f0160208091040260200160405190810160405280929190818152602001828054612723906140e8565b80156127705780601f1061274557610100808354040283529160200191612770565b820191906000526020600020905b81548152906001019060200180831161275357829003601f168201915b5050505050905090565b6060600082036127c1576040518060400160405280600181526020017f300000000000000000000000000000000000000000000000000000000000000081525090506128d5565b600082905060005b600082146127f35780806127dc90614933565b915050600a826127ec9190614517565b91506127c9565b60008167ffffffffffffffff81111561280f5761280e613a07565b5b6040519080825280601f01601f1916602001820160405280156128415781602001600182028036833780820191505090505b5090505b600085146128ce5760018261285a919061515e565b9150600a856128699190615290565b60306128759190614871565b60f81b81838151811061288b5761288a61471e565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a856128c79190614517565b9450612845565b8093505050505b919050565b60008060006128eb87878787612bde565b915091506128f881612cea565b8192505050949350505050565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614806129d057507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b806129e057506129df82612eb6565b5b9050919050565b6129f2838383612f20565b505050565b505050565b612a068383613032565b612a136000848484612a57565b612a52576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a4990615270565b60405180910390fd5b505050565b6000612a788473ffffffffffffffffffffffffffffffffffffffff1661320b565b15612bd1578373ffffffffffffffffffffffffffffffffffffffff1663150b7a02612aa1612037565b8786866040518563ffffffff1660e01b8152600401612ac39493929190615316565b6020604051808303816000875af1925050508015612aff57506040513d601f19601f82011682018060405250810190612afc9190615377565b60015b612b81573d8060008114612b2f576040519150601f19603f3d011682016040523d82523d6000602084013e612b34565b606091505b506000815103612b79576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b7090615270565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050612bd6565b600190505b949350505050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08360001c1115612c19576000600391509150612ce1565b601b8560ff1614158015612c315750601c8560ff1614155b15612c43576000600491509150612ce1565b600060018787878760405160008152602001604052604051612c6894939291906153c2565b6020604051602081039080840390855afa158015612c8a573d6000803e3d6000fd5b505050602060405103519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603612cd857600060019250925050612ce1565b80600092509250505b94509492505050565b60006004811115612cfe57612cfd615407565b5b816004811115612d1157612d10615407565b5b0315612eb35760016004811115612d2b57612d2a615407565b5b816004811115612d3e57612d3d615407565b5b03612d7e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d7590615482565b60405180910390fd5b60026004811115612d9257612d91615407565b5b816004811115612da557612da4615407565b5b03612de5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612ddc906154ee565b60405180910390fd5b60036004811115612df957612df8615407565b5b816004811115612e0c57612e0b615407565b5b03612e4c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612e4390615580565b60405180910390fd5b600480811115612e5f57612e5e615407565b5b816004811115612e7257612e71615407565b5b03612eb2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612ea990615612565b60405180910390fd5b5b50565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b612f2b83838361322e565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612f6d57612f6881613233565b612fac565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614612fab57612faa838261327c565b5b5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612fee57612fe9816133e9565b61302d565b8273ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161461302c5761302b82826134ba565b5b5b505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036130a1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016130989061567e565b60405180910390fd5b6130aa81611fcb565b156130ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016130e1906156ea565b60405180910390fd5b6130f6600083836129e7565b6001600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546131469190614871565b92505081905550816002600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4613207600083836129f7565b5050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b505050565b6008805490506009600083815260200190815260200160002081905550600881908060018154018082558091505060019003906000526020600020016000909190919091505550565b600060016132898461119a565b613293919061515e565b9050600060076000848152602001908152602001600020549050818114613378576000600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002054905080600660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600084815260200190815260200160002081905550816007600083815260200190815260200160002081905550505b6007600084815260200190815260200160002060009055600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008381526020019081526020016000206000905550505050565b600060016008805490506133fd919061515e565b905060006009600084815260200190815260200160002054905060006008838154811061342d5761342c61471e565b5b90600052602060002001549050806008838154811061344f5761344e61471e565b5b90600052602060002001819055508160096000838152602001908152602001600020819055506009600085815260200190815260200160002060009055600880548061349e5761349d61570a565b5b6001900381819060005260206000200160009055905550505050565b60006134c58361119a565b905081600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600083815260200190815260200160002081905550806007600084815260200190815260200160002081905550505050565b828054613545906140e8565b90600052602060002090601f01602090048101928261356757600085556135ae565b82601f1061358057805160ff19168380011785556135ae565b828001600101855582156135ae579182015b828111156135ad578251825591602001919060010190613592565b5b5090506135bb91906135bf565b5090565b5b808211156135d85760008160009055506001016135c0565b5090565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b613625816135f0565b811461363057600080fd5b50565b6000813590506136428161361c565b92915050565b60006020828403121561365e5761365d6135e6565b5b600061366c84828501613633565b91505092915050565b60008115159050919050565b61368a81613675565b82525050565b60006020820190506136a56000830184613681565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b838110156136e55780820151818401526020810190506136ca565b838111156136f4576000848401525b50505050565b6000601f19601f8301169050919050565b6000613716826136ab565b61372081856136b6565b93506137308185602086016136c7565b613739816136fa565b840191505092915050565b6000602082019050818103600083015261375e818461370b565b905092915050565b6000819050919050565b61377981613766565b811461378457600080fd5b50565b60008135905061379681613770565b92915050565b6000602082840312156137b2576137b16135e6565b5b60006137c084828501613787565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006137f4826137c9565b9050919050565b613804816137e9565b82525050565b600060208201905061381f60008301846137fb565b92915050565b61382e816137e9565b811461383957600080fd5b50565b60008135905061384b81613825565b92915050565b60008060408385031215613868576138676135e6565b5b60006138768582860161383c565b925050602061388785828601613787565b9150509250929050565b61389a81613766565b82525050565b60006020820190506138b56000830184613891565b92915050565b6138c481613675565b81146138cf57600080fd5b50565b6000813590506138e1816138bb565b92915050565b6000602082840312156138fd576138fc6135e6565b5b600061390b848285016138d2565b91505092915050565b60008060006060848603121561392d5761392c6135e6565b5b600061393b8682870161383c565b935050602061394c8682870161383c565b925050604061395d86828701613787565b9150509250925092565b6000806040838503121561397e5761397d6135e6565b5b600061398c85828601613787565b925050602061399d85828601613787565b9150509250929050565b60006040820190506139bc60008301856137fb565b6139c96020830184613891565b9392505050565b6000602082840312156139e6576139e56135e6565b5b60006139f48482850161383c565b91505092915050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b613a3f826136fa565b810181811067ffffffffffffffff82111715613a5e57613a5d613a07565b5b80604052505050565b6000613a716135dc565b9050613a7d8282613a36565b919050565b600067ffffffffffffffff821115613a9d57613a9c613a07565b5b613aa6826136fa565b9050602081019050919050565b82818337600083830152505050565b6000613ad5613ad084613a82565b613a67565b905082815260208101848484011115613af157613af0613a02565b5b613afc848285613ab3565b509392505050565b600082601f830112613b1957613b186139fd565b5b8135613b29848260208601613ac2565b91505092915050565b600060208284031215613b4857613b476135e6565b5b600082013567ffffffffffffffff811115613b6657613b656135eb565b5b613b7284828501613b04565b91505092915050565b600080fd5b600080fd5b60008083601f840112613b9b57613b9a6139fd565b5b8235905067ffffffffffffffff811115613bb857613bb7613b7b565b5b602083019150836020820283011115613bd457613bd3613b80565b5b9250929050565b60008060208385031215613bf257613bf16135e6565b5b600083013567ffffffffffffffff811115613c1057613c0f6135eb565b5b613c1c85828601613b85565b92509250509250929050565b60008060408385031215613c3f57613c3e6135e6565b5b6000613c4d8582860161383c565b9250506020613c5e858286016138d2565b9150509250929050565b600067ffffffffffffffff821115613c8357613c82613a07565b5b613c8c826136fa565b9050602081019050919050565b6000613cac613ca784613c68565b613a67565b905082815260208101848484011115613cc857613cc7613a02565b5b613cd3848285613ab3565b509392505050565b600082601f830112613cf057613cef6139fd565b5b8135613d00848260208601613c99565b91505092915050565b60008060008060808587031215613d2357613d226135e6565b5b6000613d318782880161383c565b9450506020613d428782880161383c565b9350506040613d5387828801613787565b925050606085013567ffffffffffffffff811115613d7457613d736135eb565b5b613d8087828801613cdb565b91505092959194509250565b60008060408385031215613da357613da26135e6565b5b6000613db18582860161383c565b9250506020613dc28582860161383c565b9150509250929050565b60006fffffffffffffffffffffffffffffffff82169050919050565b613df181613dcc565b82525050565b6000602082019050613e0c6000830184613de8565b92915050565b613e1b81613dcc565b8114613e2657600080fd5b50565b600081359050613e3881613e12565b92915050565b60008060408385031215613e5557613e546135e6565b5b6000613e638582860161383c565b9250506020613e7485828601613e29565b9150509250929050565b600080fd5b60007fffffffffffffffffffffffffffffffff0000000000000000000000000000000082169050919050565b613eb881613e83565b8114613ec357600080fd5b50565b600081359050613ed581613eaf565b92915050565b600063ffffffff82169050919050565b613ef481613edb565b8114613eff57600080fd5b50565b600081359050613f1181613eeb565b92915050565b6000819050919050565b613f2a81613f17565b8114613f3557600080fd5b50565b600081359050613f4781613f21565b92915050565b600060ff82169050919050565b613f6381613f4d565b8114613f6e57600080fd5b50565b600081359050613f8081613f5a565b92915050565b600060608284031215613f9c57613f9b613e7e565b5b613fa66060613a67565b90506000613fb684828501613f38565b6000830152506020613fca84828501613f38565b6020830152506040613fde84828501613f71565b60408301525092915050565b6000610100828403121561400157614000613e7e565b5b61400b60c0613a67565b9050600061401b84828501613ec6565b600083015250602061402f84828501613787565b60208301525060406140438482850161383c565b60408301525060606140578482850161383c565b606083015250608061406b84828501613f02565b60808301525060a061407f84828501613f86565b60a08301525092915050565b600061010082840312156140a2576140a16135e6565b5b60006140b084828501613fea565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061410057607f821691505b602082108103614113576141126140b9565b5b50919050565b7f4552433732313a20617070726f76656420717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b6000614175602c836136b6565b915061418082614119565b604082019050919050565b600060208201905081810360008301526141a481614168565b9050919050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b60006142076021836136b6565b9150614212826141ab565b604082019050919050565b60006020820190508181036000830152614236816141fa565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f74206f7760008201527f6e6572206e6f7220617070726f76656420666f7220616c6c0000000000000000602082015250565b60006142996038836136b6565b91506142a48261423d565b604082019050919050565b600060208201905081810360008301526142c88161428c565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006143056020836136b6565b9150614310826142cf565b602082019050919050565b60006020820190508181036000830152614334816142f8565b9050919050565b7f4552433732313a207472616e736665722063616c6c6572206973206e6f74206f60008201527f776e6572206e6f7220617070726f766564000000000000000000000000000000602082015250565b60006143976031836136b6565b91506143a28261433b565b604082019050919050565b600060208201905081810360008301526143c68161438a565b9050919050565b7f53616c652070726963652073686f756c6420626520677265617465722074686160008201527f6e207a65726f0000000000000000000000000000000000000000000000000000602082015250565b60006144296026836136b6565b9150614434826143cd565b604082019050919050565b600060208201905081810360008301526144588161441c565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061449982613766565b91506144a483613766565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156144dd576144dc61445f565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061452282613766565b915061452d83613766565b92508261453d5761453c6144e8565b5b828204905092915050565b7f455243373231456e756d657261626c653a206f776e657220696e646578206f7560008201527f74206f6620626f756e6473000000000000000000000000000000000000000000602082015250565b60006145a4602b836136b6565b91506145af82614548565b604082019050919050565b600060208201905081810360008301526145d381614597565b9050919050565b600081905092915050565b50565b60006145f56000836145da565b9150614600826145e5565b600082019050919050565b6000614616826145e8565b9150819050919050565b7f5472616e73666572206661696c65642e00000000000000000000000000000000600082015250565b60006146566010836136b6565b915061466182614620565b602082019050919050565b6000602082019050818103600083015261468581614649565b9050919050565b7f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60008201527f7574206f6620626f756e64730000000000000000000000000000000000000000602082015250565b60006146e8602c836136b6565b91506146f38261468c565b604082019050919050565b60006020820190508181036000830152614717816146db565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4552433732313a206f776e657220717565727920666f72206e6f6e657869737460008201527f656e7420746f6b656e0000000000000000000000000000000000000000000000602082015250565b60006147a96029836136b6565b91506147b48261474d565b604082019050919050565b600060208201905081810360008301526147d88161479c565b9050919050565b7f4552433732313a2062616c616e636520717565727920666f7220746865207a6560008201527f726f206164647265737300000000000000000000000000000000000000000000602082015250565b600061483b602a836136b6565b9150614846826147df565b604082019050919050565b6000602082019050818103600083015261486a8161482e565b9050919050565b600061487c82613766565b915061488783613766565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156148bc576148bb61445f565b5b828201905092915050565b7f4d617820737570706c7920657863656564656400000000000000000000000000600082015250565b60006148fd6013836136b6565b9150614908826148c7565b602082019050919050565b6000602082019050818103600083015261492c816148f0565b9050919050565b600061493e82613766565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036149705761496f61445f565b5b600182019050919050565b7f4552433732314d657461646174613a2055524920717565727920666f72206e6f60008201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000602082015250565b60006149d7602f836136b6565b91506149e28261497b565b604082019050919050565b60006020820190508181036000830152614a06816149ca565b9050919050565b600081905092915050565b6000614a23826136ab565b614a2d8185614a0d565b9350614a3d8185602086016136c7565b80840191505092915050565b6000614a558285614a18565b9150614a618284614a18565b91508190509392505050565b7f45524332393831526f79616c746965733a20546f6f2068696768000000000000600082015250565b6000614aa3601a836136b6565b9150614aae82614a6d565b602082019050919050565b60006020820190508181036000830152614ad281614a96565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000614b356026836136b6565b9150614b4082614ad9565b604082019050919050565b60006020820190508181036000830152614b6481614b28565b9050919050565b7f496e76616c696420636f6e747261637420616464726573730000000000000000600082015250565b6000614ba16018836136b6565b9150614bac82614b6b565b602082019050919050565b60006020820190508181036000830152614bd081614b94565b9050919050565b7f4d696e74206973206e6f7420616c6c6f77656400000000000000000000000000600082015250565b6000614c0d6013836136b6565b9150614c1882614bd7565b602082019050919050565b60006020820190508181036000830152614c3c81614c00565b9050919050565b7f496e636f72726563742070726963652073656e74000000000000000000000000600082015250565b6000614c796014836136b6565b9150614c8482614c43565b602082019050919050565b60006020820190508181036000830152614ca881614c6c565b9050919050565b7f5175616e74697479206d757374206265206c6172676572207468616e20300000600082015250565b6000614ce5601e836136b6565b9150614cf082614caf565b602082019050919050565b60006020820190508181036000830152614d1481614cd8565b9050919050565b7f4e6f7420656e6f75676820737570706c79206c65667400000000000000000000600082015250565b6000614d516016836136b6565b9150614d5c82614d1b565b602082019050919050565b60006020820190508181036000830152614d8081614d44565b9050919050565b7f41646472657373206e6f7420616c6c6f77656400000000000000000000000000600082015250565b6000614dbd6013836136b6565b9150614dc882614d87565b602082019050919050565b60006020820190508181036000830152614dec81614db0565b9050919050565b7f5065726d69742069732065787069726564000000000000000000000000000000600082015250565b6000614e296011836136b6565b9150614e3482614df3565b602082019050919050565b60006020820190508181036000830152614e5881614e1c565b9050919050565b614e6881613e83565b82525050565b614e7781613edb565b82525050565b600060a082019050614e926000830188614e5f565b614e9f6020830187613891565b614eac60408301866137fb565b614eb960608301856137fb565b614ec66080830184614e6e565b9695505050505050565b7f496e636f7272656374206469676974616c207369676e61747572650000000000600082015250565b6000614f06601b836136b6565b9150614f1182614ed0565b602082019050919050565b60006020820190508181036000830152614f3581614ef9565b9050919050565b7f546865207065726d697420686173206265656e20616c72656164792075736564600082015250565b6000614f726020836136b6565b9150614f7d82614f3c565b602082019050919050565b60006020820190508181036000830152614fa181614f65565b9050919050565b7f4552433732313a206f70657261746f7220717565727920666f72206e6f6e657860008201527f697374656e7420746f6b656e0000000000000000000000000000000000000000602082015250565b6000615004602c836136b6565b915061500f82614fa8565b604082019050919050565b6000602082019050818103600083015261503381614ff7565b9050919050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b60006150966025836136b6565b91506150a18261503a565b604082019050919050565b600060208201905081810360008301526150c581615089565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006151286024836136b6565b9150615133826150cc565b604082019050919050565b600060208201905081810360008301526151578161511b565b9050919050565b600061516982613766565b915061517483613766565b9250828210156151875761518661445f565b5b828203905092915050565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b60006151c86019836136b6565b91506151d382615192565b602082019050919050565b600060208201905081810360008301526151f7816151bb565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b600061525a6032836136b6565b9150615265826151fe565b604082019050919050565b600060208201905081810360008301526152898161524d565b9050919050565b600061529b82613766565b91506152a683613766565b9250826152b6576152b56144e8565b5b828206905092915050565b600081519050919050565b600082825260208201905092915050565b60006152e8826152c1565b6152f281856152cc565b93506153028185602086016136c7565b61530b816136fa565b840191505092915050565b600060808201905061532b60008301876137fb565b61533860208301866137fb565b6153456040830185613891565b818103606083015261535781846152dd565b905095945050505050565b6000815190506153718161361c565b92915050565b60006020828403121561538d5761538c6135e6565b5b600061539b84828501615362565b91505092915050565b6153ad81613f17565b82525050565b6153bc81613f4d565b82525050565b60006080820190506153d760008301876153a4565b6153e460208301866153b3565b6153f160408301856153a4565b6153fe60608301846153a4565b95945050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f45434453413a20696e76616c6964207369676e61747572650000000000000000600082015250565b600061546c6018836136b6565b915061547782615436565b602082019050919050565b6000602082019050818103600083015261549b8161545f565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265206c656e67746800600082015250565b60006154d8601f836136b6565b91506154e3826154a2565b602082019050919050565b60006020820190508181036000830152615507816154cb565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265202773272076616c60008201527f7565000000000000000000000000000000000000000000000000000000000000602082015250565b600061556a6022836136b6565b91506155758261550e565b604082019050919050565b600060208201905081810360008301526155998161555d565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265202776272076616c60008201527f7565000000000000000000000000000000000000000000000000000000000000602082015250565b60006155fc6022836136b6565b9150615607826155a0565b604082019050919050565b6000602082019050818103600083015261562b816155ef565b9050919050565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b60006156686020836136b6565b915061567382615632565b602082019050919050565b600060208201905081810360008301526156978161565b565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b60006156d4601c836136b6565b91506156df8261569e565b602082019050919050565b60006020820190508181036000830152615703816156c7565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea264697066735822122091a46e59dd66d0c5dd1b5fd5b264a7ccf73bd2fad67e816ba2de779d9e184fe464736f6c634300080d003368747470733a2f2f6d657461646174612e6e66746f776e2e636f6d2f7368617265732f