ZGlmZiAtLWdpdCBhL3J1bnRpbWUvc3BlbGwvZGEvZGFfREsuZGlmZiBiL3J1bnRpbWUvc3BlbGwvZGEvZGFfREsuZGlmZgppbmRleCBhZmNiOGQzLi41ODM2NTJjIDEwMDY0NAotLS0gYS9ydW50aW1lL3NwZWxsL2RhL2RhX0RLLmRpZmYKKysrIGIvcnVudGltZS9zcGVsbC9kYS9kYV9ESy5kaWZmCkBAIC0xLDE2ICsxLDE0MCBAQAogKioqIGRhX0RLLm9yaWcuYWZmCVN1biBBdWcgMTQgMjA6MDQ6MzEgMjAwNQotLS0tIGRhX0RLLmFmZglNb24gQXVnIDE1IDE0OjAzOjA2IDIwMDUKKy0tLSBkYV9ESy5hZmYJVGh1IFNlcCAyOSAyMjoyMDoxNSAyMDA1CiAqKioqKioqKioqKioqKioKICoqKiA2LDcgKioqKgotLS0tIDYsMTYgLS0tLQorLS0tIDYsMTMgLS0tLQogICAKICsgRk9MICDg4eLj5OXm5+jp6uvs7e7v8PHy8/T19vj5+vv8/f7f/wogKyBMT1cgIODh4uPk5ebn6Onq6+zt7u/w8fLz9PX2+Pn6+/z9/t//CiArIFVQUCAgwMHCw8TFxsfIycrLzM3Oz9DR0tPU1dbY2drb3N3e3/8KICsgCi0rIFNPRk9GUk9NIGFiY2RlZmdoaWprbG1ub3BxcnN0dXZ3eHl6QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVrg4eLj5OXm5+jp6uvs7e7v8PHy8/T19vj5+vv8/f7f/8DBwsPExcbHyMnKy8zNzs/Q0dLT1NXW2Nna29zd3r8KLSsgU09GT1RPICAgZWJjdGVmZ2hlamtsbm5lcGtyc3RldnZrZXNlYmN0ZWZnaGVqa2xubmVwa3JzdGV2dmtlc2VlZWVlZWVjZWVlZWVlZWVkbmVlZWVlZWVlZWVlcHNlZWVlZWVlZWNlZWVlZWVlZWRuZWVlZWVlZWVlZWVwPwotKyAKICsgTUlEV09SRAknLQogKyAKICAgIyBGb3JhbnN0aWxsaW5nIGFmIHUtCisqKioqKioqKioqKioqKioKKyoqKiA2MDYsNjE4ICoqKioKKy0tLSA2MTIsNzM1IC0tLS0KKyAgCisrICMgc291bmQgZm9sZGluZyBmcm9tIEFzcGVsbAorKyAjIERvZXNuJ3QgY29udGFpbiBhIGNvcHlyaWdodCBub3RpY2UuCisrICMgdmVyc2lvbiAwLjEtMjAwMi4xMi4xNS0zCisrIAorKyBTQUwgQUE8ICAgICAgICAgICAgICAgICAgxQorKyBTQUwgQUNUSU9OICAgICAgICAgICAgICAgQUtTSk9OCisrIFNBTCBBRjwgICAgICAgICAgICAgICAgICBBVgorKyBTQUwgQVNJRTwgICAgICAgICAgICAgICAgQVNKRQorKyBTQUwgQSAgICAgICAgICAgICAgICAgICAgQQorKyAKKysgU0FMIEJFRFNUPCAgICAgICAgICAgICAgIEJFU1QKKysgU0FMIEJPUkQ8ICAgICAgICAgICAgICAgIEJPUgorKyBTQUwgQlJZU1Q8ICAgICAgICAgICAgICAgQlLYU1QKKysgU0FMIEJVUkVBVSAgICAgICAgICAgICAgIEJZUk8KKysgU0FMIEIgICAgICAgICAgICAgICAgICAgIEIKKysgCisrIFNBTCBDQzwgICAgICAgICAgICAgICAgICBLUworKyBTQUwgQ0s8ICAgICAgICAgICAgICAgICAgSyAgCisrIFNBTCBDSDwgICAgICAgICAgICAgICAgICBUSgorKyBTQUwgQ0k8ICAgICAgICAgICAgICAgICAgU0kKKysgU0FMIENPPCAgICAgICAgICAgICAgICAgIEtPCisrIFNBTCBDWTwgICAgICAgICAgICAgICAgICBTWQorKyBTQUwgQzwgICAgICAgICAgICAgICAgICAgUworKyBTQUwgI0MgICAgICAgICAgICAgICAgICAgQworKyAKKysgU0FMIERJR14kICAgICAgICAgICAgICAgIERBSgorKyBTQUwgRElHPCAgICAgICAgICAgICAgICAgREkKKysgU0FMIEQkICAgICAgICAgICAgICAgICAgIF8KKysgU0FMIEQgICAgICAgICAgICAgICAgICAgIEQKKysgCisrIFNBTCBFQVVYPCAgICAgICAgICAgICAgICBPCisrIFNBTCBFQVU8ICAgICAgICAgICAgICAgICBPCisrIFNBTCBFSiQ8ICAgICAgICAgICAgICAgICBBSgorKyBTQUwgRVU8ICAgICAgICAgICAgICAgICAg2FYKKysgU0FMIEUgICAgICAgICAgICAgICAgICAgIEUKKysgCisrIFNBTCDJICAgICAgICAgICAgICAgICAgICBFCisrIAorKyBTQUwgyCAgICAgICAgICAgICAgICAgICAgRQorKyAKKysgU0FMIEZFRFQ8ICAgICAgICAgICAgICAgIEZFVAorKyBTQUwgRiAgICAgICAgICAgICAgICAgICAgRgorKyAKKysgU0FMIEcgICAgICAgICAgICAgICAgICAgIEcKKysgCisrIFNBTCBISl48ICAgICAgICAgICAgICAgICBKCisrIFNBTCBIxVJEPCAgICAgICAgICAgICAgICBIxVIKKysgU0FMIEjFTkQ8ICAgICAgICAgICAgICAgIEjFTgorKyBTQUwgSCAgICAgICAgICAgICAgICAgICAgSAorKyAKKysgU0FMIElPTjwgICAgICAgICAgICAgICAgIEpPTgorKyBTQUwgSU5EXjwgICAgICAgICAgICAgICAgSU4KKysgU0FMIEkgICAgICAgICAgICAgICAgICAgIEkKKysgCisrIFNBTCBKICAgICAgICAgICAgICAgICAgICBKCisrIAorKyBTQUwgSyAgICAgICAgICAgICAgICAgICAgSworKyAKKysgIyBTdHVtdCBHCisrIFNBTCBMSUc8ICAgICAgICAgICAgICAgICBMSQorKyBTQUwgTCAgICAgICAgICAgICAgICAgICAgTAorKyAKKysgU0FMIE1BTkQ8ICAgICAgICAgICAgICAgIE1BTgorKyBTQUwgTUlHXiQgICAgICAgICAgICAgICAgTUFKCisrIFNBTCBNICAgICAgICAgICAgICAgICAgICBNCisrIAorKyBTQUwgTiAgICAgICAgICAgICAgICAgICAgTgorKyAKKysgU0FMIE9TVCAgICAgICAgICAgICAgICAgIMVTVAorKyBTQUwgTyAgICAgICAgICAgICAgICAgICAgTworKyAKKysgU0FMINMgICAgICAgICAgICAgICAgICAgIE8KKysgCisrIFNBTCBQSDwgICAgICAgICAgICAgICAgICBGCisrIFNBTCBQICAgICAgICAgICAgICAgICAgICBQCisrIAorKyBTQUwgUTwgICAgICAgICAgICAgICAgICAgS1UKKysgCisrIFNBTCBSRUdOPCAgICAgICAgICAgICAgICBSRUpOCisrIFNBTCBSVUc8ICAgICAgICAgICAgICAgICBSVQorKyBTQUwgUllHICAgICAgICAgICAgICAgICAgUthHCisrIFNBTCBSICAgICAgICAgICAgICAgICAgICBSCisrIAorKyBTQUwgU0g8ICAgICAgICAgICAgICAgICAgU0oKKysgU0FMIFNJR14kICAgICAgICAgICAgICAgIFNBSgorKyBTQUwgU0tJTkQ8ICAgICAgICAgICAgICAgU0tJTgorKyBTQUwgUydTPCQgICAgICAgICAgICAgICAgUworKyBTQUwgUyAgICAgICAgICAgICAgICAgICAgUworKyAKKysgU0FMIFRJT04gICAgICAgICAgICAgICAgIFNKT04KKysgU0FMIFRaPCAgICAgICAgICAgICAgICAgIFRTCisrIFNBTCBUICAgICAgICAgICAgICAgICAgICBUCisgIAorKyBTQUwgVSAgICAgICAgICAgICAgICAgICAgVQorICAKKysgU0FMINw8ICAgICAgICAgICAgICAgICAgIFkKKyAgCisrIFNBTCBWICAgICAgICAgICAgICAgICAgICBWCisgIAorKyBTQUwgVzwgICAgICAgICAgICAgICAgICAgVgorICAKKysgU0FMIFgnUzwgICAgICAgICAgICAgICAgIEtTCisrIFNBTCBYPCAgICAgICAgICAgICAgICAgICBLUworICAKKysgU0FMIFlLSzwgICAgICAgICAgICAgICAgINhLSworKyBTQUwgWU5EPCAgICAgICAgICAgICAgICAg2E5ECisrIFNBTCBZICAgICAgICAgICAgICAgICAgICBZCisgIAorKyBTQUwgWidTPCAgICAgICAgICAgICAgICAgUworKyBTQUwgWjwgICAgICAgICAgICAgICAgICAgUworKyBTQUwgI1ogICAgICAgICAgICAgICAgICAgWgorICAKKysgU0FMIMYgICAgICAgICAgICAgICAgICAgIMYKKyAgCisrIFNBTCDEPCAgICAgICAgICAgICAgICAgICDGCisgIAorKyAjIGVrcy4gSGFuIGz4diBlbiB0dXIgKGz4YikgCisrIFNBTCDYQjwgICAgICAgICAgICAgICAgICDYVgorKyBTQUwg2CAgICAgICAgICAgICAgICAgICAg2AorICAKKysgU0FMINY8ICAgICAgICAgICAgICAgICAgINgKKyAgCisrIFNBTCDFICAgICAgICAgICAgICAgICAgICDFCmRpZmYgLS1naXQgYS9ydW50aW1lL3NwZWxsL2VsL2VsX0dSLmRpZmYgYi9ydW50aW1lL3NwZWxsL2VsL2VsX0dSLmRpZmYKaW5kZXggZTY5ZGUyOS4uNGQ3NGVjNiAxMDA2NDQKLS0tIGEvcnVudGltZS9zcGVsbC9lbC9lbF9HUi5kaWZmCisrKyBiL3J1bnRpbWUvc3BlbGwvZWwvZWxfR1IuZGlmZgpAQCAtMCwwICsxLDIwNCBAQAorKioqIGVsX0dSLm9yaWcuYWZmCVR1ZSBBdWcgMTYgMTg6MDI6MjcgMjAwNQorLS0tIGVsX0dSLmFmZglUaHUgU2VwIDI5IDIyOjI4OjEyIDIwMDUKKyoqKioqKioqKioqKioqKgorKioqIDU3Miw1NzQgKioqKgorICBTRlggSiD5ICAgICDv7fTh8iAgICAgIC4gICAgICAgICAgIyDk3e35ID4g5N3t7+304fIKKyEgCSAKKyAgU0ZYIEsgWSA0IAorLS0tIDU3Miw1NzQgLS0tLQorICBTRlggSiD5ICAgICDv7fTh8iAgICAgIC4gICAgICAgICAgIyDk3e35ID4g5N3t7+304fIKKyEgICAgICAgICAgCisgIFNGWCBLIFkgNCAKKyoqKioqKioqKioqKioqKgorKioqIDYxOSw2MjEgKioqKgorICAKKyEgCSAKKyAgU0ZYIFIgWSA0CistLS0gNjE5LDYyMSAtLS0tCisgIAorISAgICAgICAgICAKKyAgU0ZYIFIgWSA0CisqKioqKioqKioqKioqKioKKyoqKiA2MjYsNjI4ICoqKioKKyAgCishIAkgCisgIFNGWCBTIFkgNAorLS0tIDYyNiw2MjggLS0tLQorICAKKyEgICAgICAgICAgCisgIFNGWCBTIFkgNAorKioqKioqKioqKioqKioqCisqKiogNjQ2LDY0OCAqKioqCisgIAorISAJIAorICBTRlggViBZIDUKKy0tLSA2NDYsNjQ4IC0tLS0KKyAgCishICAgICAgICAgIAorICBTRlggViBZIDUKKyoqKioqKioqKioqKioqKgorKioqIDY4Niw2ODggKioqKgorICAKKyEgCSAKKyAgU0ZYIGIgWSA0CistLS0gNjg2LDY4OCAtLS0tCisgIAorISAgICAgICAgICAKKyAgU0ZYIGIgWSA0CisqKioqKioqKioqKioqKioKKyoqKiA3NTggKioqKgorLS0tIDc1OCw5MTEgLS0tLQorICBTRlggbiDv8iAgICAgICAgIO8gICAgICAgICAgIC4gICAgICAgICMg5PH87O/yID4g5PH87O8KKysgCisrICMgc291bmQgZm9sZGluZyBmcm9tIEFzcGVsbAorKyAjIHZlcnNpb24gMC4wIDAzLzE0LzIwMDIKKysgIyAwMy8xNC8yMDAyIEV2cmlwaWRpcyBQYXBha29zdGFzIDxldnJpc0Bzb3VyY2UuZ3I+CisrIAorKyAjIGFsbCB0aGUgZm9sbG93aW5nIGRvdWJsZSBsZXR0ZXJzIGFyZSBwcm9ub3VuY2VkIGFzIG9uZQorKyBTQUwgwsItICAgICAgICAgICAgICAgICAgICAgICAgXworKyBTQUwgwiAgICAgICAgICAgICAgICAgICAgICAgICAgwgorKyBTQUwgw8MgICAgICAgICAgICAgICAgICAgICAgICAgw8oKKysgU0FMIMMgICAgICAgICAgICAgICAgICAgICAgICAgIMMKKysgU0FMIMTELSAgICAgICAgICAgICAgICAgICAgICAgIF8KKysgU0FMIMQgICAgICAgICAgICAgICAgICAgICAgICAgIMQKKysgU0FMIMbGLSAgICAgICAgICAgICAgICAgICAgICAgIF8KKysgU0FMIMYgICAgICAgICAgICAgICAgICAgICAgICAgIMYKKysgU0FMIMjILSAgICAgICAgICAgICAgICAgICAgICAgIF8KKysgU0FMIMggICAgICAgICAgICAgICAgICAgICAgICAgIMgKKysgU0FMIMrKLSAgICAgICAgICAgICAgICAgICAgICAgIF8KKysgU0FMIMrTICAgICAgICAgICAgICAgICAgICAgICAgIM4KKysgU0FMIMogICAgICAgICAgICAgICAgICAgICAgICAgIMoKKysgU0FMIMvLLSAgICAgICAgICAgICAgICAgICAgICAgIF8KKysgU0FMIMsgICAgICAgICAgICAgICAgICAgICAgICAgIMsKKysgU0FMIMzMLSAgICAgICAgICAgICAgICAgICAgICAgIF8KKysgU0FMIMwgICAgICAgICAgICAgICAgICAgICAgICAgIMwKKysgU0FMIM3NLSAgICAgICAgICAgICAgICAgICAgICAgIF8KKysgU0FMIM0gICAgICAgICAgICAgICAgICAgICAgICAgIM0KKysgU0FMINDQLSAgICAgICAgICAgICAgICAgICAgICAgIF8KKysgU0FMINDTICAgICAgICAgICAgICAgICAgICAgICAgINgKKysgU0FMINAgICAgICAgICAgICAgICAgICAgICAgICAgINAKKysgU0FMINHRLSAgICAgICAgICAgICAgICAgICAgICAgIF8KKysgU0FMINEgICAgICAgICAgICAgICAgICAgICAgICAgINEKKysgU0FMINPTLSAgICAgICAgICAgICAgICAgICAgICAgIF8KKysgU0FMINMgICAgICAgICAgICAgICAgICAgICAgICAgINMKKysgU0FMINTULSAgICAgICAgICAgICAgICAgICAgICAgIF8KKysgU0FMINQgICAgICAgICAgICAgICAgICAgICAgICAgINQKKysgU0FMINbWLSAgICAgICAgICAgICAgICAgICAgICAgIF8KKysgU0FMINYgICAgICAgICAgICAgICAgICAgICAgICAgINYKKysgU0FMINfXLSAgICAgICAgICAgICAgICAgICAgICAgIF8gCisrIFNBTCDXICAgICAgICAgICAgICAgICAgICAgICAgICDXCisrIAorKyAjIGFscGhhICsgKHlwc2lsb24gb3IgeXBzaWxvbiB0b25vcykgYmVjb21lcyBhbHBoYSArIGJldGEKKysgU0FMIMG+PCAgICAgICAgICAgICAgICAgICAgICAgIMHVCisrIFNBTCDB1c3ULS0gICAgICAgICAgICAgICAgICAgICDBwgorKyBTQUwgwdXDyi0tICAgICAgICAgICAgICAgICAgICAgwcIKKysgU0FMIMHV1MYtLSAgICAgICAgICAgICAgICAgICAgIMHCCisrIFNBTCDB1SjDxMbLzM3RKS0gICAgICAgICAgICAgICDBwgorKyBTQUwgwdXCICAgICAgICAgICAgICAgICAgICAgICAgwcIKKysgU0FMIMHVKMHFx8nP2dW2uLm6vL++KS0gICAgICAgIMHCCisrIAorKyAjIGFscGhhICsgKHlwc2lsb24gb3IgeXBzaWxvbiB0b25vcykgYmVjb21lcyBhbHBoYSArIHBoaQorKyBTQUwgwdXWICAgICAgICAgICAgICAgICAgICAgICAgwdYKKysgU0FMIMHV1NMtLSAgICAgICAgICAgICAgICAgICAgIMHWCisrIFNBTCDB1SjIytDT1NcpLSAgICAgICAgICAgICAgICDB1gorKyBTQUwgwdXOLSAgICAgICAgICAgICAgICAgICAgICAgwdYKKysgU0FMIMHV2C0gICAgICAgICAgICAgICAgICAgICAgIMHWCisrIAorKyAjIGFscGhhICsgKGlvdGEgb3IgaW90YSB0b25vcykgYmVjb21lcyBlcHNpbG9uCisrIFNBTCDBKMm6KSAgICAgICAgICAgICAgICAgICAgICDFCisrIAorKyAjIGFscGhhIGlzIGFscGhhCisrIFNBTCDBICAgICAgICAgICAgICAgICAgICAgICAgICDBCisrIAorKyAjIGVwc2lsb24gKyAoeXBzaWxvbiBvciB5cHNpbG9uIHRvbm9zKSBiZWNvbWVzIGVwc2lsb24gKyB2aXRhCisrIFNBTCDFvjwgICAgICAgICAgICAgICAgICAgICAgICDVCisrIFNBTCDF1c3ULS0gICAgICAgICAgICAgICAgICAgICDFwgorKyBTQUwgxdXDyi0tICAgICAgICAgICAgICAgICAgICAgxcIKKysgU0FMIMXV1MYtLSAgICAgICAgICAgICAgICAgICAgIMXCCisrIFNBTCDF1SjDxMbLzM3RKS0gICAgICAgICAgICAgICDFwgorKyBTQUwgxdXCICAgICAgICAgICAgICAgICAgICAgICAgxcIKKysgU0FMIMXVKMHFx8nP2dW2uLm6vL++KS0gICAgICAgIMXCCisrIAorKyAjIGVwc2lsb24gKyAoeXBzaWxvbiBvciB5cHNpbG9uIHRvbm9zKSBiZWNvbWVzIGVwc2lsb24gKyBwaGkKKysgU0FMIMXV1iAgICAgICAgICAgICAgICAgICAgICAgIMXWCisrIFNBTCDF1dTTLS0gICAgICAgICAgICAgICAgICAgICDF1iAgICAgICAjIEdVRVNTRUQhCisrIFNBTCDF1SjIytDT1NcpLSAgICAgICAgICAgICAgICDF1gorKyBTQUwgxdXOLSAgICAgICAgICAgICAgICAgICAgICAgxdYKKysgU0FMIMXV2C0gICAgICAgICAgICAgICAgICAgICAgIMXWCisrIAorKyAjIGVwc2lsb24gKyAoaW90YSBvciBpb3RhIHRvbm9zKSBiZWNvbWVzIGlvdGEKKysgU0FMIMUoybopICAgICAgICAgICAgICAgICAgICAgIMkKKysgCisrICMgZXBzaWxvbiBpcyBlcHNpbG9uCisrIFNBTCDFICAgICAgICAgICAgICAgICAgICAgICAgICDFCisrIAorKyAKKysgIyBvbWlrcm9uICsgKGlvdGEgb3IgaW90YSB0b25vcykgYmVjb21lcyBpb3RhCisrIFNBTCDPKMm6KSAgICAgICAgICAgICAgICAgICAgICDJCisrIAorKyAjIG9taWtyb24gKyAoeXBzaWxvbiBvciB5cHNpbG9uIHRvbm9zKSBiZWNvbWVzIHUKKysgU0FMIM8o1b4pICAgICAgICAgICAgICAgICAgICAgIM/VCisrIAorKyAjIG9taWtyb24gaXMgb21pa3JvbgorKyBTQUwgzyAgICAgICAgICAgICAgICAgICAgICAgICAgzworKyAKKysgIyB3bWVnYSBiZWNvbWVzIG9taWtyb24KKysgU0FMINkgICAgICAgICAgICAgICAgICAgICAgICAgIM8KKysgCisrICMgaXRhIGJlY29tZXMgaW90YQorKyBTQUwgxyAgICAgICAgICAgICAgICAgICAgICAgICAgyQorKyAKKysgIyB5cHNpbG9uICsgaW90YSBiZWNvbWVzIGlvdGEKKysgU0FMINXJICAgICAgICAgICAgICAgICAgICAgICAgIMkKKysgCisrICMgeXBzaWxvbiBiZWNvbWVzIGlvdGEKKysgU0FMINUgICAgICAgICAgICAgICAgICAgICAgICAgIMkKKysgCisrICMgaW90YSBpcyBpb3RhCisrIFNBTCDJICAgICAgICAgICAgICAgICAgICAgICAgICDJCisrIAorKyAjIGRvdWJsZSBrc2kgYmVjb21lcyBrc2kgCisrIFNBTCDOzi0gICAgICAgICAgICAgICAgICAgICAgICAgXworKyAKKysgIyBrc2kgKyBzaWdtYSBiZWNvbWVzIGtzaSAKKysgU0FMIM7TICAgICAgICAgICAgICAgICAgICAgICAgIM4KKysgCisrICMga3NpIGlzIGtzaQorKyBTQUwgziAgICAgICAgICAgICAgICAgICAgICAgICAgzgorKyAKKysgIyBwc2kgKyBwc2kgYmVjb21lcyBwc2kKKysgU0FMINjYLSAgICAgICAgICAgICAgICAgICAgICAgIF8KKysgCisrICMgcHNpICsgc2lnbWEgYmVjb21lcyBwc2kKKysgU0FMINjTICAgICAgICAgICAgICAgICAgICAgICAgINgKKysgCisrICMgcHNpIGlzIHBzaQorKyBTQUwg2CAgICAgICAgICAgICAgICAgICAgICAgICAg2AorKyAKKysgCisrICMgaW90YSBkaWFsaXRpa2EgYmVjb21lcyBpb3RhIAorKyBTQUwg2iAgICAgICAgICAgICAgICAgICAgICAgICAgyQorKyAKKysgIyB5cHNpbG9uIGRpYWxpdGlrYSBiZWNvbWVzIEkKKysgU0FMINsgICAgICAgICAgICAgICAgICAgICAgICAgIMkKKysgCisrICMgYWxwaGEgdG9ub3MgYmVjb21lcyBhbHBoYQorKyBTQUwgtiAgICAgICAgICAgICAgICAgICAgICAgICAgwQorKyAKKysgIyBvbWlrcm9uIHRvbm9zIGJlY29tZXMgb21pa3JvbgorKyBTQUwgvCAgICAgICAgICAgICAgICAgICAgICAgICAgzworKyAKKysgIyBpb3RhIHRvbm9zIGJlY29tZXMgaW90YQorKyBTQUwguiAgICAgICAgICAgICAgICAgICAgICAgICAgyQorKyAKKysgIyBlcHNpbG9uIHRvbm9zIGJlY29tZXMgZXBzaWxvbgorKyBTQUwguCAgICAgICAgICAgICAgICAgICAgICAgICAgxQorKyAKKysgIyB5cHNpbG9uIHRvbm9zIGJlY29tZXMgeXBzaWxvbgorKyBTQUwgviAgICAgICAgICAgICAgICAgICAgICAgICAg1QorKyAKKysgIyB3bWVnYSB0b25vcyBiZWNvbWVzIG9taWtyb24KKysgU0FMIL8gICAgICAgICAgICAgICAgICAgICAgICAgIM8KKysgCisrICMgaXRhIHRvbm9zIGJlY29tZXMgaW90YQorKyBTQUwguSAgICAgICAgICAgICAgICAgICAgICAgICAgyQpkaWZmIC0tZ2l0IGEvcnVudGltZS9zcGVsbC9mci9mcl9GUi5kaWZmIGIvcnVudGltZS9zcGVsbC9mci9mcl9GUi5kaWZmCmluZGV4IDBlM2Q1MTYuLjRhOWNmOGQgMTAwNjQ0Ci0tLSBhL3J1bnRpbWUvc3BlbGwvZnIvZnJfRlIuZGlmZgorKysgYi9ydW50aW1lL3NwZWxsL2ZyL2ZyX0ZSLmRpZmYKQEAgLTEsMTYgKzEsMTMgQEAKICoqKiBmcl9GUi5vcmlnLmFmZglTdW4gSnVsICAzIDE5OjM0OjIwIDIwMDUKLS0tLSBmcl9GUi5hZmYJU3VuIEp1bCAzMSAyMjoxNzo1MyAyMDA1CistLS0gZnJfRlIuYWZmCUZyaSBTZXAgMzAgMTI6NTg6MjkgMjAwNQogKioqKioqKioqKioqKioqCiAqKiogMyw0ICoqKioKLS0tLSAzLDI0IC0tLS0KKy0tLSAzLDIxIC0tLS0KICAgCiArIEZPTCAg4OHi4+Tl5ufo6err7O3u7/Dx8vP09fb4+fr7/P3+3/8KICsgTE9XICDg4eLj5OXm5+jp6uvs7e7v8PHy8/T19vj5+vv8/f7f/wogKyBVUFAgIMDBwsPExcbHyMnKy8zNzs/Q0dLT1NXW2Nna29zd3t//CiArIAotKyBTT0ZPRlJPTSBhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFla4OHi4+Tl5ufo6err7O3u7/Dx8vP09fb4+fr7/P3+3//AwcLDxMXGx8jJysvMzc7P0NHS09TV1tjZ2tvc3d6/Ci0rIFNPRk9UTyAgIGViY3RlZmdoZWprbG5uZXBrcnN0ZXZ2a2VzZWJjdGVmZ2hlamtsbm5lcGtyc3RldnZrZXNlZWVlZWVlY2VlZWVlZWVlZG5lZWVlZWVlZWVlZXBzZWVlZWVlZWVjZWVlZWVlZWVkbmVlZWVlZWVlZWVlcD8KLSsgCiArIE1JRFdPUkQJJwogKyAKICsgTUFQIDkKQEAgLTI2LDEwICsyMywxMDAgQEAKICsgCiAgIFBGWCBBIFkgMTAKICoqKioqKioqKioqKioqKgotKioqIDY5MCw2OTQgKioqKgotICBTRlggcSAgIHNzYWl0ICAgICAgcmFpZW50ICAgICBzc2FpdAotLSAKLS0gCi0tIAotLSAKLS0tLSA3MTAgLS0tLQorKioqIDY5Miw2OTQgKioqKgorICAKKyEgCishIAorLS0tIDcwOSw4MDAgLS0tLQorICAKKyEgIyBzb3VuZCBmb2xkaW5nIGZyb20gQXNwZWxsCishICMgICBDb3B5cmlnaHQgKEMpIDIwMDAgUultaSBWYW5pY2F0LCBkaXN0cmlidXRlZCB1bmRlciBMR1BMCishICMgdmVyc2lvbiBmcmFuY2FpcyAwLjAwMDAwMDAwMQorISAKKyEgI0VNTUUgfiBBTUUKKyEgU0FMIEFJWCQgICAgICAgICAgICAgICBFCishIFNBTCBBSSAgICAgICAgICAgICAgICAgRQorISBTQUwgQU4oQUVVSU8pLSAgICAgICAgIEFNCishIFNBTCBBTiAgICAgICAgICAgICAgICAgQQorISBTQUwgQU1NICAgICAgICAgICAgICAgIEFNCishIFNBTCBBTShBRVVJTyktICAgICAgICAgQU0KKyEgU0FMIEFNICAgICAgICAgICAgICAgICBBCishIFNBTCBBVUQkICAgICAgICAgICAgICAgTworISBTQUwgQVVYJAkJICAgTworISBTQUwgQVUgICAgICAgICAgICAgICAgIE8KKyEgU0FMIEEgICAgICAgICAgICAgICAgICBBCishIFNBTCDCICAgICAgICAgICAgICAgICAgQQorISBTQUwgwCAgICAgICAgICAgICAgICAgIEEKKyEgU0FMIEJCICAgICAgICAgICAgICAgICBQCishIFNBTCBCICAgICAgICAgICAgICAgICAgUAorISBTQUwgxyAgICAgICAgICAgICAgICAgIFMKKyEgU0FMIEMoRUkpLSAgICAgICAgICAgICBTCishIFNBTCBDVShFSSktICAgICAgICAgICAgSworISBTQUwgQ0MoRUkpLSAgICAgICAgICAgIFgKKyEgU0FMIENDICAgICAgICAgICAgICAgICBLCishIFNBTCBDSCAgICAgICAgICAgICAgICAgQ0gKKyEgU0FMIEMgICAgICAgICAgICAgICAgICBLCishIFNBTCBERCAgICAgICAgICAgICAgICAgVAorISBTQUwgRCAgICAgICAgICAgICAgICAgIFQKKyEgU0FMIEVNTUVOVEFMICAgICAgICAgICBFTUFUQUwKKyEgU0FMIEVNTUVOVEhBTCAgICAgICAgICBFTUFUQUwKKyEgU0FMIEVNKEFFSU9VKS0gICAgICAgICBFTQorISBTQUwgRU0gICAgICAgICAgICAgICAgIEEKKyEgU0FMIEVUJCAgICAgICAgICAgICAgICBFCishIFNBTCBFVVgkICAgICAgICAgICAgICAgRQorISBTQUwgRVUgICAgICAgICAgICAgICAgIEUKKyEgU0FMIEVOKEFFVUlPKS0gICAgICAgICBFTQorISBTQUwgRU4gICAgICAgICAgICAgICAgIEEKKyEgU0FMIEVSJCAgICAgICAgICAgICAgICBFCishIFNBTCBFTyAgICAgICAgICAgICAgICAgTworISBTQUwgRUFVWCQJCSAgIE8KKyEgU0FMIEVBVSAgICAgICAgICAgICAgICBPCishIFNBTCBFICAgICAgICAgICAgICAgICAgRQorISBTQUwgyCAgICAgICAgICAgICAgICAgIEUKKyEgU0FMIMkgICAgICAgICAgICAgICAgICBFCishIFNBTCDKICAgICAgICAgICAgICAgICAgRQorISBTQUwgRiAgICAgICAgICAgICAgICAgIEYKKyEgU0FMIEcoRUlZKS0gICAgICAgICAgICBKCishIFNBTCBHVShFSVkpLSAgICAgICAgICAgRworISBTQUwgRyAgICAgICAgICAgICAgICAgIEcKKyEgU0FMIEggICAgICAgICAgICAgICAgICBfCishIFNBTCBJICAgICAgICAgICAgICAgICAgSQorISBTQUwgziAgICAgICAgICAgICAgICAgIEkKKyEgU0FMIEogICAgICAgICAgICAgICAgICBKCishIFNBTCBLUyAgICAgICAgICAgICAgICAgWAorISBTQUwgSyAgICAgICAgICAgICAgICAgIEsKKyEgU0FMIExMICAgICAgICAgICAgICAgICBMCishIFNBTCBMICAgICAgICAgICAgICAgICAgTAorISBTQUwgTU0gICAgICAgICAgICAgICAgIE0KKyEgU0FMIE0gICAgICAgICAgICAgICAgICBNCishIFNBTCBOTiAgICAgICAgICAgICAgICAgTQorISBTQUwgTiAgICAgICAgICAgICAgICAgIE0KKyEgU0FMIE9FVSAgICAgICAgICAgICAgICBFCishIFNBTCBPVVgkICAgICAgICAgICAgICAgVQorISBTQUwgT1UgICAgICAgICAgICAgICAgIFUKKyEgU0FMIE/ZICAgICAgICAgICAgICAgICBVCishIFNBTCBPICAgICAgICAgICAgICAgICAgTworISBTQUwg1CAgICAgICAgICAgICAgICAgIE8KKyEgU0FMIFBQICAgICAgICAgICAgICAgICBQCishIFNBTCBQSCAgICAgICAgICAgICAgICAgRgorISBTQUwgUCAgICAgICAgICAgICAgICAgIFAKKyEgU0FMIFFVICAgICAgICAgICAgICAgICBLCishIFNBTCBRICAgICAgICAgICAgICAgICAgSworISBTQUwgUklYJCAgICAgICAgICAgICAgIFJJCishIFNBTCBSUiAgICAgICAgICAgICAgICAgUgorISBTQUwgUiAgICAgICAgICAgICAgICAgIFIKKyEgU0FMIFMkICAgICAgICAgICAgICAgICBfCishIFNBTCBTUyAgICAgICAgICAgICAgICAgUworISBTQUwgUyAgICAgICAgICAgICAgICAgIFMKKyEgU0FMIFRUICAgICAgICAgICAgICAgICBUCishIFNBTCBUICAgICAgICAgICAgICAgICAgVAorISBTQUwgVSAgICAgICAgICAgICAgICAgIFUKKyEgU0FMINkgICAgICAgICAgICAgICAgICBVCishIFNBTCDbICAgICAgICAgICAgICAgICAgVQorISBTQUwgViAgICAgICAgICAgICAgICAgIFYKKyEgU0FMIFcgICAgICAgICAgICAgICAgICBXCishIFNBTCBYICAgICAgICAgICAgICAgICAgWAorISBTQUwgWShBRU9VKS0gICAgICAgICAgIElMCishIFNBTCBZICAgICAgICAgICAgICAgICAgSQorISBTQUwgWlogICAgICAgICAgICAgICAgIFMKKyEgU0FMIFogICAgICAgICAgICAgICAgICBTCmRpZmYgLS1naXQgYS9ydW50aW1lL3NwZWxsL2dhL2dhX0lFLmRpZmYgYi9ydW50aW1lL3NwZWxsL2dhL2dhX0lFLmRpZmYKaW5kZXggOWI3Mjg1My4uM2UzMDFiNyAxMDA2NDQKLS0tIGEvcnVudGltZS9zcGVsbC9nYS9nYV9JRS5kaWZmCisrKyBiL3J1bnRpbWUvc3BlbGwvZ2EvZ2FfSUUuZGlmZgpAQCAtMSwxNiArMSwxMyBAQAogKioqIGdhX0lFLm9yaWcuYWZmCVdlZCBBdWcgMzEgMTY6NDg6NDkgMjAwNQotLS0tIGdhX0lFLmFmZglXZWQgQXVnIDMxIDE2OjQ5OjQzIDIwMDUKKy0tLSBnYV9JRS5hZmYJRnJpIFNlcCAzMCAxMzowMTozOCAyMDA1CiAqKioqKioqKioqKioqKioKICoqKiAzNywzOCAqKioqCi0tLS0gMzcsNTggLS0tLQorLS0tIDM3LDU1IC0tLS0KICAgCiArIEZPTCAg3+Dh4uPk5ebn6Onq6+zt7u/w8fLz9PX2+Pn6+/z9/v8KICsgTE9XICDf4OHi4+Tl5ufo6err7O3u7/Dx8vP09fb4+fr7/P3+/wogKyBVUFAgIN/AwcLDxMXGx8jJysvMzc7P0NHS09TV1tjZ2tvc3d7/CiArIAotKyBTT0ZPRlJPTSBhYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ekFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFla4OHi4+Tl5ufo6err7O3u7/Dx8vP09fb4+fr7/P3+3//AwcLDxMXGx8jJysvMzc7P0NHS09TV1tjZ2tvc3d6/Ci0rIFNPRk9UTyAgIGViY3RlZmdoZWprbG5uZXBrcnN0ZXZ2a2VzZWJjdGVmZ2hlamtsbm5lcGtyc3RldnZrZXNlZWVlZWVlY2VlZWVlZWVlZG5lZWVlZWVlZWVlZXBzZWVlZWVlZWVjZWVlZWVlZWVkbmVlZWVlZWVlZWVlcD8KLSsgCiArIE1JRFdPUkQJJy0KICsgCiArIE1BUCA5CkBAIC0yNSwzICsyMiwyODcgQEAKICsgTUFQIHPfCiArIAogICBQRlggUyBZIDE4CisqKioqKioqKioqKioqKioKKyoqKiA1NTYgKioqKgorLS0tIDU3Myw4NTMgLS0tLQorICAKKysgIyBzb3VuZHNsaWtlIG1hcHBpbmcgZnJvbSBBc3BlbGwKKysgIyBBc3BlbGwgcGhvbmV0aWNzIGZvciBJcmlzaCwgYnkgS2V2aW4gU2Nhbm5lbGwgPHNjYW5uZWxsQHNsdS5lZHU+CisrICMgQ29weXJpZ2h0IDIwMDIsIDIwMDMgS2V2aW4gUC4gU2Nhbm5lbGwsIGRpc3RyaWJ1dGVkIHVuZGVyIEdOVSBHUEwKKysgIyB2ZXJzaW9uIDIuMAorKyAKKysgU0FMIGZvbGxvd3VwIDAgICAgICAgICAgICAgICAgICAgICMgZWxzZSBicmVha3MgUVVeLCBlLmcuCisrIFNBTCBjb2xsYXBzZV9yZXN1bHQgMSAgICAgICAgICAgICAjIG5vIGRvdWJsZSBsZXR0ZXJzIGluIHJlc3VsdGluZyBzdHJpbmdzCisrIAorKyBTQUwgQU5CSEFOTi0tLS0tICAgICAgICAgKk4qICAgICAgIyBlcGVudGhldGljIHZvd2VsLCBhbmJoYW5uYT8gb25seSwgc2VlIE5CSC0tCisrIFNBTCBBTkJIQUlOLS0tLS0gICAgICAgICAqTiogICAgICAjIGVwZW50aGV0aWMgdm93ZWwsIGFuYmhhaW5uZT8gb25seSwgc2VlIE5CSC0tCisrIFNBTCBBRVJHQS0tICAgICAgICAgICAgICAqUiAgICAgICAjIGVwZW50aGV0aWMgZXhjZXB0aW9uLCBzZWUgUkcsIGFlcmdhIG9ubHkKKysgU0FMIEFPUkctICAgICAgICAgICAgICAgICpSICAgICAgICMgZXBlbnRoZXRpYyBleGNlcHRpb24sIHNlZSBSRywgW21zXWFvcmcqLCBldGMuCisrIFNBTCBBRUlMRy0gICAgICAgICAgICAgICAqTCAgICAgICAjIGVwZW50aGV0aWMgZXhjZXB0aW9uLCBHYWVpbGdlKiBvbmx5LCBzZWUgTEcgCisrIFNBTCBBSUxCSC0tICAgICAgICAgICAgICAqTCogICAgICAjIGVwZW50aGV0aWMgdm93ZWwsIFtiY3NdYWlsYmgqIG9ubHksIHNlZSBMQkgtLQorKyBTQUwgQUxCSMFELS0tLSAgICAgICAgICAgKkwgICAgICAgIyBnYWxiaOFkIG9ubHksIG5leHQgZmV3IGFyZSBleGNlcHRpb25zIHRvIEFMQkgKKysgU0FMIEFMQkjBSUQtLS0tLSAgICAgICAgICpMICAgICAgICMgZ2FsYmjhaWQgb25seSAoY29pbm5lYWxiaOFpZO1zLCBldGMuIGI0KQorKyBTQUwgQUxCSFItLS0gICAgICAgICAgICAgKkwgICAgICAgIyBwb2JhbGJocmVpdGgsIGdhbGJocnVpdGgsIGV0Yy4gZXhjZXB0LiB0byBuZXh0CisrIFNBTCBBTEJILS0gICAgICAgICAgICAgICAqTCogICAgICAjIGVwZW50aGV0aWMgdm93ZWwKKysgU0FMIEFSQkjBRC0tLS0gICAgICAgICAgICpSICAgICAgICMgbfN0YXJiaOFkIG9ubHksIGV4Y2VwdGlvbiB0byBBUkJIIGVwZW50aC4KKysgU0FMIEFSQkjBSUQtLS0tLSAgICAgICAgICpSICAgICAgICMgbfN0YXJiaOFpZCBvbmx5LCAgICIgICAgICAgIiAgICIgICAgIiAKKysgU0FMIEFSQkhVSUwtLS0tLSAgICAgICAgICpSICAgICAgICMgZXBlbnRoLiBleGNlcHRpb24sIGdhcmJodWlsbGUgb25seSwgY3VhcmJoKiBiNAorKyBTQUwgQVJCSFVBLS0tLSAgICAgICAgICAgKlIgICAgICAgIyBlcGVudGguIGV4Y2VwdGlvbiwgZWFkYXJiaHVhcyogb25seQorKyBTQUwgQVJCSElOLS0tLSAgICAgICAgICAgKlIqICAgICAgIyBleGNlcHRpb24gdG8gbmV4dCwgbWFyYmhpbnRpbm4qIG9ubHkKKysgU0FMIEFSQkgoRUkpLS0tICAgICAgICAgICpSICAgICAgICMgZXBlbnRoZXRpYyBleGNlcHRpb24gdG8gbmV4dCwgKnRhcmJoZWFsYWNoLCBldGMuCisrIFNBTCBBUkJILS0gICAgICAgICAgICAgICAqUiogICAgICAjIGVwZW50aGV0aWMsIGdhcmJoLCBkZWFyYmgsIGV0Yy4gLSBbSVVdQVJCSCBiNAorKyBTQUwgQVRIRkgowcnTQUVJT1UpLS0tICAgKkggICAgICAgIyBhdGhmaGlsbCx1YXRoZmhlaWRobWVhY2gsZXRjLi1leGNlcHRpb24gdG8gbmV4dAorKyBTQUwgQVRIKEJDREZHTE1OUFJTVCktICAgKiAgICAgICAgIyBhdGhsYXMsIG1pb25hdGhy+iwgZXRjLiAtIGV4Y2VwdGlvbiB0byBUSC0+SAorKyBTQUwgQURIICAgICAgICAgICAgICAgICAgKiAgICAgICAgIyBibGFkaG0sIGZlYWRoYWluLCB0YWRoYWxsLCBhZGhtYWQsIC1hZGgkLCBldGMuCisrIFNBTCBBR0hJLS0tICAgICAgICAgICAgICAqICAgICAgICAjIGV4Y2VwdGlvbiB0byBBR0gsIGNvcnJhZ2hpb2Igb25seQorKyBTQUwgQUdITE9JTi0tLS0tLSAgICAgICAgKiAgICAgICAgIyAgICIgICAgICAgIiAgIiwgcGxlaWNzZWFnaGwtIG9ubHkgKG5vdCBhZ2hsb2l0KQorKyBTQUwgQUdIICAgICAgICAgICAgICAgICAgKiAgICAgICAgIyBzbGFnaGThbiwgdHJlYWdoZCwgc2FnaGFzLCBldGMuCisrIFNBTCBBT01IKEZMTlNUKS0tLSAgICAgICAqICAgICAgICAjIGZhb21oW2Z0XS0sY2FvbWhuKixuYW9taCogb25seSwgT01IIGV4Y2VwdGlvbgorKyBTQUwgQSAgICAgICAgICAgICAgICAgICAgKgorKyBTQUwgwUlSRy0gICAgICAgICAgICAgICAgKlIgICAgICAgIyBlcGVudGhldGljIGV4Y2VwdGlvbiwgc2VlIFJHLCB04WlyZyosIGV0Yy4KKysgU0FMIMFESFUtLS0gICAgICAgICAgICAgICogICAgICAgICMgcOFkaHVpbGxlIG9ubHksIGV4Y2VwdGlvbiB0byBuZXh0CisrIFNBTCDBREggICAgICAgICAgICAgICAgICAqICAgICAgICAjIOFkaPppbCwgLeFkaCQgb25seQorKyBTQUwgwVRIRkgtLSAgICAgICAgICAgICAgKkggICAgICAgIyB04XRoZmjpaXRobGVhbm4sIGdu4XRoZmgtIG9ubHkgZXhjZXB0aW9uIHRvIG5leHQKKysgU0FMIMFUSChCQ0RGR0xNTlBSU1QpLSAgICogICAgICAgICMgZuF0aHNj6WFsLCBnbuF0aCosIGJs4XRoZmhsZWFzYywgZXRjLgorKyBTQUwgwSAgICAgICAgICAgICAgICAgICAgKgorKyBTQUwgQkFOQkheJCAgICAgICAgICAgICAgQipOKlYgICAgIyBlcGVudGhldGljIHZvd2VsLCBzZWUgTkJILS0sIGJhbmJoLCBub3QgLWFy+m4KKysgU0FMIEJIQU5CSF4kICAgICAgICAgICAgIFYqTipWICAgICMgZXBlbnRoZXRpYyB2b3dlbCwgc2VlIE5CSC0tCisrIFNBTCBCQUlOQkheJCAgICAgICAgICAgICBCKk4qViAgICAjIGVwZW50aGV0aWMgdm93ZWwsIHNlZSBOQkgtLSwgYmFpbmJoIG9ubHkKKysgU0FMIEJIQUlOQkheJCAgICAgICAgICAgIFYqTipWICAgICMgZXBlbnRoZXRpYyB2b3dlbCwgc2VlIE5CSC0tCisrIFNBTCBCSCAgICAgICAgICAgICAgICAgICBWICAgICAgICAjIGluY2x1ZGVzIGJoJCwgZWNsaXBzaXMgb2YgRiB2aWEgY29sbGFwc2luZworKyBTQUwgQiAgICAgICAgICAgICAgICAgICAgQiAgICAgICAgIyBub3RlIGVjbGlwc2lzIG9mIFAgdmlhIGNvbGxhcHNpbmcKKysgU0FMIENIyUFERkHNLS0kICAgICAgICAgIEsqVFYgICAgICMgZXhjZXB0aW9uIHRvIEZBzSQsIChiculhZ3xkb3xt7SkKKysgU0FMIENIRUFSQ0gtLSAgICAgICAgICAgIEsqUiogICAgICMgZXBlbnRoZXRpYyB2b3dlbCwgY2hlYXJjaGFpbGwgb25seQorKyBTQUwgQ0VBUkNILS0gICAgICAgICAgICAgSypSKiAgICAgIyBlcGVudGhldGljIHZvd2VsLCBnP2NlYXJjaGFpbGwgb25seQorKyBTQUwgQ0hPTkYgICAgICAgICAgICAgICAgSypOKlYgICAgIyBlcGVudGhldGljIHZvd2VsLG5vIGRhc2g9PmhhbmRsZXMgRkFJP0RIJGV4Y2VwdHMKKysgU0FMIENPTkYgICAgICAgICAgICAgICAgIEsqTipWICAgICMgICAgICIgICAgICAgICIgICAgIiAgICIgICAgICIgICAgICAgIiAgICAgICAiCisrIFNBTCBDQU5CSC0tICAgICAgICAgICAgICBLKk4qICAgICAjIGVwZW50aGV0aWMgdm93ZWwsIHNlZSBOQkgtLSwgZz9jYW5iaOFzKiBvbmx5CisrIFNBTCBDSEFOQkgtLSAgICAgICAgICAgICBLKk4qICAgICAjIGVwZW50aGV0aWMgdm93ZWwsIHNlZSBOQkgtLSwgY2hhbmJo4XMqIG9ubHkKKysgU0FMIENPTEJIQS0tLSAgICAgICAgICAgIEsqTCogICAgICMgZXBlbnRoZXRpYyB2b3dlbCwgc2VlIExCSC0tLCBnP2NvbGJoYe0/IG9ubHkKKysgU0FMIENIT0xCSEEtLS0gICAgICAgICAgIEsqTCogICAgICMgZXBlbnRoZXRpYyB2b3dlbCwgc2VlIExCSC0tLCBjaG9sYmhh7T8gb25seQorKyBTQUwgQ1VSRiAgICAgICAgICAgICAgICAgSypSViAgICAgIyBleGNlcHRpb24gdG8gRsEkLCBnP2N1cmbhKG5uYSkgb25seQorKyBTQUwgQ0hVUkYgICAgICAgICAgICAgICAgSypSViAgICAgIyBleGNlcHRpb24gdG8gRsEkLCBjaHVyZuEobm5hKSBvbmx5CisrIFNBTCBDSCAgICAgICAgICAgICAgICAgICBLICAgICAgICAjIE9LCisrIFNBTCBDICAgICAgICAgICAgICAgICAgICBLCisrIFNBTCBESE9SQ0gtLSAgICAgICAgICAgICBLKlIqICAgICAjIGVwZW50aGV0aWMgdm93ZWwsIGRvcmNoYSByb290IG9ubHkKKysgU0FMIERPUkNILS0gICAgICAgICAgICAgIFQqUiogICAgICMgZXBlbnRoZXRpYyB2b3dlbCwgZG9yY2hhIHJvb3Qgb25seQorKyBTQUwgREhFQVJGICAgICAgICAgICAgICAgWSpSKiAgICAgIyBlcGVudGhldGljIHZvd2VsLGluaXQgb25seSwgbm8gZGFzaD0+RkHNIGV4Y2VwdAorKyBTQUwgREVBUkYgICAgICAgICAgICAgICAgVCpSKiAgICAgIyBlcGVudGhldGljIHZvd2VsLGluaXRpYWwgb25seSAobmQtIGRvbmUgYjQpCisrIFNBTCBESEVJUkYtICAgICAgICAgICAgICBZKlIqICAgICAjIGVwZW50aGV0aWMgdm93ZWwsIGluaXRpYWwgb25seQorKyBTQUwgREVJUkYtICAgICAgICAgICAgICAgVCpSKiAgICAgIyBlcGVudGhldGljIHZvd2VsLCAobGVhcyk/ZGVpcmYqIG9ubHkKKysgU0FMIERIT0lMKEJGKS0gICAgICAgICAgIEsqTCogICAgICMgZXBlbnRoZXRpYyxzZWUgTEJILS0saW5pdGlhbCBvbmx5LGRob2lsKGZlfGJoKSoKKysgU0FMIERPSUwoQkYpLSAgICAgICAgICAgIFQqTCogICAgICMgZXBlbnRoZXRpYywgc2VlIExCSC0tLCAiICAgICAgIiAgKG5kLSBkb25lIGI0KQorKyBTQUwgREhJRkVBUiAgICAgICAgICAgICAgWSpWKlIgICAgIyBleGNlcHRpb24gdG8gRkVBUiQsIF5kaGlmZWFyJCBvbmx5CisrIFNBTCBESUZFQVIgICAgICAgICAgICAgICBUKlYqUiAgICAjIGV4Y2VwdGlvbiB0byBGRUFSJCwgXmRpZmVhciQgb25seSAobmQtIGI0KQorKyBTQUwgREgkICAgICAgICAgICAgICAgICAgXyAgICAgICAgIyBbYeF1XWRoK21vc3QgW2lvXWRoIGRvbmUgYjQsW2Xp7fP6XWRoIGRvbmUgaGVyZQorKyBTQUwgREgoQcFP01XaKS0gICAgICAgICAgSyAgICAgICAgIyBhdGhkaPpjaGFzLCBide1kaG9ubiwgY29taGRo4WlsLCBldGMuCisrIFNBTCBESChFyUnNKS0gICAgICAgICAgICBZICAgICAgICAjIGF0aGRo6WFuLCBjYW9yZGhlYXJnLCBjaW5lZGhlaWdoaWx0LCBldGMuCisrIFNBTCBESEwoQVXaKS0tICAgICAgICAgICBLICAgICAgICAjIGNvbWhkaGz6dGhhaWdoLCBeZGhsLSAgb25seQorKyBTQUwgREhMKEVJzSktLSAgICAgICAgICAgWSAgICAgICAgIyAobe18bmVhbWgpZGhsKGlzdGVhbnxlYXRofO10aGn6KSwgXmRobCAgb25seQorKyBTQUwgREhSKEHBT9NV2iktLSAgICAgICAgSyAgICAgICAgIyAqZGhyb2ltLG1hcmJoZGhyYSosKmRoclvhdV1tYSwgXmRociBvbmx5CisrIFNBTCBESFIoyUVJzSktLSAgICAgICAgICBZICAgICAgICAjICpkaHJlYWNoLGZlaXJkaHJpcywqZGhy6WFjaHQsKmRocmVhc2FjaHQsXmRocgorKyBTQUwgRCAgICAgICAgICAgICAgICAgICAgVCAgICAgICAgIyBub3RlIGVjbGlwc2lzIG9mIFQgdmlhIGNvbGxhcHNpbmcKKysgU0FMIEVBRkFSLS0kICAgICAgICAgICAgICpWICAgICAgICMgZ2VhZmFyLCBtZWFmYXIgb25seSwgRkFSJCBleGNlcHRpb24KKysgU0FMIEVPRkFSLS0kICAgICAgICAgICAgICogICAgICAgICMgc2lsZW50IHZlcmIgZW5kaW5nLCBleGNlcHRpb24gdG8gT0ZBUiQgZXhjZXB0IQorKyBTQUwgRUlMQkgtLSAgICAgICAgICAgICAgKkwqICAgICAgIyBlcGVudGhldGljIHZvd2VsLCBzZWUgTEJILS0gZXhjZXB0aW9uIGJlbG93CisrIFNBTCBFSURIKEVJKS0gICAgICAgICAgICAqICAgICAgICAjIGF1Z21lbnRzIElESCBydWxlLGVpZGhlYW5uLHRlaWRoZWFjaCxtZWlkaGlyLGV0YworKyBTQUwgRU9NSChGVCktLS0gICAgICAgICAgKiAgICAgICAgIyBsZW9taFtmdF0tIG9ubHksIGV4Y2VwdGlvbiB0byAtb21oIHJ1bGUKKysgU0FMIEUgICAgICAgICAgICAgICAgICAgICoKKysgU0FMIMlBUkJILS0gICAgICAgICAgICAgICpSICAgICAgICMgZXBlbnRoZXRpYyBleGNlcHRpb24sIGfpYXJiaC0gb25seQorKyBTQUwgyUFSTS0gICAgICAgICAgICAgICAgKlIgICAgICAgIyBlcGVudGhldGljIGV4Y2VwdGlvbiwg6WFybWgrIHTpYXJtYSByb290IG9ubHkKKysgU0FMIMlBUkctICAgICAgICAgICAgICAgICpSICAgICAgICMgZXBlbnRoZXRpYyBleGNlcHRpb24sIOlhcmdoKyhs4W4pP2zpYXJnYXMgb25seQorKyBTQUwgyUlSRy0gICAgICAgICAgICAgICAgKlIgICAgICAgIyBlcGVudGhldGljIGV4Y2VwdGlvbiwg6WlyZ2grIGFpbGzpaXJnZSBvbmx5CisrIFNBTCDJSVJCSC0tICAgICAgICAgICAgICAqUiAgICAgICAjIGVwZW50aGV0aWMgZXhjZXB0LiBs6WlyYmhyZWl0aCosIHNw6WlyYmhlYW4gb25seQorKyBTQUwgyUFMQkgtLSAgICAgICAgICAgICAgKkwgICAgICAgIyBi6WFsYmhhY2ggb25seSwgZXhjZXB0aW9uIHRvIEFMQkgKKysgU0FMIMlBRsEgICAgICAgICAgICAgICAgICpWKiAgICAgICMg6WFm4SBvbmx5LCBleGNlcHRpb24gdG8gRsEkCisrIFNBTCDJICAgICAgICAgICAgICAgICAgICAqCisrIFNBTCBGSEFJUkNILS0gICAgICAgICAgICAqUiogICAgICAjIGVwZW50aGV0aWMgdm93ZWwsIGZoYWlyY2gqIG9ubHkKKysgU0FMIEZBSVJDSC0tICAgICAgICAgICAgIFYqUiogICAgICMgZXBlbnRoZXRpYyB2b3dlbCwgKGJoKT9mYWlyY2gqIG9ubHkKKysgU0FMIEZIT0lSRi0gICAgICAgICAgICAgICpSKiAgICAgICMgZXBlbnRoZXRpYyB2b3dlbCwgZm9pcmZlIHJvb3Qgb25seQorKyBTQUwgRk9JUkYtICAgICAgICAgICAgICAgVipSKiAgICAgIyBlcGVudGhldGljIHZvd2VsLCBpbml0aWFsIChiaCk/Zm9pcmYqIG9ubHkKKysgU0FMIEZIT05OTUgtLSAgICAgICAgICAgICpOKiAgICAgICMgZXBlbnRoZXRpYyB2b3dlbCwgc2VlIE5NSC0tLCBmaG9ubm1oYWk/ciogb25seQorKyBTQUwgRk9OTk1ILS0gICAgICAgICAgICAgVipOKiAgICAgIyAgICAiICAgICAgICAgIiAgICAgIiAgICAiLCAoYmgpP2Zvbm5taGFpP3IqIG9ubHkKKysgU0FMIEZIT0lMTUgtLSAgICAgICAgICAgICpMKiAgICAgICMgZXBlbnRoZXRpYyB2b3dlbCwgc2VlIExNSC0tLCBmaG9pbG1oZSBvbmx5CisrIFNBTCBGT0lMTUgtLSAgICAgICAgICAgICBWKkwqICAgICAjIGVwZW50aGV0aWMgdm93ZWwsIHNlZSBMTUgtLSwgKGJoKT9mb2lsbWhlIG9ubHkKKysgU0FMIEZIT0xNSC0tICAgICAgICAgICAgICpMKiAgICAgICMgZXBlbnRoZXRpYyB2b3dlbCwgc2VlIExNSC0tLCBmaG9sbWgqIG9ubHkKKysgU0FMIEZPTE1ILS0gICAgICAgICAgICAgIFYqTCogICAgICMgZXBlbnRoZXRpYyB2b3dlbCwgc2VlIExNSC0tLCAoYmgpP2ZvbG1oKiBvbmx5CisrIFNBTCBGRUFESF4kICAgICAgICAgICAgICBWKiAgICAgICAjIGV4Y2VwdGlvbiB0byB2ZXJiIGVuZGluZyBiZWxvdywgZWNsaXBzaXMgYnkgbHVjaworKyBTQUwgRkVBUl4kICAgICAgICAgICAgICAgVipSICAgICAgIyAgICAgIiAgICAgICIgICAiICAgICAiICAgICAiICAgICAgICAiICAgICAiICAgIiAKKysgU0FMIEZJTk5eJCAgICAgICAgICAgICAgIFYqTiAgICAgICMgICAgICIgICAgICAiICAgIiAgICAgIiAgICAgIiAgICAgICAgIiAgICAgIiAgICIgCisrIFNBTCBGRcFeJCAgICAgICAgICAgICAgICBWKiAgICAgICAjICAgICAiICAgICAgIiAgICIgICAgICIgICAgICIgICAgICAgICIgICAgICIgICAiIAorKyBTQUwgRkHNXiQgICAgICAgICAgICAgICAgViogICAgICAgIyAgICAgIiAgICAgICIgICAiICAgICAiICAgICAiICAgICAgICAiICAgICAiICAgIiAKKysgU0FMIEbNXiQgICAgICAgICAgICAgICAgIFYqICAgICAgICMgICAgICIgICAgICAiICAgIiAgICAgIiAgICAgIiAgICAgICAgIiAgICAgIiAgICIgCisrIFNBTCBGQUlESC0tLS0kICAgICAgICAgICBfICAgICAgICAjIHNpbGVudCAnZicgaW4gdmVyYiBlbmRpbmcKKysgU0FMIEZBREgtLS0kICAgICAgICAgICAgIF8gICAgICAgICMgICAiICAgICAiICAgIiAgICIgICAgIgorKyBTQUwgRklESC0tLSQgICAgICAgICAgICAgXyAgICAgICAgIyAgICIgICAgICIgICAiICAgIiAgICAiCisrIFNBTCBGRUFESC0tLS0kICAgICAgICAgICBfICAgICAgICAjICAgIiAgICAgIiAgICIgICAiICAgICIgICAgCisrIFNBTCBGRUFSLS0tJCAgICAgICAgICAgICBfICAgICAgICAjICAgIiAgICAgIiAgICIgICAiICAgICIgICAgCisrIFNBTCBGQVItLSQgICAgICAgICAgICAgICBfICAgICAgICAjICAgIiAgICAgIiAgICIgICAiICAgICIKKysgU0FMIEZJTk4tLS0kICAgICAgICAgICAgIF8gICAgICAgICMgICAiICAgICAiICAgIiAgICIgICAgIiAgICAKKysgU0FMIEZBSU5OLS0tLSQgICAgICAgICAgIF8gICAgICAgICMgICAiICAgICAiICAgIiAgICIgICAgIiAgICAKKysgU0FMIEbBLSQgICAgICAgICAgICAgICAgIF8gICAgICAgICMgICAiICAgICAiICAgIiAgICIgICAgIiAKKysgU0FMIEZFwS0tJCAgICAgICAgICAgICAgIF8gICAgICAgICMgICAiICAgICAiICAgIiAgICIgICAgIiAKKysgU0FMIEZBzS0tJCAgICAgICAgICAgICAgIF8gICAgICAgICMgICAiICAgICAiICAgIiAgICIgICAgIgorKyBTQUwgRs0tJCAgICAgICAgICAgICAgICAgXyAgICAgICAgIyAgICIgICAgICIgICAiICAgIiAgICAiCisrIFNBTCBGQUlNSShEUyktLS0tLSQgICAgICBfICAgICAgICAjICAgIiAgICAgIiAgICIgICAiICAgICIgIChubyBleGNlcHRpb25zKQorKyBTQUwgRklNSShEUyktLS0tJCAgICAgICAgXyAgICAgICAgIyAgICIgICAgICIgICAiICAgIiAgICAiICAobm8gZXhjZXB0aW9ucykKKysgU0FMIEZBSUTNUy0tLS0tJCAgICAgICAgIF8gICAgICAgICMgICAiICAgICAiICAgIiAgICIgICAgIiAgKG5vIGV4Y2VwdGlvbnMpCisrIFNBTCBGSUTNUy0tLS0kICAgICAgICAgICBfICAgICAgICAjICAgIiAgICAgIiAgICIgICAiICAgICIgIChubyBleGNlcHRpb25zKQorKyBTQUwgRkggICAgICAgICAgICAgICAgICAgXyAgICAgICAgIyBhbHdheXMgc2lsZW50IAorKyBTQUwgRiAgICAgICAgICAgICAgICAgICAgVgorKyBTQUwgR0hBSU5NSC0tICAgICAgICAgICAgSypOKiAgICAgIyBlcGVudGhldGljIHZvd2VsLHNlZSBOTUgtLSxeZ2hhaW5taCogb25seQorKyBTQUwgR0FJTk1ILS0gICAgICAgICAgICAgSypOKiAgICAgIyBlcGVudGhldGljIHZvd2VsLHNlZSBOTUgtLSxeZ2Fpbm1oKiBvbmx5LCBuZy0gYjQKKysgU0FMIEdIRUFMTE1ILS0gICAgICAgICAgIFkqTCogICAgICMgZXBlbnRoZXRpYyB2b3dlbCxzZWUgTE1ILS0sZ2hlYWxsbWhhciBvbmx5CisrIFNBTCBHRUFMTE1ILS0gICAgICAgICAgICBLKkwqICAgICAjIGVwZW50aGV0aWMgdm93ZWwsc2VlIExNSC0tLGdlYWxsbWhhciBvbmx5CisrIFNBTCBHTEFGQURIICAgICAgICAgICAgICBLTCpWKiAgICAjIGV4Y2VwdGlvbiB0byBGQURIJCwgbm90IGdsYWZhcm5hY2gKKysgU0FMIEdITEFGQURIICAgICAgICAgICAgIEtMKlYqICAgICMgZXhjZXB0aW9uIHRvIEZBREgkIAorKyBTQUwgR0xBRkFJREggICAgICAgICAgICAgS0wqViogICAgIyBleGNlcHRpb24gdG8gRkFJREgkLCBub3QgZ2xhZmFpcmUKKysgU0FMIEdITEFGQUlESCAgICAgICAgICAgIEtMKlYqICAgICMgZXhjZXB0aW9uIHRvIEZBSURIJCAKKysgU0FMIEdIJCAgICAgICAgICAgICAgICAgIF8gICAgICAgICMgW2Fp83VdZ2gsbW9zdCBvZ2ggZG9uZSBiNCxbZeHp7fpdZ2ggYWxsIHRlcm1pbmFsCisrIFNBTCBHSChBwU/TVdopLSAgICAgICAgICBLICAgICAgICAjIGJvYmdoYWlzdGUsIGRlb2lyZ2jhcywgc29naG9udGEsIGV0Yy4KKysgU0FMIEdIKEXJSc0pLSAgICAgICAgICAgIFkgICAgICAgICMgYXRoZ2hpbiwgbHVhc2do6WFyYWlnaCwgZXRjLgorKyBTQUwgR0hMKEHBT9NV2iktLSAgICAgICAgSyAgICAgICAgIyBhcmRnaGzzcmFjaCwgZm9s+nNnaGxhbnTzaXIsIGV0Yy4KKysgU0FMIEdITChFyUkpLS0gICAgICAgICAgIFkgICAgICAgICMgY29taGdobOlhcywgY29taGdobGVhY2HtLCBzY29pbHRnaGxlYW5uLCBldGMuCisrIFNBTCBHSFIoQcFP01XaKS0tICAgICAgICBLICAgICAgICAjIHTtcmdocuEsIGdyaWFuZ2hyYWYsIGFvaXNnaHL6cGEsIGV0Yy4gCisrIFNBTCBHSFIoRclJzSktLSAgICAgICAgICBZICAgICAgICAjIGlkaXJnaHLpYXPhbiwgYnJlaXRoZ2hyZWFtYW5uYWNoLCBldGMuCisrIFNBTCBHSE4oQcFP01XaKS0tICAgICAgICBLICAgICAgICAjIGRlYXNnaG7hdGgsIG5lYW1oZ2hu4WNoLCBldGMuCisrIFNBTCBHSE4oRclJzSktLSAgICAgICAgICBZICAgICAgICAjIGxlb3Jnbu1vbWgsIGFvbmdobulpdGhlYWNoLCBldGMuCisrIFNBTCBHICAgICAgICAgICAgICAgICAgICBLICAgICAgICAjIG5vdGUgZWNsaXBzaXMgb2YgQyB2aWEgY29sbGFwc2luZworKyBTQUwgSCAgICAgICAgICAgICAgICAgICAgSCAgICAgICAgIyBiZXR3ZWVuIHZvd2VscytGYXJhbmhh7XQsZm9yaGFsbGEsZXRjLgorKyBTQUwgSUFSRy0gICAgICAgICAgICAgICAgKlIgICAgICAgIyBlcGVudGhldGljIGV4Y2VwdGlvbiwgaWFyZ/ppbCwgdGlhcmfhaWwsIGV0Yy4KKysgU0FMIElBUkJILS0gICAgICAgICAgICAgICpSICAgICAgICMgaWFyYmjhaXMsIGdpYXJiaG9zY2EsIGV0Yy4gZXBlbnRoLiBleGNlcHRpb24KKysgU0FMIElESVJCSC0tICAgICAgICAgICAgICpUKlIgICAgICMgaWRpcmJoZWFydCwgaWRpcmJobGlhaW4sIGV0Yy4sIGV4Y2VwdGlvbiB0byBJUkJICisrIFNBTCBJUkJIUtotLS0tICAgICAgICAgICAqUiAgICAgICAjIG11aXJiaHL6Y2h0KiBvbmx5LCBleGNlcHRpb24gdG8gSVJCSC0tCisrIFNBTCBJUkJIVS0tLSAgICAgICAgICAgICAqUiAgICAgICAjIGVvY2hhaXJiaHVpbGxlLGxpdGlyYmh1YW1hIG9ubHksIGV4Y2VwdC4gdG8gbmV4dAorKyBTQUwgSVJCSC0tICAgICAgICAgICAgICAgKlIqICAgICAgIyAqc2VpcmJo7XMsIHRhaXJiaCosIHRvaXJiaCosIGV0Yy4gZXBlbnRoZXRpYworKyBTQUwgSUbNLSQgICAgICAgICAgICAgICAgKlYgICAgICAgIyBleGNlcHRpb24gdG8gRs0kLCDJSUbNJCBkb25lIGJlZm9yZQorKyBTQUwgSU5NSEUoQcEpLS0tLSAgICAgICAgKk4gICAgICAgIyBleGNlcHRpb24gdG8gbmV4dCxhaW5taGVhc2FydGhhLGlubWhlYWJocvosIGV0Yy4KKysgU0FMIElOTUhFLS0tICAgICAgICAgICAgICpOKiAgICAgICMgZXBlbnRoZXRpYyB2b3dlbCwgaW5taGUkIG9ubHkgYnkgcHJldmlvdXMKKysgU0FMIElOTk1ILS0gICAgICAgICAgICAgICpOKiAgICAgICMgZXBlbnRoZXRpYyB2b3dlbCwgZnVpbm5taC0sIGNvaW5ubWhlIG9ubHkKKysgU0FMIElPTk1IQUctLS0tICAgICAgICAgICpOICAgICAgICMgZXhjZXB0aW9uIHRvIG5leHQsIG1pb25taGFnYWRoIG9ubHkKKysgU0FMIElPTk1IQS0tLSAgICAgICAgICAgICpOKiAgICAgICMgZXBlbnRoZXRpYyB2b3dlbCwgY2lvbm1oYXIgb25seSwgc2VlIE5NSC0tCisrIFNBTCBJVEhGSChBRUlPVcHJzdPaKS0tLSAqSCAgICAgICAjIGNpdGhmaG9sYyosY3JpdGhmaHVhY2h0LGZyaXRoKiBvbmx5LSBzZWUgbmV4dAorKyBTQUwgSVRIKEJDREZHTE1OUFJTVCktICAgKiAgICAgICAgIyBhaXRocmlzLCBmcml0aCosIGV0Yy4gIGV4Y2VwdGlvbiB0byBUSC0+SAorKyBTQUwgSURIKEJDREZHTE1OUFJTVCktICAgKiAgICAgICAgIyBmZWlkaG0sIHRyYWlkaGZpbCwgb2lkaHJlLCBldGMuCisrIFNBTCBJR0goQ0RFRklMTlJTVCktICAgICAqICAgICAgICAjIGZvaWdobmUsY2FpZ2hkZeFuLG9pZ2hyaWdoLG9pZ2hlYXIsZmVpZ2hpbCxldGMuCisrIFNBTCBJICAgICAgICAgICAgICAgICAgICAqCisrIFNBTCDNT1JNLSAgICAgICAgICAgICAgICAqUiAgICAgICAjIGVwZW50aGV0aWMgZXhjZXB0aW9uLCBk7W9ybWEsIGbtb3ItIG9ubHkKKysgU0FMIM1PTUgoQkNERkdMTU5QUlNUKS0tLSAqICAgICAgICMgKHByfHJ8bHxzbnxnbintb21oLSBvbmx5LCBleGNlcHRpb25zIHRvIG9taC0KKysgU0FMIM1USFMtICAgICAgICAgICAgICAgICogICAgICAgICMgY2ztdGhzZWFjaCBvbmx5IChubyBleGNwLiBmb3IgZO10aHJlYWJoLCBldGMuKQorKyBTQUwgzSAgICAgICAgICAgICAgICAgICAgKgorKyBTQUwgSiAgICAgICAgICAgICAgICAgICAgVCAgICAgICAgIyBpbml0aWFsIGosIGRpb3NjLWphY2HtIG9ubHk7IGJpdCBsaWtlIHNsZW5kZXIgZAorKyBTQUwgSyAgICAgICAgICAgICAgICAgICAgSyAgICAgICAgIyBrYXJhdOkgb25seQorKyBTQUwgTEVBTkJILS0gICAgICAgICAgICAgTCpOKiAgICAgIyBlcGVudGhldGljIHZvd2VsLCAodWNodCk/bGVhbmJoKGFvaXMpPyxzZWUgTkJILS0KKysgU0FMIExJTkJILS0gICAgICAgICAgICAgIEwqTiogICAgICMgZXBlbnRoZXRpYyB2b3dlbCwgKHVjaHQpP2xpbmJoIG9ubHksIHNlZSBOQkgtLQorKyBTQUwgTE1ILS0gICAgICAgICAgICAgICAgTCAgICAgICAgIyBmZWFsbG1oYXL6LCBldGMuLCBlcGVudGguIGV4Y2VwdGlvbgorKyBTQUwgTEJILS0gICAgICAgICAgICAgICAgTCAgICAgICAgIyB1YWlsbGJocmVhcywgZXRjLiwgZXBlbnRoLiBleGNlcHRpb24KKysgU0FMIExHSC0tICAgICAgICAgICAgICAgIEwgICAgICAgICMgdGltcGVhbGxnaGVhcnIsIGV0Yy4sIGVwZW50aC4gZXhjZXB0aW9uCisrIFNBTCBMKEJHTSktICAgICAgICAgICAgICBMKiAgICAgICAjIGVwZW50aGV0aWMgdm93ZWwsIHNlZSBhbHNvIFVMQ0gtLQorKyBTQUwgTCAgICAgICAgICAgICAgICAgICAgTAorKyBTQUwgTU9SRkHNLS0kICAgICAgICAgICAgTSpSViAgICAgIyBleGNlcHRpb24gdG8gc2lsZW50IEZBzSQKKysgU0FMIE1CQU5CSF4kICAgICAgICAgICAgIE0qTipWICAgICMgZXBlbnRoZXRpYyB2b3dlbCwgc2VlIE5CSC0tLCBub3QgLWFy+m4KKysgU0FMIE1CQUlOQkheJCAgICAgICAgICAgIE0qTipWICAgICMgZXBlbnRoZXRpYyB2b3dlbCwgc2VlIE5CSC0tCisrIFNBTCBNQl4gICAgICAgICAgICAgICAgICBNICAgICAgICAjIGVjbGlwc2lzCisrIFNBTCBNSEFSRi0gICAgICAgICAgICAgICBWKlIqICAgICAjIGVwZW50aGV0aWMgdm93ZWwKKysgU0FMIE1BUkYtICAgICAgICAgICAgICAgIE0qUiogICAgICMgZXBlbnRoZXRpYyB2b3dlbCwgaW5pdGlhbCBvbmx5CisrIFNBTCBNSE9ESCAgICAgICAgICAgICAgICBWKiAgICAgICAjIE9ESCBleGNlcHRpb24sIHVzdWFsbHkgaW5pdGlhbAorKyBTQUwgTU9ESCAgICAgICAgICAgICAgICAgTSogICAgICAgIyAgIiAgICAgIiAgICAgLCAgICIgICAgICAgIgorKyBTQUwgTUggICAgICAgICAgICAgICAgICAgViAgICAgICAgIyBpbmNsdWRlcyBtaCQsL3cvLC92LyArIHNlZSBVTUgKKysgU0FMIE0gICAgICAgICAgICAgICAgICAgIE0KKysgU0FMIE5BRkHNLS0gICAgICAgICAgICAgIE4qViAgICAgICMgZXhjZXB0aW9uIHRvIEZBzSQsIHNuYWZh7SBvbmx5CisrIFNBTCBOTkFSQi0gICAgICAgICAgICAgICBOKlIgICAgICAjIGV4Y2VwdGlvbiB0byBSQiBlcGVudGhldGljLCBpb25uYXJiKiBvbmx5CisrIFNBTCBOTkVBTEJILS0gICAgICAgICAgICBOKkwgICAgICAjIGV4Y2VwdGlvbiB0byBBTEJIIGVwZW50aGV0aWMsIGNvaW5uZWFsYmjhIG9ubHkKKysgU0FMIE5ET1JDSC0tICAgICAgICAgICAgIE4qUiogICAgICMgZXBlbnRoZXRpYyB2b3dlbCwgc2VlIERPUkNILS0KKysgU0FMIE5ERUFSRi0gICAgICAgICAgICAgIE4qUiogICAgICMgZXBlbnRoZXRpYyB2b3dlbCwgc2VlIERFQVJGLQorKyBTQUwgTkRFSVJGLSAgICAgICAgICAgICAgTipSKiAgICAgIyBlcGVudGhldGljIHZvd2VsLCBzZWUgREVJUkYtCisrIFNBTCBORE9JTChCRiktICAgICAgICAgICBOKkwqICAgICAjIGVwZW50aGV0aWMgdm93ZWwsIHNlZSBET0lMKEJGKS0KKysgU0FMIE5ESUZFQVIgICAgICAgICAgICAgIE4qVipSICAgICMgZXhjZXB0aW9uIHRvIEZFQVIkLCBebmRpZmVhciQgb25seQorKyBTQUwgTkdBSU5NSC0tICAgICAgICAgICAgTipOKiAgICAgIyBlcGVudGhldGljIHZvd2VsLCBzZWUgR0FJTk1ILS0KKysgU0FMIE5HRUFMTE1ILS0gICAgICAgICAgIE4qTCogICAgICMgZXBlbnRoZXRpYyB2b3dlbCwgc2VlIEdFQUxMTUgtCisrIFNBTCBOR0xBRkFESCAgICAgICAgICAgICBOTCpWKiAgICAjIGV4Y2VwdGlvbiB0byBGQURIJCwgXm5nbGFmYWRoJCBvbmx5CisrIFNBTCBOR0xBRkFJREggICAgICAgICAgICBOTCpWKiAgICAjIGV4Y2VwdGlvbiB0byBGQUlESCQsIF5uZ2xhZmFpZGgkIG9ubHkKKysgU0FMIE5DSEEozVMpLS0tLSAgICAgICAgIE4qICAgICAgICMgZXBlbnRoZXRpYyB2b3dlbCwgKnNoP2VhbmNoYSjtcykqLGlvbmNoYXMgb25seQorKyBTQUwgTkNIQUlSRC0tLS0tLSAgICAgICAgTiAgICAgICAgIyBleGNlcHRpb24gdG8gbmV4dCwgZGFvbmNoYWlyZCogb25seQorKyBTQUwgTkNIQUkoUlMpLS0tLS0gICAgICAgTiogICAgICAgIyBlcGVudGguIHRpb25jaGFpciosIGlvbmNoYWlzLCAqc2g/ZWFuY2hhaSosIGV0Yy4KKysgU0FMIE5DSEFJVEhFLS0tLS0tLSAgICAgIE4qICAgICAgICMgICAgICIgICAgICAgICIgICwgc2g/ZWFuY2hhaXRoZSwgbm90IHNlYW5jaGFpdGUKKysgU0FMIE4oREcpXiAgICAgICAgICAgICAgIE4gICAgICAgICMgZWNsaXBzaXMKKysgU0FMIE5NSC0tICAgICAgICAgICAgICAgIE4gICAgICAgICMgZXhjZXB0aW9uIHRvIE4oQk0pLSwgcGlhbm1oYXIsIG9ubm1oYWlyZSwgZXRjLiAKKysgU0FMIE5CSC0tICAgICAgICAgICAgICAgIE4gICAgICAgICMgICAgIiAgICAgICAiICAgIiwgYW9uYmhlYW5uYWNoLCBidW5iaHJhdCwgZXRjLgorKyBTQUwgTihCTSktICAgICAgICAgICAgICAgTiogICAgICAgIyBlcGVudGhldGljIHZvd2VsLCBiaW5iLCBhaW5tLCBldGMuCisrIFNBTCBOICAgICAgICAgICAgICAgICAgICBOCisrIFNBTCBPRkFSLS0kICAgICAgICAgICAgICAqViAgICAgICAjIGV4Y2VwdGlvbiB0byBGQVIkLCBFT0ZBUiBkb25lIGI0CisrIFNBTCBPSVJDSC0tICAgICAgICAgICAgICAqUiogICAgICAjIGVwZW50aGV0aWMgdm93ZWwsIHQ/b2lyY2gqIG9ubHkKKysgU0FMIE9DQUxCSC0tICAgICAgICAgICAgICpLKkwgICAgICMgZXhjZXB0aW9uIHRvIEFMQkggLSBmb2NhbGJo4Sogb25seQorKyBTQUwgT1JCSMEtLS0gICAgICAgICAgICAgKlIqICAgICAgIyBlcGVudGhldGljIHZvd2VsLCBmb3JiaOFzIG9ubHkKKysgU0FMIE9OTkNIQS0tLSAgICAgICAgICAgICpOKiAgICAgICMgZXBlbnRoZXRpYyB2b3dlbCAgIGZpb25uY2hhLCBEb25uY2hhIG9ubHkKKysgU0FMIE9NSEFSQi0gICAgICAgICAgICAgICpSICAgICAgICMgZXhjZXB0aW9uIHRvIGVwZW50aC4gUihCRkdNKS0sIGNvbWhhcmJhKiBvbmx5CisrIFNBTCBPTUgoQkNERkdMTU5QUlNUKS0gICAqICAgICAgICAjIGNvbWgtLCBEb21obmFjaCwgZXRjLiAoc2V2ZXJhbCBleGNwdHMgYjQgdGhpcykKKysgU0FMIE9USChCQ0RHTE1OUFJTKS0gICAgICogICAgICAgICMgY290aHJvbSwgYmFvdGhjaGFpbnQsIGdhb3Roc2PhdGgsIGV0Yy4KKysgU0FMIE9ESEFPLS0tLSAgICAgICAgICAgICogICAgICAgICMgZm9kaGFvKiBvbmx5LCBleGNlcHRpb24gdG8gbmV4dAorKyBTQUwgT0RIKEFDTE5SKS0gICAgICAgICAgKiAgICAgICAgIyBib2RocuFuLG1vZGhuYWlnaCx0b2RoY2hh7Sxmb2RobGEsYm9kaGFyIGV0Yy4KKysgU0FMIE9HSFLaUC0tLS0tICAgICAgICAgICogICAgICAgICMgZm9naHL6cGEsIHRoaXMgYW5kIG5leHQgZmV3IGFyZSBPR0gtPiogZXhjZXB0cy4KKysgU0FMIE9HSExVQS0tLS0tICAgICAgICAgICogICAgICAgICMgc28vZG9naGx1YWlzdGUqIG9ubHkKKysgU0FMIE9HSEFGLS0tLSAgICAgICAgICAgICogICAgICAgICMgZG9naGFmYSBvbmx5CisrIFNBTCBPR0goQcFCQ0RGR0xNTlBSU1QpLSAqICAgICAgICAjIG9naGFtLCBmb2dobGFpbSwgYm9naGTzaXIsIHRvZ2hjaOFuLCBldGMuCisrIFNBTCBPICAgICAgICAgICAgICAgICAgICAqCisrIFNBTCDTUihHTSktICAgICAgICAgICAgICAqUiAgICAgICAjIGVwZW50aGV0aWMgZXhjZXB0aW9uLCAoZm9yKT90aD/zcm1hY2gsIPNyZ2EsZXRjLgorKyBTQUwg00dIICAgICAgICAgICAgICAgICAgKiAgICAgICAgIyDzZ2hhPyQgb25seQorKyBTQUwg0yAgICAgICAgICAgICAgICAgICAgKgorKyBTQUwgUEggICAgICAgICAgICAgICAgICAgViAgICAgICAgIyBPSworKyBTQUwgUCAgICAgICAgICAgICAgICAgICAgQgorKyBTQUwgUVUgICAgICAgICAgICAgICAgICAgS1YgICAgICAgIyBecXVpbu1uJCwgXnF1YXJ0byQgb25seQorKyBTQUwgUkFORkHNLS0gICAgICAgICAgICAgUipOViAgICAgIyBleGNlcHRpb24gdG8gc2lsZW50IEZBzSQsIC1jaHVhcmFuZmHtIG9ubHkKKysgU0FMIFJBRkHNLS0gICAgICAgICAgICAgIFIqViAgICAgICMgZXhjZXB0aW9uIHRvIHNpbGVudCBGQc0kLCBhbGwgKmdyYWYtCisrIFNBTCBSUkJIQS0tLSAgICAgICAgICAgICBSKiAgICAgICAjIGVwZW50aGV0aWMgdm93ZWwsIGNlYXJyYmgqIG9ubHksIG5vIGNhcnJiaHVhbWEKKysgU0FMIFJFQUxNSC0tICAgICAgICAgICAgIFIqTCogICAgICMgZXBlbnRoZXRpYyB2b3dlbCwgc2VlIExNSC0tLCB0cmVhbG1oKiBvbmx5CisrIFNBTCBSzUZFQVJeJCAgICAgICAgICAgICBSKlYqUiAgICAjIGV4Y2VwdGlvbiB0byBGRUFSJCwgbm90IGF0aHLtZmVhciEKKysgU0FMIFJPTUgoRlQpLS0tICAgICAgICAgIFIqICAgICAgICMgcHJvbWhbZnRdLSBvbmx5LCBleGNlcHRpb24gdG8gLW9taCBydWxlCisrIFNBTCBSRkVBTi0tLS0gICAgICAgICAgICBSKiAgICAgICAjIGVwZW50aGV0aWMgdm93ZWwsIChiZXxzZXxnYSlpcmZlYW4gb25seQorKyBTQUwgUkZJTi0tLSQgICAgICAgICAgICAgUiogICAgICAgIyBlcGVudGhldGljIHZvd2VsLCBzYW1lIHdvcmRzIGFzIHByZXZpb3VzCisrIFNBTCBSQkgtLSAgICAgICAgICAgICAgICBSICAgICAgICAjIGPtb3JiaHXtLCBhZXJiaHJhdCwgZXRjLiwgZXBlbnRoLiBleGNlcHRpb24KKysgU0FMIFJNSC0tICAgICAgICAgICAgICAgIFIgICAgICAgICMgaWFybWhhciwgbOlpcm1oZWFzLCBldGMuLCBlcGVudGguIGV4Y2VwdGlvbgorKyBTQUwgUkdILS0gICAgICAgICAgICAgICAgUiAgICAgICAgIyBkYW9yZ2hhbGFyLCBldGMuLCBlcGVudGguIGV4Y2VwdGlvbgorKyBTQUwgUkJPLS0gICAgICAgICAgICAgICAgUiAgICAgICAgIyBjb3NhcmJvbGcgb25seSwgZXBlbnRoLiBleGNlcHRpb24KKysgU0FMIFIoQkdNKS0gICAgICAgICAgICAgIFIqICAgICAgICMgZXBlbnRoZXRpYyB2b3dlbAorKyBTQUwgUiAgICAgICAgICAgICAgICAgICAgUgorKyBTQUwgU0hPUkNILS0gICAgICAgICAgICAgSCpSKiAgICAgIyBlcGVudGhldGljIHZvd2VsLCBzb3JjaGEgcm9vdCBvbmx5CisrIFNBTCBTT1JDSC0tICAgICAgICAgICAgICBTKlIqICAgICAjIGVwZW50aGV0aWMgdm93ZWwsIHNvcmNoYSByb290IG9ubHkKKysgU0FMIFNIT0lMQkgtLSAgICAgICAgICAgIEgqTCogICAgICMgZXBlbnRoZXRpYywgc2VlIExCSC0tCisrIFNBTCBTT0lMQkgtLSAgICAgICAgICAgICBTKkwqICAgICAjIGVwZW50aGV0aWMsIHNlZSBMQkgtLQorKyBTQUwgU0ggICAgICAgICAgICAgICAgICAgSCAgICAgICAgIyBPSworKyBTQUwgUyAgICAgICAgICAgICAgICAgICAgUworKyBTQUwgVEFMTUgtLSAgICAgICAgICAgICAgVCpMKiAgICAgIyBlcGVudGhldGljIHZvd2VsLCBzZWUgTE1ILS0sIHRhbG1oYWlnaCBvbmx5CisrIFNBTCBUSEFMTUgtLSAgICAgICAgICAgICBIKkwqICAgICAjIGVwZW50aGV0aWMgdm93ZWwsIHNlZSBMTUgtLSwgICAgIiAgICAgICAiCisrIFNBTCBUSU5GKEVJKS0gICAgICAgICAgICBUKk5WICAgICAjIGV4Y2VwdGlvbiB0byBGKEVBfEkpREgkLCBkP3RpbmYoZWF8aSlkaCBvbmx5CisrIFNBTCBUSElORihFSSktICAgICAgICAgICBIKk5WICAgICAjIGV4Y2VwdGlvbiB0byBGKEVBfEkpREgkLCB0aGluZihlYXxpKWRoIG9ubHkKKysgU0FMIFRBRkEtICAgICAgICAgICAgICAgIFQqViAgICAgICMgZXhjZXB0aW9uIHRvIEZBSU5OJCwgZD90YWZhaW5uIG9ubHkKKysgU0FMIFRIQUZBLSAgICAgICAgICAgICAgIEgqViAgICAgICMgZXhjZXB0aW9uIHRvIEZBSU5OJCwgdGhhZmFpbm4gb25seQorKyBTQUwgVFNPUkNILS0gICAgICAgICAgICAgVCpSKiAgICAgIyBlcGVudGhldGljIHZvd2VsLCBzZWUgU09SQ0gtLQorKyBTQUwgVFNPSUxCSC0tICAgICAgICAgICAgVCpMKiAgICAgIyBlcGVudGhldGljIHZvd2VsLCBzZWUgU09JTEJILS0KKysgU0FMIFRTXiAgICAgICAgICAgICAgICAgIFQgICAgICAgICMgcHJlZml4LXQKKysgU0FMIFRIJCAgICAgICAgICAgICAgICAgIF8gICAgICAgICMgbm8gZXhjZXB0aW9ucworKyBTQUwgVEggICAgICAgICAgICAgICAgICAgSAorKyBTQUwgVCAgICAgICAgICAgICAgICAgICAgVAorKyBTQUwgVUZBKM1SKS0tJCAgICAgICAgICAgKlYgICAgICAgIyBleGNlcHRpb24gdG8gRkFSJCwgYnJ1ZmFyL1tjcl11ZmHtIG9ubHkKKysgU0FMIFVBUkctICAgICAgICAgICAgICAgICpSICAgICAgICMgZXBlbnRoZXRpYyBleGNlcHRpb24sIGZ1YXJnYSosIHR1YXJnYWluIG9ubHkKKysgU0FMIFVBSVJHLSAgICAgICAgICAgICAgICpSICAgICAgICMgZXBlbnRoZXRpYyBleGNlcHRpb24sIHR1YWlyZ24qIG9ubHkKKysgU0FMIFVBUkJILS0gICAgICAgICAgICAgICpSICAgICAgICMgZXBlbnRoZXRpYyBleGNlcHRpb24sIGZ1YXJiaCosIGN1YXJiaCogb25seSAKKysgU0FMIFVBTEdBLS0gICAgICAgICAgICAgICpMICAgICAgICMgZXBlbnRoZXRpYyBleGNlcHRpb24sIGR1YWxnYXMgb25seQorKyBTQUwgVUxMTUgtLSAgICAgICAgICAgICAgKkwqICAgICAgIyBlcGVudGhldGljIHZvd2VsLCBzZWUgTE1ILS0KKysgU0FMIFVNSCAgICAgICAgICAgICAgICAgICogICAgICAgICMgY3VtaGFjaHQsIHVtaGxh7W9jaHQsIGNpdW1oYWlzLCBleGNlcHQuIHRvIE1ILT5WCisrIFNBTCBVVEgoQkNER0xNTlBSKS0gICAgICAqICAgICAgICAjIHNydXRoKiwgZ3V0aHBob3N0IG9ubHksIFRILT5IIGV4Y2VwdGlvbgorKyBTQUwgVUxDSC0tICAgICAgICAgICAgICAgKkwqICAgICAgIyBlcGVudGguIHZvd2VsLHVsY2hhLFt0bV11bGNo4W4sYW1odWxjaGFjaCBvbmx5CisrIFNBTCBVUkNIKEHTKS0tLSAgICAgICAgICAqUiogICAgICAjIGVwZW50aGV0aWMgdm93ZWwsIHVyY2hhciwgdXJjaGFsbCwgdXJjaPNpZCwgZXRjLgorKyBTQUwgVURIICAgICAgICAgICAgICAgICAgKiAgICAgICAgIyBtdWRoKiBvbmx5IChsaXRlcmFyeSkKKysgU0FMIFVHSCAgICAgICAgICAgICAgICAgICogICAgICAgICMgYnJ1Z2gqIG9ubHkgKGxpdGVyYXJ5KQorKyBTQUwgVSAgICAgICAgICAgICAgICAgICAgKgorKyBTQUwg2klSRy0gICAgICAgICAgICAgICAgKlIgICAgICAgIyBlcGVudGhldGljIGV4Y2VwdGlvbiwgbGlvdPppcmcqIG9ubHksIHNlZSBSRworKyBTQUwg2lRIKEJDREZMUFIpLSAgICAgICAgKiAgICAgICAgIyBs+nRoY2hsZWFzYSwgZPp0aHJhY2h0LCBldGMuIC0gVEgtPkggZXhjZXB0aW9uCisrIFNBTCDaICAgICAgICAgICAgICAgICAgICAqCisrIFNBTCBWICAgICAgICAgICAgICAgICAgICBWCisrIFNBTCBXICAgICAgICAgICAgICAgICAgICBWICAgICAgICAjIHdpZ3dhbSBvbmx5CisrIFNBTCBYKEFFyUnNKS1eICAgICAgICAgICBTICAgICAgICAjIHhpbGVhZvNuLCBldGMuCisrIFNBTCBYXiAgICAgICAgICAgICAgICAgICAqS1MgICAgICAjIHgtZ2hhKiBvbmx5CisrIFNBTCBYICAgICAgICAgICAgICAgICAgICBLUyAgICAgICAjIE1hcnhhY2ggb25seQorKyBTQUwgWSAgICAgICAgICAgICAgICAgICAgWSAgICAgICAgIyB583nzIG9ubHkKKysgU0FMIFogICAgICAgICAgICAgICAgICAgIFMgICAgICAgICMgevosIHB1emFsLCBldGMuCg==