6101406040526000600e60006101000a81548160ff021916908315150217905550610760600f553480156200003357600080fd5b50604051620061f5380380620061f5833981810160405281019062000059919062000805565b836040518060400160405280600581526020017f312e302e3000000000000000000000000000000000000000000000000000000081525085858160029081620000a3919062000b1f565b508060039081620000b5919062000b1f565b50620000c66200026760201b60201c565b600081905550505060008280519060200120905060008280519060200120905060007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f90508260e081815250508161010081815250504660a08181525050620001378184846200026c60201b60201c565b608081815250503073ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff168152505080610120818152505050505050506001600881905550620001ac6000801b620001a0620002a860201b60201c565b620002b060201b60201c565b620001ed7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6620001e1620002a860201b60201c565b620002b060201b60201c565b620002056000801b6000801b620002d860201b60201c565b6200023a7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a66000801b620002d860201b60201c565b6200024b826200033c60201b60201c565b80601090816200025c919062000b1f565b505050505062000d27565b600090565b600083838346306040516020016200028995949392919062000c43565b6040516020818303038152906040528051906020012090509392505050565b600033905090565b620002c282826200043760201b60201c565b620002d48282620004ff60201b60201c565b5050565b6000600a600084815260200190815260200160002054905081600a6000858152602001908152602001600020819055508181847fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff60405160405180910390a4505050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603620003b057806040517f3df2b0dc000000000000000000000000000000000000000000000000000000008152600401620003a7919062000ca0565b60405180910390fd5b80600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff167f299d17e95023f496e0ffc4909cff1a61f74bb5eb18de6f900f4155bfa1b3b33360405160405180910390a250565b60016009600084815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055503373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000600b60008481526020019081526020016000206000015490506001600b6000858152602001908152602001600020600001600082825462000543919062000cec565b9250508190555081600b6000858152602001908152602001600020600101600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600b600085815260200190815260200160002060020160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b62000676826200062b565b810181811067ffffffffffffffff821117156200069857620006976200063c565b5b80604052505050565b6000620006ad6200060d565b9050620006bb82826200066b565b919050565b600067ffffffffffffffff821115620006de57620006dd6200063c565b5b620006e9826200062b565b9050602081019050919050565b60005b8381101562000716578082015181840152602081019050620006f9565b60008484015250505050565b6000620007396200073384620006c0565b620006a1565b90508281526020810184848401111562000758576200075762000626565b5b62000765848285620006f6565b509392505050565b600082601f83011262000785576200078462000621565b5b81516200079784826020860162000722565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620007cd82620007a0565b9050919050565b620007df81620007c0565b8114620007eb57600080fd5b50565b600081519050620007ff81620007d4565b92915050565b6000806000806080858703121562000822576200082162000617565b5b600085015167ffffffffffffffff8111156200084357620008426200061c565b5b62000851878288016200076d565b945050602085015167ffffffffffffffff8111156200087557620008746200061c565b5b62000883878288016200076d565b93505060406200089687828801620007ee565b925050606085015167ffffffffffffffff811115620008ba57620008b96200061c565b5b620008c8878288016200076d565b91505092959194509250565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200092757607f821691505b6020821081036200093d576200093c620008df565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620009a77fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000968565b620009b3868362000968565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b600062000a00620009fa620009f484620009cb565b620009d5565b620009cb565b9050919050565b6000819050919050565b62000a1c83620009df565b62000a3462000a2b8262000a07565b84845462000975565b825550505050565b600090565b62000a4b62000a3c565b62000a5881848462000a11565b505050565b5b8181101562000a805762000a7460008262000a41565b60018101905062000a5e565b5050565b601f82111562000acf5762000a998162000943565b62000aa48462000958565b8101602085101562000ab4578190505b62000acc62000ac38562000958565b83018262000a5d565b50505b505050565b600082821c905092915050565b600062000af46000198460080262000ad4565b1980831691505092915050565b600062000b0f838362000ae1565b9150826002028217905092915050565b62000b2a82620008d4565b67ffffffffffffffff81111562000b465762000b456200063c565b5b62000b5282546200090e565b62000b5f82828562000a84565b600060209050601f83116001811462000b97576000841562000b82578287015190505b62000b8e858262000b01565b86555062000bfe565b601f19841662000ba78662000943565b60005b8281101562000bd15784890151825560018201915060208501945060208101905062000baa565b8683101562000bf1578489015162000bed601f89168262000ae1565b8355505b6001600288020188555050505b505050505050565b6000819050919050565b62000c1b8162000c06565b82525050565b62000c2c81620009cb565b82525050565b62000c3d81620007c0565b82525050565b600060a08201905062000c5a600083018862000c10565b62000c69602083018762000c10565b62000c78604083018662000c10565b62000c87606083018562000c21565b62000c96608083018462000c32565b9695505050505050565b600060208201905062000cb7600083018462000c32565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000cf982620009cb565b915062000d0683620009cb565b925082820190508082111562000d215762000d2062000cbd565b5b92915050565b60805160a05160c05160e051610100516101205161547e62000d77600039600061394e015260006139900152600061396f015260006138a4015260006138fa01526000613923015261547e6000f3fe60806040526004361061021a5760003560e01c80636352211e11610123578063a22cb465116100ab578063ca15c8731161006f578063ca15c8731461081e578063d39e8af81461085b578063d539139314610884578063d547741f146108af578063e985e9c5146108d85761021a565b8063a22cb46514610715578063a2be6bd21461073e578063a32fa5b31461077b578063b88d4fde146107b8578063c87b56dd146107e15761021a565b80639010d07c116100f25780639010d07c1461061a57806391d148541461065757806395d89b41146106945780639abcd7c2146106bf578063a217fddf146106ea5761021a565b80636352211e1461054e5780636a6278421461058b5780636f4f2837146105b457806370a08231146105dd5761021a565b80632639f460116101a657806336568abe1161017557806336568abe1461047f5780633b1475a7146104a85780633f3e4c11146104d357806342842e0e146104fc57806342966c68146105255761021a565b80632639f460146103d95780632ab4d052146104025780632f2ff15d1461042d57806335dff9ba146104565761021a565b8063095ea7b3116101ed578063095ea7b3146102ef57806318160ddd146103185780631a23a7eb1461034357806323b872dd14610373578063248a9ca31461039c5761021a565b806301ffc9a71461021f57806306fdde031461025c578063079fe40e14610287578063081812fc146102b2575b600080fd5b34801561022b57600080fd5b5061024660048036038101906102419190613f50565b610915565b6040516102539190613f98565b60405180910390f35b34801561026857600080fd5b50610271610927565b60405161027e9190614043565b60405180910390f35b34801561029357600080fd5b5061029c6109b9565b6040516102a991906140a6565b60405180910390f35b3480156102be57600080fd5b506102d960048036038101906102d491906140f7565b6109e3565b6040516102e691906140a6565b60405180910390f35b3480156102fb57600080fd5b5061031660048036038101906103119190614150565b610a5f565b005b34801561032457600080fd5b5061032d610ab3565b60405161033a919061419f565b60405180910390f35b61035d60048036038101906103589190614243565b610aca565b60405161036a91906140a6565b60405180910390f35b34801561037f57600080fd5b5061039a600480360381019061039591906142a3565b610be5565b005b3480156103a857600080fd5b506103c360048036038101906103be919061432c565b610c3b565b6040516103d09190614368565b60405180910390f35b3480156103e557600080fd5b5061040060048036038101906103fb91906143d9565b610c58565b005b34801561040e57600080fd5b50610417610c7d565b604051610424919061419f565b60405180910390f35b34801561043957600080fd5b50610454600480360381019061044f9190614426565b610c83565b005b34801561046257600080fd5b5061047d60048036038101906104789190614492565b610d50565b005b34801561048b57600080fd5b506104a660048036038101906104a19190614426565b610d7c565b005b3480156104b457600080fd5b506104bd610e4d565b6040516104ca919061419f565b60405180910390f35b3480156104df57600080fd5b506104fa60048036038101906104f591906140f7565b610e56565b005b34801561050857600080fd5b50610523600480360381019061051e91906142a3565b610e6f565b005b34801561053157600080fd5b5061054c600480360381019061054791906140f7565b610ec5565b005b34801561055a57600080fd5b50610575600480360381019061057091906140f7565b610f70565b60405161058291906140a6565b60405180910390f35b34801561059757600080fd5b506105b260048036038101906105ad91906144bf565b610f86565b005b3480156105c057600080fd5b506105db60048036038101906105d691906144bf565b611060565b005b3480156105e957600080fd5b5061060460048036038101906105ff91906144bf565b6110aa565b604051610611919061419f565b60405180910390f35b34801561062657600080fd5b50610641600480360381019061063c91906144ec565b611179565b60405161064e91906140a6565b60405180910390f35b34801561066357600080fd5b5061067e60048036038101906106799190614426565b61132a565b60405161068b9190613f98565b60405180910390f35b3480156106a057600080fd5b506106a9611392565b6040516106b69190614043565b60405180910390f35b3480156106cb57600080fd5b506106d4611424565b6040516106e19190613f98565b60405180910390f35b3480156106f657600080fd5b506106ff611437565b60405161070c9190614368565b60405180910390f35b34801561072157600080fd5b5061073c6004803603810190610737919061452c565b61143e565b005b34801561074a57600080fd5b506107656004803603810190610760919061432c565b611492565b6040516107729190613f98565b60405180910390f35b34801561078757600080fd5b506107a2600480360381019061079d9190614426565b6114bc565b6040516107af9190613f98565b60405180910390f35b3480156107c457600080fd5b506107df60048036038101906107da919061469c565b611590565b005b3480156107ed57600080fd5b50610808600480360381019061080391906140f7565b6115e8565b6040516108159190614043565b60405180910390f35b34801561082a57600080fd5b506108456004803603810190610840919061432c565b6116c4565b604051610852919061419f565b60405180910390f35b34801561086757600080fd5b50610882600480360381019061087d919061432c565b6117b1565b005b34801561089057600080fd5b5061089961180c565b6040516108a69190614368565b60405180910390f35b3480156108bb57600080fd5b506108d660048036038101906108d19190614426565b611830565b005b3480156108e457600080fd5b506108ff60048036038101906108fa919061471f565b611901565b60405161090c9190613f98565b60405180910390f35b600061092082611995565b9050919050565b6060600280546109369061478e565b80601f01602080910402602001604051908101604052809291908181526020018280546109629061478e565b80156109af5780601f10610984576101008083540402835291602001916109af565b820191906000526020600020905b81548152906001019060200180831161099257829003601f168201915b5050505050905090565b6000600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60006109ee82611a77565b610a24576040517fcf4700e400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6006600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600e60009054906101000a900460ff16610aa5576040517f7087ed7f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610aaf8282611ac5565b5050565b6000610abd611bc9565b6001546000540303905090565b6000600f548460200135610adc610ab3565b610ae691906147ee565b1115610b1e576040517ffb88d21500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000610b28610e4d565b9050610b35858585611bce565b91506000856000016020810190610b4c91906144bf565b9050610b68610b596109b9565b87602001358860400135611e27565b610b76818760200135611ecc565b818173ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fbb30f850affc4106b21aa99ef28533a2f3ef9c2ee4abbded1fb71b032db573f389604051610bd4919061493f565b60405180910390a450509392505050565b600e60009054906101000a900460ff16610c2b576040517f7087ed7f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610c36838383611eea565b505050565b6000600a6000838152602001908152602001600020549050919050565b6000801b610c668133611efa565b828260109182610c77929190614b11565b50505050565b600f5481565b610ca0600a60008481526020019081526020016000205433611efa565b6009600083815260200190815260200160002060008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615610d425780826040517fd49c166a000000000000000000000000000000000000000000000000000000008152600401610d39929190614be1565b60405180910390fd5b610d4c8282611f9f565b5050565b6000801b610d5e8133611efa565b81600e60006101000a81548160ff0219169083151502179055505050565b610d868282611fb7565b6000801b82148015610e12575060003073ffffffffffffffffffffffffffffffffffffffff1663ca15c873846040518263ffffffff1660e01b8152600401610dce9190614368565b602060405180830381865afa158015610deb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e0f9190614c1f565b11155b15610e49576040517fafb5025600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050565b60008054905090565b6000801b610e648133611efa565b81600f819055505050565b600e60009054906101000a900460ff16610eb5576040517f7087ed7f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610ec0838383612037565b505050565b600e60009054906101000a900460ff16610f0b576040517f7087ed7f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6610f368133611efa565b610f3f82612057565b817f06e860b9ad1db968f3fa36dba43eeb07f1a10537f916df055fcca7dd93ecbf0c60405160405180910390a25050565b6000610f7b82612065565b600001519050919050565b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6610fb18133611efa565b600f546001610fbe610ab3565b610fc891906147ee565b1115611000576040517ffb88d21500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061100a610e4d565b9050611017836001611ecc565b808373ffffffffffffffffffffffffffffffffffffffff167f50d5e15fad5d417e23950a1a6b5b018dafb68f36dec91f46ca9e4e8f294010da60405160405180910390a3505050565b6110686122f0565b61109e576040517f7260843c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6110a781612304565b50565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611111576040517f8f4eb60400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900467ffffffffffffffff1667ffffffffffffffff169050919050565b600080600b6000858152602001908152602001600020600001549050600080600090505b8281101561132057600073ffffffffffffffffffffffffffffffffffffffff16600b6000888152602001908152602001600020600101600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461128d5784820361127957600b6000878152602001908152602001600020600101600082815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169350505050611324565b60018261128691906147ee565b915061130c565b61129886600061132a565b80156112f65750600b600087815260200190815260200160002060020160008073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205481145b1561130b5760018261130891906147ee565b91505b5b60018161131991906147ee565b905061119d565b5050505b92915050565b60006009600084815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6060600380546113a19061478e565b80601f01602080910402602001604051908101604052809291908181526020018280546113cd9061478e565b801561141a5780601f106113ef5761010080835404028352916020019161141a565b820191906000526020600020905b8154815290600101906020018083116113fd57829003601f168201915b5050505050905090565b600e60009054906101000a900460ff1681565b6000801b81565b600e60009054906101000a900460ff16611484576040517f7087ed7f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61148e82826123fc565b5050565b6000600d600083815260200190815260200160002060009054906101000a900460ff169050919050565b60006009600084815260200190815260200160002060008073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16611585576009600084815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905061158a565b600190505b92915050565b600e60009054906101000a900460ff166115d6576040517f7087ed7f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6115e284848484612573565b50505050565b60606115f382611a77565b611632576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161162990614cbe565b60405180910390fd5b6010805461163f9061478e565b80601f016020809104026020016040519081016040528092919081815260200182805461166b9061478e565b80156116b85780601f1061168d576101008083540402835291602001916116b8565b820191906000526020600020905b81548152906001019060200180831161169b57829003601f168201915b50505050509050919050565b600080600b600084815260200190815260200160002060000154905060005b8181101561178a57600073ffffffffffffffffffffffffffffffffffffffff16600b6000868152602001908152602001600020600101600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146117765760018361177391906147ee565b92505b60018161178391906147ee565b90506116e3565b5061179683600061132a565b156117ab576001826117a891906147ee565b91505b50919050565b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a66117dc8133611efa565b6000600d600084815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a681565b61183a82826125eb565b6000801b821480156118c6575060003073ffffffffffffffffffffffffffffffffffffffff1663ca15c873846040518263ffffffff1660e01b81526004016118829190614368565b602060405180830381865afa15801561189f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118c39190614c1f565b11155b156118fd576040517fafb5025600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480611a6057507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80611a705750611a6f82612616565b5b9050919050565b600081611a82611bc9565b11158015611a91575060005482105b8015611abe575060046000838152602001908152602001600020600001601c9054906101000a900460ff16155b9050919050565b6000611ad082610f70565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611b37576040517f943f7b8c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16611b56612680565b73ffffffffffffffffffffffffffffffffffffffff1614611bb957611b8281611b7d612680565b611901565b611bb8576040517fcfb3b94200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b611bc4838383612688565b505050565b600090565b600080611c36611bec611be08761273a565b805190602001206127b5565b85858080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050506127cf565b9150600d60008660a00135815260200190815260200160002060009054906101000a900460ff16158015611c905750611c8f7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68361132a565b5b905080611cd2576040517f37022838000000000000000000000000000000000000000000000000000000008152600401611cc990614d50565b60405180910390fd5b4285606001351180611ce75750846080013542115b15611d27576040517f37022838000000000000000000000000000000000000000000000000000000008152600401611d1e90614dbc565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16856000016020810190611d5291906144bf565b73ffffffffffffffffffffffffffffffffffffffff1603611da8576040517f37022838000000000000000000000000000000000000000000000000000000008152600401611d9f90614e28565b60405180910390fd5b6000856020013503611def576040517f37022838000000000000000000000000000000000000000000000000000000008152600401611de690614e94565b60405180910390fd5b6001600d60008760a00135815260200190815260200160002060006101000a81548160ff021916908315150217905550509392505050565b60008103611e6a576040517f37022838000000000000000000000000000000000000000000000000000000008152600401611e6190614f00565b60405180910390fd5b60008183611e789190614f20565b9050803414611ebc576040517f37022838000000000000000000000000000000000000000000000000000000008152600401611eb390614fae565b60405180910390fd5b611ec684826127f6565b50505050565b611ee68282604051806020016040528060008152506128de565b5050565b611ef5838383612c9e565b505050565b6009600083815260200190815260200160002060008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16611f9b5780826040517f0878b106000000000000000000000000000000000000000000000000000000008152600401611f92929190614be1565b60405180910390fd5b5050565b611fa98282613152565b611fb3828261321a565b5050565b8073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146120295733816040517f4169c622000000000000000000000000000000000000000000000000000000008152600401612020929190614fce565b60405180910390fd5b6120338282613326565b5050565b61205283838360405180602001604052806000815250611590565b505050565b61206281600061333e565b50565b61206d613ea1565b60008290508061207b611bc9565b116122b9576000548110156122b8576000600460008381526020019081526020016000206040518060600160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016000820160149054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200160008201601c9054906101000a900460ff161515151581525050905080604001516122b657600073ffffffffffffffffffffffffffffffffffffffff16816000015173ffffffffffffffffffffffffffffffffffffffff161461219a5780925050506122eb565b5b6001156122b557818060019003925050600460008381526020019081526020016000206040518060600160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016000820160149054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200160008201601c9054906101000a900460ff1615151515815250509050600073ffffffffffffffffffffffffffffffffffffffff16816000015173ffffffffffffffffffffffffffffffffffffffff16146122b05780925050506122eb565b61219b565b5b505b5b6040517fdf2d9b4200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b919050565b60006122ff6000801b3361132a565b905090565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361237557806040517f3df2b0dc00000000000000000000000000000000000000000000000000000000815260040161236c91906140a6565b60405180910390fd5b80600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff167f299d17e95023f496e0ffc4909cff1a61f74bb5eb18de6f900f4155bfa1b3b33360405160405180910390a250565b612404612680565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612468576040517fb06307db00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8060076000612475612680565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff16612522612680565b73ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31836040516125679190613f98565b60405180910390a35050565b61257e848484612c9e565b61259d8373ffffffffffffffffffffffffffffffffffffffff1661372d565b156125e5576125ae84848484613750565b6125e4576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5b50505050565b612608600a60008481526020019081526020016000205433611efa565b6126128282613326565b5050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b600033905090565b826006600084815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550818373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a4505050565b60607fb70e961a7da708f5392e1aaf231c1ee28cb869e664424e1df73a73decfc2a59682600001602081019061277091906144bf565b83602001358460400135856060013586608001358760a0013560405160200161279f9796959493929190614ff7565b6040516020818303038152906040529050919050565b60006127c86127c26138a0565b836139ba565b9050919050565b60008060006127de85856139fb565b915091506127eb81613a4c565b819250505092915050565b60008273ffffffffffffffffffffffffffffffffffffffff168260405161281c90615097565b60006040518083038185875af1925050503d8060008114612859576040519150601f19603f3d011682016040523d82523d6000602084013e61285e565b606091505b5050905080612899576040517f8c5c290800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b806128d9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128d0906150f8565b60405180910390fd5b505050565b600080549050600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff160361294a576040517f2e07630000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008303612984576040517fb562e8dd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6129916000858386613bb2565b82600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160008282829054906101000a900467ffffffffffffffff160192506101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555082600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160088282829054906101000a900467ffffffffffffffff160192506101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550836004600083815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550426004600083815260200190815260200160002060000160146101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550600081905060008482019050612b528673ffffffffffffffffffffffffffffffffffffffff1661372d565b15612c17575b818673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4612bc76000878480600101955087613750565b612bfd576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b808210612b58578260005414612c1257600080fd5b612c82565b5b818060010192508673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4808210612c18575b816000819055505050612c986000858386613bb8565b50505050565b6000612ca982612065565b90508373ffffffffffffffffffffffffffffffffffffffff16816000015173ffffffffffffffffffffffffffffffffffffffff1614612d14576040517fa114810000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008473ffffffffffffffffffffffffffffffffffffffff16612d35612680565b73ffffffffffffffffffffffffffffffffffffffff161480612d645750612d6385612d5e612680565b611901565b5b80612da95750612d72612680565b73ffffffffffffffffffffffffffffffffffffffff16612d91846109e3565b73ffffffffffffffffffffffffffffffffffffffff16145b905080612de2576040517f59c896be00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603612e48576040517fea553b3400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b612e558585856001613bb2565b612e6160008487612688565b6001600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160008282829054906101000a900467ffffffffffffffff160392506101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506001600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160008282829054906101000a900467ffffffffffffffff160192506101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506000600460008581526020019081526020016000209050848160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550428160000160146101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555060006001850190506000600460008381526020019081526020016000209050600073ffffffffffffffffffffffffffffffffffffffff168160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16036130e05760005482146130df57878160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555084602001518160000160146101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055505b5b505050828473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a461314b8585856001613bb8565b5050505050565b60016009600084815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055503373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000600b60008481526020019081526020016000206000015490506001600b6000858152602001908152602001600020600001600082825461325c91906147ee565b9250508190555081600b6000858152602001908152602001600020600101600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600b600085815260200190815260200160002060020160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b6133308282613bbe565b61333a8282613c87565b5050565b600061334983612065565b9050600081600001519050821561342a5760008173ffffffffffffffffffffffffffffffffffffffff1661337b612680565b73ffffffffffffffffffffffffffffffffffffffff1614806133aa57506133a9826133a4612680565b611901565b5b806133ef57506133b8612680565b73ffffffffffffffffffffffffffffffffffffffff166133d7866109e3565b73ffffffffffffffffffffffffffffffffffffffff16145b905080613428576040517f59c896be00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505b613438816000866001613bb2565b61344460008583612688565b6000600560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905060018160000160008282829054906101000a900467ffffffffffffffff160392506101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555060018160000160108282829054906101000a900467ffffffffffffffff160192506101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506000600460008781526020019081526020016000209050828160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550428160000160146101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550600181600001601c6101000a81548160ff02191690831515021790555060006001870190506000600460008381526020019081526020016000209050600073ffffffffffffffffffffffffffffffffffffffff168160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16036136a75760005482146136a657848160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555085602001518160000160146101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055505b5b5050505083600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4613715816000866001613bb8565b60016000815480929190600101919050555050505050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b60008373ffffffffffffffffffffffffffffffffffffffff1663150b7a02613776612680565b8786866040518563ffffffff1660e01b8152600401613798949392919061516d565b6020604051808303816000875af19250505080156137d457506040513d601f19601f820116820180604052508101906137d191906151ce565b60015b61384d573d8060008114613804576040519150601f19603f3d011682016040523d82523d6000602084013e613809565b606091505b506000815103613845576040517fd1a57ed600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050949350505050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff1614801561391c57507f000000000000000000000000000000000000000000000000000000000000000046145b15613949577f000000000000000000000000000000000000000000000000000000000000000090506139b7565b6139b47f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000613d85565b90505b90565b60006040517f190100000000000000000000000000000000000000000000000000000000000081528360028201528260228201526042812091505092915050565b6000806041835103613a3c5760008060006020860151925060408601519150606086015160001a9050613a3087828585613dbf565b94509450505050613a45565b60006002915091505b9250929050565b60006004811115613a6057613a5f6151fb565b5b816004811115613a7357613a726151fb565b5b0315613baf5760016004811115613a8d57613a8c6151fb565b5b816004811115613aa057613a9f6151fb565b5b03613ae0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613ad790615276565b60405180910390fd5b60026004811115613af457613af36151fb565b5b816004811115613b0757613b066151fb565b5b03613b47576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613b3e906152e2565b60405180910390fd5b60036004811115613b5b57613b5a6151fb565b5b816004811115613b6e57613b6d6151fb565b5b03613bae576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613ba590615374565b60405180910390fd5b5b50565b50505050565b50505050565b613bc88282611efa565b6009600083815260200190815260200160002060008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81549060ff02191690553373ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b60405160405180910390a45050565b6000600b600084815260200190815260200160002060020160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050600b6000848152602001908152602001600020600101600082815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600b600084815260200190815260200160002060020160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009055505050565b60008383834630604051602001613da0959493929190615394565b6040516020818303038152906040528051906020012090509392505050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08360001c1115613dfa576000600391509150613e98565b600060018787878760405160008152602001604052604051613e1f9493929190615403565b6020604051602081039080840390855afa158015613e41573d6000803e3d6000fd5b505050602060405103519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603613e8f57600060019250925050613e98565b80600092509250505b94509492505050565b6040518060600160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600067ffffffffffffffff1681526020016000151581525090565b6000604051905090565b600080fd5b600080fd5b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b613f2d81613ef8565b8114613f3857600080fd5b50565b600081359050613f4a81613f24565b92915050565b600060208284031215613f6657613f65613eee565b5b6000613f7484828501613f3b565b91505092915050565b60008115159050919050565b613f9281613f7d565b82525050565b6000602082019050613fad6000830184613f89565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015613fed578082015181840152602081019050613fd2565b60008484015250505050565b6000601f19601f8301169050919050565b600061401582613fb3565b61401f8185613fbe565b935061402f818560208601613fcf565b61403881613ff9565b840191505092915050565b6000602082019050818103600083015261405d818461400a565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061409082614065565b9050919050565b6140a081614085565b82525050565b60006020820190506140bb6000830184614097565b92915050565b6000819050919050565b6140d4816140c1565b81146140df57600080fd5b50565b6000813590506140f1816140cb565b92915050565b60006020828403121561410d5761410c613eee565b5b600061411b848285016140e2565b91505092915050565b61412d81614085565b811461413857600080fd5b50565b60008135905061414a81614124565b92915050565b6000806040838503121561416757614166613eee565b5b60006141758582860161413b565b9250506020614186858286016140e2565b9150509250929050565b614199816140c1565b82525050565b60006020820190506141b46000830184614190565b92915050565b600080fd5b600060c082840312156141d5576141d46141ba565b5b81905092915050565b600080fd5b600080fd5b600080fd5b60008083601f840112614203576142026141de565b5b8235905067ffffffffffffffff8111156142205761421f6141e3565b5b60208301915083600182028301111561423c5761423b6141e8565b5b9250929050565b600080600060e0848603121561425c5761425b613eee565b5b600061426a868287016141bf565b93505060c084013567ffffffffffffffff81111561428b5761428a613ef3565b5b614297868287016141ed565b92509250509250925092565b6000806000606084860312156142bc576142bb613eee565b5b60006142ca8682870161413b565b93505060206142db8682870161413b565b92505060406142ec868287016140e2565b9150509250925092565b6000819050919050565b614309816142f6565b811461431457600080fd5b50565b60008135905061432681614300565b92915050565b60006020828403121561434257614341613eee565b5b600061435084828501614317565b91505092915050565b614362816142f6565b82525050565b600060208201905061437d6000830184614359565b92915050565b60008083601f840112614399576143986141de565b5b8235905067ffffffffffffffff8111156143b6576143b56141e3565b5b6020830191508360018202830111156143d2576143d16141e8565b5b9250929050565b600080602083850312156143f0576143ef613eee565b5b600083013567ffffffffffffffff81111561440e5761440d613ef3565b5b61441a85828601614383565b92509250509250929050565b6000806040838503121561443d5761443c613eee565b5b600061444b85828601614317565b925050602061445c8582860161413b565b9150509250929050565b61446f81613f7d565b811461447a57600080fd5b50565b60008135905061448c81614466565b92915050565b6000602082840312156144a8576144a7613eee565b5b60006144b68482850161447d565b91505092915050565b6000602082840312156144d5576144d4613eee565b5b60006144e38482850161413b565b91505092915050565b6000806040838503121561450357614502613eee565b5b600061451185828601614317565b9250506020614522858286016140e2565b9150509250929050565b6000806040838503121561454357614542613eee565b5b60006145518582860161413b565b92505060206145628582860161447d565b9150509250929050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6145a982613ff9565b810181811067ffffffffffffffff821117156145c8576145c7614571565b5b80604052505050565b60006145db613ee4565b90506145e782826145a0565b919050565b600067ffffffffffffffff82111561460757614606614571565b5b61461082613ff9565b9050602081019050919050565b82818337600083830152505050565b600061463f61463a846145ec565b6145d1565b90508281526020810184848401111561465b5761465a61456c565b5b61466684828561461d565b509392505050565b600082601f830112614683576146826141de565b5b813561469384826020860161462c565b91505092915050565b600080600080608085870312156146b6576146b5613eee565b5b60006146c48782880161413b565b94505060206146d58782880161413b565b93505060406146e6878288016140e2565b925050606085013567ffffffffffffffff81111561470757614706613ef3565b5b6147138782880161466e565b91505092959194509250565b6000806040838503121561473657614735613eee565b5b60006147448582860161413b565b92505060206147558582860161413b565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806147a657607f821691505b6020821081036147b9576147b861475f565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006147f9826140c1565b9150614804836140c1565b925082820190508082111561481c5761481b6147bf565b5b92915050565b6000614831602084018461413b565b905092915050565b61484281614085565b82525050565b600061485760208401846140e2565b905092915050565b614868816140c1565b82525050565b600061487d6020840184614317565b905092915050565b61488e816142f6565b82525050565b60c082016148a56000830183614822565b6148b26000850182614839565b506148c06020830183614848565b6148cd602085018261485f565b506148db6040830183614848565b6148e8604085018261485f565b506148f66060830183614848565b614903606085018261485f565b506149116080830183614848565b61491e608085018261485f565b5061492c60a083018361486e565b61493960a0850182614885565b50505050565b600060c0820190506149546000830184614894565b92915050565b600082905092915050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026149c77fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8261498a565b6149d1868361498a565b95508019841693508086168417925050509392505050565b6000819050919050565b6000614a0e614a09614a04846140c1565b6149e9565b6140c1565b9050919050565b6000819050919050565b614a28836149f3565b614a3c614a3482614a15565b848454614997565b825550505050565b600090565b614a51614a44565b614a5c818484614a1f565b505050565b5b81811015614a8057614a75600082614a49565b600181019050614a62565b5050565b601f821115614ac557614a9681614965565b614a9f8461497a565b81016020851015614aae578190505b614ac2614aba8561497a565b830182614a61565b50505b505050565b600082821c905092915050565b6000614ae860001984600802614aca565b1980831691505092915050565b6000614b018383614ad7565b9150826002028217905092915050565b614b1b838361495a565b67ffffffffffffffff811115614b3457614b33614571565b5b614b3e825461478e565b614b49828285614a84565b6000601f831160018114614b785760008415614b66578287013590505b614b708582614af5565b865550614bd8565b601f198416614b8686614965565b60005b82811015614bae57848901358255600182019150602085019450602081019050614b89565b86831015614bcb5784890135614bc7601f891682614ad7565b8355505b6001600288020188555050505b50505050505050565b6000604082019050614bf66000830185614097565b614c036020830184614359565b9392505050565b600081519050614c19816140cb565b92915050565b600060208284031215614c3557614c34613eee565b5b6000614c4384828501614c0a565b91505092915050565b7f4552433732314d657461646174613a2055524920717565727920666f72206e6f60008201527f6e6578697374656e7420746f6b656e0000000000000000000000000000000000602082015250565b6000614ca8602f83613fbe565b9150614cb382614c4c565b604082019050919050565b60006020820190508181036000830152614cd781614c9b565b9050919050565b7f416c7265616479204d696e746564206f72207369676e657220646f65736e277460008201527f20686173206d696e74657220726f6c6500000000000000000000000000000000602082015250565b6000614d3a603083613fbe565b9150614d4582614cde565b604082019050919050565b60006020820190508181036000830152614d6981614d2d565b9050919050565b7f5265712065787069726564000000000000000000000000000000000000000000600082015250565b6000614da6600b83613fbe565b9150614db182614d70565b602082019050919050565b60006020820190508181036000830152614dd581614d99565b9050919050565b7f726563697069656e7420756e646566696e656400000000000000000000000000600082015250565b6000614e12601383613fbe565b9150614e1d82614ddc565b602082019050919050565b60006020820190508181036000830152614e4181614e05565b9050919050565b7f3020717479000000000000000000000000000000000000000000000000000000600082015250565b6000614e7e600583613fbe565b9150614e8982614e48565b602082019050919050565b60006020820190508181036000830152614ead81614e71565b9050919050565b7f496e76616c69642070726963652070657220746f6b656e000000000000000000600082015250565b6000614eea601783613fbe565b9150614ef582614eb4565b602082019050919050565b60006020820190508181036000830152614f1981614edd565b9050919050565b6000614f2b826140c1565b9150614f36836140c1565b9250828202614f44816140c1565b91508282048414831517614f5b57614f5a6147bf565b5b5092915050565b7f496e76616c6964206d73672076616c7565000000000000000000000000000000600082015250565b6000614f98601183613fbe565b9150614fa382614f62565b602082019050919050565b60006020820190508181036000830152614fc781614f8b565b9050919050565b6000604082019050614fe36000830185614097565b614ff06020830184614097565b9392505050565b600060e08201905061500c600083018a614359565b6150196020830189614097565b6150266040830188614190565b6150336060830187614190565b6150406080830186614190565b61504d60a0830185614190565b61505a60c0830184614359565b98975050505050505050565b600081905092915050565b50565b6000615081600083615066565b915061508c82615071565b600082019050919050565b60006150a282615074565b9150819050919050565b7f6e617469766520746f6b656e207472616e73666572206661696c656400000000600082015250565b60006150e2601c83613fbe565b91506150ed826150ac565b602082019050919050565b60006020820190508181036000830152615111816150d5565b9050919050565b600081519050919050565b600082825260208201905092915050565b600061513f82615118565b6151498185615123565b9350615159818560208601613fcf565b61516281613ff9565b840191505092915050565b60006080820190506151826000830187614097565b61518f6020830186614097565b61519c6040830185614190565b81810360608301526151ae8184615134565b905095945050505050565b6000815190506151c881613f24565b92915050565b6000602082840312156151e4576151e3613eee565b5b60006151f2848285016151b9565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b7f45434453413a20696e76616c6964207369676e61747572650000000000000000600082015250565b6000615260601883613fbe565b915061526b8261522a565b602082019050919050565b6000602082019050818103600083015261528f81615253565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265206c656e67746800600082015250565b60006152cc601f83613fbe565b91506152d782615296565b602082019050919050565b600060208201905081810360008301526152fb816152bf565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265202773272076616c60008201527f7565000000000000000000000000000000000000000000000000000000000000602082015250565b600061535e602283613fbe565b915061536982615302565b604082019050919050565b6000602082019050818103600083015261538d81615351565b9050919050565b600060a0820190506153a96000830188614359565b6153b66020830187614359565b6153c36040830186614359565b6153d06060830185614190565b6153dd6080830184614097565b9695505050505050565b600060ff82169050919050565b6153fd816153e7565b82525050565b60006080820190506154186000830187614359565b61542560208301866153f4565b6154326040830185614359565b61543f6060830184614359565b9594505050505056fea2646970667358221220590bd020749868fd97732489ddf4592a1a64e968fddf06e5a72f1741286681f964736f6c63430008140033000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000ba87844c94cfb406a7971a879e9931764b6405ca0000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000c74616e6f6f6b69636869706500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006746e6b63687000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000