From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by mx.groups.io with SMTP id smtpd.web12.21748.1605855116610757503 for ; Thu, 19 Nov 2020 22:51:56 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=MJak8w0V; spf=pass (domain: intel.com, ip: 134.134.136.31, mailfrom: zhiguang.liu@intel.com) IronPort-SDR: NQKbNk3FsySqTNM+OKapdxy1iBgaoiuYGISjno+Yu+Mizak+H+OMdeL1ko/vKzyO/JR59ZSHZ1 p5bPTRaRlNUg== X-IronPort-AV: E=McAfee;i="6000,8403,9810"; a="233045088" X-IronPort-AV: E=Sophos;i="5.78,355,1599548400"; d="scan'208";a="233045088" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 19 Nov 2020 22:51:55 -0800 IronPort-SDR: ltSTATZWuKQ3bV/CHHK5eYFqKm64cEbbzsmJZnKuzgbBbqmhHNk11kY7a6h0ZttewYG1G2vnQe MJpsHzRfbM9g== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.78,355,1599548400"; d="scan'208";a="545328730" Received: from orsmsx603.amr.corp.intel.com ([10.22.229.16]) by orsmga005.jf.intel.com with ESMTP; 19 Nov 2020 22:51:55 -0800 Received: from orsmsx602.amr.corp.intel.com (10.22.229.15) by ORSMSX603.amr.corp.intel.com (10.22.229.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1713.5; Thu, 19 Nov 2020 22:51:54 -0800 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) 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.1713.5 via Frontend Transport; Thu, 19 Nov 2020 22:51:54 -0800 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (104.47.70.100) by edgegateway.intel.com (134.134.137.100) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.1713.5; Thu, 19 Nov 2020 22:51:51 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZgR6kRc4h8JyjCKYDRtAs2xmEHPAFi+FUcI4HltdLWI3m19ZJbUYNh98XUSFk6y89QSvJOayuVJbb8liguCcbJpYg+sX6YdtQgQsFxMESu1t24X4tmAJ7AK2wpj+FjQoxI7mvfMRQ/qkD1t2A3wTLMkkmRPYyPUqS5Mcg/kSZZ17+ONsSJKrWKHFx0KWcQbFOLx+9v3cCEZFqs7zpWZqcI69dwQdV1Ng1N45EmALUh2aaMUlmztmkZsNEMQy4YtJK2lLJ+ZdIw3qwdPqfV+wfy2EZrA5oyTzl3pjqOMeYGrA3Clwbk/3O9LZZFXf+yccWGWdbW8g6rtTZy2/sfoo9Q== 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-SenderADCheck; bh=3WlBpHitD9UP7KfCiEMWya403BWizNkG6X/QVE3jk0Q=; b=hqFvsWXrhaJ8QutXEIbcuhnUlC8CB8VVFBIUpcAYdt95Y7/GJIdSFhRm39Tb+hd5fdgKghGgpUbxLwcg1UeyYGhouTCFc/E/Y+b0alAG1+pDqe/5DhxvX/FXWS//HzrwmwO8cQYPCKP6uHCLZvaT2GuByXkLSiZoaX2Yl3rfTiC1huOTgtDDD22ZQQazvEigj2pfkFZR7pyWDYEV6VyaM4FzJNbl8CrhOWVRbMVDtgA1TcWAIAq3R91s6UPq9ugjtsB0UPIHKmMA30Kz/qsHHIbCx8b7pkw7gdqxwF6mHtsYXmMXwyxJOADT6Iku7v2Fnd1sDhsI4PjvThNlsEXI4A== 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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=3WlBpHitD9UP7KfCiEMWya403BWizNkG6X/QVE3jk0Q=; b=MJak8w0VfIq9CfaM0eWIq/d4y0niBrUb4fhCvEDz9dqWSZWJ/1acLjjec/Cr87EiU9ros+WAm7NpxpgSNZum3Zt3R5tLfqEklivll6X8lhOv0Kov7OHax6tu1hlYxDRNy3hY5CcR4yLeuEJ43CDofbeo2f8fOPFaJGnTMSeE6+8= Received: from CY4PR11MB1687.namprd11.prod.outlook.com (2603:10b6:903:2e::11) by CY4PR1101MB2325.namprd11.prod.outlook.com (2603:10b6:903:bf::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3564.28; Fri, 20 Nov 2020 06:51:42 +0000 Received: from CY4PR11MB1687.namprd11.prod.outlook.com ([fe80::7596:99f8:30f6:b717]) by CY4PR11MB1687.namprd11.prod.outlook.com ([fe80::7596:99f8:30f6:b717%6]) with mapi id 15.20.3541.029; Fri, 20 Nov 2020 06:51:42 +0000 From: "Zhiguang Liu" To: "devel@edk2.groups.io" , "michael.kubacki@outlook.com" , "awarkentin@vmware.com" , Ard Biesheuvel , "debtech@gmail.com" , "Feng, Bob C" , "Tian, Hot" CC: Bret Barkelew , "Yao, Jiewen" , "Bi, Dandan" , Chao Zhang , "Wang, Jian J" , "Wu, Hao A" , Liming Gao , "Justen, Jordan L" , Laszlo Ersek , Andrew Fish , "Ni, Ray" , Bret Barkelew , "Kinney, Michael D" , Liming Gao Subject: A proposal to reduce incompatible case Thread-Topic: A proposal to reduce incompatible case Thread-Index: Ada+/etnUmVC5qPDQhOBTvkgTrS9Rw== Date: Fri, 20 Nov 2020 06:51:42 +0000 Message-ID: Accept-Language: zh-CN, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-reaction: no-action dlp-version: 11.5.1.3 dlp-product: dlpe-windows authentication-results: edk2.groups.io; dkim=none (message not signed) header.d=none;edk2.groups.io; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.55.46.39] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 0955bf3f-b1ba-4a34-ad66-08d88d20bd11 x-ms-traffictypediagnostic: CY4PR1101MB2325: x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: irbEUgpVuPD7Ni8hHx8LmQLbPdD/W3SQXil7x1r3k/q4/ZC58Tw9rhgRpxnjlVN+aVOesmD1pjUA4Iko5L0i1DBp8MUCUITHfHbriDsxfNcCywHrtZ986+dal68HswacCzixWDqJWp4rDzRv8Oa0EeGxr/6/Z1+Uzjv1+di7tzu1v/oGtQPgW8Ar51ey84Tt4e+kaHl15tYoMaWQusbYKjTO+dTQIUlK1l2DAMomAMFsx/ZTlcotRPS2qCOlt1vxJaCTSJBWTi6/IfQAIsxWUlupjB3zyFWepoFwaHDcOD7uh5dQDhVs2fxkw1icSVUHi02hbH9edzo+fpMSpHCgeT7OXr9EBVFhgPPXchgmWaPeUSFIELyy9+z1FFgGxMtr6Gnu6OmmwcGJMBf5z1ZtLwaLYsf0wI2TxI/nIHWPYYMq1hLN2XPy4y+6e2r3ZBUBRNgM1GQ+hmSsT3gjUry/vQ== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CY4PR11MB1687.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(346002)(39860400002)(376002)(136003)(366004)(396003)(83380400001)(478600001)(966005)(76116006)(55016002)(26005)(7696005)(6636002)(110136005)(7416002)(45080400002)(9686003)(71200400001)(8676002)(4326008)(186003)(5660300002)(2906002)(19627235002)(6506007)(316002)(53546011)(66476007)(66446008)(30864003)(66946007)(8936002)(33656002)(86362001)(64756008)(52536014)(54906003)(66556008)(44824005);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: nVcaGoFCBDm2pWJ1sdK6Budy2EWkE2rKgYQ4suf8JBxLGbPTP+735Tj7oU5dvLtW5HTzZ1X9NolQUIbNmJjaHQH1xl6mIeefQ3eJNEeMsIe4JtvHA+wh2Hhkrn3/ZDQ0G2YxB3LOPMkhwtz6QIzDJ7V7QGOS9KsJoR16kTmq4x99xdbKl66mqzRL/NFrNrM71MC9E0cK2e7S2Pfy0qreaY1PJ4nO0zy9wMfkONT2AbO9NEWiSQ3BXKb/AYnLos6nSHceuUe3sAV28qlWFQG4iLWeX8bPCzQCGKN+0q/VNXWxVXS8qWitIIKKqumfrCJLk2GWkU+/qbJDCTvR4EnzSVXpgDfdA2rSrmMRW66DIGopeKElft9cPhpA4fetNshIRmn91DxDeS1ndDitLs/2uz0YP1I+V+zMceAe7OtD0J2KL0VlVhYZAtG+7WOP1/udDCisfq4/jGZt9GiF6wu8R7oevorFgaqT0JFiHPIm8ekVzQGYUOerl7XhyckEjzFpXr/Ou4eGtYxP98Bhae5gCFc5LxDdVveXbRC0ahodgH+DTGPyKu3L33U7vMy1G0xmFh+wi4cwzmkkM8lzngmr5UUezdaF38z3jsoCEeI4YZpWASWU+QHfrHCJtw95za/ISNff43MksrPe/Nne0iprug== MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CY4PR11MB1687.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0955bf3f-b1ba-4a34-ad66-08d88d20bd11 X-MS-Exchange-CrossTenant-originalarrivaltime: 20 Nov 2020 06:51:42.1558 (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: JGQjifEU5CWUYuMzVX5LRnfoBcs2blj6yV5sRrEj2j26CJACWB/Tyfl2yJic9Yzjc3OVI2gLe836wGGMo0CUrw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR1101MB2325 Return-Path: zhiguang.liu@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SGkgYWxsLA0KDQpBcyBNaWNoYWVsIG1lbnRpb25lZCwgdGhlcmUgYXJlIHNvbWUgcGxhdGZvcm1z IGRvIG5vdCBidWlsZCBhbmQgc29tZSBpcyBiZWNhdXNlIGluY29tcGF0aWJsZSBjb2RlIGNoYW5n ZSBsaWtlIHRoaXMgb25lLg0KSSB0aGluayBpdCBpcyBhIGJ1cmRlbiBmb3IgYm90aCBjb250cmli dXRvciBhbmQgbWFpbnRhaW5lciB0byBmaXggcGxhdGZvcm0gY29kZSB3aGVuIG1lZXRpbmcgc3Vj aCBpbmNvbXBhdGlibGUgY2hhbmdlLg0KSSB3YW50IHRvIHByb3Bvc2FsIG9uZSBzb2x1dGlvbiB0 byBtaW5pbXVtIHRoZSBlZmZvcnQgb2Ygc3VjaCBjb2RlIGNoYW5nZS4NCg0KV2UgY291bGQgYWRk IGEgcGFja2FnZSBsaWJyYXJ5IGluc3RhbmNlIGRzYyBpbmNsdWRlIGZpbGUgdW5kZXIgZWFjaCBw YWNrYWdlLCBsaWtlIFhYWFBrZ0xpYi5kc2MuaW5jDQpJdCB3aWxsIHNwZWNpZnkgdGhlIGRlZmF1 bHQgbGlicmFyeSBpbnN0YW5jZSB0aGF0IHdpbGwgYmUgdXNlZCBieSBtb2R1bGVzIGluIHRoaXMg cGFja2FnZS4NCkZvciBleGFtcGxlLCB3ZSBhZGQgTWRlTW9kdWxlUGtnTGliLmRzYy5pbmMgZmls ZSBpbiBNZGVNb2R1bGVQa2cuDQpTb21lIHBhY2thZ2UgYWxyZWFkeSBoYXMgc2ltaWxhciBkc2Mg aW5jbHVkZSBmaWxlLCBzdWNoIGFzIEFybVZpcnRQa2cvQXJtVmlydC5kc2MuaW5jIGFuZCBOZXR3 b3JrUGtnXE5ldHdvcmsuZHNjLmluYy4NCkluIHBsYXRmb3JtIGRzYyBmaWxlLCB3ZSBpbmNsdWRl IHRoZSBYWFhQa2dMaWIuZHNjLmluYyBmaWxlIGF0IHRoZSBiZWdpbm5pbmcsICBpZiB0aGUgcGxh dGZvcm0gdXNlcyBjb21wb25lbnQgZnJvbSB0aGUgcGFja2FnZS4NCldlIHBsYWNlIHRoZSBpbmMg ZmlsZSBpbiB0aGUgYmVnaW5uaW5nIGJlY2F1c2Ugd2UgY2FuIG92ZXJyaWRlIHRoZSBsaWJyYXJ5 IGluc3RhbmNlIGluIG90aGVyIHBhcnQgb2YgdGhlIHBsYXRmb3JtIGRzYyBmaWxlLg0KDQpXaGVu ZXZlciB0aGUgY29udHJpYnV0b3IgYWRkcyBhIG5ldyBsaWJyYXJ5IGRlcGVuZGVuY3kgaW4gb25l IG1vZHVsZSwgaGUgc2hvdWxkIGFsc28gYWRkIGEgZGVmYXVsdCBsaWJyYXJ5IGluc3RhbmNlIGlu IHRoZSBwYWNrYWdlIGxpYnJhcnkgaW5zdGFuY2UgZHNjIGluY2x1ZGUgZmlsZS4NCg0KRm9yIGV4 YW1wbGUsIGluIHRoaXMgY2FzZSwNCkNvbnRyaWJ1dG9yIHdpbGwgYWRkIHRoZSBiZWxvdyBpbmZv cm1hdGlvbiBpbiBVZWZpUGF5bG9hZFBrZ0xpYi5kc2MuaW5jLCBTZWN1cml0eVBrZ0xpYi5kc2Mu aW5jIGFuZCBNZGVNb2R1bGVQa2dMaWIuZHNjLmluYw0KDQogW0xpYnJhcnlDbGFzc2VzXQ0KICAg ICAgVmFyaWFibGVQb2xpY3lMaWJ8TWRlTW9kdWxlUGtnL0xpYnJhcnkvVmFyaWFibGVQb2xpY3lM aWIvVmFyaWFibGVQb2xpY3lMaWIuaW5mDQogICAgICBWYXJpYWJsZVBvbGljeUhlbHBlckxpYnxN ZGVNb2R1bGVQa2cvTGlicmFyeS9WYXJpYWJsZVBvbGljeUhlbHBlckxpYi9WYXJpYWJsZVBvbGlj eUhlbHBlckxpYi5pbmYNCiBbTGlicmFyeUNsYXNzZXMuY29tbW9uLkRYRV9SVU5USU1FX0RSSVZF Ul0NCiAgICAgIFZhcmlhYmxlUG9saWN5TGlifE1kZU1vZHVsZVBrZy9MaWJyYXJ5L1ZhcmlhYmxl UG9saWN5TGliL1ZhcmlhYmxlUG9saWN5TGliUnVudGltZUR4ZS5pbmYNCg0KSWYgdGhlIHBsYXRm b3JtIGFscmVhZHkgaW5jbHVkZXMgdGhlc2UgaW5jIGZpbGVzLCB0aGUgY29kZSBjaGFuZ2Ugd29u J3QgYnJlYWsgYW55IGJ1aWxkLg0KSWYgdGhlIHBsYXRmb3JtIHdhbnRzIHRvIGNob29zZSBhbm90 aGVyIGxpYnJhcnkgaW5zdGFuY2UsIGl0IGNhbiBzcGVjaWZ5IGluIHRoZSBkc2MgZmlsZSwgYW5k IHdpbGwgb3ZlcnJpZGUgdGhlIGNvbmZpZ3VyYXRpb24gaW4gaW5jIGZpbGVzLg0KVGhpcyBmZWF0 dXJlIGNhbiBldmVuIHJlZHVjZSB0aGUgY29kZSBpbiBwbGF0Zm9ybSBkc2MgZmlsZSBpZiBwbGF0 Zm9ybSBjaG9vc2UgdG8gdXNlIGRlZmF1bHQgbGlicmFyeSBpbnN0YW5jZS4NClRoZSBwcm9ibGVt IGlzIHRoYXQgaXQgbWF5IGNvbXBpbGVzIHJlZHVuZGFudCBtb2R1bGVzIGlmIHRoZSAgDQoNClBs ZWFzZSBnaXZlIGNvbW1lbnRzIGFib3V0IHRoaXMgcHJvcG9zYWwuDQoNClRoYW5rcw0KWmhpZ3Vh bmcgDQogIA0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IGRldmVsQGVk azIuZ3JvdXBzLmlvIDxkZXZlbEBlZGsyLmdyb3Vwcy5pbz4gT24gQmVoYWxmIE9mIE1pY2hhZWwN Cj4gS3ViYWNraQ0KPiBTZW50OiBGcmlkYXksIE5vdmVtYmVyIDIwLCAyMDIwIDQ6MTYgQU0NCj4g VG86IGRldmVsQGVkazIuZ3JvdXBzLmlvOyBhd2Fya2VudGluQHZtd2FyZS5jb207IEFyZCBCaWVz aGV1dmVsDQo+IDxhcmQuYmllc2hldXZlbEBhcm0uY29tPjsgZGVidGVjaEBnbWFpbC5jb20NCj4g Q2M6IEJyZXQgQmFya2VsZXcgPGJyZXRAY29ydGhvbi5jb20+OyBZYW8sIEppZXdlbiA8amlld2Vu Lnlhb0BpbnRlbC5jb20+Ow0KPiBCaSwgRGFuZGFuIDxkYW5kYW4uYmlAaW50ZWwuY29tPjsgQ2hh byBaaGFuZyA8Y2hhby5iLnpoYW5nQGludGVsLmNvbT47DQo+IFdhbmcsIEppYW4gSiA8amlhbi5q LndhbmdAaW50ZWwuY29tPjsgV3UsIEhhbyBBIDxoYW8uYS53dUBpbnRlbC5jb20+Ow0KPiBMaW1p bmcgR2FvIDxsaW1pbmcuZ2FvQGludGVsLmNvbT47IEp1c3RlbiwgSm9yZGFuIEwNCj4gPGpvcmRh bi5sLmp1c3RlbkBpbnRlbC5jb20+OyBMYXN6bG8gRXJzZWsgPGxlcnNla0ByZWRoYXQuY29tPjsg QW5kcmV3IEZpc2gNCj4gPGFmaXNoQGFwcGxlLmNvbT47IE5pLCBSYXkgPHJheS5uaUBpbnRlbC5j b20+OyBCcmV0IEJhcmtlbGV3DQo+IDxicmJhcmtlbEBtaWNyb3NvZnQuY29tPg0KPiBTdWJqZWN0 OiBSZTogW2VkazItZGV2ZWxdIFtQQVRDSCB2OSAwMC8xM10gQWRkIHRoZSBWYXJpYWJsZVBvbGlj eSBmZWF0dXJlDQo+IA0KPiBXaGlsZSBJJ20gbm90IGN1cnJlbnRseSBhIG1haW50YWluZXIgaW4g ZWl0aGVyIHJlcG8sIEkgYmVsaWV2ZSB0aGUgY3VycmVudA0KPiBwcm9jZXNzIGlzIG5vdCBpZGVh bC4gSSBoaWdobGlnaHRlZCBzb21lIG9mIG15IG9ic2VydmF0aW9ucw0KPiBoZXJlOiBodHRwczov L2VkazIuZ3JvdXBzLmlvL2cvZGV2ZWwvbWVzc2FnZS82NTkwMi4NCj4gDQo+IEFnYWluLCBJIGRv bid0IGhhdmUgYSBzdHJvbmcgdmVzdGVkIGludGVyZXN0IGluIHRoaXMgYnV0IEkgZG8gdGhpbmsg c29tZSBsZXZlbCBvZiBhDQo+IG1vcmUgd2VsbCBkZWZpbmVkIHByb2Nlc3MgbmVlZHMgdG8gYmUg cmVhY2hlZCBiZXR3ZWVuIHJlcG8gbWFpbnRpbmVycyB0bw0KPiBlYXNlIGZlYXR1cmUgZGV2ZWxv cG1lbnQgaW4gdGhlIGZ1dHVyZS4NCj4gDQo+IFRoYW5rcywNCj4gTWljaGFlbA0KPiANCj4gT24g MTEvMTkvMjAyMCAxMjowMiBQTSwgQW5kcmVpIFdhcmtlbnRpbiB3cm90ZToNCj4gPiBIaSBCcmV0 LA0KPiA+DQo+ID4gVG8gYmUgaG9uZXN0LCBJIGRvbid0IHJlY2FsbCBzZWVpbmcgYW55dGhpbmcu IEFnYWluLCBtYXliZSBJIHNob3VsZA0KPiA+IGhhdmUgYmVlbiBtb3JlIHByb2FjdGl2ZSwgYnV0 IHRoYXQncyBwcm9iYWJseSB0aGUgbmV0IHJlYWxpdHkgZm9yIG1vc3QNCj4gPiBwZW9wbGUuIEl0 IHdvdWxkIGJlIHVucmVhc29uYWJsZSB0byBleHBlY3QgeW91IHRvIHRlc3QgZXZlcnkgcGxhdGZv cm0sDQo+ID4gYnV0IGl0IGlzIHZlcnkgcmVhc29uYWJsZSB0byBhc3N1bWUgdGhhdCBpZiB5b3Ug a25vdyB5b3UncmUgYWRkaW5nDQo+ID4gYnVpbGQgYnJlYWthZ2UgdG8gZXZlcnkgcGxhdGZvcm0g KHRoYXQgaXMgdHJpdmlhbCB0byBmaXgpLCB0aGF0IHlvdQ0KPiA+IHdvdWxkIGJlIHRha2luZyBj YXJlIG9mIGl0Li4uIFByaW5jaXBsZSBvZiBsZWFzdCBzdXJwcmlzZS4gQW5kIHllcywgaW4NCj4g PiBzb21lIHdlaXJkIGNvcm5lciBjYXNlIHBlcmhhcHMgdGhhdCB3b3VsZCBiZSBpbnN1ZmZpY2ll bnQgKGFnYWluLCBJDQo+ID4gZG9uJ3QgdGhpbmsgYW55b25lIHdvdWxkIGV4cGVjdCB5b3UgdG8g Y29tcGlsZSB0ZXN0IGV2ZXJ5IHBsYXRmb3JtKSwNCj4gPiBidXQgaXQgd291bGQgdGFrZSBjYXJl IG9mIDk5JSBvZiBvYnZpb3VzIGZhbGwtb3V0Lg0KPiA+DQo+ID4gRm9yIHJlZmVyZW5jZSwgdGhl cmUgYXJlIG9jY2FzaW9uYWwgY2xlYW4tdXBzIHRoYXQgaGFwcGVuIHRvIHRoZSBlZGsyDQo+ID4g dHJlZSwgYW5kIEkndmUgbmV2ZXIgc2VlbiBhbnlvbmUgY2xhaW0gIm5vdCBteSBwcm9ibGVtIiB0 byBkZWFsIHdpdGgNCj4gPiB0aGUgb2J2aW91cyBmYWxsLW91dCByZXN1bHRpbmcgZnJvbSByZW5h bWVzIGFuZCBzdWNoLg0KPiA+DQo+ID4gQQ0KPiA+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gPiAtLQ0KPiA+ ICpGcm9tOiogZGV2ZWxAZWRrMi5ncm91cHMuaW8gPGRldmVsQGVkazIuZ3JvdXBzLmlvPiBvbiBi ZWhhbGYgb2YgQnJldA0KPiA+IEJhcmtlbGV3IHZpYSBncm91cHMuaW8gPGRlYnRlY2g9Z21haWwu Y29tQGdyb3Vwcy5pbz4NCj4gPiAqU2VudDoqIFRodXJzZGF5LCBOb3ZlbWJlciAxOSwgMjAyMCAx MDoxNSBBTQ0KPiA+ICpUbzoqIEFyZCBCaWVzaGV1dmVsIDxhcmQuYmllc2hldXZlbEBhcm0uY29t Pg0KPiA+ICpDYzoqIEJyZXQgQmFya2VsZXcgPGJyZXRAY29ydGhvbi5jb20+OyBkZXZlbEBlZGsy Lmdyb3Vwcy5pbw0KPiA+IDxkZXZlbEBlZGsyLmdyb3Vwcy5pbz47IEppZXdlbiBZYW8gPGppZXdl bi55YW9AaW50ZWwuY29tPjsgRGFuZGFuIEJpDQo+ID4gPGRhbmRhbi5iaUBpbnRlbC5jb20+OyBD aGFvIFpoYW5nIDxjaGFvLmIuemhhbmdAaW50ZWwuY29tPjsgSmlhbiBKDQo+ID4gV2FuZyA8amlh bi5qLndhbmdAaW50ZWwuY29tPjsgSGFvIEEgV3UgPGhhby5hLnd1QGludGVsLmNvbT47IExpbWlu Zw0KPiA+IEdhbyA8bGltaW5nLmdhb0BpbnRlbC5jb20+OyBKb3JkYW4gSnVzdGVuIDxqb3JkYW4u bC5qdXN0ZW5AaW50ZWwuY29tPjsNCj4gPiBMYXN6bG8gRXJzZWsgPGxlcnNla0ByZWRoYXQuY29t PjsgQW5kcmV3IEZpc2ggPGFmaXNoQGFwcGxlLmNvbT47IFJheQ0KPiA+IE5pIDxyYXkubmlAaW50 ZWwuY29tPjsgQnJldCBCYXJrZWxldyA8YnJiYXJrZWxAbWljcm9zb2Z0LmNvbT4NCj4gPiAqU3Vi amVjdDoqIFJlOiBbZWRrMi1kZXZlbF0gW1BBVENIIHY5IDAwLzEzXSBBZGQgdGhlIFZhcmlhYmxl UG9saWN5DQo+ID4gZmVhdHVyZSBUaG9zZSBidWdzIGFuZCByZWNvbW1lbmRhdGlvbnMgd2VyZSBz ZW50IG91dCBtb250aHMgYWdvLg0KPiA+IFNldmVyYWwgcGxhdGZvcm1zIGhhdmUgc3RhZ2VkIHRo ZSBjaGFuZ2VzIGFscmVhZHkuDQo+ID4NCj4gPiBZb3UgbmVlZCB0byBhZGQgdGhlIGxpYnJhcnkg Y2xhc3MgdG8geW91ciBEU0MuDQo+ID4NCj4gPiAtLQ0KPiA+IFsgSW5zZXJ0IG9ic2N1cmUgcG9w LWN1bHR1cmUgcmVmZXJlbmNlIGhlcmUuIF0NCj4gPg0KPiA+PiBPbiBOb3YgMTksIDIwMjAsIGF0 IDQ6NDYgQU0sIEFyZCBCaWVzaGV1dmVsIDxhcmQuYmllc2hldXZlbEBhcm0uY29tPg0KPiB3cm90 ZToNCj4gPj4NCj4gPj4g77u/T24gMTEvOS8yMCA3OjQ1IEFNLCBCcmV0IEJhcmtlbGV3IHdyb3Rl Og0KPiA+Pj4gVGhlIDE0IHBhdGNoZXMgaW4gdGhpcyBzZXJpZXMgYWRkIHRoZSBWYXJpYWJsZVBv bGljeSBmZWF0dXJlIHRvIHRoZQ0KPiA+Pj4gY29yZSwgZGVwcmVjYXRlIEVkazJWYXJMb2NrICh3 aGlsZSBhZGRpbmcgYSBjb21wYXRpYmlsaXR5IGxheWVyIHRvDQo+ID4+PiByZWR1Y2UgY29kZSBj aHVybiksIGFuZCBpbnRlZ3JhdGUgdGhlIFZhcmlhYmxlUG9saWN5IGxpYnJhcmllcyBhbmQNCj4g Pj4+IHByb3RvY29scyBpbnRvIFZhcmlhYmxlIFNlcnZpY2VzLg0KPiA+Pj4gU2luY2UgdGhlIGlu dGVncmF0aW9uIHJlcXVpcmVzIG11bHRpcGxlIGNoYW5nZXMsIGluY2x1ZGluZyBhZGRpbmcNCj4g Pj4+IGxpYnJhcmllcywgYSBwcm90b2NvbCwgYW4gU01JIGNvbW11bmljYXRpb24gaGFuZGxlciwg YW5kDQo+ID4+PiBWYXJpYWJsZVNlcnZpY2VzIGludGVncmF0aW9uLCB0aGUgcGF0Y2hlcyBhcmUg YnJva2VuIHVwIGJ5DQo+ID4+PiBpbmRpdmlkdWFsIGxpYnJhcnkgYWRkaXRpb25zIGFuZCB0aGVu IGEgZmluYWwgaW50ZWdyYXRpb24uDQo+ID4+PiBTZWN1cml0eS1zZW5zaXRpdmUgY2hhbmdlcyBs aWtlIGJ5cGFzc2luZyBBdXRoZW50aWNhdGVkIFZhcmlhYmxlDQo+ID4+PiBlbmZvcmNlbWVudCBh cmUgYWxzbyBicm9rZW4gb3V0IGludG8gaW5kaXZpZHVhbCBwYXRjaGVzIHNvIHRoYXQgYXR0ZW50 aW9uDQo+IGNhbiBiZSBjYWxsZWQgZGlyZWN0bHkgdG8gdGhlbS4NCj4gPj4+IFBsYXRmb3JtIHBv cnRpbmcgaW5zdHJ1Y3Rpb25zIGFyZSBkZXNjcmliZWQgaW4gdGhpcyB3aWtpIGVudHJ5Og0KPiA+ Pj4gaHR0cHM6Ly9uYW0wNC5zYWZlbGlua3MucHJvdGVjdGlvbi5vdXRsb29rLmNvbS8/dXJsPWh0 dHBzJTNBJTJGJTJGZ2kNCj4gPj4+IHRodWIuY29tJTJGdGlhbm9jb3JlJTJGdGlhbm9jb3JlLmdp dGh1Yi5pbyUyRndpa2klMkZWYXJpYWJsZVBvbGljeS1QDQo+ID4+PiByb3RvY29sLS0tRW5oYW5j ZWQtTWV0aG9kLWZvci1NYW5hZ2luZy1WYXJpYWJsZXMlMjNwbGF0Zm9ybS1wb3J0aW5nJg0KPiA+ Pj4NCj4gYW1wO2RhdGE9MDQlN0MwMSU3Q2F3YXJrZW50aW4lNDB2bXdhcmUuY29tJTdDNTk0ZjE1 YjQ1YWFmNDc2YmZmN2UNCj4gMDhkDQo+ID4+Pg0KPiA4OGNiNTczOTAlN0NiMzkxMzhjYTNjZWU0 YjRhYTRkNmNkODNkOWRkNjJmMCU3QzAlN0MwJTdDNjM3NDE0MDUNCj4gODI0NzENCj4gPj4+DQo+ IDI4ODE5JTdDVW5rbm93biU3Q1RXRnBiR1pzYjNkOGV5SldJam9pTUM0d0xqQXdNREFpTENKUUlq b2lWMmx1TQ0KPiB6SWlMQw0KPiA+Pj4NCj4gSkJUaUk2SWsxaGFXd2lMQ0pYVkNJNk1uMCUzRCU3 QzEwMDAmYW1wO3NkYXRhPUxMS1o3cWVmZlIwV0N2TGJZdUgNCj4gdFFJDQo+ID4+PiB1d0pHaFhZ MG1WcUIydzlCMHExODAlM0QmYW1wO3Jlc2VydmVkPTANCj4gPiA8aHR0cHM6Ly9uYW0wNC5zYWZl bGlua3MucHJvdGVjdGlvbi5vdXRsb29rLmNvbS8/dXJsPWh0dHBzJTNBJTJGJTJGZ2l0DQo+ID4g aHViLmNvbSUyRnRpYW5vY29yZSUyRnRpYW5vY29yZS5naXRodWIuaW8lMkZ3aWtpJTJGVmFyaWFi bGVQb2xpY3ktUHJvdA0KPiA+IG9jb2wtLS1FbmhhbmNlZC1NZXRob2QtZm9yLU1hbmFnaW5nLVZh cmlhYmxlcyUyM3BsYXRmb3JtLQ0KPiBwb3J0aW5nJmFtcDtkDQo+ID4NCj4gYXRhPTA0JTdDMDEl N0Nhd2Fya2VudGluJTQwdm13YXJlLmNvbSU3QzU5NGYxNWI0NWFhZjQ3NmJmZjdlMDhkODgNCj4g Y2I1NzMNCj4gPg0KPiA5MCU3Q2IzOTEzOGNhM2NlZTRiNGFhNGQ2Y2Q4M2Q5ZGQ2MmYwJTdDMCU3 QzAlN0M2Mzc0MTQwNTgyNDcxMjgNCj4gODE5JTdDVQ0KPiA+DQo+IG5rbm93biU3Q1RXRnBiR1pz YjNkOGV5SldJam9pTUM0d0xqQXdNREFpTENKUUlqb2lWMmx1TXpJaUxDSkJUaUk2SWsNCj4gMWhh DQo+ID4NCj4gV3dpTENKWFZDSTZNbjAlM0QlN0MxMDAwJmFtcDtzZGF0YT1MTEtaN3FlZmZSMFdD dkxiWXVIdFFJdXdKR2hYDQo+IFkwbVZxQjINCj4gPiB3OUIwcTE4MCUzRCZhbXA7cmVzZXJ2ZWQ9 MD4NCj4gPj4+IERpc2N1c3Npb24gb2YgdGhlIGZlYXR1cmUgY2FuIGJlIGZvdW5kIGluIG11bHRp cGxlIHBsYWNlcyB0aHJvdWdob3V0DQo+ID4+PiB0aGUgbGFzdCB5ZWFyIG9uIHRoZSBSRkMgY2hh bm5lbCwgc3RhZ2luZyBicmFuY2hlcywgYW5kIGluIGRldmVsLg0KPiA+Pj4gTW9zdCByZWNlbnRs eSwgdGhpcyBzdWJqZWN0IHdhcyBkaXNjdXNzZWQgaW4gdGhpcyB0aHJlYWQ6DQo+ID4+PiBodHRw czovL25hbTA0LnNhZmVsaW5rcy5wcm90ZWN0aW9uLm91dGxvb2suY29tLz91cmw9aHR0cHMlM0El MkYlMkZlZA0KPiA+Pj4NCj4gazIuZ3JvdXBzLmlvJTJGZyUyRmRldmVsJTJGbWVzc2FnZSUyRjUz NzEyJmFtcDtkYXRhPTA0JTdDMDElN0Nhd2ENCj4gcmtlDQo+ID4+Pg0KPiBudGluJTQwdm13YXJl LmNvbSU3QzU5NGYxNWI0NWFhZjQ3NmJmZjdlMDhkODhjYjU3MzkwJTdDYjM5MTM4Y2EzYw0KPiBl ZTQNCj4gPj4+DQo+IGI0YWE0ZDZjZDgzZDlkZDYyZjAlN0MwJTdDMCU3QzYzNzQxNDA1ODI0NzEz MzgyMCU3Q1Vua25vd24lN0NUDQo+IFdGcGJHWg0KPiA+Pj4NCj4gc2IzZDhleUpXSWpvaU1DNHdM akF3TURBaUxDSlFJam9pVjJsdU16SWlMQ0pCVGlJNklrMWhhV3dpTENKWFZDSTZNbjANCj4gPj4+ ICUzRCU3QzEwMDAmYW1wO3NkYXRhPUdZWTUycmxzUHh3MDd2ZmR1JTJCVmJXaHpSanRIV1hsSUd2 ZUNUVA0KPiAxN21sZmMlMw0KPiA+Pj4gRCZhbXA7cmVzZXJ2ZWQ9MA0KPiA+IDxodHRwczovL25h bTA0LnNhZmVsaW5rcy5wcm90ZWN0aW9uLm91dGxvb2suY29tLz91cmw9aHR0cHMlM0ElMkYlMkZl ZGsNCj4gPg0KPiAyLmdyb3Vwcy5pbyUyRmclMkZkZXZlbCUyRm1lc3NhZ2UlMkY1MzcxMiZhbXA7 ZGF0YT0wNCU3QzAxJTdDYXdhcg0KPiBrZW50aQ0KPiA+DQo+IG4lNDB2bXdhcmUuY29tJTdDNTk0 ZjE1YjQ1YWFmNDc2YmZmN2UwOGQ4OGNiNTczOTAlN0NiMzkxMzhjYTNjZWUNCj4gNGI0YWE0DQo+ ID4NCj4gZDZjZDgzZDlkZDYyZjAlN0MwJTdDMCU3QzYzNzQxNDA1ODI0NzEzMzgyMCU3Q1Vua25v d24lN0NUV0ZwYg0KPiBHWnNiM2Q4ZXkNCj4gPg0KPiBKV0lqb2lNQzR3TGpBd01EQWlMQ0pRSWpv aVYybHVNeklpTENKQlRpSTZJazFoYVd3aUxDSlhWQ0k2TW4wJTNEJTcNCj4gQzEwMA0KPiA+DQo+ IDAmYW1wO3NkYXRhPUdZWTUycmxzUHh3MDd2ZmR1JTJCVmJXaHpSanRIV1hsSUd2ZUNUVDE3bWxm YyUzRCZhbXANCj4gO3Jlc2VyDQo+ID4gdmVkPTA+DQo+ID4+PiAodGhlIGNvZGUgYnJhbmNoZXMg c2hhcmVkIGluIHRoYXQgZGlzY3Vzc2lvbiBhcmUgbm93IG91dCBvZiBkYXRlLA0KPiA+Pj4gYnV0 IHRoZSB3aGl0ZXBhcGVycyBhbmQgZGlzY3Vzc2lvbiBhcmUgcmVsZXZhbnQpLg0KPiA+Pj4gQ2M6 IEppZXdlbiBZYW8gPGppZXdlbi55YW9AaW50ZWwuY29tPg0KPiA+Pj4gQ2M6IERhbmRhbiBCaSA8 ZGFuZGFuLmJpQGludGVsLmNvbT4NCj4gPj4+IENjOiBDaGFvIFpoYW5nIDxjaGFvLmIuemhhbmdA aW50ZWwuY29tPg0KPiA+Pj4gQ2M6IEppYW4gSiBXYW5nIDxqaWFuLmoud2FuZ0BpbnRlbC5jb20+ DQo+ID4+PiBDYzogSGFvIEEgV3UgPGhhby5hLnd1QGludGVsLmNvbT4NCj4gPj4+IENjOiBMaW1p bmcgR2FvIDxsaW1pbmcuZ2FvQGludGVsLmNvbT4NCj4gPj4+IENjOiBKb3JkYW4gSnVzdGVuIDxq b3JkYW4ubC5qdXN0ZW5AaW50ZWwuY29tPg0KPiA+Pj4gQ2M6IExhc3psbyBFcnNlayA8bGVyc2Vr QHJlZGhhdC5jb20+DQo+ID4+PiBDYzogQXJkIEJpZXNoZXV2ZWwgPGFyZC5iaWVzaGV1dmVsQGFy bS5jb20+DQo+ID4+PiBDYzogQW5kcmV3IEZpc2ggPGFmaXNoQGFwcGxlLmNvbT4NCj4gPj4+IENj OiBSYXkgTmkgPHJheS5uaUBpbnRlbC5jb20+DQo+ID4+PiBDYzogQnJldCBCYXJrZWxldyA8YnJi YXJrZWxAbWljcm9zb2Z0LmNvbT4NCj4gPj4+IFNpZ25lZC1vZmYtYnk6IEJyZXQgQmFya2VsZXcg PGJyYmFya2VsQG1pY3Jvc29mdC5jb20+DQo+ID4+DQo+ID4+IFRoaXMgc2VyaWVzIGhhcyBub3cg bWFkZSBpdCBpbnRvIGVkazIsIGFuZCBoYXMgc3Vic2VxdWVudGx5IGJyb2tlbiBldmVyeQ0KPiBz aW5nbGUgcGxhdGZvcm0gaW4gZWRrMi1wbGF0Zm9ybXMuIElzIGFueW9uZSBpbnRlbmRpbmcgdG8g cHJvcG9zZSBhbnkgZml4ZXMgZm9yDQo+IHRoaXM/DQo+ID4+DQo+ID4+DQo+ID4+PiB2OSBjaGFu Z2VzOg0KPiA+Pj4gKiBSZWJhc2UNCj4gPj4+ICogQWRkcmVzcyB0aGUgZXZlbnQgb3JkZXJpbmcg aXNzdWVzIGFyb3VuZCBNb3JMb2NrIGF0IEVuZE9mRHhlDQo+ID4+PiAqIERyb3AgcHJvYmxlbWF0 aWMgdGVzdHMNCj4gPj4+ICogQWRkcmVzcyBFQ0MgaXNzdWVzDQo+ID4+PiB2OCBjaGFuZ2VzOg0K PiA+Pj4gKiBSZWJhc2UNCj4gPj4+ICogU21hbGwgdHdlYWtzIGZyb20gZmluYWwgUFJzDQo+ID4+ PiAqIERyYW5rIGEgbG90DQo+ID4+PiAqIEVucm9sbGVkIHNldmVyYWwgbWVtYmVycyBhbmQgYSBz dGV3YXJkIGluIENhdEZhY3RzDQo+ID4+PiB2NyBjaGFuZ2VzOg0KPiA+Pj4gKiBBZGRyZXNzIGNv bW1lbnRzIGZyb20gRGFuZGFuIGFib3V0IHNlY3VyaXR5IG9mIHRoZSBNTSBoYW5kbGVyDQo+ID4+ PiAqIEFkZCByZWFkbWUNCj4gPj4+ICogRml4IGJ1ZyBhcm91bmQgaGV4IGNoYXJhY3RlcnMgaW4g Qk9PVCMjIyMsIGV0Yw0KPiA+Pj4gKiBBZGQgYWRkaXRpb25hbCB0ZXN0aW5nIGZvciBoZXggY2hh cmFjdGVycw0KPiA+Pj4gKiBBZGQgYWRkaXRpb25hbCB0ZXN0aW5nIGZvciBhdXRoZW50aWNhdGVk IHZhcmlhYmxlcw0KPiA+Pj4gdjYgY2hhbmdlczoNCj4gPj4+ICogRml4IGFuIGlzc3VlIHdpdGgg dW5pbml0aWFsaXplZCBTdGF0dXMgaW4gSW5pdFZhcmlhYmxlUG9saWN5TGliKCkNCj4gPj4+YW5k IERlaW5pdFZhcmlhYmxlUG9saWN5TGliKCkNCj4gPj4+ICogRml4IEdDQyBidWlsZGluZyBpbiBz aGVsbC1iYXNlZCBmdW5jdGlvbmFsIHRlc3QNCj4gPj4+ICogUmViYXNlIG9uIGxhdGVzdCBvcmln aW4vbWFzdGVyDQo+ID4+PiB2NSBjaGFuZ2VzOg0KPiA+Pj4gKiBGaXggdGhlIENPTlNUIG1pc21h dGNoIGluIFZhcmlhYmxlUG9saWN5LmggYW5kDQo+ID4+PlZhcmlhYmxlUG9saWN5U21tRHhlLmMN Cj4gPj4+ICogRml4IEVGSUFQSSBtaXNtYXRjaGVzIGluIHRoZSBmdW5jdGlvbmFsIHVuaXR0ZXN0 DQo+ID4+PiAqIFJlYmFzZSBvbiBsYXRlc3Qgb3JpZ2luL21hc3Rlcg0KPiA+Pj4gdjQgY2hhbmdl czoNCj4gPj4+ICogUmVtb3ZlIE9wdGlvbmFsIFBjZEFsbG93VmFyaWFibGVQb2xpY3lFbmZvcmNl bWVudERpc2FibGUgUENEIGZyb20NCj4gPj4+cGxhdGZvcm1zDQo+ID4+PiAqIFJlYmFzZSBvbiBt YXN0ZXINCj4gPj4+ICogTWlncmF0ZSB0byBuZXcgTW1Db21tdW5pY2F0ZTIgcHJvdG9jb2wNCj4g Pj4+ICogRml4IGFuIG92ZXJzaWdodCBpbiB0aGUgZGVmYXVsdCByZXR1cm4gdmFsdWUgZm9yDQo+ ID4+PkluaXRNbUNvbW1vbkNvbW1CdWZmZXINCj4gPj4+ICogRml4IGluIFZhcmlhYmxlUG9saWN5 TGliIHRvIGFsbG93IEV4dHJhSW5pdFJ1bnRpbWVEeGUgdG8gY29uc3VtZQ0KPiA+Pj52YXJpYWJs ZXMNCj4gPj4+IFYzIGNoYW5nZXM6DQo+ID4+PiAqIEFkZHJlc3MgYWxsIG5vbi11bml0dGVzdCBp c3N1ZXMgd2l0aCBFQ0MNCj4gPj4+ICogTWFrZSBhZGRpdGlvbmFsIHN0eWxlIGNoYW5nZXMNCj4g Pj4+ICogSW5jbHVkZSBzZWN0aW9uIG5hbWUgaW4gaHVuayBoZWFkZXJzIGluICJpbmktc3R5bGUi IGZpbGVzDQo+ID4+PiAqIFJlbW92ZSByZXF1aXJlbWVudCBmb3IgdGhlIEVka2lpUGlTbW1Db21t dW5pY2F0aW9uc1JlZ2lvblRhYmxlDQo+ID4+PmRyaXZlcg0KPiA+Pj7CoMKgIChub3cgYWxsb2Nh dGVzIGl0cyBvd24gYnVmZmVyKQ0KPiA+Pj4gKiBDaGFuZ2UgbmFtZXMgZnJvbSBWQVJJQUJMRV9Q T0xJQ1lfUFJPVE9DT0wgYW5kDQo+ID4+PmdWYXJpYWJsZVBvbGljeVByb3RvY29sR3VpZA0KPiA+ Pj7CoMKgIHRvIEVES0lJX1ZBUklBQkxFX1BPTElDWV9QUk9UT0NPTCBhbmQNCj4gPj4+Z0Vka2lp VmFyaWFibGVQb2xpY3lQcm90b2NvbEd1aWQNCj4gPj4+ICogRml4IEdDQyB3YXJuaW5nIGFib3V0 IGluaXRpYWxpemluZyBleHRlcm5zDQo+ID4+PiAqIEFkZCBVTkkgc3RyaW5ncyBmb3IgbmV3IFBD RA0KPiA+Pj4gKiBBZGQgcGF0Y2hlcyBmb3IgQXJtVmlydFBrZywgT3ZtZlhlbiwgYW5kIFVlZmlQ YXlsb2FkUGtnDQo+ID4+PiAqIFJlb3JkZXIgcGF0Y2hlcyBhY2NvcmRpbmcgdG8gTGltaW5nJ3Mg ZmVlZGJhY2sgYWJvdXQgYWRkaW5nIHRvDQo+ID4+PnBsYXRmb3Jtcw0KPiA+Pj7CoMKgIGJlZm9y ZSBjaGFuZ2luZyB2YXJpYWJsZSBkcml2ZXINCj4gPj4+IFYyIGNoYW5nZXM6DQo+ID4+PiAqIEZp eGVkIGltcGxlbWVudGF0aW9uIGZvciBSdW50aW1lRHhlDQo+ID4+PiAqIEFkZCBQQ0QgdG8gYmxv Y2sgRGlzYWJsZVZhcmlhYmxlUG9saWN5DQo+ID4+PiAqIEZpeCB0aGUgRHVtcFZhcmlhYmxlUG9s aWN5IHBhZ2luYXRpb24gaW4gU01NICBCcmV0IEJhcmtlbGV3ICgxMyk6DQo+ID4+PsKgwqAgTWRl TW9kdWxlUGtnOiBEZWZpbmUgdGhlIFZhcmlhYmxlUG9saWN5IHByb3RvY29sIGludGVyZmFjZQ0K PiA+Pj7CoMKgIE1kZU1vZHVsZVBrZzogRGVmaW5lIHRoZSBWYXJpYWJsZVBvbGljeUxpYg0KPiA+ Pj7CoMKgIE1kZU1vZHVsZVBrZzogRGVmaW5lIHRoZSBWYXJpYWJsZVBvbGljeUhlbHBlckxpYg0K PiA+Pj7CoMKgIE1kZU1vZHVsZVBrZzogRGVmaW5lIHRoZSBWYXJDaGVja1BvbGljeUxpYiBhbmQg U01NIGludGVyZmFjZQ0KPiA+Pj7CoMKgIE92bWZQa2c6IEFkZCBWYXJpYWJsZVBvbGljeSBlbmdp bmUgdG8gT3ZtZlBrZyBwbGF0Zm9ybQ0KPiA+Pj7CoMKgIEVtdWxhdG9yUGtnOiBBZGQgVmFyaWFi bGVQb2xpY3kgZW5naW5lIHRvIEVtdWxhdG9yUGtnIHBsYXRmb3JtDQo+ID4+PsKgwqAgQXJtVmly dFBrZzogQWRkIFZhcmlhYmxlUG9saWN5IGVuZ2luZSB0byBBcm1WaXJ0UGtnIHBsYXRmb3JtDQo+ ID4+PsKgwqAgVWVmaVBheWxvYWRQa2c6IEFkZCBWYXJpYWJsZVBvbGljeSBlbmdpbmUgdG8gVWVm aVBheWxvYWRQa2cNCj4gPj4+cGxhdGZvcm0NCj4gPj4+wqDCoCBNZGVNb2R1bGVQa2c6IENvbm5l Y3QgVmFyaWFibGVQb2xpY3kgYnVzaW5lc3MgbG9naWMgdG8NCj4gPj4+wqDCoMKgwqAgVmFyaWFi bGVTZXJ2aWNlcw0KPiA+Pj7CoMKgIE1kZU1vZHVsZVBrZzogQWxsb3cgVmFyaWFibGVQb2xpY3kg c3RhdGUgdG8gZGVsZXRlIHByb3RlY3RlZA0KPiA+Pj52YXJpYWJsZXMNCj4gPj4+wqDCoCBTZWN1 cml0eVBrZzogQWxsb3cgVmFyaWFibGVQb2xpY3kgc3RhdGUgdG8gZGVsZXRlIGF1dGhlbnRpY2F0 ZWQNCj4gPj4+wqDCoMKgwqAgdmFyaWFibGVzDQo+ID4+PsKgwqAgTWRlTW9kdWxlUGtnOiBDaGFu Z2UgVENHIE1PUiB2YXJpYWJsZXMgdG8gdXNlIFZhcmlhYmxlUG9saWN5DQo+ID4+PsKgwqAgTWRl TW9kdWxlUGtnOiBEcm9wIFZhckxvY2sgZnJvbSBSdW50aW1lRHhlIHZhcmlhYmxlIGRyaXZlcg0K PiA+Pj7CoCBNZGVNb2R1bGVQa2cvTGlicmFyeS9WYXJDaGVja1BvbGljeUxpYi9WYXJDaGVja1Bv bGljeUxpYi5jDQo+ID4+PnwgMzQ2ICsrKysrKysrDQo+ID4+Pg0KPiA+Pj5NZGVNb2R1bGVQa2cv TGlicmFyeS9WYXJpYWJsZVBvbGljeUhlbHBlckxpYi9WYXJpYWJsZVBvbGljeUhlbHBlckxpYi4N Cj4gPj4+Y8KgwqDCoMKgIHwgMzk2ICsrKysrKysrKysNCj4gPj4+DQo+ID4+Pk1kZU1vZHVsZVBr Zy9MaWJyYXJ5L1ZhcmlhYmxlUG9saWN5TGliL1ZhcmlhYmxlUG9saWN5RXh0cmFJbml0TnVsbC5j DQo+ID4+PnzCoCA0NiArKw0KPiA+Pj4NCj4gPj4+TWRlTW9kdWxlUGtnL0xpYnJhcnkvVmFyaWFi bGVQb2xpY3lMaWIvVmFyaWFibGVQb2xpY3lFeHRyYUluaXRSdW50aW1lDQo+ID4+PkR4ZS5jIHzC oCA4NSArKw0KPiA+Pj7CoCBNZGVNb2R1bGVQa2cvTGlicmFyeS9WYXJpYWJsZVBvbGljeUxpYi9W YXJpYWJsZVBvbGljeUxpYi5jDQo+ID4+PnwgODMwICsrKysrKysrKysrKysrKysrKysrDQo+ID4+ PsKgIE1kZU1vZHVsZVBrZy9Vbml2ZXJzYWwvVmFyaWFibGUvUnVudGltZUR4ZS9UY2dNb3JMb2Nr RHhlLmMNCj4gDQo+ID4+PnzCoCA1MiArLQ0KPiA+Pj7CoCBNZGVNb2R1bGVQa2cvVW5pdmVyc2Fs L1ZhcmlhYmxlL1J1bnRpbWVEeGUvVGNnTW9yTG9ja1NtbS5jDQo+IA0KPiA+Pj58wqAgNjAgKy0N Cj4gPj4+wqAgTWRlTW9kdWxlUGtnL1VuaXZlcnNhbC9WYXJpYWJsZS9SdW50aW1lRHhlL1ZhckNo ZWNrLmMNCj4gPj4+fMKgIDQ5ICstDQo+ID4+PsKgIE1kZU1vZHVsZVBrZy9Vbml2ZXJzYWwvVmFy aWFibGUvUnVudGltZUR4ZS9WYXJpYWJsZUR4ZS5jDQo+ID4+PnzCoCA2MCArKw0KPiA+Pj4NCj4g Pj4+TWRlTW9kdWxlUGtnL1VuaXZlcnNhbC9WYXJpYWJsZS9SdW50aW1lRHhlL1ZhcmlhYmxlTG9j a1JlcXVlc3RUb0xvDQo+IGNrLg0KPiA+Pj5jwqDCoMKgwqAgfMKgIDcxICsrDQo+ID4+PsKgIE1k ZU1vZHVsZVBrZy9Vbml2ZXJzYWwvVmFyaWFibGUvUnVudGltZUR4ZS9WYXJpYWJsZVBvbGljeVNt bUR4ZS5jDQo+IA0KPiA+Pj58IDU3MyArKysrKysrKysrKysrKw0KPiA+Pj7CoCBNZGVNb2R1bGVQ a2cvVW5pdmVyc2FsL1ZhcmlhYmxlL1J1bnRpbWVEeGUvVmFyaWFibGVTbW0uYw0KPiANCj4gPj4+ fMKgwqAgNyArDQo+ID4+PsKgIE1kZU1vZHVsZVBrZy9Vbml2ZXJzYWwvVmFyaWFibGUvUnVudGlt ZUR4ZS9WYXJpYWJsZVNtbVJ1bnRpbWVEeA0KPiBlLmMNCj4gPj4+fMKgIDE0ICsNCj4gPj4+wqAg U2VjdXJpdHlQa2cvTGlicmFyeS9BdXRoVmFyaWFibGVMaWIvQXV0aFNlcnZpY2UuYw0KPiA+Pj58 wqAgMzAgKy0NCj4gPj4+wqAgQXJtVmlydFBrZy9Bcm1WaXJ0LmRzYy5pbmMNCj4gPj4+fMKgwqAg NCArDQo+ID4+PsKgIEVtdWxhdG9yUGtnL0VtdWxhdG9yUGtnLmRzYw0KPiA+Pj58wqDCoCAzICsN Cj4gPj4+wqAgTWRlTW9kdWxlUGtnL0luY2x1ZGUvR3VpZC9WYXJDaGVja1BvbGljeU1taS5oDQo+ ID4+PnzCoCA1NCArKw0KPiA+Pj7CoCBNZGVNb2R1bGVQa2cvSW5jbHVkZS9MaWJyYXJ5L1Zhcmlh YmxlUG9saWN5SGVscGVyTGliLmgNCj4gPj4+fCAxNjQgKysrKw0KPiA+Pj7CoCBNZGVNb2R1bGVQ a2cvSW5jbHVkZS9MaWJyYXJ5L1ZhcmlhYmxlUG9saWN5TGliLmgNCj4gPj4+fCAyMDcgKysrKysN Cj4gPj4+wqAgTWRlTW9kdWxlUGtnL0luY2x1ZGUvUHJvdG9jb2wvVmFyaWFibGVQb2xpY3kuaA0K PiA+Pj58IDE1NyArKysrDQo+ID4+PsKgIE1kZU1vZHVsZVBrZy9MaWJyYXJ5L1ZhckNoZWNrUG9s aWN5TGliL1ZhckNoZWNrUG9saWN5TGliLmluZg0KPiA+Pj58wqAgNDIgKw0KPiA+Pj7CoCBNZGVN b2R1bGVQa2cvTGlicmFyeS9WYXJDaGVja1BvbGljeUxpYi9WYXJDaGVja1BvbGljeUxpYi51bmkN Cj4gPj4+fMKgIDEyICsNCj4gPj4+DQo+ID4+Pk1kZU1vZHVsZVBrZy9MaWJyYXJ5L1ZhcmlhYmxl UG9saWN5SGVscGVyTGliL1ZhcmlhYmxlUG9saWN5SGVscGVyTGliLg0KPiA+Pj5pbmbCoMKgIHzC oCAzNSArDQo+ID4+Pg0KPiA+Pj5NZGVNb2R1bGVQa2cvTGlicmFyeS9WYXJpYWJsZVBvbGljeUhl bHBlckxpYi9WYXJpYWJsZVBvbGljeUhlbHBlckxpYi4NCj4gPj4+dW5pwqDCoCB8wqAgMTIgKw0K PiA+Pj7CoCBNZGVNb2R1bGVQa2cvTGlicmFyeS9WYXJpYWJsZVBvbGljeUxpYi9SZWFkTWUubWQN Cj4gPj4+fCA0MDYgKysrKysrKysrKw0KPiA+Pj7CoCBNZGVNb2R1bGVQa2cvTGlicmFyeS9WYXJp YWJsZVBvbGljeUxpYi9WYXJpYWJsZVBvbGljeUxpYi5pbmYNCj4gPj4+fMKgIDQ4ICsrDQo+ID4+ PsKgIE1kZU1vZHVsZVBrZy9MaWJyYXJ5L1ZhcmlhYmxlUG9saWN5TGliL1ZhcmlhYmxlUG9saWN5 TGliLnVuaQ0KPiA+Pj58wqAgMTIgKw0KPiA+Pj4NCj4gPj4+TWRlTW9kdWxlUGtnL0xpYnJhcnkv VmFyaWFibGVQb2xpY3lMaWIvVmFyaWFibGVQb2xpY3lMaWJSdW50aW1lRHhlLmluDQo+ID4+PmbC oMKgwqDCoCB8wqAgNTEgKysNCj4gPj4+wqAgTWRlTW9kdWxlUGtnL01kZU1vZHVsZVBrZy5jaS55 YW1sDQo+ID4+PnzCoMKgIDQgKy0NCj4gPj4+wqAgTWRlTW9kdWxlUGtnL01kZU1vZHVsZVBrZy5k ZWMNCj4gPj4+fMKgIDI2ICstDQo+ID4+PsKgIE1kZU1vZHVsZVBrZy9NZGVNb2R1bGVQa2cuZHNj DQo+ID4+PnzCoMKgIDkgKw0KPiA+Pj7CoCBNZGVNb2R1bGVQa2cvTWRlTW9kdWxlUGtnLnVuaQ0K PiA+Pj58wqDCoCA3ICsNCj4gPj4+wqAgTWRlTW9kdWxlUGtnL1VuaXZlcnNhbC9WYXJpYWJsZS9S dW50aW1lRHhlL1ZhcmlhYmxlUnVudGltZUR4ZS5pbmYNCj4gDQo+ID4+PnzCoMKgIDUgKw0KPiA+ Pj7CoCBNZGVNb2R1bGVQa2cvVW5pdmVyc2FsL1ZhcmlhYmxlL1J1bnRpbWVEeGUvVmFyaWFibGVT bW0uaW5mDQo+IA0KPiA+Pj58wqDCoCA0ICsNCj4gPj4+DQo+ID4+Pk1kZU1vZHVsZVBrZy9Vbml2 ZXJzYWwvVmFyaWFibGUvUnVudGltZUR4ZS9WYXJpYWJsZVNtbVJ1bnRpbWVEeGUuDQo+IGluZg0K PiA+Pj58wqAgMTEgKw0KPiA+Pj7CoCBNZGVNb2R1bGVQa2cvVW5pdmVyc2FsL1ZhcmlhYmxlL1J1 bnRpbWVEeGUvVmFyaWFibGVTdGFuZGFsb25lTW0uaQ0KPiBuZg0KPiA+Pj58wqDCoCA0ICsNCj4g Pj4+wqAgT3ZtZlBrZy9Pdm1mUGtnSWEzMi5kc2MNCj4gPj4+fMKgwqAgNSArDQo+ID4+PsKgIE92 bWZQa2cvT3ZtZlBrZ0lhMzJYNjQuZHNjDQo+ID4+PnzCoMKgIDUgKw0KPiA+Pj7CoCBPdm1mUGtn L092bWZQa2dYNjQuZHNjDQo+ID4+PnzCoMKgIDUgKw0KPiA+Pj7CoCBPdm1mUGtnL092bWZYZW4u ZHNjDQo+ID4+PnzCoMKgIDQgKw0KPiA+Pj7CoCBTZWN1cml0eVBrZy9MaWJyYXJ5L0F1dGhWYXJp YWJsZUxpYi9BdXRoVmFyaWFibGVMaWIuaW5mDQo+ID4+PnzCoMKgIDIgKw0KPiA+Pj7CoCBVZWZp UGF5bG9hZFBrZy9VZWZpUGF5bG9hZFBrZ0lhMzIuZHNjDQo+ID4+PnzCoMKgIDQgKw0KPiA+Pj7C oCBVZWZpUGF5bG9hZFBrZy9VZWZpUGF5bG9hZFBrZ0lhMzJYNjQuZHNjDQo+ID4+PnzCoMKgIDQg Kw0KPiA+Pj7CoCA0MyBmaWxlcyBjaGFuZ2VkLCAzODQ1IGluc2VydGlvbnMoKyksIDgwIGRlbGV0 aW9ucygtKQ0KPiA+Pj7CoCBjcmVhdGUgbW9kZSAxMDA2NDQNCj4gPj4+TWRlTW9kdWxlUGtnL0xp YnJhcnkvVmFyQ2hlY2tQb2xpY3lMaWIvVmFyQ2hlY2tQb2xpY3lMaWIuYw0KPiA+Pj7CoCBjcmVh dGUgbW9kZSAxMDA2NDQNCj4gPj4+TWRlTW9kdWxlUGtnL0xpYnJhcnkvVmFyaWFibGVQb2xpY3lI ZWxwZXJMaWIvVmFyaWFibGVQb2xpY3lIZWxwZXJMaWIuDQo+ID4+PmMNCj4gPj4+wqAgY3JlYXRl IG1vZGUgMTAwNjQ0DQo+ID4+Pk1kZU1vZHVsZVBrZy9MaWJyYXJ5L1ZhcmlhYmxlUG9saWN5TGli L1ZhcmlhYmxlUG9saWN5RXh0cmFJbml0TnVsbC5jDQo+ID4+PsKgIGNyZWF0ZSBtb2RlIDEwMDY0 NA0KPiA+Pj5NZGVNb2R1bGVQa2cvTGlicmFyeS9WYXJpYWJsZVBvbGljeUxpYi9WYXJpYWJsZVBv bGljeUV4dHJhSW5pdFJ1bnRpbWUNCj4gPj4+RHhlLmMNCj4gPj4+wqAgY3JlYXRlIG1vZGUgMTAw NjQ0DQo+ID4+Pk1kZU1vZHVsZVBrZy9MaWJyYXJ5L1ZhcmlhYmxlUG9saWN5TGliL1ZhcmlhYmxl UG9saWN5TGliLmMNCj4gPj4+wqAgY3JlYXRlIG1vZGUgMTAwNjQ0DQo+ID4+Pk1kZU1vZHVsZVBr Zy9Vbml2ZXJzYWwvVmFyaWFibGUvUnVudGltZUR4ZS9WYXJpYWJsZUxvY2tSZXF1ZXN0VG9Mbw0K PiBjay4NCj4gPj4+Yw0KPiA+Pj7CoCBjcmVhdGUgbW9kZSAxMDA2NDQNCj4gPj4+TWRlTW9kdWxl UGtnL1VuaXZlcnNhbC9WYXJpYWJsZS9SdW50aW1lRHhlL1ZhcmlhYmxlUG9saWN5U21tRHhlLmMN Cj4gPj4+wqAgY3JlYXRlIG1vZGUgMTAwNjQ0IE1kZU1vZHVsZVBrZy9JbmNsdWRlL0d1aWQvVmFy Q2hlY2tQb2xpY3lNbWkuaA0KPiA+Pj7CoCBjcmVhdGUgbW9kZSAxMDA2NDQNCj4gPj4+TWRlTW9k dWxlUGtnL0luY2x1ZGUvTGlicmFyeS9WYXJpYWJsZVBvbGljeUhlbHBlckxpYi5oDQo+ID4+PsKg IGNyZWF0ZSBtb2RlIDEwMDY0NCBNZGVNb2R1bGVQa2cvSW5jbHVkZS9MaWJyYXJ5L1ZhcmlhYmxl UG9saWN5TGliLmgNCj4gPj4+wqAgY3JlYXRlIG1vZGUgMTAwNjQ0IE1kZU1vZHVsZVBrZy9JbmNs dWRlL1Byb3RvY29sL1ZhcmlhYmxlUG9saWN5LmgNCj4gPj4+wqAgY3JlYXRlIG1vZGUgMTAwNjQ0 DQo+ID4+Pk1kZU1vZHVsZVBrZy9MaWJyYXJ5L1ZhckNoZWNrUG9saWN5TGliL1ZhckNoZWNrUG9s aWN5TGliLmluZg0KPiA+Pj7CoCBjcmVhdGUgbW9kZSAxMDA2NDQNCj4gPj4+TWRlTW9kdWxlUGtn L0xpYnJhcnkvVmFyQ2hlY2tQb2xpY3lMaWIvVmFyQ2hlY2tQb2xpY3lMaWIudW5pDQo+ID4+PsKg IGNyZWF0ZSBtb2RlIDEwMDY0NA0KPiA+Pj5NZGVNb2R1bGVQa2cvTGlicmFyeS9WYXJpYWJsZVBv bGljeUhlbHBlckxpYi9WYXJpYWJsZVBvbGljeUhlbHBlckxpYi4NCj4gPj4+aW5mDQo+ID4+PsKg IGNyZWF0ZSBtb2RlIDEwMDY0NA0KPiA+Pj5NZGVNb2R1bGVQa2cvTGlicmFyeS9WYXJpYWJsZVBv bGljeUhlbHBlckxpYi9WYXJpYWJsZVBvbGljeUhlbHBlckxpYi4NCj4gPj4+dW5pDQo+ID4+PsKg IGNyZWF0ZSBtb2RlIDEwMDY0NA0KPiBNZGVNb2R1bGVQa2cvTGlicmFyeS9WYXJpYWJsZVBvbGlj eUxpYi9SZWFkTWUubWQNCj4gPj4+wqAgY3JlYXRlIG1vZGUgMTAwNjQ0DQo+ID4+Pk1kZU1vZHVs ZVBrZy9MaWJyYXJ5L1ZhcmlhYmxlUG9saWN5TGliL1ZhcmlhYmxlUG9saWN5TGliLmluZg0KPiA+ Pj7CoCBjcmVhdGUgbW9kZSAxMDA2NDQNCj4gPj4+TWRlTW9kdWxlUGtnL0xpYnJhcnkvVmFyaWFi bGVQb2xpY3lMaWIvVmFyaWFibGVQb2xpY3lMaWIudW5pDQo+ID4+PsKgIGNyZWF0ZSBtb2RlIDEw MDY0NA0KPiA+Pj5NZGVNb2R1bGVQa2cvTGlicmFyeS9WYXJpYWJsZVBvbGljeUxpYi9WYXJpYWJs ZVBvbGljeUxpYlJ1bnRpbWVEeGUuaW4NCj4gPj4+Zg0KPiA+Pg0KPiA+DQo+ID4NCj4gPg0KPiA+ DQo+ID4NCj4gPg0KPiANCj4gDQo+IA0KPiANCg0K