From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by mx.groups.io with SMTP id smtpd.web12.9341.1663948887443569238 for ; Fri, 23 Sep 2022 09:01:27 -0700 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=kQMWb0wk; spf=pass (domain: intel.com, ip: 192.55.52.93, mailfrom: michael.d.kinney@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1663948887; x=1695484887; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=EUr+5f0GmCPJ2GasI/bONsCbp5a14Yyr+JGO5Ob/kBE=; b=kQMWb0wk8W3g20DJR99Ty282s3sWpd6AoUV9/nE7PFnnqJQL4OvV0kPF AA9/pcPD6F+n25rt+BInY0Z1QMHwjs3STcRffeeNeBw9JOX6G/xbr055y 13EsXVEhNTR2UqXrEeYoV/4P5OEsnPhsBTUcNZB6T6l+QvQlFRDV8x/ip u9a3Z8DvrCzwJO5NfAr/fLDg/IFG9Fo9ToeKM4G7yWw/YUkdbziw/P0Q0 acHhs77q37gBowI9cEC+0XXvpUidDp+1pU0c6kRoiM6Xui5ICyZVF+FrP zRIXuqSnNgZEbAzlDWwagaMnqu+MTpvO3A8oOWFLy6M2erFClWLLxOC66 Q==; X-IronPort-AV: E=McAfee;i="6500,9779,10479"; a="298220902" X-IronPort-AV: E=Sophos;i="5.93,339,1654585200"; d="scan'208";a="298220902" Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 23 Sep 2022 09:01:23 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.93,339,1654585200"; d="scan'208";a="724172678" Received: from orsmsx602.amr.corp.intel.com ([10.22.229.15]) by fmsmga002.fm.intel.com with ESMTP; 23 Sep 2022 09:01:23 -0700 Received: from orsmsx611.amr.corp.intel.com (10.22.229.24) by ORSMSX602.amr.corp.intel.com (10.22.229.15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Fri, 23 Sep 2022 09:01:22 -0700 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) by ORSMSX611.amr.corp.intel.com (10.22.229.24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31; Fri, 23 Sep 2022 09:01:22 -0700 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) by orsmsx610.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.31 via Frontend Transport; Fri, 23 Sep 2022 09:01:22 -0700 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.168) by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2375.31; Fri, 23 Sep 2022 09:01:21 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=j6vNtvwDObhNfAQ7OvteI9uuGFuseZDk2K92xbW+bfJgHdq3XDLsi3NAXSXnGo3IPShvbUcV02srJJfDbjdzOkvRRtz/I928ZYa31s8ilgHq9aBeij/PE8+/pYvS/7scmNE+bH8trqUt+rvk6aEDsXmcTQSp6pe35xxOiUMxvvmqNxSEWk8732y4xgn83R/T6BYowD3zp5hjAHseuMG1ykuq0hFEEUXaswbDBO3HbHMmOeAw3cUskIrS3teIGr+P/RU9ARQxXWNNNwQTKhIz0UHAZyztzHrNL8GrPkYFNUy+vGaB7xzT/1voiVVHzkLuo861rNu4ktmF7+vizOrSdg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=EUr+5f0GmCPJ2GasI/bONsCbp5a14Yyr+JGO5Ob/kBE=; b=OGxXSOS1qT9D6EJci2oOHIqNhPqFkYmt6FFHgfR+o6wDjiOrnH5Oe8mhQ5lCzc2kYKj7xlcJsxn3Rq8aMLLNT9eKVquOzmckjtLveV9BRVxVzvcvLd1y3/AGgNUNZda1tnEAbxvtcM0LgTY+PJHXa1f1sKgm//yzxJrH9MSCGE5rtGFuFSKBsBHYXxAJrAFdf4jmUxIh07y1aou/Sk55n1LkGTTC9cltr/D8OSBhghCH2aU7Omd3x4JF0/xFI/8bt5nqGdNY38LBNxLHM478zqd4JM+5jz2CJUsfCJWxp7+RE++IQ7o2MGIif0Q6ICCNpEf/fPXA14mZ3SfUchfZ0w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from CO1PR11MB4929.namprd11.prod.outlook.com (2603:10b6:303:6d::19) by DS7PR11MB6152.namprd11.prod.outlook.com (2603:10b6:8:9b::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5654.14; Fri, 23 Sep 2022 16:01:16 +0000 Received: from CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::ce64:b1b4:e087:4cc2]) by CO1PR11MB4929.namprd11.prod.outlook.com ([fe80::ce64:b1b4:e087:4cc2%7]) with mapi id 15.20.5654.020; Fri, 23 Sep 2022 16:01:16 +0000 From: "Michael D Kinney" To: Chao Li , "devel@edk2.groups.io" , "Kinney, Michael D" CC: "Gao, Liming" , "Liu, Zhiguang" , Baoqi Zhang Subject: Re: [PATCH v2 23/34] MdePkg/BaseLib: BaseLib for LOONGARCH64 architecture. Thread-Topic: [PATCH v2 23/34] MdePkg/BaseLib: BaseLib for LOONGARCH64 architecture. Thread-Index: AQHYyB4ngAHVzh+iRUqcNHXes7WbZq3tOwlQ Date: Fri, 23 Sep 2022 16:01:15 +0000 Message-ID: References: <20220914094111.3696725-1-lichao@loongson.cn> In-Reply-To: <20220914094111.3696725-1-lichao@loongson.cn> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.6.500.17 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: CO1PR11MB4929:EE_|DS7PR11MB6152:EE_ x-ms-office365-filtering-correlation-id: 3a90d77b-93a1-47ba-adc3-08da9d7cd886 x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: amEQa0RrbGWU4jQzaHbsUicmFRzWowgOH8f7EltoL6TEItkp+8wMJOOAtUk3NUsk7ggicY2takrrg2EhHCGjhtuM0QRQc41mFJfGj0CxqTz17AR9NLd7xr4iCBbmxmqwScq9UDWmqNDM5DVgWbCG9gPkFVTDuP7CrckQjslJu0sDul5IR7NFhJWmjOr4zruIMIQkR9zUiOjt4/RHWHjAO0OwDakaUEGry7oLsVKQE3MwQTKfnlkL1bSC2vOGxXjo4fBaSRrikHl0a0vxyfXcIjLXrcmYTIT/SHT446rsdplMSbhudJz5kMB1v3VX+PXM6msaZmOAl4PxW/L+Vjt7kEjNZDz6+/hOkd9D+4HkYNMHqLmVEi4e4GmzojQGQEGJYHGYG2xHtPysw1LWeptgAWSjZxayKIXR+xkcTd6wMdGtFk5rK+o/YUbCRhZfIuoRhUlKyFCS4djEIZB1iCDeY3GUYTzl1yrbQdWNBa7PoRUXmqYoNh44EkgCQx+9t4tIcOY2Jc3gzBcjmkZch2EfLlCO6Y5vPF4Tcc4JROfJw7zTE4o4xV/udtfyeFG905x3Yzem44zySwoVcYm96XLouIU3HRGTbei7M0y42IDMK4iR2WhprKVy5dn0GZD7Lv8fJdwkZYzRy+BJV4cD/JqQFccb9kOr1tMGcKc64xLzyvbCdxJbYUPnGCkLRGz+7PvlL+PdNDzgORLYA0qXmPyqrdwrqn25DvkK2bc5xr2ldZtEi26Luy57GXeN2Los/vK5cUsFFrTCNMYWeYeP5pxv49IDnOPEegDXOHlnNmsACgM= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CO1PR11MB4929.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230022)(376002)(136003)(346002)(396003)(39860400002)(366004)(451199015)(8676002)(110136005)(54906003)(45080400002)(4326008)(33656002)(86362001)(316002)(38100700002)(83380400001)(122000001)(38070700005)(82960400001)(41300700001)(2906002)(966005)(9686003)(30864003)(64756008)(19627235002)(478600001)(76116006)(53546011)(5660300002)(186003)(8936002)(6506007)(66556008)(26005)(7696005)(52536014)(66946007)(66476007)(66446008)(71200400001)(55016003);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?ek1ad1VodWY2QmdVcHM3UTkwZzlUK0tjNThlWm1XTitXRHNGaWpzeWNFUWdz?= =?utf-8?B?ZDlpWnpyYXpEclp4bGRxNHRoRUVqcU1DNE1oUjlZUG9IMDM2S1VNK3Q5aXBS?= =?utf-8?B?N2pXM2JIWWhIRUhKLzRaUjdUNlFMZVNDNnhVOTdEOVZKQkZXZ1JtZjhRU1NL?= =?utf-8?B?cWIrUDdxaTB3RlVTVzlabTE4YWdLZE9seFQrSmxVdUdDZ0U5UDMzeGNOcW9n?= =?utf-8?B?dzZQbVo0eGxXcEpCQWx4cm42TG91Y0FHTnZvMzBFYzdYckxsU1hPa3Rxam5R?= =?utf-8?B?ZWZMcjdVV0t6YjFZQVBXM25BY21ndDgwOWVIejdiYUVsTTlMaERDVk9tNzM1?= =?utf-8?B?bW50eUp0a1Joc2NiY1ZuZEIyOW9Fb0tBZUtKTzBQZUdtQW41bE1MNDhla2p5?= =?utf-8?B?ck03bWpRVUVENHNYakY4Yk93dTlzdEo4SG5mWlVzcW1EZUF1NGE0S21iSm5o?= =?utf-8?B?MzFLNzl2OXhnK1p0UHpKSUpLMTVqdUVnTnNTZG9iVkIxZlh4VVJucHRMeVB2?= =?utf-8?B?bkVnamY1enR3QWo5WlltVE1jcU8zN25BWkxaRTltV2c5L1ZsZ0lKU3J6OTRl?= =?utf-8?B?TFBrb1FjOW9qVmJ5TXRlNzhETDBYWjlLdWgrc2c3SDVndVNwUDFOTWJ1NHkw?= =?utf-8?B?Qlhiem9TMmtqdytad0UyNlZtcHVCRUlDTDhidHc3SHNVTzU4NFhZa0ZUMFVH?= =?utf-8?B?eTZCWWxHdlRzTkJYVlpJMzlBc2tjQ0pIVm1SRVVzSTkvbVlueXcyWjB5WXNv?= =?utf-8?B?WEdiODJpYkk0NEpIbzYxQ1ljVFBpMEJHc1lhT1hxME5KZmQ3NmNTN1Erak90?= =?utf-8?B?czZqOHlaYmdrMThLV0VWNGE4Z1h5cnI3WEZLL3M0MkdFZTVvb05KMWZobWRU?= =?utf-8?B?NmpEYWU4a2FSQXZJWll6cW9pUkFML29veW9vTjJOL1NXdDRsVHRsdUNuVEJv?= =?utf-8?B?TnBhTlhyLzNibW1SZnU4ejZKZUgxRytTL1M1aHBrYkYwci9VQWc1RzM1UzR5?= =?utf-8?B?ZFhDdlU3QjFkNFl4bnlhYWg0TVJFRk5ybWY4a2dWbVpUU0U3Z2Vqeld0Wi9o?= =?utf-8?B?M2NSTnFxRnQ4V0MyR0J6RG1xd2NsRC9xR05BbnRqcHVaa2Nzb1ZzV0NUR3Jh?= =?utf-8?B?OEtNR21yRGpPdWpvUmV2QzB4eHJiRkVkSml0SGhqTTRONFJwNXQ0d01qMFQ0?= =?utf-8?B?OU4wVy8yZ1hmZlo4NFY3dWRNYlN1dmptOFRPOTBNcjFUQnVjSXo5RmRIMy9V?= =?utf-8?B?a2pJaEhXbW93VVJFc3EyN1lwYXNTbjZ1N0lWUGphVnlPeG9ubEs1N2x5TmRM?= =?utf-8?B?V2E4dTQwTklLMlM5WWxsS1Rma3BqN1E2Snh4dFoxb2VBMTJBYUx2RUxlMUJI?= =?utf-8?B?bFkybFlhRG5OMW1HYVc1eXdpWlFONnc5UFRTS3JUSlFySlZtdjZSWVR3elVx?= =?utf-8?B?NXNwSmpWMGlqTkNlNWZOcGEyTjl5N3JGTXMzSzcwVkRsTGtsNUFuSTduc08w?= =?utf-8?B?ZWxpbUdWM05BeFZXT0hKOG0xdG5IMXVZcnV5WDV4K01WOXlSVmFteVNjUXo3?= =?utf-8?B?WmRzd2NCMzJiNmc2dHBFMFV6dkQ3NURhTzFEZzBmdkZQSmV3QnZLRGVCQnR4?= =?utf-8?B?dW9ibitsQk0wVUVuMU1VbW01VnI2OTlOeXg3MVR4aWtFajJ3UzVya1krYWhx?= =?utf-8?B?K1lxRHZNSHVOUTN6eEdoSHZzanArQXhZRU1DWUZzVjFwQ1M4czI2cFd3UEZ6?= =?utf-8?B?c2xpV1VFbklkUndGZG16OVVJQ3dXMVMwa2FtTTVHa1RNYnFUcytFRHZaOUw3?= =?utf-8?B?U1BXMkpyUGtpanZIVlRVengwb1Q2WGpsRzMybkNNcmhxZGpEQ01YSi9PcGlm?= =?utf-8?B?TXpJTXlmMlhqdGlUTDlWVGhpekdIYlJ0a0xHaU9uV0xEaUJGcDNTNmFMOXkr?= =?utf-8?B?OFZHZ2kxSXlXNk5ibzVNYkNNUDV4b1dsQnc4SlBod0FFdjlDSUlUdXFvcllt?= =?utf-8?B?ZFJaYVhCd2R6K2NxanNSbXZuQWhzdW5rV29QbkNEUExTVXVsZ2grWFR3dU1T?= =?utf-8?B?N0tZa0JQQ0QzdFd3V09iUW1nTUg2eHZnbGZHUkxqMzVZUDFOY2JiWGgvTnkw?= =?utf-8?B?Z3ZGSDMwYXp3SDg0M2RKbzBhOEQ1Q1p2UlhncU5HOWp1dm5EVHAxeFhPN25S?= =?utf-8?B?TGc9PQ==?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CO1PR11MB4929.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3a90d77b-93a1-47ba-adc3-08da9d7cd886 X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Sep 2022 16:01:15.9932 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: cbtd1AP7Js7v3fqR4a9VxaKice/osp87RrVJeiZfOgMDVC3E0JdJdYRqTv0E0wbMLlm59p3ldifDkziE2uBNaKvUmL7HQBe8AvqP2u4/kKk= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DS7PR11MB6152 Return-Path: michael.d.kinney@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 UmV2aWV3ZWQtYnk6IE1pY2hhZWwgRCBLaW5uZXkgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29t Pg0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IENoYW8gTGkgPGxpY2hh b0Bsb29uZ3Nvbi5jbj4NCj4gU2VudDogV2VkbmVzZGF5LCBTZXB0ZW1iZXIgMTQsIDIwMjIgMjo0 MSBBTQ0KPiBUbzogZGV2ZWxAZWRrMi5ncm91cHMuaW8NCj4gQ2M6IEtpbm5leSwgTWljaGFlbCBE IDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT47IEdhbywgTGltaW5nIDxnYW9saW1pbmdAYnlv c29mdC5jb20uY24+OyBMaXUsIFpoaWd1YW5nDQo+IDx6aGlndWFuZy5saXVAaW50ZWwuY29tPjsg QmFvcWkgWmhhbmcgPHpoYW5nYmFvcWlAbG9vbmdzb24uY24+DQo+IFN1YmplY3Q6IFtQQVRDSCB2 MiAyMy8zNF0gTWRlUGtnL0Jhc2VMaWI6IEJhc2VMaWIgZm9yIExPT05HQVJDSDY0IGFyY2hpdGVj dHVyZS4NCj4gDQo+IFJFRjogaHR0cHM6Ly9idWd6aWxsYS50aWFub2NvcmUub3JnL3Nob3dfYnVn LmNnaT9pZD00MDUzDQo+IA0KPiBBZGQgTG9vbmdBcmNoIExPT05HQVJDSDY0IEJhc2VMaWIgZnVu Y3Rpb25zLg0KPiANCj4gQ2M6IE1pY2hhZWwgRCBLaW5uZXkgPG1pY2hhZWwuZC5raW5uZXlAaW50 ZWwuY29tPg0KPiBDYzogTGltaW5nIEdhbyA8Z2FvbGltaW5nQGJ5b3NvZnQuY29tLmNuPg0KPiBD YzogWmhpZ3VhbmcgTGl1IDx6aGlndWFuZy5saXVAaW50ZWwuY29tPg0KPiANCj4gU2lnbmVkLW9m Zi1ieTogQ2hhbyBMaSA8bGljaGFvQGxvb25nc29uLmNuPg0KPiBDby1hdXRob3JlZC1ieTogQmFv cWkgWmhhbmcgPHpoYW5nYmFvcWlAbG9vbmdzb24uY24+DQo+IC0tLQ0KPiAgTWRlUGtnL0luY2x1 ZGUvTGlicmFyeS9CYXNlTGliLmggICAgICAgICAgICAgIHwgMjQgKysrKysrKysNCj4gIE1kZVBr Zy9MaWJyYXJ5L0Jhc2VMaWIvQmFzZUxpYi5pbmYgICAgICAgICAgICB8IDE2ICsrKystDQo+ICBN ZGVQa2cvTGlicmFyeS9CYXNlTGliL0xvb25nQXJjaDY0L0JhcnJpZXIuUyAgfCAyOCArKysrKysr KysNCj4gIC4uLi9CYXNlTGliL0xvb25nQXJjaDY0L0NwdUJyZWFrcG9pbnQuUyAgICAgICB8IDI0 ICsrKysrKysrDQo+ICBNZGVQa2cvTGlicmFyeS9CYXNlTGliL0xvb25nQXJjaDY0L0NwdVBhdXNl LlMgfCAzMSArKysrKysrKysrDQo+ICAuLi4vQmFzZUxpYi9Mb29uZ0FyY2g2NC9EaXNhYmxlSW50 ZXJydXB0cy5TICAgfCAyMSArKysrKysrDQo+ICAuLi4vQmFzZUxpYi9Mb29uZ0FyY2g2NC9FbmFi bGVJbnRlcnJ1cHRzLlMgICAgfCAyMSArKysrKysrDQo+ICAuLi4vQmFzZUxpYi9Mb29uZ0FyY2g2 NC9HZXRJbnRlcnJ1cHRTdGF0ZS5TICAgfCAzNSArKysrKysrKysrKw0KPiAgLi4uL0Jhc2VMaWIv TG9vbmdBcmNoNjQvSW50ZXJuYWxTd2l0Y2hTdGFjay5jIHwgNTggKysrKysrKysrKysrKysrKysr Kw0KPiAgLi4uL0xpYnJhcnkvQmFzZUxpYi9Mb29uZ0FyY2g2NC9NZW1vcnlGZW5jZS5TIHwgMTgg KysrKysrDQo+ICAuLi4vQmFzZUxpYi9Mb29uZ0FyY2g2NC9TZXRKdW1wTG9uZ0p1bXAuUyAgICAg fCA0OSArKysrKysrKysrKysrKysrDQo+ICAuLi4vTGlicmFyeS9CYXNlTGliL0xvb25nQXJjaDY0 L1N3aXRjaFN0YWNrLlMgfCAzOSArKysrKysrKysrKysrDQo+ICAxMiBmaWxlcyBjaGFuZ2VkLCAz NjMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQ0KPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IE1k ZVBrZy9MaWJyYXJ5L0Jhc2VMaWIvTG9vbmdBcmNoNjQvQmFycmllci5TDQo+ICBjcmVhdGUgbW9k ZSAxMDA2NDQgTWRlUGtnL0xpYnJhcnkvQmFzZUxpYi9Mb29uZ0FyY2g2NC9DcHVCcmVha3BvaW50 LlMNCj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBNZGVQa2cvTGlicmFyeS9CYXNlTGliL0xvb25nQXJj aDY0L0NwdVBhdXNlLlMNCj4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBNZGVQa2cvTGlicmFyeS9CYXNl TGliL0xvb25nQXJjaDY0L0Rpc2FibGVJbnRlcnJ1cHRzLlMNCj4gIGNyZWF0ZSBtb2RlIDEwMDY0 NCBNZGVQa2cvTGlicmFyeS9CYXNlTGliL0xvb25nQXJjaDY0L0VuYWJsZUludGVycnVwdHMuUw0K PiAgY3JlYXRlIG1vZGUgMTAwNjQ0IE1kZVBrZy9MaWJyYXJ5L0Jhc2VMaWIvTG9vbmdBcmNoNjQv R2V0SW50ZXJydXB0U3RhdGUuUw0KPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IE1kZVBrZy9MaWJyYXJ5 L0Jhc2VMaWIvTG9vbmdBcmNoNjQvSW50ZXJuYWxTd2l0Y2hTdGFjay5jDQo+ICBjcmVhdGUgbW9k ZSAxMDA2NDQgTWRlUGtnL0xpYnJhcnkvQmFzZUxpYi9Mb29uZ0FyY2g2NC9NZW1vcnlGZW5jZS5T DQo+ICBjcmVhdGUgbW9kZSAxMDA2NDQgTWRlUGtnL0xpYnJhcnkvQmFzZUxpYi9Mb29uZ0FyY2g2 NC9TZXRKdW1wTG9uZ0p1bXAuUw0KPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IE1kZVBrZy9MaWJyYXJ5 L0Jhc2VMaWIvTG9vbmdBcmNoNjQvU3dpdGNoU3RhY2suUw0KPiANCj4gZGlmZiAtLWdpdCBhL01k ZVBrZy9JbmNsdWRlL0xpYnJhcnkvQmFzZUxpYi5oIGIvTWRlUGtnL0luY2x1ZGUvTGlicmFyeS9C YXNlTGliLmgNCj4gaW5kZXggYTZmOWExOTRlZi4uZjNmNTlmMjFjMiAxMDA2NDQNCj4gLS0tIGEv TWRlUGtnL0luY2x1ZGUvTGlicmFyeS9CYXNlTGliLmgNCj4gKysrIGIvTWRlUGtnL0luY2x1ZGUv TGlicmFyeS9CYXNlTGliLmgNCj4gQEAgLTYsNiArNiw3IEBAIENvcHlyaWdodCAoYykgMjAwNiAt IDIwMjEsIEludGVsIENvcnBvcmF0aW9uLiBBbGwgcmlnaHRzIHJlc2VydmVkLjxCUj4NCj4gIFBv cnRpb25zIGNvcHlyaWdodCAoYykgMjAwOCAtIDIwMDksIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyBy ZXNlcnZlZC48QlI+DQo+IA0KPiAgQ29weXJpZ2h0IChjKSBNaWNyb3NvZnQgQ29ycG9yYXRpb24u PEJSPg0KPiANCj4gIFBvcnRpb25zIENvcHlyaWdodCAoYykgMjAyMCwgSGV3bGV0dCBQYWNrYXJk IEVudGVycHJpc2UgRGV2ZWxvcG1lbnQgTFAuIEFsbCByaWdodHMgcmVzZXJ2ZWQuPEJSPg0KPiAN Cj4gK1BvcnRpb25zIENvcHlyaWdodCAoYykgMjAyMiwgTG9vbmdzb24gVGVjaG5vbG9neSBDb3Jw b3JhdGlvbiBMaW1pdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLjxCUj4NCj4gDQo+IA0KPiANCj4g IFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1c2UtUGF0ZW50DQo+IA0KPiANCj4g DQo+IEBAIC0xNTIsNiArMTUzLDI5IEBAIHR5cGVkZWYgc3RydWN0IHsNCj4gDQo+IA0KPiAgI2Vu ZGlmIC8vIGRlZmluZWQgKE1ERV9DUFVfUklTQ1Y2NCkNCj4gDQo+IA0KPiANCj4gKyNpZiBkZWZp bmVkIChNREVfQ1BVX0xPT05HQVJDSDY0KQ0KPiANCj4gKy8vLw0KPiANCj4gKy8vLyBUaGUgTG9v bmdBcmNoIGFyY2hpdGVjdHVyZSBjb250ZXh0IGJ1ZmZlciB1c2VkIGJ5IFNldEp1bXAoKSBhbmQg TG9uZ0p1bXAoKQ0KPiANCj4gKy8vLw0KPiANCj4gK3R5cGVkZWYgc3RydWN0IHsNCj4gDQo+ICsg IFVJTlQ2NCAgICBTMDsNCj4gDQo+ICsgIFVJTlQ2NCAgICBTMTsNCj4gDQo+ICsgIFVJTlQ2NCAg ICBTMjsNCj4gDQo+ICsgIFVJTlQ2NCAgICBTMzsNCj4gDQo+ICsgIFVJTlQ2NCAgICBTNDsNCj4g DQo+ICsgIFVJTlQ2NCAgICBTNTsNCj4gDQo+ICsgIFVJTlQ2NCAgICBTNjsNCj4gDQo+ICsgIFVJ TlQ2NCAgICBTNzsNCj4gDQo+ICsgIFVJTlQ2NCAgICBTODsNCj4gDQo+ICsgIFVJTlQ2NCAgICBT UDsNCj4gDQo+ICsgIFVJTlQ2NCAgICBGUDsNCj4gDQo+ICsgIFVJTlQ2NCAgICBSQTsNCj4gDQo+ ICt9IEJBU0VfTElCUkFSWV9KVU1QX0JVRkZFUjsNCj4gDQo+ICsNCj4gDQo+ICsjZGVmaW5lIEJB U0VfTElCUkFSWV9KVU1QX0JVRkZFUl9BTElHTk1FTlQgIDgNCj4gDQo+ICsNCj4gDQo+ICsjZW5k aWYgLy8gZGVmaW5lZCAoTURFX0NQVV9MT09OR0FSQ0g2NCkNCj4gDQo+ICsNCj4gDQo+ICAvLw0K PiANCj4gIC8vIFN0cmluZyBTZXJ2aWNlcw0KPiANCj4gIC8vDQo+IA0KPiBkaWZmIC0tZ2l0IGEv TWRlUGtnL0xpYnJhcnkvQmFzZUxpYi9CYXNlTGliLmluZiBiL01kZVBrZy9MaWJyYXJ5L0Jhc2VM aWIvQmFzZUxpYi5pbmYNCj4gaW5kZXggNmJlNWJlOTQyOC4uOWVkNDZhNTg0YSAxMDA2NDQNCj4g LS0tIGEvTWRlUGtnL0xpYnJhcnkvQmFzZUxpYi9CYXNlTGliLmluZg0KPiArKysgYi9NZGVQa2cv TGlicmFyeS9CYXNlTGliL0Jhc2VMaWIuaW5mDQo+IEBAIC0yMSw3ICsyMSw3IEBADQo+ICAgIExJ QlJBUllfQ0xBU1MgICAgICAgICAgICAgICAgICA9IEJhc2VMaWINCj4gDQo+IA0KPiANCj4gICMN Cj4gDQo+IC0jICBWQUxJRF9BUkNISVRFQ1RVUkVTICAgICAgICAgICA9IElBMzIgWDY0IEVCQyBB Uk0gQUFSQ0g2NCBSSVNDVjY0DQo+IA0KPiArIyAgVkFMSURfQVJDSElURUNUVVJFUyAgICAgICAg ICAgPSBJQTMyIFg2NCBFQkMgQVJNIEFBUkNINjQgUklTQ1Y2NCBMT09OR0FSQ0g2NA0KPiANCj4g ICMNCj4gDQo+IA0KPiANCj4gIFtTb3VyY2VzXQ0KPiANCj4gQEAgLTQwMiw2ICs0MDIsMjAgQEAN Cj4gICAgUmlzY1Y2NC9SaXNjVkludGVycnVwdC5TICAgICAgICAgIHwgR0NDDQo+IA0KPiAgICBS aXNjVjY0L0ZsdXNoQ2FjaGUuUyAgICAgICAgICAgICAgfCBHQ0MNCj4gDQo+IA0KPiANCj4gK1tT b3VyY2VzLkxPT05HQVJDSDY0XQ0KPiANCj4gKyAgTWF0aDY0LmMNCj4gDQo+ICsgIFVuYWxpZ25l ZC5jDQo+IA0KPiArICBMb29uZ0FyY2g2NC9JbnRlcm5hbFN3aXRjaFN0YWNrLmMNCj4gDQo+ICsg IExvb25nQXJjaDY0L0dldEludGVycnVwdFN0YXRlLlMgICB8IEdDQw0KPiANCj4gKyAgTG9vbmdB cmNoNjQvRW5hYmxlSW50ZXJydXB0cy5TICAgIHwgR0NDDQo+IA0KPiArICBMb29uZ0FyY2g2NC9E aXNhYmxlSW50ZXJydXB0cy5TICAgfCBHQ0MNCj4gDQo+ICsgIExvb25nQXJjaDY0L0JhcnJpZXIu UyAgICAgICAgICAgICB8IEdDQw0KPiANCj4gKyAgTG9vbmdBcmNoNjQvTWVtb3J5RmVuY2UuUyAg ICAgICAgIHwgR0NDDQo+IA0KPiArICBMb29uZ0FyY2g2NC9DcHVCcmVha3BvaW50LlMgICAgICAg fCBHQ0MNCj4gDQo+ICsgIExvb25nQXJjaDY0L0NwdVBhdXNlLlMgICAgICAgICAgICB8IEdDQw0K PiANCj4gKyAgTG9vbmdBcmNoNjQvU2V0SnVtcExvbmdKdW1wLlMgICAgIHwgR0NDDQo+IA0KPiAr ICBMb29uZ0FyY2g2NC9Td2l0Y2hTdGFjay5TICAgICAgICAgfCBHQ0MNCj4gDQo+ICsNCj4gDQo+ ICBbUGFja2FnZXNdDQo+IA0KPiAgICBNZGVQa2cvTWRlUGtnLmRlYw0KPiANCj4gDQo+IA0KPiBk aWZmIC0tZ2l0IGEvTWRlUGtnL0xpYnJhcnkvQmFzZUxpYi9Mb29uZ0FyY2g2NC9CYXJyaWVyLlMg Yi9NZGVQa2cvTGlicmFyeS9CYXNlTGliL0xvb25nQXJjaDY0L0JhcnJpZXIuUw0KPiBuZXcgZmls ZSBtb2RlIDEwMDY0NA0KPiBpbmRleCAwMDAwMDAwMDAwLi41OGYyMWFkNzI1DQo+IC0tLSAvZGV2 L251bGwNCj4gKysrIGIvTWRlUGtnL0xpYnJhcnkvQmFzZUxpYi9Mb29uZ0FyY2g2NC9CYXJyaWVy LlMNCj4gQEAgLTAsMCArMSwyOCBAQA0KPiArIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiArIw0K PiArIyBMb29uZ0FyY2ggQmFycmllciBPcGVyYXRpb25zDQo+ICsjDQo+ICsjIENvcHlyaWdodCAo YykgMjAyMiwgTG9vbmdzb24gVGVjaG5vbG9neSBDb3Jwb3JhdGlvbiBMaW1pdGVkLiBBbGwgcmln aHRzIHJlc2VydmVkLjxCUj4NCj4gKyMNCj4gKyMgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJT RC0yLUNsYXVzZS1QYXRlbnQNCj4gKyMNCj4gKyMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gKw0K PiArQVNNX0dMT0JBTCBBU01fUEZYKEFzbURhdGFCYXJyaWVyTG9vbmdBcmNoKQ0KPiArQVNNX0dM T0JBTCBBU01fUEZYKEFzbUluc3RydWN0aW9uQmFycmllckxvb25nQXJjaCkNCj4gKw0KPiArIw0K PiArIyBEYXRhIGJhcnJpZXIgb3BlcmF0aW9uIGZvciBMb29uZ0FyY2guDQo+ICsjDQo+ICtBU01f UEZYKEFzbURhdGFCYXJyaWVyTG9vbmdBcmNoKToNCj4gKyAgZGJhciAwDQo+ICsgIGppcmwgJHpl cm8sICRyYSwgMA0KPiArDQo+ICsjDQo+ICsjIEluc3RydWN0aW9uIGJhcnJpZXIgb3BlcmF0aW9u IGZvciBMb29uZ0FyY2guDQo+ICsjDQo+ICtBU01fUEZYKEFzbUluc3RydWN0aW9uQmFycmllckxv b25nQXJjaCk6DQo+ICsgIGliYXIgMA0KPiArICBqaXJsICR6ZXJvLCAkcmEsIDANCj4gKw0KPiAr ICAuZW5kDQo+IGRpZmYgLS1naXQgYS9NZGVQa2cvTGlicmFyeS9CYXNlTGliL0xvb25nQXJjaDY0 L0NwdUJyZWFrcG9pbnQuUyBiL01kZVBrZy9MaWJyYXJ5L0Jhc2VMaWIvTG9vbmdBcmNoNjQvQ3B1 QnJlYWtwb2ludC5TDQo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+IGluZGV4IDAwMDAwMDAwMDAu LjRlMDIyZTliYjUNCj4gLS0tIC9kZXYvbnVsbA0KPiArKysgYi9NZGVQa2cvTGlicmFyeS9CYXNl TGliL0xvb25nQXJjaDY0L0NwdUJyZWFrcG9pbnQuUw0KPiBAQCAtMCwwICsxLDI0IEBADQo+ICsj LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+IA0KPiArIw0KPiANCj4gKyMgQ3B1QnJlYWtwb2ludCBm b3IgTG9vbmdBcmNoDQo+IA0KPiArIw0KPiANCj4gKyMgQ29weXJpZ2h0IChjKSAyMDIyLCBMb29u Z3NvbiBUZWNobm9sb2d5IENvcnBvcmF0aW9uIExpbWl0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQu PEJSPg0KPiANCj4gKyMNCj4gDQo+ICsjIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1D bGF1c2UtUGF0ZW50DQo+IA0KPiArIw0KPiANCj4gKyMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4g DQo+ICsNCj4gDQo+ICtBU01fR0xPQkFMIEFTTV9QRlgoQ3B1QnJlYWtwb2ludCkNCj4gDQo+ICsN Cj4gDQo+ICsjLyoqDQo+IA0KPiArIyAgR2VuZXJhdGVzIGEgYnJlYWtwb2ludCBvbiB0aGUgQ1BV Lg0KPiANCj4gKyMNCj4gDQo+ICsjICBHZW5lcmF0ZXMgYSBicmVha3BvaW50IG9uIHRoZSBDUFUu IFRoZSBicmVha3BvaW50IG11c3QgYmUgaW1wbGVtZW50ZWQgc3VjaA0KPiANCj4gKyMgIHRoYXQg Y29kZSBjYW4gcmVzdW1lIG5vcm1hbCBleGVjdXRpb24gYWZ0ZXIgdGhlIGJyZWFrcG9pbnQuDQo+ IA0KPiArIw0KPiANCj4gKyMqKi8NCj4gDQo+ICsNCj4gDQo+ICtBU01fUEZYKENwdUJyZWFrcG9p bnQpOg0KPiANCj4gKyAgYnJlYWsgMw0KPiANCj4gKyAgamlybCAgJHplcm8sICRyYSwgMA0KPiAN Cj4gKyAgLmVuZA0KPiANCj4gZGlmZiAtLWdpdCBhL01kZVBrZy9MaWJyYXJ5L0Jhc2VMaWIvTG9v bmdBcmNoNjQvQ3B1UGF1c2UuUyBiL01kZVBrZy9MaWJyYXJ5L0Jhc2VMaWIvTG9vbmdBcmNoNjQv Q3B1UGF1c2UuUw0KPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiBpbmRleCAwMDAwMDAwMDAwLi5l OTE0MGU4NzQyDQo+IC0tLSAvZGV2L251bGwNCj4gKysrIGIvTWRlUGtnL0xpYnJhcnkvQmFzZUxp Yi9Mb29uZ0FyY2g2NC9DcHVQYXVzZS5TDQo+IEBAIC0wLDAgKzEsMzEgQEANCj4gKyMtLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0NCj4gDQo+ICsjDQo+IA0KPiArIyBDcHVQYXVzZSBmb3IgTG9vbmdBcmNo DQo+IA0KPiArIw0KPiANCj4gKyMgQ29weXJpZ2h0IChjKSAyMDIyLCBMb29uZ3NvbiBUZWNobm9s b2d5IENvcnBvcmF0aW9uIExpbWl0ZWQuIEFsbCByaWdodHMgcmVzZXJ2ZWQuPEJSPg0KPiANCj4g KyMNCj4gDQo+ICsjIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1c2UtUGF0ZW50 DQo+IA0KPiArIw0KPiANCj4gKyMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gDQo+ICsNCj4gDQo+ ICtBU01fR0xPQkFMIEFTTV9QRlgoQ3B1UGF1c2UpDQo+IA0KPiArDQo+IA0KPiArIy8qKg0KPiAN Cj4gKyMgIFJlcXVlc3RzIENQVSB0byBwYXVzZSBmb3IgYSBzaG9ydCBwZXJpb2Qgb2YgdGltZS4N Cj4gDQo+ICsjDQo+IA0KPiArIyAgUmVxdWVzdHMgQ1BVIHRvIHBhdXNlIGZvciBhIHNob3J0IHBl cmlvZCBvZiB0aW1lLiBUeXBpY2FsbHkgdXNlZCBpbiBNUA0KPiANCj4gKyMgIHN5c3RlbXMgdG8g cHJldmVudCBtZW1vcnkgc3RhcnZhdGlvbiB3aGlsZSB3YWl0aW5nIGZvciBhIHNwaW4gbG9jay4N Cj4gDQo+ICsjDQo+IA0KPiArIyoqLw0KPiANCj4gKw0KPiANCj4gK0FTTV9QRlgoQ3B1UGF1c2Up Og0KPiANCj4gKyAgbm9wDQo+IA0KPiArICBub3ANCj4gDQo+ICsgIG5vcA0KPiANCj4gKyAgbm9w DQo+IA0KPiArICBub3ANCj4gDQo+ICsgIG5vcA0KPiANCj4gKyAgbm9wDQo+IA0KPiArICBub3AN Cj4gDQo+ICsgIGppcmwgJHplcm8sICRyYSwgMA0KPiANCj4gKyAgLmVuZA0KPiANCj4gZGlmZiAt LWdpdCBhL01kZVBrZy9MaWJyYXJ5L0Jhc2VMaWIvTG9vbmdBcmNoNjQvRGlzYWJsZUludGVycnVw dHMuUyBiL01kZVBrZy9MaWJyYXJ5L0Jhc2VMaWIvTG9vbmdBcmNoNjQvRGlzYWJsZUludGVycnVw dHMuUw0KPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiBpbmRleCAwMDAwMDAwMDAwLi4wZjIyODMz OWFmDQo+IC0tLSAvZGV2L251bGwNCj4gKysrIGIvTWRlUGtnL0xpYnJhcnkvQmFzZUxpYi9Mb29u Z0FyY2g2NC9EaXNhYmxlSW50ZXJydXB0cy5TDQo+IEBAIC0wLDAgKzEsMjEgQEANCj4gKyMtLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0NCj4gDQo+ICsjDQo+IA0KPiArIyBMb29uZ0FyY2ggaW50ZXJydXB0 IGRpc2FibGUNCj4gDQo+ICsjDQo+IA0KPiArIyBDb3B5cmlnaHQgKGMpIDIwMjIsIExvb25nc29u IFRlY2hub2xvZ3kgQ29ycG9yYXRpb24gTGltaXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC48QlI+ DQo+IA0KPiArIw0KPiANCj4gKyMgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVz ZS1QYXRlbnQNCj4gDQo+ICsjDQo+IA0KPiArIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiANCj4g Kw0KPiANCj4gK0FTTV9HTE9CQUwgQVNNX1BGWChEaXNhYmxlSW50ZXJydXB0cykNCj4gDQo+ICsN Cj4gDQo+ICsjLyoqDQo+IA0KPiArIyAgRGlzYWJsZXMgQ1BVIGludGVycnVwdHMuDQo+IA0KPiAr IyoqLw0KPiANCj4gKw0KPiANCj4gK0FTTV9QRlgoRGlzYWJsZUludGVycnVwdHMpOg0KPiANCj4g KyAgbGkudyAgICAkdDAsIDB4NA0KPiANCj4gKyAgY3NyeGNoZyAkemVybywgJHQwLCAweDANCj4g DQo+ICsgIGppcmwgICAgJHplcm8sICRyYSwgMA0KPiANCj4gKyAgLmVuZA0KPiANCj4gZGlmZiAt LWdpdCBhL01kZVBrZy9MaWJyYXJ5L0Jhc2VMaWIvTG9vbmdBcmNoNjQvRW5hYmxlSW50ZXJydXB0 cy5TIGIvTWRlUGtnL0xpYnJhcnkvQmFzZUxpYi9Mb29uZ0FyY2g2NC9FbmFibGVJbnRlcnJ1cHRz LlMNCj4gbmV3IGZpbGUgbW9kZSAxMDA2NDQNCj4gaW5kZXggMDAwMDAwMDAwMC4uM2MzNGZiMmNk ZA0KPiAtLS0gL2Rldi9udWxsDQo+ICsrKyBiL01kZVBrZy9MaWJyYXJ5L0Jhc2VMaWIvTG9vbmdB cmNoNjQvRW5hYmxlSW50ZXJydXB0cy5TDQo+IEBAIC0wLDAgKzEsMjEgQEANCj4gKyMtLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0NCj4gDQo+ICsjDQo+IA0KPiArIyBMb29uZ0FyY2ggaW50ZXJydXB0IGVu YWJsZQ0KPiANCj4gKyMNCj4gDQo+ICsjIENvcHlyaWdodCAoYykgMjAyMiwgTG9vbmdzb24gVGVj aG5vbG9neSBDb3Jwb3JhdGlvbiBMaW1pdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLjxCUj4NCj4g DQo+ICsjDQo+IA0KPiArIyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlLVBh dGVudA0KPiANCj4gKyMNCj4gDQo+ICsjLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+IA0KPiArDQo+ IA0KPiArQVNNX0dMT0JBTCBBU01fUEZYKEVuYWJsZUludGVycnVwdHMpDQo+IA0KPiArDQo+IA0K PiArIy8qKg0KPiANCj4gKyMgIEVuYWJsZXMgQ1BVIGludGVycnVwdHMuDQo+IA0KPiArIyoqLw0K PiANCj4gKw0KPiANCj4gK0FTTV9QRlgoRW5hYmxlSW50ZXJydXB0cyk6DQo+IA0KPiArICBsaS53 ICAgICR0MCwgMHg0DQo+IA0KPiArICBjc3J4Y2hnICR0MCwgJHQwLCAweDANCj4gDQo+ICsgIGpp cmwgICAgJHplcm8sICRyYSwgMA0KPiANCj4gKyAgLmVuZA0KPiANCj4gZGlmZiAtLWdpdCBhL01k ZVBrZy9MaWJyYXJ5L0Jhc2VMaWIvTG9vbmdBcmNoNjQvR2V0SW50ZXJydXB0U3RhdGUuUyBiL01k ZVBrZy9MaWJyYXJ5L0Jhc2VMaWIvTG9vbmdBcmNoNjQvR2V0SW50ZXJydXB0U3RhdGUuUw0KPiBu ZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiBpbmRleCAwMDAwMDAwMDAwLi5iZmQxZjJkNWY3DQo+IC0t LSAvZGV2L251bGwNCj4gKysrIGIvTWRlUGtnL0xpYnJhcnkvQmFzZUxpYi9Mb29uZ0FyY2g2NC9H ZXRJbnRlcnJ1cHRTdGF0ZS5TDQo+IEBAIC0wLDAgKzEsMzUgQEANCj4gKyMtLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0NCj4gDQo+ICsjDQo+IA0KPiArIyBHZXQgTG9vbmdBcmNoIGludGVycnVwdCBzdGF0 dXMNCj4gDQo+ICsjDQo+IA0KPiArIyBDb3B5cmlnaHQgKGMpIDIwMjIsIExvb25nc29uIFRlY2hu b2xvZ3kgQ29ycG9yYXRpb24gTGltaXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZlZC48QlI+DQo+IA0K PiArIw0KPiANCj4gKyMgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0yLUNsYXVzZS1QYXRl bnQNCj4gDQo+ICsjDQo+IA0KPiArIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiANCj4gKw0KPiAN Cj4gK0FTTV9HTE9CQUwgQVNNX1BGWChHZXRJbnRlcnJ1cHRTdGF0ZSkNCj4gDQo+ICsNCj4gDQo+ ICsjLyoqDQo+IA0KPiArIyAgUmV0cmlldmVzIHRoZSBjdXJyZW50IENQVSBpbnRlcnJ1cHQgc3Rh dGUuDQo+IA0KPiArIw0KPiANCj4gKyMgIFJldHVybnMgVFJVRSBtZWFucyBpbnRlcnJ1cHRzIGFy ZSBjdXJyZW50bHkgZW5hYmxlZC4gT3RoZXJ3aXNlLA0KPiANCj4gKyMgIHJldHVybnMgRkFMU0Uu DQo+IA0KPiArIw0KPiANCj4gKyMgIEByZXR2YWwgVFJVRSAgQ1BVIGludGVycnVwdHMgYXJlIGVu YWJsZWQuDQo+IA0KPiArIyAgQHJldHZhbCBGQUxTRSBDUFUgaW50ZXJydXB0cyBhcmUgZGlzYWJs ZWQuDQo+IA0KPiArIw0KPiANCj4gKyMqKi8NCj4gDQo+ICsNCj4gDQo+ICtBU01fUEZYKEdldElu dGVycnVwdFN0YXRlKToNCj4gDQo+ICsgIGxpLncgICR0MSwgMHg0DQo+IA0KPiArICBjc3JyZCAk dDAsIDB4MA0KPiANCj4gKyAgYW5kICAgJHQwLCAkdDAsICR0MQ0KPiANCj4gKyAgYmVxeiAgJHQw LCAxZg0KPiANCj4gKyAgbGkudyAgJGEwLCAweDENCj4gDQo+ICsgIGIgICAgIDJmDQo+IA0KPiAr MToNCj4gDQo+ICsgIGxpLncgICRhMCwgMHgwDQo+IA0KPiArMjoNCj4gDQo+ICsgIGppcmwgICR6 ZXJvLCAkcmEsIDANCj4gDQo+ICsgIC5lbmQNCj4gDQo+IGRpZmYgLS1naXQgYS9NZGVQa2cvTGli cmFyeS9CYXNlTGliL0xvb25nQXJjaDY0L0ludGVybmFsU3dpdGNoU3RhY2suYw0KPiBiL01kZVBr Zy9MaWJyYXJ5L0Jhc2VMaWIvTG9vbmdBcmNoNjQvSW50ZXJuYWxTd2l0Y2hTdGFjay5jDQo+IG5l dyBmaWxlIG1vZGUgMTAwNjQ0DQo+IGluZGV4IDAwMDAwMDAwMDAuLjg1OWJjOTYzMjkNCj4gLS0t IC9kZXYvbnVsbA0KPiArKysgYi9NZGVQa2cvTGlicmFyeS9CYXNlTGliL0xvb25nQXJjaDY0L0lu dGVybmFsU3dpdGNoU3RhY2suYw0KPiBAQCAtMCwwICsxLDU4IEBADQo+ICsvKiogQGZpbGUNCj4g DQo+ICsgIFN3aXRjaFN0YWNrKCkgZnVuY3Rpb24gZm9yIExvb25nQXJjaC4NCj4gDQo+ICsNCj4g DQo+ICsgIENvcHlyaWdodCAoYykgMjAyMiwgTG9vbmdzb24gVGVjaG5vbG9neSBDb3Jwb3JhdGlv biBMaW1pdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLjxCUj4NCj4gDQo+ICsNCj4gDQo+ICsgIFNQ RFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMi1DbGF1c2UtUGF0ZW50DQo+IA0KPiArKiovDQo+ IA0KPiArDQo+IA0KPiArI2luY2x1ZGUgIkJhc2VMaWJJbnRlcm5hbHMuaCINCj4gDQo+ICsNCj4g DQo+ICtVSU5UTg0KPiANCj4gK0VGSUFQSQ0KPiANCj4gK0ludGVybmFsU3dpdGNoU3RhY2tBc20g KA0KPiANCj4gKyAgSU4gICAgIEJBU0VfTElCUkFSWV9KVU1QX0JVRkZFUiAgKkp1bXBCdWZmZXIN Cj4gDQo+ICsgICk7DQo+IA0KPiArDQo+IA0KPiArLyoqDQo+IA0KPiArICBUcmFuc2ZlcnMgY29u dHJvbCB0byBhIGZ1bmN0aW9uIHN0YXJ0aW5nIHdpdGggYSBuZXcgc3RhY2suDQo+IA0KPiArDQo+ IA0KPiArICBUcmFuc2ZlcnMgY29udHJvbCB0byB0aGUgZnVuY3Rpb24gc3BlY2lmaWVkIGJ5IEVu dHJ5UG9pbnQgdXNpbmcgdGhlDQo+IA0KPiArICBuZXcgc3RhY2sgc3BlY2lmaWVkIGJ5IE5ld1N0 YWNrIGFuZCBwYXNzaW5nIGluIHRoZSBwYXJhbWV0ZXJzIHNwZWNpZmllZA0KPiANCj4gKyAgYnkg Q29udGV4dDEgYW5kIENvbnRleHQyLiAgQ29udGV4dDEgYW5kIENvbnRleHQyIGFyZSBvcHRpb25h bCBhbmQgbWF5DQo+IA0KPiArICBiZSBOVUxMLiAgVGhlIGZ1bmN0aW9uIEVudHJ5UG9pbnQgbXVz dCBuZXZlciByZXR1cm4uDQo+IA0KPiArDQo+IA0KPiArICBJZiBFbnRyeVBvaW50IGlzIE5VTEws IHRoZW4gQVNTRVJUKCkuDQo+IA0KPiArICBJZiBOZXdTdGFjayBpcyBOVUxMLCB0aGVuIEFTU0VS VCgpLg0KPiANCj4gKw0KPiANCj4gKyAgQHBhcmFtW2luXSAgRW50cnlQb2ludCAgQSBwb2ludGVy IHRvIGZ1bmN0aW9uIHRvIGNhbGwgd2l0aCB0aGUgbmV3IHN0YWNrLg0KPiANCj4gKyAgQHBhcmFt W2luXSAgQ29udGV4dDEgICAgQSBwb2ludGVyIHRvIHRoZSBjb250ZXh0IHRvIHBhc3MgaW50byB0 aGUgRW50cnlQb2ludA0KPiANCj4gKyAgICAgICAgICAgICAgICAgICAgICBmdW5jdGlvbi4NCj4g DQo+ICsgIEBwYXJhbVtpbl0gIENvbnRleHQyICAgIEEgcG9pbnRlciB0byB0aGUgY29udGV4dCB0 byBwYXNzIGludG8gdGhlIEVudHJ5UG9pbnQNCj4gDQo+ICsgICAgICAgICAgICAgICAgICAgICAg ZnVuY3Rpb24uDQo+IA0KPiArICBAcGFyYW1baW5dICBOZXdTdGFjayAgICBBIHBvaW50ZXIgdG8g dGhlIG5ldyBzdGFjayB0byB1c2UgZm9yIHRoZSBFbnRyeVBvaW50DQo+IA0KPiArICAgICAgICAg ICAgICAgICAgICAgIGZ1bmN0aW9uLg0KPiANCj4gKyAgQHBhcmFtW2luXSAgTWFya2VyICAgICAg VkFfTElTVCBtYXJrZXIgZm9yIHRoZSB2YXJpYWJsZSBhcmd1bWVudCBsaXN0Lg0KPiANCj4gKw0K PiANCj4gKyoqLw0KPiANCj4gK1ZPSUQNCj4gDQo+ICtFRklBUEkNCj4gDQo+ICtJbnRlcm5hbFN3 aXRjaFN0YWNrICgNCj4gDQo+ICsgIElOICAgICAgU1dJVENIX1NUQUNLX0VOVFJZX1BPSU5UICBF bnRyeVBvaW50LA0KPiANCj4gKyAgSU4gICAgICBWT0lEICAgICAgICAgICAgICAgICAgICAgICpD b250ZXh0MSAgIE9QVElPTkFMLA0KPiANCj4gKyAgSU4gICAgICBWT0lEICAgICAgICAgICAgICAg ICAgICAgICpDb250ZXh0MiAgIE9QVElPTkFMLA0KPiANCj4gKyAgSU4gICAgICBWT0lEICAgICAg ICAgICAgICAgICAgICAgICpOZXdTdGFjaywNCj4gDQo+ICsgIElOICAgICAgVkFfTElTVCAgICAg ICAgICAgICAgICAgICBNYXJrZXINCj4gDQo+ICsgICkNCj4gDQo+ICsNCj4gDQo+ICt7DQo+IA0K PiArICBCQVNFX0xJQlJBUllfSlVNUF9CVUZGRVIgIEp1bXBCdWZmZXI7DQo+IA0KPiArDQo+IA0K PiArICBKdW1wQnVmZmVyLlJBICAgICAgICAgICAgICAgICAgICAgID0gKFVJTlROKUVudHJ5UG9p bnQ7DQo+IA0KPiArICBKdW1wQnVmZmVyLlNQICAgICAgICAgICAgICAgICAgICAgID0gKFVJTlRO KU5ld1N0YWNrIC0gc2l6ZW9mIChWT0lEICopOw0KPiANCj4gKyAgSnVtcEJ1ZmZlci5TUCAgICAg ICAgICAgICAgICAgICAgIC09IHNpemVvZiAoQ29udGV4dDEpICsgc2l6ZW9mIChDb250ZXh0Mik7 DQo+IA0KPiArICAoKFZPSUQgKiopKFVJTlROKUp1bXBCdWZmZXIuU1ApWzBdID0gQ29udGV4dDE7 DQo+IA0KPiArICAoKFZPSUQgKiopKFVJTlROKUp1bXBCdWZmZXIuU1ApWzFdID0gQ29udGV4dDI7 DQo+IA0KPiArDQo+IA0KPiArICBJbnRlcm5hbFN3aXRjaFN0YWNrQXNtICgmSnVtcEJ1ZmZlcik7 DQo+IA0KPiArfQ0KPiANCj4gZGlmZiAtLWdpdCBhL01kZVBrZy9MaWJyYXJ5L0Jhc2VMaWIvTG9v bmdBcmNoNjQvTWVtb3J5RmVuY2UuUyBiL01kZVBrZy9MaWJyYXJ5L0Jhc2VMaWIvTG9vbmdBcmNo NjQvTWVtb3J5RmVuY2UuUw0KPiBuZXcgZmlsZSBtb2RlIDEwMDY0NA0KPiBpbmRleCAwMDAwMDAw MDAwLi4yYjNkMzQzNjZmDQo+IC0tLSAvZGV2L251bGwNCj4gKysrIGIvTWRlUGtnL0xpYnJhcnkv QmFzZUxpYi9Mb29uZ0FyY2g2NC9NZW1vcnlGZW5jZS5TDQo+IEBAIC0wLDAgKzEsMTggQEANCj4g KyMtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gDQo+ICsjDQo+IA0KPiArIyBNZW1vcnlGZW5jZSgp IGZvciBMb29uZ0FyY2gNCj4gDQo+ICsjDQo+IA0KPiArIyBDb3B5cmlnaHQgKGMpIDIwMjIsIExv b25nc29uIFRlY2hub2xvZ3kgQ29ycG9yYXRpb24gTGltaXRlZC4gQWxsIHJpZ2h0cyByZXNlcnZl ZC48QlI+DQo+IA0KPiArIw0KPiANCj4gKyMgU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEJTRC0y LUNsYXVzZS1QYXRlbnQNCj4gDQo+ICsjDQo+IA0KPiArIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0K PiANCj4gKw0KPiANCj4gK0FTTV9HTE9CQUwgQVNNX1BGWChNZW1vcnlGZW5jZSkNCj4gDQo+ICsN Cj4gDQo+ICsjDQo+IA0KPiArIyBNZW1vcnkgZmVuY2UgZm9yIExvb25nQXJjaA0KPiANCj4gKyMN Cj4gDQo+ICtBU01fUEZYKE1lbW9yeUZlbmNlKToNCj4gDQo+ICsgIGIgIEFzbURhdGFCYXJyaWVy TG9vbmdBcmNoDQo+IA0KPiArICAuZW5kDQo+IA0KPiBkaWZmIC0tZ2l0IGEvTWRlUGtnL0xpYnJh cnkvQmFzZUxpYi9Mb29uZ0FyY2g2NC9TZXRKdW1wTG9uZ0p1bXAuUyBiL01kZVBrZy9MaWJyYXJ5 L0Jhc2VMaWIvTG9vbmdBcmNoNjQvU2V0SnVtcExvbmdKdW1wLlMNCj4gbmV3IGZpbGUgbW9kZSAx MDA2NDQNCj4gaW5kZXggMDAwMDAwMDAwMC4uMWM2ZWU1NGI2Zg0KPiAtLS0gL2Rldi9udWxsDQo+ ICsrKyBiL01kZVBrZy9MaWJyYXJ5L0Jhc2VMaWIvTG9vbmdBcmNoNjQvU2V0SnVtcExvbmdKdW1w LlMNCj4gQEAgLTAsMCArMSw0OSBAQA0KPiArIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiANCj4g KyMNCj4gDQo+ICsjIFNldC9Mb25nIGp1bXAgZm9yIExvb25nQXJjaA0KPiANCj4gKyMNCj4gDQo+ ICsjIENvcHlyaWdodCAoYykgMjAyMiwgTG9vbmdzb24gVGVjaG5vbG9neSBDb3Jwb3JhdGlvbiBM aW1pdGVkLiBBbGwgcmlnaHRzIHJlc2VydmVkLjxCUj4NCj4gDQo+ICsjDQo+IA0KPiArIyBTUERY LUxpY2Vuc2UtSWRlbnRpZmllcjogQlNELTItQ2xhdXNlLVBhdGVudA0KPiANCj4gKyMNCj4gDQo+ ICsjLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+IA0KPiArDQo+IA0KPiArI2RlZmluZSBTVE9SRSAg IHN0LmQgICAgLyogNjQgYml0IG1vZGUgcmVnc2F2ZSBpbnN0cnVjdGlvbiAqLw0KPiANCj4gKyNk ZWZpbmUgTE9BRCAgICBsZC5kICAgIC8qIDY0IGJpdCBtb2RlIHJlZ2xvYWQgaW5zdHJ1Y3Rpb24g Ki8NCj4gDQo+ICsjZGVmaW5lIFJTSVpFICAgOCAgICAgICAvKiA2NCBiaXQgbW9kZSByZWdpc3Rl ciBzaXplICovDQo+IA0KPiArDQo+IA0KPiArQVNNX0dMT0JBTCBBU01fUEZYKFNldEp1bXApDQo+ IA0KPiArQVNNX0dMT0JBTCBBU01fUEZYKEludGVybmFsTG9uZ0p1bXApDQo+IA0KPiArDQo+IA0K PiArQVNNX1BGWChTZXRKdW1wKToNCj4gDQo+ICsgIFNUT1JFICAgJHMwLCAkYTAsIFJTSVpFICog MA0KPiANCj4gKyAgU1RPUkUgICAkczEsICRhMCwgUlNJWkUgKiAxDQo+IA0KPiArICBTVE9SRSAg ICRzMiwgJGEwLCBSU0laRSAqIDINCj4gDQo+ICsgIFNUT1JFICAgJHMzLCAkYTAsIFJTSVpFICog Mw0KPiANCj4gKyAgU1RPUkUgICAkczQsICRhMCwgUlNJWkUgKiA0DQo+IA0KPiArICBTVE9SRSAg ICRzNSwgJGEwLCBSU0laRSAqIDUNCj4gDQo+ICsgIFNUT1JFICAgJHM2LCAkYTAsIFJTSVpFICog Ng0KPiANCj4gKyAgU1RPUkUgICAkczcsICRhMCwgUlNJWkUgKiA3DQo+IA0KPiArICBTVE9SRSAg ICRzOCwgJGEwLCBSU0laRSAqIDgNCj4gDQo+ICsgIFNUT1JFICAgJHNwLCAkYTAsIFJTSVpFICog OQ0KPiANCj4gKyAgU1RPUkUgICAkZnAsICRhMCwgUlNJWkUgKiAxMA0KPiANCj4gKyAgU1RPUkUg ICAkcmEsICRhMCwgUlNJWkUgKiAxMQ0KPiANCj4gKyAgbGkudyAgICAkYTAsIDAgICAgICAgICAg ICAgICAgICAgICMgU2V0am1wIHJldHVybg0KPiANCj4gKyAgamlybCAgICAkemVybywgJHJhLCAw DQo+IA0KPiArDQo+IA0KPiArQVNNX1BGWChJbnRlcm5hbExvbmdKdW1wKToNCj4gDQo+ICsgIExP QUQgICAgJHJhLCAkYTAsIFJTSVpFICogMTENCj4gDQo+ICsgIExPQUQgICAgJHMwLCAkYTAsIFJT SVpFICogMA0KPiANCj4gKyAgTE9BRCAgICAkczEsICRhMCwgUlNJWkUgKiAxDQo+IA0KPiArICBM T0FEICAgICRzMiwgJGEwLCBSU0laRSAqIDINCj4gDQo+ICsgIExPQUQgICAgJHMzLCAkYTAsIFJT SVpFICogMw0KPiANCj4gKyAgTE9BRCAgICAkczQsICRhMCwgUlNJWkUgKiA0DQo+IA0KPiArICBM T0FEICAgICRzNSwgJGEwLCBSU0laRSAqIDUNCj4gDQo+ICsgIExPQUQgICAgJHM2LCAkYTAsIFJT SVpFICogNg0KPiANCj4gKyAgTE9BRCAgICAkczcsICRhMCwgUlNJWkUgKiA3DQo+IA0KPiArICBM T0FEICAgICRzOCwgJGEwLCBSU0laRSAqIDgNCj4gDQo+ICsgIExPQUQgICAgJHNwLCAkYTAsIFJT SVpFICogOQ0KPiANCj4gKyAgTE9BRCAgICAkZnAsICRhMCwgUlNJWkUgKiAxMA0KPiANCj4gKyAg bW92ZSAgICAkYTAsICRhMQ0KPiANCj4gKyAgamlybCAgICAkemVybywgJHJhLCAwDQo+IA0KPiAr ICAuZW5kDQo+IA0KPiBkaWZmIC0tZ2l0IGEvTWRlUGtnL0xpYnJhcnkvQmFzZUxpYi9Mb29uZ0Fy Y2g2NC9Td2l0Y2hTdGFjay5TIGIvTWRlUGtnL0xpYnJhcnkvQmFzZUxpYi9Mb29uZ0FyY2g2NC9T d2l0Y2hTdGFjay5TDQo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0DQo+IGluZGV4IDAwMDAwMDAwMDAu LmFkOWFhOGIzNDMNCj4gLS0tIC9kZXYvbnVsbA0KPiArKysgYi9NZGVQa2cvTGlicmFyeS9CYXNl TGliL0xvb25nQXJjaDY0L1N3aXRjaFN0YWNrLlMNCj4gQEAgLTAsMCArMSwzOSBAQA0KPiArIy0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiANCj4gKyMNCj4gDQo+ICsjIEludGVybmFsU3dpdGNoU3Rh Y2tBc20gZm9yIExvb25nQXJjaA0KPiANCj4gKyMNCj4gDQo+ICsjIENvcHlyaWdodCAoYykgMjAy MiwgTG9vbmdzb24gVGVjaG5vbG9neSBDb3Jwb3JhdGlvbiBMaW1pdGVkLiBBbGwgcmlnaHRzIHJl c2VydmVkLjxCUj4NCj4gDQo+ICsjDQo+IA0KPiArIyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjog QlNELTItQ2xhdXNlLVBhdGVudA0KPiANCj4gKyMNCj4gDQo+ICsjLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tDQo+IA0KPiArDQo+IA0KPiArI2RlZmluZSBTVE9SRSAgIHN0LmQgICAgLyogNjQgYml0IG1v ZGUgcmVnc2F2ZSBpbnN0cnVjdGlvbiAqLw0KPiANCj4gKyNkZWZpbmUgTE9BRCAgICBsZC5kICAg IC8qIDY0IGJpdCBtb2RlIHJlZ2xvYWQgaW5zdHJ1Y3Rpb24gKi8NCj4gDQo+ICsjZGVmaW5lIFJT SVpFICAgOCAgICAgICAvKiA2NCBiaXQgbW9kZSByZWdpc3RlciBzaXplICovDQo+IA0KPiArDQo+ IA0KPiArQVNNX0dMT0JBTCBBU01fUEZYKEludGVybmFsU3dpdGNoU3RhY2tBc20pDQo+IA0KPiAr DQo+IA0KPiArLyoqDQo+IA0KPiArICBUaGlzIGFsbG93cyB0aGUgY2FsbGVyIHRvIHN3aXRjaCB0 aGUgc3RhY2sgYW5kIGdvZXMgdG8gdGhlIG5ldyBlbnRyeSBwb2ludA0KPiANCj4gKw0KPiANCj4g KyAgQHBhcmFtICBKdW1wQnVmZmVyICAgIEEgcG9pbnRlciB0byBDUFUgY29udGV4dCBidWZmZXIu DQo+IA0KPiArKiovDQo+IA0KPiArDQo+IA0KPiArQVNNX1BGWChJbnRlcm5hbFN3aXRjaFN0YWNr QXNtKToNCj4gDQo+ICsgIExPQUQgICAgJHJhLCAkYTAsIFJTSVpFICogMTENCj4gDQo+ICsgIExP QUQgICAgJHMwLCAkYTAsIFJTSVpFICogMA0KPiANCj4gKyAgTE9BRCAgICAkczEsICRhMCwgUlNJ WkUgKiAxDQo+IA0KPiArICBMT0FEICAgICRzMiwgJGEwLCBSU0laRSAqIDINCj4gDQo+ICsgIExP QUQgICAgJHMzLCAkYTAsIFJTSVpFICogMw0KPiANCj4gKyAgTE9BRCAgICAkczQsICRhMCwgUlNJ WkUgKiA0DQo+IA0KPiArICBMT0FEICAgICRzNSwgJGEwLCBSU0laRSAqIDUNCj4gDQo+ICsgIExP QUQgICAgJHM2LCAkYTAsIFJTSVpFICogNg0KPiANCj4gKyAgTE9BRCAgICAkczcsICRhMCwgUlNJ WkUgKiA3DQo+IA0KPiArICBMT0FEICAgICRzOCwgJGEwLCBSU0laRSAqIDgNCj4gDQo+ICsgIExP QUQgICAgJHNwLCAkYTAsIFJTSVpFICogOQ0KPiANCj4gKyAgTE9BRCAgICAkZnAsICRhMCwgUlNJ WkUgKiAxMA0KPiANCj4gKyAgTE9BRCAgICAkYTAsICRzcCwgMA0KPiANCj4gKyAgTE9BRCAgICAk YTEsICRzcCwgOA0KPiANCj4gKyAgamlybCAgICAkemVybywgJHJhLCAwDQo+IA0KPiArICAuZW5k DQo+IA0KPiAtLQ0KPiAyLjI3LjANCg0K