6101406040526000600e60006101000a81548160ff021916908315150217905550610760600f553480156200003357600080fd5b50604051620062e1380380620062e1833981810160405281019062000059919062000805565b836040518060400160405280600581526020017f312e302e3000000000000000000000000000000000000000000000000000000081525085858160029081620000a3919062000b1f565b508060039081620000b5919062000b1f565b50620000c66200026760201b60201c565b600081905550505060008280519060200120905060008280519060200120905060007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f90508260e081815250508161010081815250504660a08181525050620001378184846200026c60201b60201c565b608081815250503073ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff168152505080610120818152505050505050506001600881905550620001ac6000801b620001a0620002a860201b60201c565b620002b060201b60201c565b620001ed7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6620001e1620002a860201b60201c565b620002b060201b60201c565b620002056000801b6000801b620002d860201b60201c565b6200023a7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a66000801b620002d860201b60201c565b6200024b826200033c60201b60201c565b80601090816200025c919062000b1f565b505050505062000d27565b600090565b600083838346306040516020016200028995949392919062000c43565b6040516020818303038152906040528051906020012090509392505050565b600033905090565b620002c282826200043760201b60201c565b620002d48282620004ff60201b60201c565b5050565b6000600a600084815260200190815260200160002054905081600a6000858152602001908152602001600020819055508181847fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff60405160405180910390a4505050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603620003b057806040517f3df2b0dc000000000000000000000000000000000000000000000000000000008152600401620003a7919062000ca0565b60405180910390fd5b80600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff167f299d17e95023f496e0ffc4909cff1a61f74bb5eb18de6f900f4155bfa1b3b33360405160405180910390a250565b60016009600084815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055503373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000600b60008481526020019081526020016000206000015490506001600b6000858152602001908152602001600020600001600082825462000543919062000cec565b9250508190555081600b6000858152602001908152602001600020600101600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600b600085815260200190815260200160002060020160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b62000676826200062b565b810181811067ffffffffffffffff821117156200069857620006976200063c565b5b80604052505050565b6000620006ad6200060d565b9050620006bb82826200066b565b919050565b600067ffffffffffffffff821115620006de57620006dd6200063c565b5b620006e9826200062b565b9050602081019050919050565b60005b8381101562000716578082015181840152602081019050620006f9565b60008484015250505050565b6000620007396200073384620006c0565b620006a1565b90508281526020810184848401111562000758576200075762000626565b5b62000765848285620006f6565b509392505050565b600082601f83011262000785576200078462000621565b5b81516200079784826020860162000722565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620007cd82620007a0565b9050919050565b620007df81620007c0565b8114620007eb57600080fd5b50565b600081519050620007ff81620007d4565b92915050565b6000806000806080858703121562000822576200082162000617565b5b600085015167ffffffffffffffff8111156200084357620008426200061c565b5b62000851878288016200076d565b945050602085015167ffffffffffffffff8111156200087557620008746200061c565b5b62000883878288016200076d565b93505060406200089687828801620007ee565b925050606085015167ffffffffffffffff811115620008ba57620008b96200061c565b5b620008c8878288016200076d565b91505092959194509250565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200092757607f821691505b6020821081036200093d576200093c620008df565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620009a77fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000968565b620009b3868362000968565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b600062000a00620009fa620009f484620009cb565b620009d5565b620009cb565b9050919050565b6000819050919050565b62000a1c83620009df565b62000a3462000a2b8262000a07565b84845462000975565b825550505050565b600090565b62000a4b62000a3c565b62000a5881848462000a11565b505050565b5b8181101562000a805762000a7460008262000a41565b60018101905062000a5e565b5050565b601f82111562000acf5762000a998162000943565b62000aa48462000958565b8101602085101562000ab4578190505b62000acc62000ac38562000958565b83018262000a5d565b50505b505050565b600082821c905092915050565b600062000af46000198460080262000ad4565b1980831691505092915050565b600062000b0f838362000ae1565b9150826002028217905092915050565b62000b2a82620008d4565b67ffffffffffffffff81111562000b465762000b456200063c565b5b62000b5282546200090e565b62000b5f82828562000a84565b600060209050601f83116001811462000b97576000841562000b82578287015190505b62000b8e858262000b01565b86555062000bfe565b601f19841662000ba78662000943565b60005b8281101562000bd15784890151825560018201915060208501945060208101905062000baa565b8683101562000bf1578489015162000bed601f89168262000ae1565b8355505b6001600288020188555050505b505050505050565b6000819050919050565b62000c1b8162000c06565b82525050565b62000c2c81620009cb565b82525050565b62000c3d81620007c0565b82525050565b600060a08201905062000c5a600083018862000c10565b62000c69602083018762000c10565b62000c78604083018662000c10565b62000c87606083018562000c21565b62000c96608083018462000c32565b9695505050505050565b600060208201905062000cb7600083018462000c32565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000cf982620009cb565b915062000d0683620009cb565b925082820190508082111562000d215762000d2062000cbd565b5b92915050565b60805160a05160c05160e051610100516101205161556a62000d7760003960006139ce01526000613a10015260006139ef015260006139240152600061397a015260006139a3015261556a6000f3fe60806040526004361061021a5760003560e01c80636352211e11610123578063a22cb465116100ab578063ca15c8731161006f578063ca15c8731461081e578063d39e8af81461085b578063d539139314610884578063d547741f146108af578063e985e9c5146108d85761021a565b8063a22cb46514610715578063a2be6bd21461073e578063a32fa5b31461077b578063b88d4fde146107b8578063c87b56dd146107e15761021a565b80639010d07c116100f25780639010d07c1461061a57806391d148541461065757806395d89b41146106945780639abcd7c2146106bf578063a217fddf146106ea5761021a565b80636352211e1461054e5780636a6278421461058b5780636f4f2837146105b457806370a08231146105dd5761021a565b80632639f460116101a657806336568abe1161017557806336568abe1461047f5780633b1475a7146104a85780633f3e4c11146104d357806342842e0e146104fc57806342966c68146105255761021a565b80632639f460146103d95780632ab4d052146104025780632f2ff15d1461042d57806335dff9ba146104565761021a565b8063095ea7b3116101ed578063095ea7b3146102ef57806318160ddd146103185780631a23a7eb1461034357806323b872dd14610373578063248a9ca31461039c5761021a565b806301ffc9a71461021f57806306fdde031461025c578063079fe40e14610287578063081812fc146102b2575b600080fd5b34801561022b57600080fd5b5061024660048036038101906102419190613fd0565b610915565b6040516102539190614018565b60405180910390f35b34801561026857600080fd5b50610271610927565b60405161027e91906140c3565b60405180910390f35b34801561029357600080fd5b5061029c6109b9565b6040516102a99190614126565b60405180910390f35b3480156102be57600080fd5b506102d960048036038101906102d49190614177565b6109e3565b6040516102e69190614126565b60405180910390f35b3480156102fb57600080fd5b50610316600480360381019061031191906141d0565b610a5f565b005b34801561032457600080fd5b5061032d610ab3565b60405161033a919061421f565b60405180910390f35b61035d600480360381019061035891906142c3565b610aca565b60405161036a9190614126565b60405180910390f35b34801561037f57600080fd5b5061039a60048036038101906103959190614323565b610be5565b005b3480156103a857600080fd5b506103c360048036038101906103be91906143ac565b610c3b565b6040516103d091906143e8565b60405180910390f35b3480156103e557600080fd5b5061040060048036038101906103fb9190614459565b610c58565b005b34801561040e57600080fd5b50610417610c7d565b604051610424919061421f565b60405180910390f35b34801561043957600080fd5b50610454600480360381019061044f91906144a6565b610c83565b005b34801561046257600080fd5b5061047d60048036038101906104789190614512565b610d50565b005b34801561048b57600080fd5b506104a660048036038101906104a191906144a6565b610d7c565b005b3480156104b457600080fd5b506104bd610e4d565b6040516104ca919061421f565b60405180910390f35b3480156104df57600080fd5b506104fa60048036038101906104f59190614177565b610e56565b005b34801561050857600080fd5b50610523600480360381019061051e9190614323565b610e6f565b005b34801561053157600080fd5b5061054c60048036038101906105479190614177565b610ec5565b005b34801561055a57600080fd5b5061057560048036038101906105709190614177565b610f70565b6040516105829190614126565b60405180910390f35b34801561059757600080fd5b506105b260048036038101906105ad919061453f565b610f86565b005b3480156105c057600080fd5b506105db60048036038101906105d6919061453f565b611060565b005b3480156105e957600080fd5b5061060460048036038101906105ff919061453f565b6110aa565b604051610611919061421f565b60405180910390f35b34801561062657600080fd5b50610641600480360381019061063c919061456c565b611179565b60405161064e9190614126565b60405180910390f35b34801561066357600080fd5b5061067e600480360381019061067991906144a6565b61132a565b60405161068b9190614018565b60405180910390f35b3480156106a057600080fd5b506106a9611392565b6040516106b691906140c3565b60405180910390f35b3480156106cb57600080fd5b506106d4611424565b6040516106e19190614018565b60405180910390f35b3480156106f657600080fd5b506106ff611437565b60405161070c91906143e8565b60405180910390f35b34801561072157600080fd5b5061073c600480360381019061073791906145ac565b61143e565b005b34801561074a57600080fd5b50610765600480360381019061076091906143ac565b611492565b6040516107729190614018565b60405180910390f35b34801561078757600080fd5b506107a2600480360381019061079d91906144a6565b6114bc565b6040516107af9190614018565b60405180910390f35b3480156107c457600080fd5b506107df60048036038101906107da919061471c565b611590565b005b3480156107ed57600080fd5b5061080860048036038101906108039190614177565b6115e8565b60405161081591906140c3565b60405180910390f35b34801561082a57600080fd5b50610845600480360381019061084091906143ac565b6116c4565b604051610852919061421f565b60405180910390f35b34801561086757600080fd5b50610882600480360381019061087d91906143ac565b6117b1565b005b34801561089057600080fd5b5061089961180c565b6040516108a691906143e8565b60405180910390f35b3480156108bb57600080fd5b506108d660048036038101906108d191906144a6565b611830565b005b3480156108e457600080fd5b506108ff60048036038101906108fa919061479f565b611901565b60405161090c9190614018565b60405180910390f35b600061092082611995565b9050919050565b6060600280546109369061480e565b80601f01602080910402602001604051908101604052809291908181526020018280546109629061480e565b80156109af5780601f10610984576101008083540402835291602001916109af565b820191906000526020600020905b81548152906001019060200180831161099257829003601f168201915b5050505050905090565b6000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60006109ee82611a77565b610a24576040517fcf4700e400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6006600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600e60009054906101000a900460ff16610aa5576040517f7087ed7f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610aaf8282611ac5565b5050565b6000610abd611bc9565b6001546000540303905090565b6000600f548460200135610adc610ab3565b610ae6919061486e565b1115610b1e576040517ffb88d21500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000610b28610e4d565b9050610b35858585611bce565b91506000856000016020810190610b4c919061453f565b9050610b68610b596109b9565b87602001358860400135611ea7565b610b76818760200135611f4c565b818173ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fbb30f850affc4106b21aa99ef28533a2f3ef9c2ee4abbded1fb71b032db573f389604051610bd491906149bf565b60405180910390a450509392505050565b600e60009054906101000a900460ff16610c2b576040517f7087ed7f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610c36838383611f6a565b505050565b6000600a6000838152602001908152602001600020549050919050565b6000801b610c668133611f7a565b828260109182610c77929190614b91565b50505050565b600f5481565b610ca0600a60008481526020019081526020016000205433611f7a565b6009600083815260200190815260200160002060008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615610d425780826040517fd49c166a000000000000000000000000000000000000000000000000000000008152600401610d39929190614c61565b60405180910390fd5b610d4c828261201f565b5050565b6000801b610d5e8133611f7a565b81600e60006101000a81548160ff0219169083151502179055505050565b610d868282612037565b6000801b82148015610e12575060003073ffffffffffffffffffffffffffffffffffffffff1663ca15c873846040518263ffffffff1660e01b8152600401610dce91906143e8565b602060405180830381865afa158015610deb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e0f9190614c9f565b11155b15610e49576040517fafb5025600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050565b60008054905090565b6000801b610e648133611f7a565b81600f819055505050565b600e60009054906101000a900460ff16610eb5576040517f7087ed7f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610ec08383836120b7565b505050565b600e60009054906101000a900460ff16610f0b576040517f7087ed7f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6610f368133611f7a565b610f3f826120d7565b817f06e860b9ad1db968f3fa36dba43eeb07f1a10537f916df055fcca7dd93ecbf0c60405160405180910390a25050565b6000610f7b826120e5565b600001519050919050565b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6610fb18133611f7a565b600f546001610fbe610ab3565b610fc8919061486e565b1115611000576040517ffb88d21500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061100a610e4d565b9050611017836001611f4c565b808373ffffffffffffffffffffffffffffffffffffffff167f50d5e15fad5d417e23950a1a6b5b018dafb68f36dec91f46ca9e4e8f294010da60405160405180910390a3505050565b611068612370565b61109e576040517f7260843c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6110a781612384565b50565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611111576040517f8f4eb60400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900467ffffffffffffffff1667ffffffffffffffff169050919050565b600080600b6000858152602001908152602001600020600001549050600080600090505b8281101561132057600073ffffffffffffffffffffffffffffffffffffffff16600b6000888152602001908152602001600020600101600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461128d5784820361127957600b6000878152602001908152602001600020600101600082815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169350505050611324565b600182611286919061486e565b915061130c565b61129886600061132a565b80156112f65750600b600087815260200190815260200160002060020160008073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205481145b1561130b57600182611308919061486e565b91505b5b600181611319919061486e565b905061119d565b5050505b92915050565b60006009600084815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6060600380546113a19061480e565b80601f01602080910402602001604051908101604052809291908181526020018280546113cd9061480e565b801561141a5780601f106113ef5761010080835404028352916020019161141a565b820191906000526020600020905b8154815290600101906020018083116113fd57829003601f168201915b5050505050905090565b600e60009054906101000a900460ff1681565b6000801b81565b600e60009054906101000a900460ff16611484576040517f7087ed7f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61148e828261247c565b5050565b6000600d600083815260200190815260200160002060009054906101000a900460ff169050919050565b60006009600084815260200190815260200160002060008073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16611585576009600084815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905061158a565b600190505b92915050565b600e60009054906101000a900460ff166115d6576040517f7087ed7f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6115e2848484846125f3565b50505050565b60606115f382611a77565b611632576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161162990614d3e565b60405180910390fd5b6010805461163f9061480e565b80601f016020809104026020016040519081016040528092919081815260200182805461166b9061480e565b80156116b85780601f1061168d576101008083540402835291602001916116b8565b820191906000526020600020905b81548152906001019060200180831161169b57829003601f168201915b50505050509050919050565b600080600b600084815260200190815260200160002060000154905060005b8181101561178a57600073ffffffffffffffffffffffffffffffffffffffff16600b6000868152602001908152602001600020600101600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461177657600183611773919061486e565b92505b600181611783919061486e565b90506116e3565b5061179683600061132a565b156117ab576001826117a8919061486e565b91505b50919050565b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a66117dc8133611f7a565b6000600d600084815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a681565b61183a828261266b565b6000801b821480156118c6575060003073ffffffffffffffffffffffffffffffffffffffff1663ca15c873846040518263ffffffff1660e01b815260040161188291906143e8565b602060405180830381865afa15801561189f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118c39190614c9f565b11155b156118fd576040517fafb5025600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480611a6057507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80611a705750611a6f82612696565b5b9050919050565b600081611a82611bc9565b11158015611a91575060005482105b8015611abe575060046000838152602001908152602001600020600001601c9054906101000a900460ff16155b9050919050565b6000611ad082610f70565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611b37576040517f943f7b8c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16611b56612700565b73ffffffffffffffffffffffffffffffffffffffff1614611bb957611b8281611b7d612700565b611901565b611bb8576040517fcfb3b94200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b611bc4838383612708565b505050565b600090565b600080611c36611bec611be0876127ba565b80519060200120612835565b85858080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f8201169050808301925050505050505061284f565b9150600d60008660a00135815260200190815260200160002060009054906101000a900460ff16158015611c905750611c8f7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68361132a565b5b905080611cd2576040517f37022838000000000000000000000000000000000000000000000000000000008152600401611cc990614dd0565b60405180910390fd5b846000016020810190611ce5919061453f565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611d52576040517f37022838000000000000000000000000000000000000000000000000000000008152600401611d4990614e3c565b60405180910390fd5b4285606001351180611d675750846080013542115b15611da7576040517f37022838000000000000000000000000000000000000000000000000000000008152600401611d9e90614ea8565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16856000016020810190611dd2919061453f565b73ffffffffffffffffffffffffffffffffffffffff1603611e28576040517f37022838000000000000000000000000000000000000000000000000000000008152600401611e1f90614f14565b60405180910390fd5b6000856020013503611e6f576040517f37022838000000000000000000000000000000000000000000000000000000008152600401611e6690614f80565b60405180910390fd5b6001600d60008760a00135815260200190815260200160002060006101000a81548160ff021916908315150217905550509392505050565b60008103611eea576040517f37022838000000000000000000000000000000000000000000000000000000008152600401611ee190614fec565b60405180910390fd5b60008183611ef8919061500c565b9050803414611f3c576040517f37022838000000000000000000000000000000000000000000000000000000008152600401611f339061509a565b60405180910390fd5b611f468482612876565b50505050565b611f6682826040518060200160405280600081525061295e565b5050565b611f75838383612d1e565b505050565b6009600083815260200190815260200160002060008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661201b5780826040517f0878b106000000000000000000000000000000000000000000000000000000008152600401612012929190614c61565b60405180910390fd5b5050565b61202982826131d2565b612033828261329a565b5050565b8073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146120a95733816040517f4169c6220000000000000000000000000000000000000000000000000000000081526004016120a09291906150ba565b60405180910390fd5b6120b382826133a6565b5050565b6120d283838360405180602001604052806000815250611590565b505050565b6120e28160006133be565b50565b6120ed613f21565b6000829050806120fb611bc9565b1161233957600054811015612338576000600460008381526020019081526020016000206040518060600160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016000820160149054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200160008201601c9054906101000a900460ff1615151515815250509050806040015161233657600073ffffffffffffffffffffffffffffffffffffffff16816000015173ffffffffffffffffffffffffffffffffffffffff161461221a57809250505061236b565b5b60011561233557818060019003925050600460008381526020019081526020016000206040518060600160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016000820160149054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200160008201601c9054906101000a900460ff1615151515815250509050600073ffffffffffffffffffffffffffffffffffffffff16816000015173ffffffffffffffffffffffffffffffffffffffff161461233057809250505061236b565b61221b565b5b505b5b6040517fdf2d9b4200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b919050565b600061237f6000801b3361132a565b905090565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036123f557806040517f3df2b0dc0000000000000000000000000000000000000000000000000000000081526004016123ec9190614126565b60405180910390fd5b80600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff167f299d17e95023f496e0ffc4909cff1a61f74bb5eb18de6f900f4155bfa1b3b33360405160405180910390a250565b612484612700565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036124e8576040517fb06307db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80600760006124f5612700565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff166125a2612700565b73ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31836040516125e79190614018565b60405180910390a35050565b6125fe848484612d1e565b61261d8373ffffffffffffffffffffffffffffffffffffffff166137ad565b156126655761262e848484846137d0565b612664576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b50505050565b612688600a60008481526020019081526020016000205433611f7a565b61269282826133a6565b5050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b600033905090565b826006600084815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550818373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a4505050565b60607fb70e961a7da708f5392e1aaf231c1ee28cb869e664424e1df73a73decfc2a5968260000160208101906127f0919061453f565b83602001358460400135856060013586608001358760a0013560405160200161281f97969594939291906150e3565b6040516020818303038152906040529050919050565b6000612848612842613920565b83613a3a565b9050919050565b600080600061285e8585613a7b565b9150915061286b81613acc565b819250505092915050565b60008273ffffffffffffffffffffffffffffffffffffffff168260405161289c90615183565b60006040518083038185875af1925050503d80600081146128d9576040519150601f19603f3d011682016040523d82523d6000602084013e6128de565b606091505b5050905080612919576040517f8c5c290800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80612959576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612950906151e4565b60405180910390fd5b505050565b600080549050600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036129ca576040517f2e07630000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008303612a04576040517fb562e8dd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b612a116000858386613c32565b82600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160008282829054906101000a900467ffffffffffffffff160192506101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555082600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160088282829054906101000a900467ffffffffffffffff160192506101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550836004600083815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550426004600083815260200190815260200160002060000160146101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550600081905060008482019050612bd28673ffffffffffffffffffffffffffffffffffffffff166137ad565b15612c97575b818673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4612c4760008784806001019550876137d0565b612c7d576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b808210612bd8578260005414612c9257600080fd5b612d02565b5b818060010192508673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4808210612c98575b816000819055505050612d186000858386613c38565b50505050565b6000612d29826120e5565b90508373ffffffffffffffffffffffffffffffffffffffff16816000015173ffffffffffffffffffffffffffffffffffffffff1614612d94576040517fa114810000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008473ffffffffffffffffffffffffffffffffffffffff16612db5612700565b73ffffffffffffffffffffffffffffffffffffffff161480612de45750612de385612dde612700565b611901565b5b80612e295750612df2612700565b73ffffffffffffffffffffffffffffffffffffffff16612e11846109e3565b73ffffffffffffffffffffffffffffffffffffffff16145b905080612e62576040517f59c896be00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603612ec8576040517fea553b3400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b612ed58585856001613c32565b612ee160008487612708565b6001600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160008282829054906101000a900467ffffffffffffffff160392506101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506001600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160008282829054906101000a900467ffffffffffffffff160192506101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506000600460008581526020019081526020016000209050848160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550428160000160146101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555060006001850190506000600460008381526020019081526020016000209050600073ffffffffffffffffffffffffffffffffffffffff168160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff160361316057600054821461315f57878160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555084602001518160000160146101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055505b5b505050828473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46131cb8585856001613c38565b5050505050565b60016009600084815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055503373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000600b60008481526020019081526020016000206000015490506001600b600085815260200190815260200160002060000160008282546132dc919061486e565b9250508190555081600b6000858152602001908152602001600020600101600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600b600085815260200190815260200160002060020160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b6133b08282613c3e565b6133ba8282613d07565b5050565b60006133c9836120e5565b905060008160000151905082156134aa5760008173ffffffffffffffffffffffffffffffffffffffff166133fb612700565b73ffffffffffffffffffffffffffffffffffffffff16148061342a575061342982613424612700565b611901565b5b8061346f5750613438612700565b73ffffffffffffffffffffffffffffffffffffffff16613457866109e3565b73ffffffffffffffffffffffffffffffffffffffff16145b9050806134a8576040517f59c896be00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505b6134b8816000866001613c32565b6134c460008583612708565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905060018160000160008282829054906101000a900467ffffffffffffffff160392506101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555060018160000160108282829054906101000a900467ffffffffffffffff160192506101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506000600460008781526020019081526020016000209050828160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550428160000160146101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550600181600001601c6101000a81548160ff02191690831515021790555060006001870190506000600460008381526020019081526020016000209050600073ffffffffffffffffffffffffffffffffffffffff168160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff160361372757600054821461372657848160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555085602001518160000160146101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055505b5b5050505083600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4613795816000866001613c38565b60016000815480929190600101919050555050505050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b60008373ffffffffffffffffffffffffffffffffffffffff1663150b7a026137f6612700565b8786866040518563ffffffff1660e01b81526004016138189493929190615259565b6020604051808303816000875af192505050801561385457506040513d601f19601f8201168201806040525081019061385191906152ba565b60015b6138cd573d8060008114613884576040519150601f19603f3d011682016040523d82523d6000602084013e613889565b606091505b5060008151036138c5576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050949350505050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff1614801561399c57507f000000000000000000000000000000000000000000000000000000000000000046145b156139c9577f00000000000000000000000000000000000000000000000000000000000000009050613a37565b613a347f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000613e05565b90505b90565b60006040517f190100000000000000000000000000000000000000000000000000000000000081528360028201528260228201526042812091505092915050565b6000806041835103613abc5760008060006020860151925060408601519150606086015160001a9050613ab087828585613e3f565b94509450505050613ac5565b60006002915091505b9250929050565b60006004811115613ae057613adf6152e7565b5b816004811115613af357613af26152e7565b5b0315613c2f5760016004811115613b0d57613b0c6152e7565b5b816004811115613b2057613b1f6152e7565b5b03613b60576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613b5790615362565b60405180910390fd5b60026004811115613b7457613b736152e7565b5b816004811115613b8757613b866152e7565b5b03613bc7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613bbe906153ce565b60405180910390fd5b60036004811115613bdb57613bda6152e7565b5b816004811115613bee57613bed6152e7565b5b03613c2e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613c2590615460565b60405180910390fd5b5b50565b50505050565b50505050565b613c488282611f7a565b6009600083815260200190815260200160002060008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81549060ff02191690553373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b6000600b600084815260200190815260200160002060020160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050600b6000848152602001908152602001600020600101600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600b600084815260200190815260200160002060020160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009055505050565b60008383834630604051602001613e20959493929190615480565b6040516020818303038152906040528051906020012090509392505050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08360001c1115613e7a576000600391509150613f18565b600060018787878760405160008152602001604052604051613e9f94939291906154ef565b6020604051602081039080840390855afa158015613ec1573d6000803e3d6000fd5b505050602060405103519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603613f0f57600060019250925050613f18565b80600092509250505b94509492505050565b6040518060600160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600067ffffffffffffffff1681526020016000151581525090565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b613fad81613f78565b8114613fb857600080fd5b50565b600081359050613fca81613fa4565b92915050565b600060208284031215613fe657613fe5613f6e565b5b6000613ff484828501613fbb565b91505092915050565b60008115159050919050565b61401281613ffd565b82525050565b600060208201905061402d6000830184614009565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561406d578082015181840152602081019050614052565b60008484015250505050565b6000601f19601f8301169050919050565b600061409582614033565b61409f818561403e565b93506140af81856020860161404f565b6140b881614079565b840191505092915050565b600060208201905081810360008301526140dd818461408a565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000614110826140e5565b9050919050565b61412081614105565b82525050565b600060208201905061413b6000830184614117565b92915050565b6000819050919050565b61415481614141565b811461415f57600080fd5b50565b6000813590506141718161414b565b92915050565b60006020828403121561418d5761418c613f6e565b5b600061419b84828501614162565b91505092915050565b6141ad81614105565b81146141b857600080fd5b50565b6000813590506141ca816141a4565b92915050565b600080604083850312156141e7576141e6613f6e565b5b60006141f5858286016141bb565b925050602061420685828601614162565b9150509250929050565b61421981614141565b82525050565b60006020820190506142346000830184614210565b92915050565b600080fd5b600060c082840312156142555761425461423a565b5b81905092915050565b600080fd5b600080fd5b600080fd5b60008083601f8401126142835761428261425e565b5b8235905067ffffffffffffffff8111156142a05761429f614263565b5b6020830191508360018202830111156142bc576142bb614268565b5b9250929050565b600080600060e084860312156142dc576142db613f6e565b5b60006142ea8682870161423f565b93505060c084013567ffffffffffffffff81111561430b5761430a613f73565b5b6143178682870161426d565b92509250509250925092565b60008060006060848603121561433c5761433b613f6e565b5b600061434a868287016141bb565b935050602061435b868287016141bb565b925050604061436c86828701614162565b9150509250925092565b6000819050919050565b61438981614376565b811461439457600080fd5b50565b6000813590506143a681614380565b92915050565b6000602082840312156143c2576143c1613f6e565b5b60006143d084828501614397565b91505092915050565b6143e281614376565b82525050565b60006020820190506143fd60008301846143d9565b92915050565b60008083601f8401126144195761441861425e565b5b8235905067ffffffffffffffff81111561443657614435614263565b5b60208301915083600182028301111561445257614451614268565b5b9250929050565b600080602083850312156144705761446f613f6e565b5b600083013567ffffffffffffffff81111561448e5761448d613f73565b5b61449a85828601614403565b92509250509250929050565b600080604083850312156144bd576144bc613f6e565b5b60006144cb85828601614397565b92505060206144dc858286016141bb565b9150509250929050565b6144ef81613ffd565b81146144fa57600080fd5b50565b60008135905061450c816144e6565b92915050565b60006020828403121561452857614527613f6e565b5b6000614536848285016144fd565b91505092915050565b60006020828403121561455557614554613f6e565b5b6000614563848285016141bb565b91505092915050565b6000806040838503121561458357614582613f6e565b5b600061459185828601614397565b92505060206145a285828601614162565b9150509250929050565b600080604083850312156145c3576145c2613f6e565b5b60006145d1858286016141bb565b92505060206145e2858286016144fd565b9150509250929050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61462982614079565b810181811067ffffffffffffffff82111715614648576146476145f1565b5b80604052505050565b600061465b613f64565b90506146678282614620565b919050565b600067ffffffffffffffff821115614687576146866145f1565b5b61469082614079565b9050602081019050919050565b82818337600083830152505050565b60006146bf6146ba8461466c565b614651565b9050828152602081018484840111156146db576146da6145ec565b5b6146e684828561469d565b509392505050565b600082601f8301126147035761470261425e565b5b81356147138482602086016146ac565b91505092915050565b6000806000806080858703121561473657614735613f6e565b5b6000614744878288016141bb565b9450506020614755878288016141bb565b935050604061476687828801614162565b925050606085013567ffffffffffffffff81111561478757614786613f73565b5b614793878288016146ee565b91505092959194509250565b600080604083850312156147b6576147b5613f6e565b5b60006147c4858286016141bb565b92505060206147d5858286016141bb565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061482657607f821691505b602082108103614839576148386147df565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061487982614141565b915061488483614141565b925082820190508082111561489c5761489b61483f565b5b92915050565b60006148b160208401846141bb565b905092915050565b6148c281614105565b82525050565b60006148d76020840184614162565b905092915050565b6148e881614141565b82525050565b60006148fd6020840184614397565b905092915050565b61490e81614376565b82525050565b60c0820161492560008301836148a2565b61493260008501826148b9565b5061494060208301836148c8565b61494d60208501826148df565b5061495b60408301836148c8565b61496860408501826148df565b5061497660608301836148c8565b61498360608501826148df565b5061499160808301836148c8565b61499e60808501826148df565b506149ac60a08301836148ee565b6149b960a0850182614905565b50505050565b600060c0820190506149d46000830184614914565b92915050565b600082905092915050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302614a477fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82614a0a565b614a518683614a0a565b95508019841693508086168417925050509392505050565b6000819050919050565b6000614a8e614a89614a8484614141565b614a69565b614141565b9050919050565b6000819050919050565b614aa883614a73565b614abc614ab482614a95565b848454614a17565b825550505050565b600090565b614ad1614ac4565b614adc818484614a9f565b505050565b5b81811015614b0057614af5600082614ac9565b600181019050614ae2565b5050565b601f821115614b4557614b16816149e5565b614b1f846149fa565b81016020851015614b2e578190505b614b42614b3a856149fa565b830182614ae1565b50505b505050565b600082821c905092915050565b6000614b6860001984600802614b4a565b1980831691505092915050565b6000614b818383614b57565b9150826002028217905092915050565b614b9b83836149da565b67ffffffffffffffff811115614bb457614bb36145f1565b5b614bbe825461480e565b614bc9828285614b04565b6000601f831160018114614bf85760008415614be6578287013590505b614bf08582614b75565b865550614c58565b601f198416614c06866149e5565b60005b82811015614c2e57848901358255600182019150602085019450602081019050614c09565b86831015614c4b5784890135614c47601f891682614b57565b8355505b6001600288020188555050505b50505050505050565b6000604082019050614c766000830185614117565b614c8360208301846143d9565b9392505050565b600081519050614c998161414b565b92915050565b600060208284031215614cb557614cb4613f6e565b5b6000614cc384828501614c8a565b91505092915050565b7f4552433732314d657461646174613a2055524920717565727920666f72206e6f60008201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000602082015250565b6000614d28602f8361403e565b9150614d3382614ccc565b604082019050919050565b60006020820190508181036000830152614d5781614d1b565b9050919050565b7f416c7265616479204d696e746564206f72207369676e657220646f65736e277460008201527f20686173206d696e74657220726f6c6500000000000000000000000000000000602082015250565b6000614dba60308361403e565b9150614dc582614d5e565b604082019050919050565b60006020820190508181036000830152614de981614dad565b9050919050565b7f496e76616c696420526563697069656e74000000000000000000000000000000600082015250565b6000614e2660118361403e565b9150614e3182614df0565b602082019050919050565b60006020820190508181036000830152614e5581614e19565b9050919050565b7f5265712065787069726564000000000000000000000000000000000000000000600082015250565b6000614e92600b8361403e565b9150614e9d82614e5c565b602082019050919050565b60006020820190508181036000830152614ec181614e85565b9050919050565b7f726563697069656e7420756e646566696e656400000000000000000000000000600082015250565b6000614efe60138361403e565b9150614f0982614ec8565b602082019050919050565b60006020820190508181036000830152614f2d81614ef1565b9050919050565b7f3020717479000000000000000000000000000000000000000000000000000000600082015250565b6000614f6a60058361403e565b9150614f7582614f34565b602082019050919050565b60006020820190508181036000830152614f9981614f5d565b9050919050565b7f496e76616c69642070726963652070657220746f6b656e000000000000000000600082015250565b6000614fd660178361403e565b9150614fe182614fa0565b602082019050919050565b6000602082019050818103600083015261500581614fc9565b9050919050565b600061501782614141565b915061502283614141565b925082820261503081614141565b915082820484148315176150475761504661483f565b5b5092915050565b7f496e76616c6964206d73672076616c7565000000000000000000000000000000600082015250565b600061508460118361403e565b915061508f8261504e565b602082019050919050565b600060208201905081810360008301526150b381615077565b9050919050565b60006040820190506150cf6000830185614117565b6150dc6020830184614117565b9392505050565b600060e0820190506150f8600083018a6143d9565b6151056020830189614117565b6151126040830188614210565b61511f6060830187614210565b61512c6080830186614210565b61513960a0830185614210565b61514660c08301846143d9565b98975050505050505050565b600081905092915050565b50565b600061516d600083615152565b91506151788261515d565b600082019050919050565b600061518e82615160565b9150819050919050565b7f6e617469766520746f6b656e207472616e73666572206661696c656400000000600082015250565b60006151ce601c8361403e565b91506151d982615198565b602082019050919050565b600060208201905081810360008301526151fd816151c1565b9050919050565b600081519050919050565b600082825260208201905092915050565b600061522b82615204565b615235818561520f565b935061524581856020860161404f565b61524e81614079565b840191505092915050565b600060808201905061526e6000830187614117565b61527b6020830186614117565b6152886040830185614210565b818103606083015261529a8184615220565b905095945050505050565b6000815190506152b481613fa4565b92915050565b6000602082840312156152d0576152cf613f6e565b5b60006152de848285016152a5565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f45434453413a20696e76616c6964207369676e61747572650000000000000000600082015250565b600061534c60188361403e565b915061535782615316565b602082019050919050565b6000602082019050818103600083015261537b8161533f565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265206c656e67746800600082015250565b60006153b8601f8361403e565b91506153c382615382565b602082019050919050565b600060208201905081810360008301526153e7816153ab565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265202773272076616c60008201527f7565000000000000000000000000000000000000000000000000000000000000602082015250565b600061544a60228361403e565b9150615455826153ee565b604082019050919050565b600060208201905081810360008301526154798161543d565b9050919050565b600060a08201905061549560008301886143d9565b6154a260208301876143d9565b6154af60408301866143d9565b6154bc6060830185614210565b6154c96080830184614117565b9695505050505050565b600060ff82169050919050565b6154e9816154d3565b82525050565b600060808201905061550460008301876143d9565b61551160208301866154e0565b61551e60408301856143d9565b61552b60608301846143d9565b9594505050505056fea26469706673582212202bcbd0911aa6d5877f92dac988d0d7e26856ceadb3a0ca54c6b5bddd7f724ec364736f6c63430008140033000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000e8dfc01826fb21c77910fb9a964f721b748de5500000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000011546573746e657442797468656e43686970000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d746573746e657462797468656e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000035697066733a2f2f516d53386a35663631334b31714b5155355a353565776238576a5945414d4673757154744762435a6b564c3461520000000000000000000000