60806040526030600a60006101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550601e600a60086101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550666a94d74f430000600a60106101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550662386f26fc10000600a60186101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550731a2f4bb65b98a294ce342b64e99667cd149b7caf600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073f2b12aaa4410928eb8c1a61c0a7bb0447b930303600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503480156200016f57600080fd5b5060405162005e6d38038062005e6d833981810160405281019062000195919062000749565b81818160029081620001a8919062000a19565b508060039081620001ba919062000a19565b50620001cb6200028b60201b60201c565b6000819055505050620001f3620001e76200029460201b60201c565b6200029c60201b60201c565b6000600860146101000a81548160ff021916908315150217905550620002326000801b620002266200029460201b60201c565b6200036260201b60201c565b620002737fdf8b4c520ffe197c5343c6f5aec59570151ef9a492f2c624fd45ddde6135ec42620002676200029460201b60201c565b6200036260201b60201c565b620002836200037860201b60201c565b505062000be5565b60006001905090565b600033905090565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b620003748282620003ed60201b60201c565b5050565b62000388620004df60201b60201c565b6001600860146101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258620003d46200029460201b60201c565b604051620003e3919062000b45565b60405180910390a1565b620003ff82826200053460201b60201c565b620004db5760016009600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550620004806200029460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b620004ef6200059f60201b60201c565b1562000532576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620005299062000bc3565b60405180910390fd5b565b60006009600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6000600860149054906101000a900460ff16905090565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6200061f82620005d4565b810181811067ffffffffffffffff82111715620006415762000640620005e5565b5b80604052505050565b600062000656620005b6565b905062000664828262000614565b919050565b600067ffffffffffffffff821115620006875762000686620005e5565b5b6200069282620005d4565b9050602081019050919050565b60005b83811015620006bf578082015181840152602081019050620006a2565b60008484015250505050565b6000620006e2620006dc8462000669565b6200064a565b905082815260208101848484011115620007015762000700620005cf565b5b6200070e8482856200069f565b509392505050565b600082601f8301126200072e576200072d620005ca565b5b815162000740848260208601620006cb565b91505092915050565b60008060408385031215620007635762000762620005c0565b5b600083015167ffffffffffffffff811115620007845762000783620005c5565b5b620007928582860162000716565b925050602083015167ffffffffffffffff811115620007b657620007b5620005c5565b5b620007c48582860162000716565b9150509250929050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200082157607f821691505b602082108103620008375762000836620007d9565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620008a17fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000862565b620008ad868362000862565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620008fa620008f4620008ee84620008c5565b620008cf565b620008c5565b9050919050565b6000819050919050565b6200091683620008d9565b6200092e620009258262000901565b8484546200086f565b825550505050565b600090565b6200094562000936565b620009528184846200090b565b505050565b5b818110156200097a576200096e6000826200093b565b60018101905062000958565b5050565b601f821115620009c95762000993816200083d565b6200099e8462000852565b81016020851015620009ae578190505b620009c6620009bd8562000852565b83018262000957565b50505b505050565b600082821c905092915050565b6000620009ee60001984600802620009ce565b1980831691505092915050565b600062000a098383620009db565b9150826002028217905092915050565b62000a2482620007ce565b67ffffffffffffffff81111562000a405762000a3f620005e5565b5b62000a4c825462000808565b62000a598282856200097e565b600060209050601f83116001811462000a91576000841562000a7c578287015190505b62000a888582620009fb565b86555062000af8565b601f19841662000aa1866200083d565b60005b8281101562000acb5784890151825560018201915060208501945060208101905062000aa4565b8683101562000aeb578489015162000ae7601f891682620009db565b8355505b6001600288020188555050505b505050505050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000b2d8262000b00565b9050919050565b62000b3f8162000b20565b82525050565b600060208201905062000b5c600083018462000b34565b92915050565b600082825260208201905092915050565b7f5061757361626c653a2070617573656400000000000000000000000000000000600082015250565b600062000bab60108362000b62565b915062000bb88262000b73565b602082019050919050565b6000602082019050818103600083015262000bde8162000b9c565b9050919050565b6152788062000bf56000396000f3fe6080604052600436106102ae5760003560e01c8063715018a611610175578063c4f55d72116100dc578063da31a1eb11610095578063e985e9c51161006f578063e985e9c514610a13578063f2fde38b14610a50578063f81ebe4d14610a79578063fb4c3dcf14610a95576102ae565b8063da31a1eb14610996578063dcc345f2146109c1578063dd30ab02146109ea576102ae565b8063c4f55d7214610880578063c87b56dd146108be578063caccd7f7146108fb578063d547741f14610926578063d5abeb011461094f578063d85d3d271461097a576102ae565b806395d89b411161012e57806395d89b41146107915780639c4f3d0a146107bc578063a217fddf146107e5578063a22cb46514610810578063b6effc2114610839578063b88d4fde14610864576102ae565b8063715018a6146106a557806383cad921146106bc5780638456cb59146106e75780638ada6b0f146106fe5780638da5cb5b1461072957806391d1485414610754576102ae565b80632f2ff15d116102195780634181f82c116101d25780634181f82c1461059257806342842e0e146105bb57806356d3163d146105d75780635c975abb146106005780636352211e1461062b57806370a0823114610668576102ae565b80632f2ff15d146104cd57806336568abe146104f6578063371ba5bf1461051f5780633ab1a494146105485780633ccfd60b146105715780633f4ba83a1461057b576102ae565b806318160ddd1161026b57806318160ddd146103ca57806323b872dd146103f5578063248a9ca31461041157806326987b601461044e5780632a0acc6a146104795780632cd07c50146104a4576102ae565b806301ffc9a7146102b357806306fdde03146102f0578063081812fc1461031b578063095ea7b3146103585780630ba2cf36146103745780631581b6001461039f575b600080fd5b3480156102bf57600080fd5b506102da60048036038101906102d591906136b8565b610ad2565b6040516102e79190613700565b60405180910390f35b3480156102fc57600080fd5b50610305610ae4565b60405161031291906137ab565b60405180910390f35b34801561032757600080fd5b50610342600480360381019061033d9190613803565b610b76565b60405161034f9190613871565b60405180910390f35b610372600480360381019061036d91906138b8565b610bf5565b005b34801561038057600080fd5b50610389610d39565b604051610396919061391b565b60405180910390f35b3480156103ab57600080fd5b506103b4610d53565b6040516103c19190613957565b60405180910390f35b3480156103d657600080fd5b506103df610d79565b6040516103ec9190613981565b60405180910390f35b61040f600480360381019061040a919061399c565b610d90565b005b34801561041d57600080fd5b5061043860048036038101906104339190613a25565b6110b2565b6040516104459190613a61565b60405180910390f35b34801561045a57600080fd5b506104636110d2565b6040516104709190613981565b60405180910390f35b34801561048557600080fd5b5061048e6110e1565b60405161049b9190613a61565b60405180910390f35b3480156104b057600080fd5b506104cb60048036038101906104c69190613ae1565b611105565b005b3480156104d957600080fd5b506104f460048036038101906104ef9190613b41565b6112cd565b005b34801561050257600080fd5b5061051d60048036038101906105189190613b41565b6112ee565b005b34801561052b57600080fd5b5061054660048036038101906105419190613bad565b611371565b005b34801561055457600080fd5b5061056f600480360381019061056a9190613c06565b6113c8565b005b610579611437565b005b34801561058757600080fd5b506105906115cd565b005b34801561059e57600080fd5b506105b960048036038101906105b49190613bad565b611602565b005b6105d560048036038101906105d0919061399c565b611659565b005b3480156105e357600080fd5b506105fe60048036038101906105f99190613c71565b611679565b005b34801561060c57600080fd5b506106156116e8565b6040516106229190613700565b60405180910390f35b34801561063757600080fd5b50610652600480360381019061064d9190613803565b6116ff565b60405161065f9190613871565b60405180910390f35b34801561067457600080fd5b5061068f600480360381019061068a9190613c9e565b611711565b60405161069c9190613981565b60405180910390f35b3480156106b157600080fd5b506106ba6117c9565b005b3480156106c857600080fd5b506106d16117dd565b6040516106de919061391b565b60405180910390f35b3480156106f357600080fd5b506106fc6117f7565b005b34801561070a57600080fd5b5061071361182c565b6040516107209190613d2a565b60405180910390f35b34801561073557600080fd5b5061073e611852565b60405161074b9190613871565b60405180910390f35b34801561076057600080fd5b5061077b60048036038101906107769190613b41565b61187c565b6040516107889190613700565b60405180910390f35b34801561079d57600080fd5b506107a66118e7565b6040516107b391906137ab565b60405180910390f35b3480156107c857600080fd5b506107e360048036038101906107de9190613bad565b611979565b005b3480156107f157600080fd5b506107fa6119d0565b6040516108079190613a61565b60405180910390f35b34801561081c57600080fd5b5061083760048036038101906108329190613d71565b6119d7565b005b34801561084557600080fd5b5061084e611ae2565b60405161085b919061391b565b60405180910390f35b61087e60048036038101906108799190613ee1565b611afc565b005b34801561088c57600080fd5b506108a760048036038101906108a29190613c9e565b611b6f565b6040516108b5929190613f8f565b60405180910390f35b3480156108ca57600080fd5b506108e560048036038101906108e09190613803565b611bcb565b6040516108f291906137ab565b60405180910390f35b34801561090757600080fd5b50610910611d0f565b60405161091d9190613957565b60405180910390f35b34801561093257600080fd5b5061094d60048036038101906109489190613b41565b611d35565b005b34801561095b57600080fd5b50610964611d56565b604051610971919061391b565b60405180910390f35b610994600480360381019061098f9190613fb8565b611d70565b005b3480156109a257600080fd5b506109ab611fe9565b6040516109b89190614111565b60405180910390f35b3480156109cd57600080fd5b506109e860048036038101906109e39190613c06565b612173565b005b3480156109f657600080fd5b50610a116004803603810190610a0c9190613bad565b6121e2565b005b348015610a1f57600080fd5b50610a3a6004803603810190610a359190614133565b61229e565b604051610a479190613700565b60405180910390f35b348015610a5c57600080fd5b50610a776004803603810190610a729190613c9e565b612332565b005b610a936004803603810190610a8e9190614173565b6123b5565b005b348015610aa157600080fd5b50610abc6004803603810190610ab79190613803565b612577565b604051610ac991906137ab565b60405180910390f35b6000610add82612617565b9050919050565b606060028054610af390614202565b80601f0160208091040260200160405190810160405280929190818152602001828054610b1f90614202565b8015610b6c5780601f10610b4157610100808354040283529160200191610b6c565b820191906000526020600020905b815481529060010190602001808311610b4f57829003601f168201915b5050505050905090565b6000610b8182612691565b610bb7576040517fcf4700e400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6006600083815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000610c00826116ff565b90508073ffffffffffffffffffffffffffffffffffffffff16610c216126f0565b73ffffffffffffffffffffffffffffffffffffffff1614610c8457610c4d81610c486126f0565b61229e565b610c83576040517fcfb3b94200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b826006600084815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550818373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a4505050565b600a60089054906101000a900467ffffffffffffffff1681565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610d836126f8565b6001546000540303905090565b6000610d9b82612701565b90508373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610e02576040517fa114810000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080610e0e846127cd565b91509150610e248187610e1f6126f0565b6127f4565b610e7057610e3986610e346126f0565b61229e565b610e6f576040517f59c896be00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1603610ed6576040517fea553b3400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610ee38686866001612838565b8015610eee57600082555b600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600081546001900391905081905550600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000815460010191905081905550610fbc85610f98888887612b01565b7c020000000000000000000000000000000000000000000000000000000017612b29565b600460008681526020019081526020016000208190555060007c0200000000000000000000000000000000000000000000000000000000841603611042576000600185019050600060046000838152602001908152602001600020540361104057600054811461103f578360046000838152602001908152602001600020819055505b5b505b838573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46110aa8686866001612b54565b505050505050565b600060096000838152602001908152602001600020600101549050919050565b60006110dc612b5a565b905090565b7fdf8b4c520ffe197c5343c6f5aec59570151ef9a492f2c624fd45ddde6135ec4281565b7fdf8b4c520ffe197c5343c6f5aec59570151ef9a492f2c624fd45ddde6135ec4261112f81612b63565b601483839050111561117a5782826040517f7aa5ad33000000000000000000000000000000000000000000000000000000008152600401611171929190614260565b60405180910390fd5b6000600b60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff161115611225576040517f02efb25500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600a60009054906101000a900467ffffffffffffffff1667ffffffffffffffff166001611250610d79565b61125a91906142b3565b1115611292576040517f794bb39b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8282600c60006112a0612b5a565b815260200190815260200160002091826112bb929190614494565b506112c7846001612b77565b50505050565b6112d6826110b2565b6112df81612b63565b6112e98383612d32565b505050565b6112f6612e13565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614611363576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161135a906145d6565b60405180910390fd5b61136d8282612e1b565b5050565b7fdf8b4c520ffe197c5343c6f5aec59570151ef9a492f2c624fd45ddde6135ec4261139b81612b63565b81600a60106101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055505050565b7fdf8b4c520ffe197c5343c6f5aec59570151ef9a492f2c624fd45ddde6135ec426113f281612b63565b81600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b7fdf8b4c520ffe197c5343c6f5aec59570151ef9a492f2c624fd45ddde6135ec4261146181612b63565b6000600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166064600a60089054906101000a900467ffffffffffffffff1667ffffffffffffffff16476114ca91906145f6565b6114d49190614667565b6040516114e0906146c9565b60006040518083038185875af1925050503d806000811461151d576040519150601f19603f3d011682016040523d82523d6000602084013e611522565b606091505b505090508061153057600080fd5b6000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1647604051611578906146c9565b60006040518083038185875af1925050503d80600081146115b5576040519150601f19603f3d011682016040523d82523d6000602084013e6115ba565b606091505b50509050806115c857600080fd5b505050565b7fdf8b4c520ffe197c5343c6f5aec59570151ef9a492f2c624fd45ddde6135ec426115f781612b63565b6115ff612efd565b50565b7fdf8b4c520ffe197c5343c6f5aec59570151ef9a492f2c624fd45ddde6135ec4261162c81612b63565b81600a60186101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055505050565b61167483838360405180602001604052806000815250611afc565b505050565b7fdf8b4c520ffe197c5343c6f5aec59570151ef9a492f2c624fd45ddde6135ec426116a381612b63565b81600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b6000600860149054906101000a900460ff16905090565b600061170a82612701565b9050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611778576040517f8f4eb60400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b67ffffffffffffffff600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054169050919050565b6117d1612f60565b6117db6000612fde565b565b600a60189054906101000a900467ffffffffffffffff1681565b7fdf8b4c520ffe197c5343c6f5aec59570151ef9a492f2c624fd45ddde6135ec4261182181612b63565b6118296130a4565b50565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60006009600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6060600380546118f690614202565b80601f016020809104026020016040519081016040528092919081815260200182805461192290614202565b801561196f5780601f106119445761010080835404028352916020019161196f565b820191906000526020600020905b81548152906001019060200180831161195257829003601f168201915b5050505050905090565b7fdf8b4c520ffe197c5343c6f5aec59570151ef9a492f2c624fd45ddde6135ec426119a381612b63565b81600a60006101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055505050565b6000801b81565b80600760006119e46126f0565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff16611a916126f0565b73ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3183604051611ad69190613700565b60405180910390a35050565b600a60109054906101000a900467ffffffffffffffff1681565b611b07848484610d90565b60008373ffffffffffffffffffffffffffffffffffffffff163b14611b6957611b3284848484613107565b611b68576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b50505050565b600b6020528060005260406000206000915090508060000160009054906101000a90046fffffffffffffffffffffffffffffffff16908060000160109054906101000a90046fffffffffffffffffffffffffffffffff16905082565b6060611bd682612691565b611c0c576040517fa14c4b5000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600c6000838152602001908152602001600020600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663d949677484600c60008781526020019081526020016000206040518363ffffffff1660e01b8152600401611c8e929190614762565b600060405180830381865afa158015611cab573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f82011682018060405250810190611cd49190614833565b600c6000858152602001908152602001600020604051602001611cf993929190614c59565b6040516020818303038152906040529050919050565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b611d3e826110b2565b611d4781612b63565b611d518383612e1b565b505050565b600a60009054906101000a900467ffffffffffffffff1681565b611d78613257565b3373ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff1614611de857336040517f8d04b387000000000000000000000000000000000000000000000000000000008152600401611ddf9190613871565b60405180910390fd5b34600a60109054906101000a900467ffffffffffffffff1667ffffffffffffffff161115611e4d57346040517f92665351000000000000000000000000000000000000000000000000000000008152600401611e449190613981565b60405180910390fd5b6014828290501115611e985781816040517f7aa5ad33000000000000000000000000000000000000000000000000000000008152600401611e8f929190614260565b60405180910390fd5b6000600b60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff161115611f43576040517f02efb25500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600a60009054906101000a900467ffffffffffffffff1667ffffffffffffffff166001611f6e610d79565b611f7891906142b3565b1115611fb0576040517f794bb39b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8181600c6000611fbe612b5a565b81526020019081526020016000209182611fd9929190614494565b50611fe5336001612b77565b5050565b60606000611ff5610d79565b905060008111612031576040517f4d5e5fb300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008167ffffffffffffffff81111561204d5761204c613db6565b5b60405190808252806020026020018201604052801561208057816020015b606081526020019060019003908161206b5790505b5090506000600190505b82811161216a57600c600082815260200190815260200160002080546120af90614202565b80601f01602080910402602001604051908101604052809291908181526020018280546120db90614202565b80156121285780601f106120fd57610100808354040283529160200191612128565b820191906000526020600020905b81548152906001019060200180831161210b57829003601f168201915b50505050508260018361213b9190614ced565b8151811061214c5761214b614d21565b5b6020026020010181905250808061216290614d50565b91505061208a565b50809250505090565b7fdf8b4c520ffe197c5343c6f5aec59570151ef9a492f2c624fd45ddde6135ec4261219d81612b63565b81600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b7fdf8b4c520ffe197c5343c6f5aec59570151ef9a492f2c624fd45ddde6135ec4261220c81612b63565b60008267ffffffffffffffff16108061222f57508167ffffffffffffffff166064105b1561227157816040517fc1299ae5000000000000000000000000000000000000000000000000000000008152600401612268919061391b565b60405180910390fd5b81600a60086101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055505050565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b61233a612f60565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036123a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123a090614e0a565b60405180910390fd5b6123b281612fde565b50565b3373ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff161461242557336040517f8d04b38700000000000000000000000000000000000000000000000000000000815260040161241c9190613871565b60405180910390fd5b34600a60189054906101000a900467ffffffffffffffff1667ffffffffffffffff16111561248a57346040517f926653510000000000000000000000000000000000000000000000000000000081526004016124819190613981565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff166124aa826116ff565b73ffffffffffffffffffffffffffffffffffffffff16146125045780336040517f6d3d18580000000000000000000000000000000000000000000000000000000081526004016124fb929190614e2a565b60405180910390fd5b601483839050111561254f5782826040517f7aa5ad33000000000000000000000000000000000000000000000000000000008152600401612546929190614260565b60405180910390fd5b8282600c60008481526020019081526020016000209182612571929190614494565b50505050565b600c602052806000526040600020600091509050805461259690614202565b80601f01602080910402602001604051908101604052809291908181526020018280546125c290614202565b801561260f5780601f106125e45761010080835404028352916020019161260f565b820191906000526020600020905b8154815290600101906020018083116125f257829003601f168201915b505050505081565b60007f7965db0b000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916148061268a5750612689826132a1565b5b9050919050565b60008161269c6126f8565b111580156126ab575060005482105b80156126e9575060007c0100000000000000000000000000000000000000000000000000000000600460008581526020019081526020016000205416145b9050919050565b600033905090565b60006001905090565b600080829050806127106126f8565b11612796576000548110156127955760006004600083815260200190815260200160002054905060007c0100000000000000000000000000000000000000000000000000000000821603612793575b6000810361278957600460008360019003935083815260200190815260200160002054905061275f565b80925050506127c8565b505b5b6040517fdf2d9b4200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b919050565b60008060006006600085815260200190815260200160002090508092508254915050915091565b600073ffffffffffffffffffffffffffffffffffffffff8316925073ffffffffffffffffffffffffffffffffffffffff821691508382148383141790509392505050565b6000600b60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a90046fffffffffffffffffffffffffffffffff166fffffffffffffffffffffffffffffffff16111561295757600b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001600081819054906101000a90046fffffffffffffffffffffffffffffffff168092919061291f90614e53565b91906101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff160217905550505b600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001600081819054906101000a90046fffffffffffffffffffffffffffffffff16809291906129c590614e7c565b91906101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff160217905550506000600b60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160106101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff16021790555081600b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160106101000a8154816fffffffffffffffffffffffffffffffff02191690836fffffffffffffffffffffffffffffffff160217905550612afb8484848461330b565b50505050565b60008060e883901c905060e8612b18868684613311565b62ffffff16901b9150509392505050565b600073ffffffffffffffffffffffffffffffffffffffff83169250814260a01b178317905092915050565b50505050565b60008054905090565b612b7481612b6f612e13565b61331a565b50565b60008054905060008203612bb7576040517fb562e8dd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b612bc46000848385612838565b600160406001901b178202600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550612c3b83612c2c6000866000612b01565b612c35856133b7565b17612b29565b6004600083815260200190815260200160002081905550600080838301905073ffffffffffffffffffffffffffffffffffffffff85169150828260007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a4600183015b818114612cdc57808360007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600080a4600181019050612ca1565b5060008203612d17576040517f2e07630000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b806000819055505050612d2d6000848385612b54565b505050565b612d3c828261187c565b612e0f5760016009600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550612db4612e13565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45b5050565b600033905090565b612e25828261187c565b15612ef95760006009600084815260200190815260200160002060000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550612e9e612e13565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45b5050565b612f056133c7565b6000600860146101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa612f49612e13565b604051612f569190613871565b60405180910390a1565b612f68612e13565b73ffffffffffffffffffffffffffffffffffffffff16612f86611852565b73ffffffffffffffffffffffffffffffffffffffff1614612fdc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612fd390614f00565b60405180910390fd5b565b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6130ac613257565b6001600860146101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a2586130f0612e13565b6040516130fd9190613871565b60405180910390a1565b60008373ffffffffffffffffffffffffffffffffffffffff1663150b7a0261312d6126f0565b8786866040518563ffffffff1660e01b815260040161314f9493929190614f75565b6020604051808303816000875af192505050801561318b57506040513d601f19601f820116820180604052508101906131889190614fd6565b60015b613204573d80600081146131bb576040519150601f19603f3d011682016040523d82523d6000602084013e6131c0565b606091505b5060008151036131fc576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050949350505050565b61325f6116e8565b1561329f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016132969061504f565b60405180910390fd5b565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b50505050565b60009392505050565b613324828261187c565b6133b3576133498173ffffffffffffffffffffffffffffffffffffffff166014613410565b6133578360001c6020613410565b604051602001613368929190615107565b6040516020818303038152906040526040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016133aa91906137ab565b60405180910390fd5b5050565b60006001821460e11b9050919050565b6133cf6116e8565b61340e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016134059061518d565b60405180910390fd5b565b60606000600283600261342391906145f6565b61342d91906142b3565b67ffffffffffffffff81111561344657613445613db6565b5b6040519080825280601f01601f1916602001820160405280156134785781602001600182028036833780820191505090505b5090507f3000000000000000000000000000000000000000000000000000000000000000816000815181106134b0576134af614d21565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f78000000000000000000000000000000000000000000000000000000000000008160018151811061351457613513614d21565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506000600184600261355491906145f6565b61355e91906142b3565b90505b60018111156135fe577f3031323334353637383961626364656600000000000000000000000000000000600f8616601081106135a05761359f614d21565b5b1a60f81b8282815181106135b7576135b6614d21565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600485901c9450806135f7906151ad565b9050613561565b5060008414613642576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161363990615222565b60405180910390fd5b8091505092915050565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b61369581613660565b81146136a057600080fd5b50565b6000813590506136b28161368c565b92915050565b6000602082840312156136ce576136cd613656565b5b60006136dc848285016136a3565b91505092915050565b60008115159050919050565b6136fa816136e5565b82525050565b600060208201905061371560008301846136f1565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561375557808201518184015260208101905061373a565b60008484015250505050565b6000601f19601f8301169050919050565b600061377d8261371b565b6137878185613726565b9350613797818560208601613737565b6137a081613761565b840191505092915050565b600060208201905081810360008301526137c58184613772565b905092915050565b6000819050919050565b6137e0816137cd565b81146137eb57600080fd5b50565b6000813590506137fd816137d7565b92915050565b60006020828403121561381957613818613656565b5b6000613827848285016137ee565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061385b82613830565b9050919050565b61386b81613850565b82525050565b60006020820190506138866000830184613862565b92915050565b61389581613850565b81146138a057600080fd5b50565b6000813590506138b28161388c565b92915050565b600080604083850312156138cf576138ce613656565b5b60006138dd858286016138a3565b92505060206138ee858286016137ee565b9150509250929050565b600067ffffffffffffffff82169050919050565b613915816138f8565b82525050565b6000602082019050613930600083018461390c565b92915050565b600061394182613830565b9050919050565b61395181613936565b82525050565b600060208201905061396c6000830184613948565b92915050565b61397b816137cd565b82525050565b60006020820190506139966000830184613972565b92915050565b6000806000606084860312156139b5576139b4613656565b5b60006139c3868287016138a3565b93505060206139d4868287016138a3565b92505060406139e5868287016137ee565b9150509250925092565b6000819050919050565b613a02816139ef565b8114613a0d57600080fd5b50565b600081359050613a1f816139f9565b92915050565b600060208284031215613a3b57613a3a613656565b5b6000613a4984828501613a10565b91505092915050565b613a5b816139ef565b82525050565b6000602082019050613a766000830184613a52565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f840112613aa157613aa0613a7c565b5b8235905067ffffffffffffffff811115613abe57613abd613a81565b5b602083019150836001820283011115613ada57613ad9613a86565b5b9250929050565b600080600060408486031215613afa57613af9613656565b5b6000613b08868287016138a3565b935050602084013567ffffffffffffffff811115613b2957613b2861365b565b5b613b3586828701613a8b565b92509250509250925092565b60008060408385031215613b5857613b57613656565b5b6000613b6685828601613a10565b9250506020613b77858286016138a3565b9150509250929050565b613b8a816138f8565b8114613b9557600080fd5b50565b600081359050613ba781613b81565b92915050565b600060208284031215613bc357613bc2613656565b5b6000613bd184828501613b98565b91505092915050565b613be381613936565b8114613bee57600080fd5b50565b600081359050613c0081613bda565b92915050565b600060208284031215613c1c57613c1b613656565b5b6000613c2a84828501613bf1565b91505092915050565b6000613c3e82613850565b9050919050565b613c4e81613c33565b8114613c5957600080fd5b50565b600081359050613c6b81613c45565b92915050565b600060208284031215613c8757613c86613656565b5b6000613c9584828501613c5c565b91505092915050565b600060208284031215613cb457613cb3613656565b5b6000613cc2848285016138a3565b91505092915050565b6000819050919050565b6000613cf0613ceb613ce684613830565b613ccb565b613830565b9050919050565b6000613d0282613cd5565b9050919050565b6000613d1482613cf7565b9050919050565b613d2481613d09565b82525050565b6000602082019050613d3f6000830184613d1b565b92915050565b613d4e816136e5565b8114613d5957600080fd5b50565b600081359050613d6b81613d45565b92915050565b60008060408385031215613d8857613d87613656565b5b6000613d96858286016138a3565b9250506020613da785828601613d5c565b9150509250929050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b613dee82613761565b810181811067ffffffffffffffff82111715613e0d57613e0c613db6565b5b80604052505050565b6000613e2061364c565b9050613e2c8282613de5565b919050565b600067ffffffffffffffff821115613e4c57613e4b613db6565b5b613e5582613761565b9050602081019050919050565b82818337600083830152505050565b6000613e84613e7f84613e31565b613e16565b905082815260208101848484011115613ea057613e9f613db1565b5b613eab848285613e62565b509392505050565b600082601f830112613ec857613ec7613a7c565b5b8135613ed8848260208601613e71565b91505092915050565b60008060008060808587031215613efb57613efa613656565b5b6000613f09878288016138a3565b9450506020613f1a878288016138a3565b9350506040613f2b878288016137ee565b925050606085013567ffffffffffffffff811115613f4c57613f4b61365b565b5b613f5887828801613eb3565b91505092959194509250565b60006fffffffffffffffffffffffffffffffff82169050919050565b613f8981613f64565b82525050565b6000604082019050613fa46000830185613f80565b613fb16020830184613f80565b9392505050565b60008060208385031215613fcf57613fce613656565b5b600083013567ffffffffffffffff811115613fed57613fec61365b565b5b613ff985828601613a8b565b92509250509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600082825260208201905092915050565b600061404d8261371b565b6140578185614031565b9350614067818560208601613737565b61407081613761565b840191505092915050565b60006140878383614042565b905092915050565b6000602082019050919050565b60006140a782614005565b6140b18185614010565b9350836020820285016140c385614021565b8060005b858110156140ff57848403895281516140e0858261407b565b94506140eb8361408f565b925060208a019950506001810190506140c7565b50829750879550505050505092915050565b6000602082019050818103600083015261412b818461409c565b905092915050565b6000806040838503121561414a57614149613656565b5b6000614158858286016138a3565b9250506020614169858286016138a3565b9150509250929050565b60008060006040848603121561418c5761418b613656565b5b600084013567ffffffffffffffff8111156141aa576141a961365b565b5b6141b686828701613a8b565b935093505060206141c9868287016137ee565b9150509250925092565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061421a57607f821691505b60208210810361422d5761422c6141d3565b5b50919050565b600061423f8385613726565b935061424c838584613e62565b61425583613761565b840190509392505050565b6000602082019050818103600083015261427b818486614233565b90509392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006142be826137cd565b91506142c9836137cd565b92508282019050808211156142e1576142e0614284565b5b92915050565b600082905092915050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026143547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82614317565b61435e8683614317565b95508019841693508086168417925050509392505050565b600061439161438c614387846137cd565b613ccb565b6137cd565b9050919050565b6000819050919050565b6143ab83614376565b6143bf6143b782614398565b848454614324565b825550505050565b600090565b6143d46143c7565b6143df8184846143a2565b505050565b5b81811015614403576143f86000826143cc565b6001810190506143e5565b5050565b601f82111561444857614419816142f2565b61442284614307565b81016020851015614431578190505b61444561443d85614307565b8301826143e4565b50505b505050565b600082821c905092915050565b600061446b6000198460080261444d565b1980831691505092915050565b6000614484838361445a565b9150826002028217905092915050565b61449e83836142e7565b67ffffffffffffffff8111156144b7576144b6613db6565b5b6144c18254614202565b6144cc828285614407565b6000601f8311600181146144fb57600084156144e9578287013590505b6144f38582614478565b86555061455b565b601f198416614509866142f2565b60005b828110156145315784890135825560018201915060208501945060208101905061450c565b8683101561454e578489013561454a601f89168261445a565b8355505b6001600288020188555050505b50505050505050565b7f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560008201527f20726f6c657320666f722073656c660000000000000000000000000000000000602082015250565b60006145c0602f83613726565b91506145cb82614564565b604082019050919050565b600060208201905081810360008301526145ef816145b3565b9050919050565b6000614601826137cd565b915061460c836137cd565b925082820261461a816137cd565b9150828204841483151761463157614630614284565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000614672826137cd565b915061467d836137cd565b92508261468d5761468c614638565b5b828204905092915050565b600081905092915050565b50565b60006146b3600083614698565b91506146be826146a3565b600082019050919050565b60006146d4826146a6565b9150819050919050565b600081546146eb81614202565b6146f58186613726565b94506001821660008114614710576001811461472657614759565b60ff198316865281151560200286019350614759565b61472f856142f2565b60005b8381101561475157815481890152600182019150602081019050614732565b808801955050505b50505092915050565b60006040820190506147776000830185613972565b818103602083015261478981846146de565b90509392505050565b600067ffffffffffffffff8211156147ad576147ac613db6565b5b6147b682613761565b9050602081019050919050565b60006147d66147d184614792565b613e16565b9050828152602081018484840111156147f2576147f1613db1565b5b6147fd848285613737565b509392505050565b600082601f83011261481a57614819613a7c565b5b815161482a8482602086016147c3565b91505092915050565b60006020828403121561484957614848613656565b5b600082015167ffffffffffffffff8111156148675761486661365b565b5b61487384828501614805565b91505092915050565b600081905092915050565b7f646174613a6170706c69636174696f6e2f6a736f6e3b2c000000000000000000600082015250565b60006148bd60178361487c565b91506148c882614887565b601782019050919050565b7f7b226e616d65223a20224d4750205052454d49554d202d200000000000000000600082015250565b600061490960188361487c565b9150614914826148d3565b601882019050919050565b6000815461492c81614202565b614936818661487c565b94506001821660008114614951576001811461496657614999565b60ff1983168652811515820286019350614999565b61496f856142f2565b60005b8381101561499157815481890152600182019150602081019050614972565b838801955050505b50505092915050565b7f222c22696d616765223a2022646174613a696d6167652f7376672b786d6c3b6260008201527f61736536342c0000000000000000000000000000000000000000000000000000602082015250565b60006149fe60268361487c565b9150614a09826149a2565b602682019050919050565b6000614a1f8261371b565b614a29818561487c565b9350614a39818560208601613737565b80840191505092915050565b7f222c226465736372697074696f6e223a20220000000000000000000000000000600082015250565b6000614a7b60128361487c565b9150614a8682614a45565b601282019050919050565b7f20697320636572746966696564206d656d626572206f66204d41434e494e454760008201527f554e204749524c532050415353205052454d49554d2e205768656e206765742060208201527f6c6f73742c20676f20666f72207468652066756e207761792e2e2e222c000000604082015250565b6000614b13605d8361487c565b9150614b1e82614a91565b605d82019050919050565b7f2261747472696275746573223a205b7b00000000000000000000000000000000600082015250565b6000614b5f60108361487c565b9150614b6a82614b29565b601082019050919050565b7f2274726169745f74797065223a2022504153532054595045222c000000000000600082015250565b6000614bab601a8361487c565b9150614bb682614b75565b601a82019050919050565b7f2276616c7565223a20225052454d49554d220000000000000000000000000000600082015250565b6000614bf760128361487c565b9150614c0282614bc1565b601282019050919050565b7f7d5d7d0000000000000000000000000000000000000000000000000000000000600082015250565b6000614c4360038361487c565b9150614c4e82614c0d565b600382019050919050565b6000614c64826148b0565b9150614c6f826148fc565b9150614c7b828661491f565b9150614c86826149f1565b9150614c928285614a14565b9150614c9d82614a6e565b9150614ca9828461491f565b9150614cb482614b06565b9150614cbf82614b52565b9150614cca82614b9e565b9150614cd582614bea565b9150614ce082614c36565b9150819050949350505050565b6000614cf8826137cd565b9150614d03836137cd565b9250828203905081811115614d1b57614d1a614284565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000614d5b826137cd565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203614d8d57614d8c614284565b5b600182019050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000614df4602683613726565b9150614dff82614d98565b604082019050919050565b60006020820190508181036000830152614e2381614de7565b9050919050565b6000604082019050614e3f6000830185613972565b614e4c6020830184613862565b9392505050565b6000614e5e82613f64565b915060008203614e7157614e70614284565b5b600182039050919050565b6000614e8782613f64565b91506fffffffffffffffffffffffffffffffff8203614ea957614ea8614284565b5b600182019050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000614eea602083613726565b9150614ef582614eb4565b602082019050919050565b60006020820190508181036000830152614f1981614edd565b9050919050565b600081519050919050565b600082825260208201905092915050565b6000614f4782614f20565b614f518185614f2b565b9350614f61818560208601613737565b614f6a81613761565b840191505092915050565b6000608082019050614f8a6000830187613862565b614f976020830186613862565b614fa46040830185613972565b8181036060830152614fb68184614f3c565b905095945050505050565b600081519050614fd08161368c565b92915050565b600060208284031215614fec57614feb613656565b5b6000614ffa84828501614fc1565b91505092915050565b7f5061757361626c653a2070617573656400000000000000000000000000000000600082015250565b6000615039601083613726565b915061504482615003565b602082019050919050565b600060208201905081810360008301526150688161502c565b9050919050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000600082015250565b60006150a560178361487c565b91506150b08261506f565b601782019050919050565b7f206973206d697373696e6720726f6c6520000000000000000000000000000000600082015250565b60006150f160118361487c565b91506150fc826150bb565b601182019050919050565b600061511282615098565b915061511e8285614a14565b9150615129826150e4565b91506151358284614a14565b91508190509392505050565b7f5061757361626c653a206e6f7420706175736564000000000000000000000000600082015250565b6000615177601483613726565b915061518282615141565b602082019050919050565b600060208201905081810360008301526151a68161516a565b9050919050565b60006151b8826137cd565b9150600082036151cb576151ca614284565b5b600182039050919050565b7f537472696e67733a20686578206c656e67746820696e73756666696369656e74600082015250565b600061520c602083613726565b9150615217826151d6565b602082019050919050565b6000602082019050818103600083015261523b816151ff565b905091905056fea2646970667358221220fe76626d1fff0befc7968291ba30f4cb31a5837d35d402f4d108275fe883c0e764736f6c6343000813003300000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000001a4d616368696e6567756e4769726c73506173735072656d69756d00000000000000000000000000000000000000000000000000000000000000000000000000044d47505000000000000000000000000000000000000000000000000000000000