From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mx0b-002e3701.pphosted.com (mx0b-002e3701.pphosted.com [148.163.143.35]) by mx.groups.io with SMTP id smtpd.web09.4911.1608697794506237606 for ; Tue, 22 Dec 2020 20:29:54 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@hpe.com header.s=pps0720 header.b=m2+oRaWB; spf=pass (domain: hpe.com, ip: 148.163.143.35, mailfrom: prvs=0626e1097a=abner.chang@hpe.com) Received: from pps.filterd (m0150244.ppops.net [127.0.0.1]) by mx0b-002e3701.pphosted.com (8.16.0.43/8.16.0.43) with SMTP id 0BN4Nae8018752; Wed, 23 Dec 2020 04:29:26 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hpe.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-transfer-encoding : mime-version; s=pps0720; bh=eg+TniRJtsvP9T3vTNcC5IRdfQT5ngYoTup9/PCvz2g=; b=m2+oRaWBWaROZnYLonX4EfNhmZ5HSobrt0z7C8tnjUnsB9s8MextXlJLLNmuS/FR1F7y DA1VLwy7gOvKV7VfYCmEitXQdGq6DXUehJ8soCkJidCOWErhW7H06M0JLr0pXtu04vUq FqdHfxWp+ofq7ZWd82l114nlUt+dR4nWiZVOzk4EWfrHGeV9hszkTK+dPpdXtpNpLngf pIK7q5d8QRcGxpXU+IIeViUT7xDIamlX8NXbA9m/7TAfYBnj6DoOK/DFPnSOBX07vKsl Hw95iRv8mJsGDgNF3pBzEriTfd4p40EsIJ9aNjRKPo7JEkV/lrAajEyFx89NnkkyTXi9 IA== Received: from g2t2353.austin.hpe.com (g2t2353.austin.hpe.com [15.233.44.26]) by mx0b-002e3701.pphosted.com with ESMTP id 35kwwmg8v2-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 23 Dec 2020 04:29:26 +0000 Received: from G4W10204.americas.hpqcorp.net (g4w10204.houston.hpecorp.net [16.207.82.16]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by g2t2353.austin.hpe.com (Postfix) with ESMTPS id EDEB590; Wed, 23 Dec 2020 04:29:24 +0000 (UTC) Received: from G9W9209.americas.hpqcorp.net (2002:10dc:429c::10dc:429c) by G4W10204.americas.hpqcorp.net (2002:10cf:5210::10cf:5210) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Wed, 23 Dec 2020 04:28:20 +0000 Received: from NAM11-CO1-obe.outbound.protection.outlook.com (15.241.52.10) by G9W9209.americas.hpqcorp.net (16.220.66.156) with Microsoft SMTP Server (TLS) id 15.0.1497.2 via Frontend Transport; Wed, 23 Dec 2020 04:28:19 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jnIui0zPzE7VwWuFMQvstolYC3DLRhsIATj8m3DK8Wxlji+S+JMvP//Stff/tSeF3fyJNsMFmPWBI+yDi+/YUTE49JxFutFufzTdCR48gsdLpH3FsrT1/tDzxcTa/vJuTj3DZKob0z8v87iETfYx2A+19tEBRf1drnygt7d1yFIh1kwz4z9p4CniqfS67lXDTwVnkt/arHFuG9mcgtiFiuS5v0Fq67lLj0V9oQ9Fx+QFTBJQDU8Uy0aE4G17qrHmRac3Ifrit3sYDoUapSbcT/0Z6E1akFw2552+6MtOu74MYymDmIazu5Bf6GCf208zS9tMjItWfHohRbbm/R2bCw== 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=akL/fZXROhR9nw/hXokTOVOtSf4PXKHkDzWU2GtHIVM=; b=Qu3o5QkDfjO4xSDrBCipsll1aqL69LYr8pE6d/yG0MEYQgOfMqyc1/sKcL7+GHRyi/z/RtRDdHQBy5cdbn0lEWmcnh8EaGTFo8qithBwbi74KkvtcTUUnzCkuL1CVVgx/Jd8M7NMm0N+uWVECxSUSB9xL68dwab1fiLCtHnHzc1kFP74d8cCHPYrdr7wzAorpkKp23guAvIhlhDt5tLBWeXk6CUDoIriB3faeLD5Q07N29KI6b3nSmoEyRCNN1Onf1yIUNfPaiQ7ZWQc8BQOZbZ0pTJL7fkQDpPoN1aXBS5cA2llWzV2qEML7A+6K0aPF4kH3uMkRLr+9ddB20K3Lg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=hpe.com; dmarc=pass action=none header.from=hpe.com; dkim=pass header.d=hpe.com; arc=none Received: from CS1PR8401MB1144.NAMPRD84.PROD.OUTLOOK.COM (2a01:111:e400:7508::16) by CS1PR8401MB0421.NAMPRD84.PROD.OUTLOOK.COM (2a01:111:e400:7508::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3676.25; Wed, 23 Dec 2020 04:28:17 +0000 Received: from CS1PR8401MB1144.NAMPRD84.PROD.OUTLOOK.COM ([fe80::a094:ed67:fb40:340e]) by CS1PR8401MB1144.NAMPRD84.PROD.OUTLOOK.COM ([fe80::a094:ed67:fb40:340e%10]) with mapi id 15.20.3676.033; Wed, 23 Dec 2020 04:28:17 +0000 From: "Abner Chang" To: "Kinney, Michael D" , "devel@edk2.groups.io" CC: Sean Brogan , Bret Barkelew , Andrew Fish , Laszlo Ersek , Leif Lindholm , Liming Gao , "Wang, Nickle (HPS SW)" , "O'Hanley, Peter (EXL)" Subject: Re: [PATCH v8 0/6] jansson edk2 port Thread-Topic: [PATCH v8 0/6] jansson edk2 port Thread-Index: AQHW1N4KALZdXXzZjU+e5YmRTCg3N6oAUjyQgACDDDCAAS12sIACG2tw Date: Wed, 23 Dec 2020 04:28:17 +0000 Message-ID: References: <20201217131839.3762-1-abner.chang@hpe.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=hpe.com; x-originating-ip: [165.225.116.159] x-ms-publictraffictype: Email x-ms-office365-filtering-ht: Tenant x-ms-office365-filtering-correlation-id: ba98d079-04a9-4dde-493e-08d8a6fb2bda x-ms-traffictypediagnostic: CS1PR8401MB0421: 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: H20rlQ12ycK+09WJAXmFgPx7ZE7e1qHSplXljEY3hmfBltiPS3rBvla01IhLH+AmuA+KrZaaoh/Wo4pOtRdidc9uhSscIeGsqUdTueJ7PisvKJ+2ZrFofndvzvfNuot/l/C5mHiXpRy/Cq8hPubnMIiRjP0Mm9OmWmykhA+aNY5ZcvrrBg3EQ7bV+twe+U8cbU5jGBZ7ZnRWd5HC3yI+nd2yX4gQdOhXi6ynoiqFKRTcJjdXYYPz8RhaEnbJMeDB8qLEPRLUoh883OEH+vJq83YUgQRTp5RGVIFGyEkbGqWxU3MqGogUCyz/GVTzanULYOhjToaFeSppWRulVJ9b/27tYnfDUTF1BBCNhTyocZb/feof68J4lSHMdS834fDoK43G3d3h13bmkaay1wZqa6iwWwVTc/XSp42dZjZICry4KtLxSR7tNNNcJi51E6gxhsUCqmDIbfsFLwlrzfVtvw== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CS1PR8401MB1144.NAMPRD84.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(396003)(136003)(346002)(39860400002)(376002)(366004)(33656002)(53546011)(478600001)(8936002)(7696005)(110136005)(83380400001)(8676002)(2906002)(64756008)(54906003)(316002)(5660300002)(19627235002)(6506007)(66946007)(66556008)(4326008)(966005)(76116006)(55236004)(71200400001)(55016002)(30864003)(52536014)(66476007)(86362001)(66446008)(9686003)(26005)(186003)(579004);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: =?utf-8?B?S0tCbHJXTHFVL0kxZ25MYThBSVBaNEhjRGVVT1M2aWVYL0ZwMnNSOStlSEpz?= =?utf-8?B?K0lnQzhLN0ttRExvNGFkR0dmWlFNR3Q3dzZVNXpCTGl4V0JrZ0s5MmRNTXpL?= =?utf-8?B?WFpKZFJOTWJ0OHg3N3VRSzY4YTd5RXoyQjZzRUpOS3hCd2ROdzVyb05ReDRV?= =?utf-8?B?QUk1U2FUdTRpb1ZnU1JucFpwWmljNGViNi9KcmpTNGdGNXpPb0kydStiT1Nq?= =?utf-8?B?Szh0RXdJWFdyY2FwZnpocU9DSkEwKzJiQ0ZSbHdtdUIvYTJnbStsT3Z0bGY1?= =?utf-8?B?YWUydEVXYytTU1dUODBibmpVaFIwakNGTkFDVjlxTDJQVEg4OHAwN3pzcU92?= =?utf-8?B?YjR1R2kwNXlKdjF4RXhtUmlQZWRNV3JBUTlqY256RDNyRXNRR3NHbUhob3Bu?= =?utf-8?B?bU14L2R4TThjTnNqS3NDQWFHdlBsTmtzQ0R5U0g3YmtZTDYvcjhOa1dSYVNN?= =?utf-8?B?Rkh2ZXJmcTkzcG0zWUtnaGI1VnVmSndqZnpuYldJdUM3Smlzb05xZG9VTUNR?= =?utf-8?B?SElXUitVcmF6ZDNKSFpQZ05GWnNVU0VhV2h0dGlndTlBa2ZXQmF3VkFSWUxY?= =?utf-8?B?L3VEYUlOK3VxQTRkMFZIM2FOWEo4SXRud1NMOVgwa1NSZUxVM3JFWFpiaTJE?= =?utf-8?B?dk1FdWNxZmJZT0VzTCsvQzJJZk5zVnRyUXhheEZCbWxUQ2dISHZNRHRzajU4?= =?utf-8?B?TE8yM3A1NWpac204OFYySmRvcnEzcmFmbUp0OEhkcDE0TDNTbEx2R0Q1bEhP?= =?utf-8?B?SFd4YnZEcXJEd0lXUFJUcW9SK2RFZXc5RkZwZjZUczMzQmRFWjVIM2FqRFZk?= =?utf-8?B?RFBKQXM3NFFzaUtKSUw5QkV0dnFWUCtPQmlvVUJzVWRaMXF6QThDMTBUeHl1?= =?utf-8?B?MTV6TDh6MnpZRUNEa0NtVmE2b3RieVRBZ2lncFZnank5RzBGN0dhSTV6ZTRx?= =?utf-8?B?emVPRjVqWStvUE9DNUgyT21GYVdDeGdHbUdReitMTTI5UDlZYmF4dmFScUg2?= =?utf-8?B?dFROR2h5czlWN3Bpd2M4VEllYzhIanVQSmkvZS9neTRMTXM5NlY5UEloRTIr?= =?utf-8?B?V1dxdXhWUG5ONVdJZTY0RXFtYVhXVE5sSjJiRUFkQzZacmhYRjFKMUdtV3dF?= =?utf-8?B?WGhRckQ3QWVmSWIzQ3RxZUpOQjBuSDQ4Rk5OYW9rQkFRRXVlR3diYy9MSTA5?= =?utf-8?B?T0QyTEJTajJoU0tXVGl2Vit5ZG1maHNrTEhYZEliVG5jT3V2cUpWbmdJcDBa?= =?utf-8?B?M09LUnhXK1BxajlBS1R1NVZldy9BaWI1WEFKa3NEUi8xTFlqT2RNVWdiZFdK?= =?utf-8?Q?IACAzdjde75Lo=3D?= X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CS1PR8401MB1144.NAMPRD84.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-Network-Message-Id: ba98d079-04a9-4dde-493e-08d8a6fb2bda X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Dec 2020 04:28:17.3943 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 105b2061-b669-4b31-92ac-24d304d195dc X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: EZeOED969YrTQCEs6wfED8MFpztR1/hR2HEzLi+9aokbqyGjHv9DgASdhsykt2Na7eLvDLa/9CXSV78n6bz63A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CS1PR8401MB0421 X-OriginatorOrg: hpe.com X-Proofpoint-UnRewURL: 0 URL was un-rewritten MIME-Version: 1.0 X-HPE-SCL: -1 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.343,18.0.737 definitions=2020-12-23_01:2020-12-21,2020-12-23 signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 bulkscore=0 lowpriorityscore=0 clxscore=1015 suspectscore=0 mlxlogscore=999 adultscore=0 phishscore=0 mlxscore=0 malwarescore=0 spamscore=0 impostorscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2009150000 definitions=main-2012230033 Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogS2lubmV5LCBNaWNoYWVs IEQgW21haWx0bzptaWNoYWVsLmQua2lubmV5QGludGVsLmNvbV0NCj4gU2VudDogV2VkbmVzZGF5 LCBEZWNlbWJlciAyMywgMjAyMCAyOjE0IEFNDQo+IFRvOiBDaGFuZywgQWJuZXIgKEhQUyBTVy9G VyBUZWNobm9sb2dpc3QpIDxhYm5lci5jaGFuZ0BocGUuY29tPjsNCj4gZGV2ZWxAZWRrMi5ncm91 cHMuaW87IEtpbm5leSwgTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT4NCj4g Q2M6IFNlYW4gQnJvZ2FuIDxzZWFuLmJyb2dhbkBtaWNyb3NvZnQuY29tPjsgQnJldCBCYXJrZWxl dw0KPiA8QnJldC5CYXJrZWxld0BtaWNyb3NvZnQuY29tPjsgQW5kcmV3IEZpc2ggPGFmaXNoQGFw cGxlLmNvbT47IExhc3psbw0KPiBFcnNlayA8bGVyc2VrQHJlZGhhdC5jb20+OyBMZWlmIExpbmRo b2xtIDxsZWlmQG51dmlhaW5jLmNvbT47IExpbWluZyBHYW8NCj4gPGdhb2xpbWluZ0BieW9zb2Z0 LmNvbS5jbj47IFdhbmcsIE5pY2tsZSAoSFBTIFNXKQ0KPiA8bmlja2xlLndhbmdAaHBlLmNvbT47 IE8nSGFubGV5LCBQZXRlciAoRVhMKSA8cGV0ZXIub2hhbmxleUBocGUuY29tPg0KPiBTdWJqZWN0 OiBSRTogW1BBVENIIHY4IDAvNl0gamFuc3NvbiBlZGsyIHBvcnQNCj4gDQo+IEhpIEFibmVyLA0K PiANCj4gQSBmZXcgY29tbWVudHMgYmVsb3cuDQo+IA0KPiBCZXN0IHJlZ2FyZHMsDQo+IA0KPiBN aWtlDQo+IA0KPiA+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gRnJvbTogQ2hhbmcs IEFibmVyIChIUFMgU1cvRlcgVGVjaG5vbG9naXN0KSA8YWJuZXIuY2hhbmdAaHBlLmNvbT4NCj4g PiBTZW50OiBNb25kYXksIERlY2VtYmVyIDIxLCAyMDIwIDEyOjE3IEFNDQo+ID4gVG86IEtpbm5l eSwgTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT47DQo+ID4gZGV2ZWxAZWRr Mi5ncm91cHMuaW8NCj4gPiBDYzogU2VhbiBCcm9nYW4gPHNlYW4uYnJvZ2FuQG1pY3Jvc29mdC5j b20+OyBCcmV0IEJhcmtlbGV3DQo+ID4gPEJyZXQuQmFya2VsZXdAbWljcm9zb2Z0LmNvbT47IEFu ZHJldyBGaXNoIDxhZmlzaEBhcHBsZS5jb20+OyBMYXN6bG8NCj4gPiBFcnNlayA8bGVyc2VrQHJl ZGhhdC5jb20+OyBMZWlmIExpbmRob2xtIDxsZWlmQG51dmlhaW5jLmNvbT47IExpbWluZw0KPiA+ IEdhbyA8Z2FvbGltaW5nQGJ5b3NvZnQuY29tLmNuPjsgV2FuZywgTmlja2xlIChIUFMgU1cpDQo+ ID4gPG5pY2tsZS53YW5nQGhwZS5jb20+OyBPJ0hhbmxleSwgUGV0ZXIgKEVYTCkNCj4gPHBldGVy Lm9oYW5sZXlAaHBlLmNvbT4NCj4gPiBTdWJqZWN0OiBSRTogW1BBVENIIHY4IDAvNl0gamFuc3Nv biBlZGsyIHBvcnQNCj4gPg0KPiA+IE1pa2UsIHJlc3BvbnNlIGluIGJlbG93LiBBbHNvIHY5IGlz IHNlbnQuDQo+ID4NCj4gPiBUaGFua3MgZm9yIHJldmlldyB0aGlzIGluIGRldGFpbC4NCj4gPiBB Ym5lcg0KPiA+DQo+ID4gPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ID4gRnJvbTog S2lubmV5LCBNaWNoYWVsIEQgW21haWx0bzptaWNoYWVsLmQua2lubmV5QGludGVsLmNvbV0NCj4g PiA+IFNlbnQ6IE1vbmRheSwgRGVjZW1iZXIgMjEsIDIwMjAgMzo0MyBBTQ0KPiA+ID4gVG86IENo YW5nLCBBYm5lciAoSFBTIFNXL0ZXIFRlY2hub2xvZ2lzdCkgPGFibmVyLmNoYW5nQGhwZS5jb20+ Ow0KPiA+ID4gZGV2ZWxAZWRrMi5ncm91cHMuaW87IEtpbm5leSwgTWljaGFlbCBEIDxtaWNoYWVs LmQua2lubmV5QGludGVsLmNvbT4NCj4gPiA+IENjOiBTZWFuIEJyb2dhbiA8c2Vhbi5icm9nYW5A bWljcm9zb2Z0LmNvbT47IEJyZXQgQmFya2VsZXcNCj4gPiA+IDxCcmV0LkJhcmtlbGV3QG1pY3Jv c29mdC5jb20+OyBBbmRyZXcgRmlzaCA8YWZpc2hAYXBwbGUuY29tPjsNCj4gTGFzemxvDQo+ID4g PiBFcnNlayA8bGVyc2VrQHJlZGhhdC5jb20+OyBMZWlmIExpbmRob2xtIDxsZWlmQG51dmlhaW5j LmNvbT47IExpbWluZw0KPiA+ID4gR2FvIDxnYW9saW1pbmdAYnlvc29mdC5jb20uY24+OyBXYW5n LCBOaWNrbGUgKEhQUyBTVykNCj4gPiA+IDxuaWNrbGUud2FuZ0BocGUuY29tPjsgTydIYW5sZXks IFBldGVyIChFWEwpDQo+IDxwZXRlci5vaGFubGV5QGhwZS5jb20+DQo+ID4gPiBTdWJqZWN0OiBS RTogW1BBVENIIHY4IDAvNl0gamFuc3NvbiBlZGsyIHBvcnQNCj4gPiA+DQo+ID4gPiBIaSBBYm5l ciwNCj4gPiA+DQo+ID4gPiBUaGUgaW5jbHVkZSBwYXRoIGluIHRoZSBbSW5jbHVkZS5Db21tb24u UHJpdmF0ZV0gc2VjdGlvbiBzaG91bGQgbm90DQo+ID4gPiBiZSBpbiB0aGUgc2FtZSBmaWxlIHBh dGggYXMgdGhlIFtJbmNsdWRlXSBzZWN0aW9uLiAgVGhpcyBhbGxvd3MNCj4gPiA+IHByaXZhdGUg aW5jbHVkZSBmaWxlcyB0byBiZSBhY2Nlc3NlZC4NCj4gPiA+DQo+ID4gPiBJbnN0ZWFkLCB5b3Ug c2hvdWxkIGNyZWF0ZSBhIG5ldyB0b3AgbGV2ZWwgcGFja2FnZSBkaXJlY3RvcnkgY2FsbGVkDQo+ ID4gPiBQcml2YXRlSW5jbHVkZSBhbmQgcHV0IGFsbCBub24tcHVibGljIGluY2x1ZGUgY29udGVu dCBpbiB0aGF0DQo+ID4gPiBkaXJlY3RvcnkuICBUaGUgVW5pdFRlc3RGcmFtZXdvcmtQa2cgaXMg YSBnb29kIHJlZmVyZW5jZSB0aGF0DQo+ID4gPiBkZW1vbnN0cmF0ZXMgdGhpcyBkZXNpZ24gcGF0 dGVybi4NCj4gPiBZZXMsIHRoaXMgbG9va3MgYmV0dGVyLiBBbGwgQ3J0IGhlYWRlciBmaWxlcyBh bmQgQ3J0TGliLmggd2lsbCBiZSBtb3ZlZCB0bw0KPiB1bmRlciBQcml2YXRlSW5jbHVkZS4NCj4g PiA+DQo+ID4gPiBUaGUgbGlicmFyeSBjbGFzcyBuYW1lIENydExpYiBpcyB2ZXJ5IGdlbmVyaWMg YW5kIHRoZSBsaWJyYXJ5IGNsYXNzDQo+ID4gPiBpcyBpbiB0aGUgcHVibGljIGluY2x1ZGVzIHNv IGl0IGlzIGV4cG9ydGVkIGFzIGEgcHVibGljIGludGVyZmFjZSBmcm9tIHRoZQ0KPiBSZWRmaXNo UGtnLg0KPiA+ID4gVGhpcyBDcnRMaWIgaW1wbGVtZW50YXRpb24gYXBwZWFycyB0byBiZSB0dW5l ZCB0byBzdXBwb3J0IHRoZQ0KPiA+ID4gZGVwZW5kZW5jaWVzIGZvciB0aGUgamFuc3NvbiBzdWJt b2R1bGUuICBJIHJlY29tbWVuZCBjaGFuZ2luZyB0aGUNCj4gPiA+IGxpYnJhcnkgY2xhc3MgbmFt ZSBhbmQgdGhlIGxpYnJhcnkgaW5zdGFuY2UgbmFtZSBzbyBpdCBpcyBjbGVhciB0aGF0DQo+ID4g PiB0aGlzIENydExpYiBpcyBvbmx5IGZvciBqYW5zc29uLg0KPiA+ID4gUGVyaGFwcyAnSmFuc3Nv bkNydExpYicuDQo+ID4gVGhlIENydExpYiBpcyBub3QgdXNlZCBieSBqYW5uc29uIGxpYiwgbGli cmVkZmlzaCBhcyB3ZWxsDQo+ID4gKGh0dHBzOi8vZ2l0aHViLmNvbS9ETVRGL2xpYnJlZGZpc2gp LiBTbyBKYW5zc29uQ3J0TGliIGlzIG5vdCBhIGdvb2QNCj4gbmFtaW5nLCB3aWxsIGtlZXAgdGhh dCBhcyBpdC4NCj4gPg0KPiA+ID5BbHNvLCBkb2VzIHRoaXMgbGlicmFyeSBjbGFzcyAoQ3J0TGli LmgpIG5lZWQgdG8gYmUgIGV4cG9ydGVkIGZyb20NCj4gPiA+UmVkZmlzaFBrZyBhcyBhIHB1Ymxp YyBpbnRlcmZhY2U/DQo+ID4gTm8sIGl0IHdpbGwgYmUgbW92ZWQgdG8gdW5kZXIgUHJpdmF0ZUlu Y2x1ZGUuDQo+ID4NCj4gPiBJZiBDcnRMaWIuaCBpcyBkZWZpbmVkIGFzIGEgcHJpdmF0ZSBsaWJy YXJ5IGFuZCBDcnRMaWIuaCBpcyBpbg0KPiA+IFByaXZhdGVJbmNsdWRlIHdoaWNoIGlzIG5vdCBl eHBvc2VkIHRvIG90aGVyIHBhY2thZ2VzLCB0aGVuIHdoeSBkbyB3ZQ0KPiBjYXJlIGFib3V0IHRo ZSBuYW1pbmcgb2YgQ3J0TGliIGlzIHRvbyBnZW5lcmljPyBXaGljaCBpcyB0aGUgcHJpdmF0ZSBs aWJyYXJ5DQo+IHVuZGVyIFJlZGZpc2hQa2cuDQo+ID4gTW92ZSB0aG9zZSBoZWFkZXIgZmlsZXMg dG8gdW5kZXIgUHJpdmF0ZUluY2x1ZGUgc2VlbXMgY2xlYXIgdG8gcGVvcGxlDQo+ID4gdGhhdCBD cnRMaWIgaXMgb25seSBmb3IgUmVkZmlzaFBrZy4gSSB0aGluayB3ZSBkb27igJl0IGhhdmUgdG8g Y2hhbmdlIHRoZQ0KPiBuYW1pbmcgaW4gdGhpcyBjYXNlLg0KPiANCj4gSW4gZ2VuZXJhbCBJIGFn cmVlLCBidXQgdGhlcmUgaXMgb25lIHBsYWNlIHdoZXJlIHRoZSBsaWIgbWFwcGluZyBoYXMgd2lk ZXINCj4gc2NvcGUsIGFuZCB0aGF0IGlzIGluIGEgcGxhdGZvcm0gRFNDIGZpbGUuICBUaGUgbGli IGNsYXNzIG5hbWUgQ3J0TGliIGhhcyB0byBiZQ0KPiBsaXN0ZWQgaW4gdGhlIERTQyBmaWxlLiAg SWYgbW9yZSB0aGFuIG9uZSBwYWNrYWdlIGRlZmluZXMgYSBsaWJyYXJ5IGNsYXNzIGNhbGxlZA0K PiBDcnRMaWIsIHRoZW4gdGhlIGxhc3QgbWFwcGluZyB1c2VkIHdpbGwgYmUgdXNlZCBmb3IgYWxs IG1vZHVsZXMgaWYgaXQgaXMgbGlzdGVkIGluDQo+IHRoZSBbTGlicmFyeUNsYXNzZXNdIHNlY3Rp b24gb2YgdGhlIERTQyBmaWxlLiAgVGhlIG9ubHkgd2FzIHRvIGhhbmRsZSB0aGlzIHR5cGUNCj4g b2YgbmFtZSBjb2xsaXNpb24gaXMgdG8gdXNlIGEgbW9kdWxlIHNjb3BlZCBsaWJyYXJ5IG1hcHBp bmcgaW4gdGhlDQo+IDxMaWJyYXJ5Q2xhc3Nlcz4gc2VjdGlvbiBvZiBlYWNoIGluZGl2aWR1YWwg bW9kdWxlIHRoYXQgdXNlcyBhIENydExpYi4gIEkgYW0NCj4gb25seSB0cnlpbmcgdG8gYXZvaWQg dGhlIHBvdGVudGlhbCBmb3IgZnV0dXJlIG5hbWUgY29sbGlzaW9ucyBmb3IgYSBsaWJyYXJ5DQo+ IGNsYXNzL2luc3RhbmNlIHRoYXQgaXMgc3BlY2lmaWMgdG8gdGhlIEpTT04gdXNlIGNhc2UuDQo+ IA0KPiBXZSByZWNvZ25pemUgdGhhdCBzZXZlcmFsIG1vZHVsZXMgaW4gZWRrMiBoYXZlIHRoaXMg dHlwZSBvZiBnYXNrZXQgYmV0d2Vlbg0KPiBhbiBFREsgSUkgZW52IGFuZCBhIHN0YW5kYXJkIEMg bGliLiAgV2UgbWF5IGZpbmQgYSB3ZSB0byBpbXBsZW1lbnQgYSBtb3JlDQo+IGdlbmVyaWMgZ2Fz a2V0IGFuZCByZXRpcmUgdGhlIHVzZSBvZiB0aGUgaW1wbGVtZW50YXRpb24gc3BlY2lmaWMgb25l cy4gIFRoaXMgaXMNCj4gYW5vdGhlciByZWFzb24gdG8gdXNlIGFuIGltcGxlbWVudGF0aW9uIHNw ZWNpZmljIG5hbWUgaW4gdGhpcyB1c2UgY2FzZSBhbmQNCj4gYmUgYWJsZSB0byBpbnRyb2R1Y2Ug YSBtb3JlIGdlbmVyaWMgbmFtZSBpbiB0aGUgZnV0dXJlLg0KPiANCj4gQW5vdGhlciBjb21tZW50 IGJlbG93IHRvIHNlZSBpZiB0aGVyZSBpcyBhIHdheSB0byBhdm9pZCBpbnRyb2R1Y2luZyBhIENy dExpYg0KPiBjbGFzcy4NCj4gDQo+ID4NCj4gPiA+DQo+ID4gPiAqIFJlZGZpc2hQa2cvSW5jbHVk ZS9MaWJyYXJ5L0NydExpYi5oDQo+ID4gPiAgICsgUmVtb3ZlIHJlZmVyZW5jZSB0byBNREVfQ1BV X0lBNjQuICBUaGlzIGhhcyBiZWVuIHJldGlyZWQgZnJvbQ0KPiA+ID4gdGhlDQo+ID4gPiBlZGsy IHJlcG8uDQo+ID4gT2suDQo+ID4gPiAgICsgSSBkbyBzZWUgb25lIHJlbWFpbmluZyByZWZlcmVu Y2UgdG8gdGhpcyBpbiB0aGUgQ3J5cHRvUGtnIHRoYXQgbmVlZCB0bw0KPiBiZQ0KPiA+ID4gICAg IHJlbW92ZWQuDQo+ID4gPg0KPiA+ID4gKiBSZWRmaXNoUGtnL0luY2x1ZGUvTGlicmFyeS9Kc29u TGliLmgNCj4gPiA+ICAgKyBTb21lIG9mIHRoZSBmdW5jdGlvbiBkZXNjcmlwdGlvbnMgYXJlIHZl cnkgYnJpZWYgYW5kIEkgY2FuIG5vdCB0ZWxsDQo+ID4gPiAgICAgaG93IHRvIHVzZSB0aGUgc2Vy dmljZSBmcm9tIHRoZSBkZXNjcmlwdGlvbiBhbmQgbW9yZSBpbXBvcnRhbnRseSwgSQ0KPiA+ID4g ICAgIHdvdWxkIG5vdCBrbm93IGhvdyB0byB3cml0ZSBhIHVuaXQgdGVzdCB0byB2ZXJpZnkgdGhl IGV4cGVjdGVkDQo+IGJlaGF2aW9yLg0KPiA+ID4gICAgIFNpbmNlIHRoZXNlIGFyZSBhIHNldCBv ZiBwdWJsaWMgQVBJcyBmcm9tIHRoaXMgcGFja2FnZSB0aGF0IHlvdQ0KPiA+ID4gICAgIGV4cGVj dCBtb2R1bGVzL2xpYnMgZnJvbSBvdXRzaWRlIG9mIFJlZGZpc2hQa2cgdG8gdXNlLCB0aGVuIGFs bCBvZg0KPiA+ID4gICAgIHRoZXNlIHB1YmxpYyBBUElzIG11c3QgYmUgZnVsbHkgZG9jdW1lbnRl ZC4NCj4gPiBNb3N0IG9mIHRoZSBBUEkgaW4gSnNvbkxpYiBhcmUgd3JhcHBlcnMgb2YgbmF0aXZl IGphbnNzb24gQVBJcy4gV2UgY2FuDQo+ID4gbWVudGlvbiB0aGUgVVJMIHRvIGphbnNzb24gQVBJ IHJlZmVyZW5jZSBkb2N1bWVudCBpbiBmaWxlIGhlYWRlci4NCj4gPiBJTlZBTElEIFVSSSBSRU1P VkVEDQo+IDNBX19qYW5zc29uLnJlYWR0aGVkbw0KPiA+DQo+IGNzLmlvX2VuXzIuMTNfaW5kZXgu aHRtbCZkPUR3SUdhUSZjPUM1Yjh6UlFPMW1pR21CZVZaMkxGV2cmcj1fDQo+IFNONkZaQk40DQo+ ID4gVmdpNFVsa3NrejZxVTNOWVJPMDNuSHA5UDdaNXE1OUEzRSZtPXZkLQ0KPiB1UHo4NjRjem9Z QTVDN1lhUGdxWGZkUGp2NGM1a0INCj4gPiB6VHdWNjBOdk5RJnM9YWNWek4zeDR5TkQwamtnNDRi SjQ4Wmt5UHl1Z2p3c1l2VUdkRDRuSkw3NCZlPQ0KPiA+IEkgd2lsbCByZXZpZXcgYWxsIGZ1bmN0 aW9uIGhlYWRlciBhZ2FpbiwgIHBsZWFzZSBjaGVjayB2OSBwYXRjaCBsYXRlci4NCj4gPg0KPiA+ ID4gICArIEFyZSB0aGVyZSBhbnkgb2YgdGhlc2UgQVBJcyB0aGF0IGFyZSBub3QgcmVhbGx5IG5l ZWRlZCBieSBtb2R1bGVzL2xpYnMNCj4gPiA+ICAgICBvdXRzaWRlIHRoZSBSZWRmaXNoUGtnPyAg SXQgd291bGQgYmUgYmV0dGVyIHRvIHJlbW92ZSBBUElzIHRoYXQgYXJlDQo+ID4gPiAgICAgbm90 IG5lZWRlZCBvdXRzaWRlIFJlZGZpc2hQa2cgZnJvbSB0aGlzIHB1YmxpYyBpbmNsdWRlIGZpbGUu DQo+ID4gPiAgICsgQSBjb3VwbGUgZXhhbXBsZXMgdGhhdCBzdG9vZCBvdXQgYXJlOg0KPiA+ID4g ICAgIEpzb25EZWNyZWFzZVJlZmVyZW5jZSgpDQo+ID4gPiAgICAgSnNvbkluY3JlYXNlUmVmZXJl bmNlKCkNCj4gPiA+ICAgICBKc29uT2JqZWN0SXRlcmF0b3IoKQ0KPiA+ID4gICAgIEpzb25PYmpl Y3RJdGVyYXRvclZhbHVlKCkNCj4gPiA+ICAgICBKc29uT2JqZWN0SXRlcmF0b3JOZXh0KCkNCj4g PiBUaGUgbmF0aXZlIGphbnNzb24gQVBJcyBvZiBhbGwgYWJvdmUgd3JhcHBlcnMgYXJlIHVzZWQg aW4gbGlicmVkZmlzaC4NCj4gPiBTbyB0aGF0IGlzIHRoZSBwb3RlbnRpYWwgdXNlIGNhc2UgZm9y IG90aGVyIEpTT04gYXBwbGljYXRpb25zLg0KPiANCj4gQ2FuIHlvdSBwcm92aWRlIGEgcG9pbnRl ciB0byBhbiBleGFtcGxlIG9mIHRoaXMgdXNlIGNhc2U/DQo+IA0KPiBJIGFtIHRyeWluZyB0byBt YWtlIHN1cmUgd2UgYXJlIGRvaW5nIHRoZSByaWdodCBkZXNpZ24gb2YgUmVkZmlzaFBrZyB3aXRo DQo+IHJlc3BlY3QgdG8gQ3J0TGliIGZvciB0aGlzIHVzZSBjYXNlLiAgQXJlIHRoZXNlIGFyZSBK U09OIGFwcHMgdGhhdCBkbyBub3QgdXNlDQo+IEpzb25MaWIsIGJ1dCBhcmUgZXhwZWN0ZWQgdG8g YnVpbGQgaW4gYW4gRURLIElJIGJ1aWxkIGVudmlyb25tZW50PyAgV291bGQNCj4gdGhlc2UgSlNP TiBhcHBzIHJlcXVpcmUgbW9yZSBzdGFuZGFyZCBDIGxpYiBzZXJ2aWNlcyB0aGFuIHRoZSBDcnRM aWIgdXNlZCB0bw0KPiBidWlsZCBKc29uTGliPyAgV2hlcmUgd291bGQgdGhvc2UgYWRkaXRpb25h bCBDIGxpYiBzZXJ2aWNlcyBjb21lIGZyb20/DQo+IA0KPiBUaGVyZSBpcyBhIHN0YW5kYXJkIEMg bGliIGluIGVkazItbGliYy4gIFdvdWxkIHRoYXQgYmUgcmVxdWlyZWQgdG8gYnVpbGQgdGhlDQo+ IEpTT04gYXBwcy4NCj4gDQo+IEluIG90aGVyIHVzZXMgb2Ygc3VibW9kdWxlcyB3aXRoIEMgbGli IGRlcGVuZGVuY2llcywgYSBuZXcgQ3J0TGliIGxpa2UgbGliDQo+IGNsYXNzIHdhcyBub3QgYWRk ZWQgYW5kIGluc3RlYWQgdGhlIHN1cHBvcnQgd2FzIGFkZGVkIGRpcmVjdGx5IHRvIHRoZSBFREsg SUkNCj4gd3JhcHBlciBBUElzLiBTb21lIGV4YW1wbGVzIGFyZToNCj4gICAqIE1kZU1vZHVsZVBr Z1xMaWJyYXJ5XEJyb3RsaUN1c3RvbURlY29tcHJlc3NMaWINCj4gICAqIE1kZU1vZHVsZVBrZ1xV bml2ZXJzYWxcUmVndWxhckV4cHJlc3Npb25EeGUNCj4gDQo+IElmIHRoZXJlIGFyZSB1c2UgY2Fz ZXMgd2hlcmUgdGhlIENydExpYiB3aWxsIGJlIGFkZGVkIHRvIGFuIElORiBvdXRzaWRlIHRoZQ0K PiBSZWRmaXNoUGtnLCB0aGVuIEkgc3RpbGwgdGhpbmsgdGhlIG5hbWUgbmVlZHMgdG8gYmUgY2hh bmdlZCB0byBiZSBzcGVjaWZpYyB0bw0KPiB0aGUgSlNPTiB1c2UgY2FzZS4NCj4gDQo+IElmIHRo ZSB1c2Ugb2YgQ3J0TGliIGlzIG9ubHkgd2l0aGluIHRoZSBSZWRmaXNoUGtnLCB0aGVuIHRoZSBM aWJyYXJ5IENsYXNzIGNhbiBiZQ0KPiBkZWNsYXJlZCBpbiBhIFtMaWJyYXJ5Q2xhc3Nlcy5Db21t b24uUHJpdmF0ZV0gc2VjdGlvbiBvZiB0aGUgREVDIGZpbGUuICBTZWUNCj4gVW5pdFRlc3RGcmFt ZXdvcmtQa2cgZm9yIGV4YW1wbGVzLg0KPiANCj4gPg0KPiA+ID4gICArIEpzb25EdW1wU3RyaW5n KCkNCj4gPiA+ICAgICBmdW5jIGhlYWRlciBwYXJhbXMgZG8gbm90IG1hdGNoIGZ1bmMgcHJvdG90 eXBlDQo+ID4gPiAgICAgRG9lcyBub3QgZGVzY3JpYmUgd2hvIGFsbG9jYXRlcyB0aGUgcmV0dXJu IGJ1ZmZlciBhbmQgd2hvDQo+ID4gPiAgICAgaXMgcmVzcG9uc2libGUgZm9yIGZyZWVpbmcgdGhl IGJ1ZmZlciByZXR1cm5lZC4NCj4gPiA+ICAgICBXaGF0IGRvIEZsYWdzIGRvPyAgV2hhdCBpcyB0 aGUgZGlmZmVyZW5jZSBiZXR3ZWVuIHRoaXMNCj4gPiA+ICAgICBmdW5jdGlvbiBhbmQgSnNvblRv VGV4dCgpPw0KPiA+IEluIEpzb25Ub1RleHQsIGl0IG9ubHkgY29udmVydHMgSlNPTiBhcnJheSBh bmQgb2JqZWN0IHRvIHRleHQuIFdlDQo+ID4gY291bGQganVzdCByZW1vdmUgdGhpcyBmb3Igbm93 IGJlY2F1c2UgSSBkb27igJl0IHJlYWxseSByZW1lbWJlciB0aGUgcmVhc29uDQo+IHRvIGNyZWF0 ZSB0aGlzIGZ1bmN0aW9uLCBpdCBoYXMgYmVlbiBhIHdoaWxlLiBTZWVtcyB0byBtZSBpdCBpcyBm aW5lIHRvIHJlbW92ZQ0KPiB0aGlzIGZ1bmN0aW9uLg0KPiA+DQo+ID4gPiAgICsgSnNvbkxvYWRC dWZmZXIoKSAtIEVycm9yIHBhcmFtIGRlc2NyaXB0aW9uIG1pc3NpbmcNCj4gPiA+ICAgKyBKc29u QXJyYXlHZXRWYWx1ZSgpIGRvZXMgbm90IGRlc2NyaWJlIHRoZSBjb25kaXRpb25zIE5VTEwNCj4g PiA+ICAgICBpcyByZXR1cm5lZC4NCj4gPiA+ICAgKyBKc29uT2JqZWN0R2V0S2V5cygpLiAgUmV0 dXJuIHR5cGUgaXMgQ0hBUjgqKi4gIFdoYXQNCj4gPiA+ICAgICBmdW5jdGlvbiBuZWVkIHRvIGJl IGNhbGxlZCB0byBmcmVlIHRoZSBhcnJheT8NCj4gPiBBbGwgYWJvdmUgYWRkcmVzc2VkLg0KPiA+ DQo+ID4gPiAgICsgSnNvblZhbHVlR2V0QXNjaWlTdHJpbmcoKSBhbmQgSnNvblZhbHVlR2V0VW5p Y29kZVN0cmluZygpDQo+ID4gPiAgICAgYXJlIGFzeW1tZXRyaWMuICBUaGUgQXNjaWkgb25lIHN0 YXRlcyB0aGF0IGNoYW5nZSB3aWxsDQo+ID4gPiAgICAgbW9kaWZ5IHRoZSBvcmlnaW5hbCBzdHJp bmcuICBUaGUgVW5pY29kZSBvbmUgc2F5cyB0aGF0IHRoZQ0KPiA+ID4gICAgIGNhbGxlciBuZWVk cyB0byBmcmVlIHRoZSByZXR1cm5lZCBzdHJpbmcuICBBbnkgcmVhc29uIHdlDQo+ID4gPiAgICAg Y2FuIG5vdCBtYWtlIHRoZW0gc3ltbWV0cmljPw0KPiA+IEphbnNzb24gZG9lc24ndCBzdXBwb3J0 IFVuaWNvZGUgc3RyaW5nLiBUaGUgbWVtb3J5IG9mIHRoZSB1bmljb2RlDQo+ID4gc3RyaW5nIHJl dHVybmVkIGJ5IEpzb25WYWx1ZUdldFVuaWNvZGVTdHJpbmcgSXMgYWxsb2NhdGVkIGJ5DQo+IFVU RjhTdHJUb1VDUzIoKS4NCj4gPiAgPiBBbHNvLCBpZiBBc2NpaSBvbmUgc2hvdWxkDQo+ID4gPiAg ICAgbm90IGJlIG1vZGlmaWVkLCB3aHkgaXNu4oCZdCB0aGUgcmV0dXJuIHR5cGUgQ09OU1Q/DQo+ ID4gWWVzLiB3aWxsIGRvIHRoYXQuDQo+ID4NCj4gPiA+DQo+ID4gPiAqIFJlZGZpc2hQa2cvTGli cmFyeS9CYXNlVWNzMlV0ZjhMaWIvQmFzZVVjczJVdGY4TGliLmluZg0KPiA+ID4gICArIENoYW5n ZSBbU291cmNlcy5jb21tb25dIHRvIFtTb3VyY2VzXQ0KPiA+IGRvbmUNCj4gPiA+ICogUmVkZmlz aFBrZy9MaWJyYXJ5L0NydExpYi9DcnRMaWIuaW5mDQo+ID4gPiAgICsgRG9lcyB0aGlzIGxpYiBp bnN0YW5jZSByZWFsbHkgZGVwZW5kIG9uIE1kZU1vZHVsZVBrZz8NCj4gPiBZZXMsIFNvcnRMaWIN Cj4gPiA+ICAgKyBIYXZlIHlvdSByZXZpZXdlZCB0aGUgbW9kdWxlIHR5cGVzIHRoaXMgbGliIGlu c3RhbmNlIGlzDQo+ID4gPiAgICAgY29tcGF0aWJsZSB3aXRoPyAgV2h5IGRvZXMgaXQgbmVlZCB0 byBzdXBwb3J0IERYRV9DT1JFPw0KPiA+ID4gICAgIEFyZSB0aGVpciBKc29uTGliIHVzZSBjYXNl cyBmb3IgRFhFX1JVTlRJTUUgYW5kIFNNTSBkcml2ZXJzPw0KPiA+ID4gICAgIElmIHRoZXJlIGFy ZSBTTU0gdXNlIGNhc2VzLCB0aGVuIHdoeSBpcyBNTSBleGNsdWRlZD8NCj4gPiBXaWxsIGp1c3Qg a2VlcCBEWEVfRFJWRVIsIFVFRklfQVBQTElDQVRJT04gYW5kIFVFRklfRFJJVkVSLiBUaGVzZQ0K PiBhcmUNCj4gPiBtb2R1bGUgdHlwZXMgaGF2ZSBwb3RlbnRpYWwgdXNlIGNhc2VzIEkgY2FuIHRo aW5rIG9mIG5vdy4NCj4gPiA+DQo+ID4gPiAqIFJlZGZpc2hQa2cvTGlicmFyeS9Kc29uTGliDQo+ ID4gPiAgICsgUmVhZG1lLnJzdCBzdGlsbCBoYXMgcmVmZXJlbmNlcyB0byBKYW5zc29uSnNvbkxp Yk1hcHBpbmcuaA0KPiA+IGRvbmUNCj4gPiA+ICAgKyBIYXZlIHlvdSByZXZpZXdlZCB0aGUgbW9k dWxlIHR5cGVzIHRoaXMgbGliIGluc3RhbmNlIGlzDQo+ID4gPiAgICAgY29tcGF0aWJsZSB3aXRo PyAgV2h5IGRvZXMgaXQgbmVlZCB0byBzdXBwb3J0IERYRV9DT1JFPw0KPiA+ID4gICAgIEFyZSB0 aGVpciBKc29uTGliIHVzZSBjYXNlcyBmb3IgRFhFX1JVTlRJTUUgYW5kIFNNTSBkcml2ZXJzPw0K PiA+ID4gICAgIElmIHRoZXJlIGFyZSBTTU0gdXNlIGNhc2VzLCB0aGVuIHdoeSBpcyBNTSBleGNs dWRlZD8NCj4gPiBBbnN3ZXJlZCBhYm92ZQ0KPiA+ID4gICArIEpzb25MaWIuaW5mIGhhcyBhIFtC dWlsZE9wdGlvbnNdIHNlY3Rpb24gdGhhdCBkaXNhYmxlcyBzb21lIHdhcm5pbmdzDQo+IHRoYXQN Cj4gPiA+ICAgICBtYWtlIG1lIGNvbmNlcm5lZCB0aGF0IHRoaXMgbGlicmFyeSBtYXkgaGF2ZSBz b21lIGlzc3VlcyB3aXRoDQo+ID4gPiAzMi1iaXQgYnVpbGRzLg0KPiA+ID4gICAgIEhhdmUgeW91 IGZ1bGx5IHZhbGlkYXRlZCBhbGwgMzItYml0IENQVSBidWlsZHMgYW5kIHZhbGlkYXRlZCB0aGUN Cj4gZnVuY3Rpb25hbGl0eQ0KPiA+ID4gICAgIG9mIGFsbCBzZXJ2aWNlcyBmcm9tIHRoZSBKc29u TGliIGZvciBhbGwgcmFuZ2VzIG9mIGlucHV0IHZhbHVlcz8NCj4gPiBZZXMsIElBMzIgYnVpbGQg aXMgdmFsaWRhdGVkLiBCdXQgbm90IHZhbGlkYXRpbmcgb24gdGhlDQo+ID4gZnVuY3Rpb25hbGl0 aWVzIElBMzIuIEkgZG9uJ3QgaGF2ZSB0aGF0IHVzZSBjYXNlLCB3ZSBjYW4gZ2V0IGJhY2sgdG8g Zml4IHRoZQ0KPiBpc3N1ZSBpZiBhbnkgd2hlbiAgc29tZW9uZSBydW5zIHRoaXMgb24gSUEzMi4N Cj4gDQo+IEkgZGlkIHNvbWUgbG9jYWwgdGVzdGluZyB3aXRoIFZTMjAxOS4gIEkgZm91bmQgdGhh dCBhIG11Y2ggc21hbGxlciBzZXQgb2YNCj4gd2FybmluZyBkaXNhYmxlcyBhcmUgcmVxdWlyZWQg Zm9yIElBMzIgYW5kIFg2NCBhbmQgdGhlIHNldCBpcyBkaWZmZXJlbnQgZm9yDQo+IElBMzIgYW5k IFg2NC4gIENhbiB5b3UgcmV2aWV3IHdoYXQgaXMgbmVlZGVkIGFuZCBtaW5pbWl6ZSB0aGUgcmVx dWlyZWQgc2V0DQo+IG9mIGVhY2ggc3VwcG9ydGVkIGFyY2g/DQo+IA0KPiAgIE1TRlQ6Kl8qX1g2 NF9DQ19GTEFHUyA9IC93ZDQyNDQgL3dkNDA5MCAvd2Q0MzM0DQo+IC9ESEFWRV9DT05GSUdfSD0x IC9VX1dJTjMyIC9VV0lONjQgL1VfTVNDX1ZFUg0KPiAgIE1TRlQ6Kl8qX0lBMzJfQ0NfRkxBR1Mg PSAvd2Q0MjQ0IC93ZDQwOTAgL0RIQVZFX0NPTkZJR19IPTENCj4gL1VfV0lOMzIgL1VXSU42NCAv VV9NU0NfVkVSDQpPaw0KQWJuZXINCj4gDQo+ID4gPg0KPiA+ID4gKiBSZWRmaXNoTGlicy5kc2Mu aW5jDQo+ID4gPiAgIEl0IGlzIGJldHRlciB0byBhZGQgW0xpYnJhcnlDbGFzc2VzXSBzdGF0ZW1l bnQgdG8gdGhpcyBmaWxlLCBzbyBpdA0KPiA+ID4gICBjYW4gYmUgaW5jbHVkZSBhbnl3aGVyZSBp biBhIERTQyBmaWxlLiAgV2l0aCBjdXJyZW50IGltcGxlbWVudGF0aW9uDQo+ID4gPiAgIGlmIGl0 IGlzIG5vdCBpbmNsdWRlZCB3aXRoaW4gYSBbTGlicmFyeUNsYXNzZXNdIHNlY3Rpb24sIGl0IHdp bGwNCj4gPiA+ICAgZ2VuZXJhdGUgYSBidWlsZCBlcnJvci4NCj4gPiBJIHdpbGwgc2VwYXJhdGUg dGhpcyB0byBhbm90aGVyIHNldCBvZiBwYXRjaC4gRG9u4oCZdCBtaXggdXAgd2l0aCBqYW5zc29u IGVkazINCj4gcG9ydC4NCj4gPg0KPiA+ID5Zb3UgbWlnaHQgYWxzbyBjb25zaWRlciBjaGFuZ2lu ZyB0aGUgbmFtZQ0KPiA+ID4gICBvZiB0aGlzIGZpbGUgaW4gY2FzZSB5b3Ugd2FudCB0byBhZGQg bW9yZSB0aGFuIGp1c3QgbGliIG1hcHBpbmdzDQo+ID4gPiAgIHRvIHRoaXMgZmlsZSBpbiB0aGUg ZnV0dXJlLiAgU2VlIFVuaXRUZXN0RnJhbXdvcmtQa2cgZm9yIGV4YW1wbGVzLg0KPiA+ID4NCj4g PiA+IEJlc3QgcmVnYXJkcywNCj4gPiA+DQo+ID4gPiBNaWtlDQo+ID4gPg0KPiA+ID4gPiAtLS0t LU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+ID4gPiBGcm9tOiBBYm5lciBDaGFuZyA8YWJuZXIu Y2hhbmdAaHBlLmNvbT4NCj4gPiA+ID4gU2VudDogVGh1cnNkYXksIERlY2VtYmVyIDE3LCAyMDIw IDU6MTkgQU0NCj4gPiA+ID4gVG86IGRldmVsQGVkazIuZ3JvdXBzLmlvDQo+ID4gPiA+IENjOiBT ZWFuIEJyb2dhbiA8c2Vhbi5icm9nYW5AbWljcm9zb2Z0LmNvbT47IEJyZXQgQmFya2VsZXcNCj4g PiA+ID4gPEJyZXQuQmFya2VsZXdAbWljcm9zb2Z0LmNvbT47IEFuZHJldyBGaXNoIDxhZmlzaEBh cHBsZS5jb20+Ow0KPiA+ID4gPiBMYXN6bG8gRXJzZWsgPGxlcnNla0ByZWRoYXQuY29tPjsgTGVp ZiBMaW5kaG9sbQ0KPiA+ID4gPiA8bGVpZkBudXZpYWluYy5jb20+OyBLaW5uZXksIE1pY2hhZWwg RA0KPiA+ID4gPiA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+OyBMaW1pbmcgR2FvDQo+ID4g PiA+IDxnYW9saW1pbmdAYnlvc29mdC5jb20uY24+OyBOaWNrbGUgV2FuZyA8bmlja2xlLndhbmdA aHBlLmNvbT47DQo+ID4gPiBQZXRlcg0KPiA+ID4gPiBPJ0hhbmxleSA8cGV0ZXIub2hhbmxleUBo cGUuY29tPg0KPiA+ID4gPiBTdWJqZWN0OiBbUEFUQ0ggdjggMC82XSBqYW5zc29uIGVkazIgcG9y dA0KPiA+ID4gPg0KPiA+ID4gPiBJbiB2OCwgLSBBc3NpZ25lIHBhdGNoIGZpbGUgb3JkZXINCj4g PiA+ID4gICAgICAgIC0gQWRkIEFja2VkLWJ5IHRhZ3MNCj4gPiA+ID4gSW4gdjcsIC0gUmVtb3Zl IEMgUlRDIGhlYWRlciBmaWxlcyB0byB1bmRlciBbSW5jbHVkZS5Db21tb24uUHJpdmF0ZV0NCj4g PiA+ID4gICAgICAgICAgaW4gUmVkZmlzaFBrZy5kZWMuDQo+ID4gPiA+ICAgICAgICAtIGFkZHJl c3MgY29tbWVudHMgZ2l2ZW4gYnkgTWlrZSBLaW5uZXkuDQo+ID4gPiA+IEluIHY2LCBSZW1vdmUg SmFuc3Nvbkpzb25NYXBwaW5nLmggSW4gdjUsIG1vdmUgQmFzZVVjczJVdGY4TGliIHRvDQo+ID4g PiA+IHVuZGVyIFJlZGZpc2hQa2cuDQo+ID4gPiA+IEluIHY0LA0KPiA+ID4gPiAgICAgICAgLSBB ZGRyZXNzIHJldmlldyBjb21tZW50cw0KPiA+ID4gPiAgICAgICAgLSBTZXBlcmF0ZSBDUlQgZnVu Y3Rpb25zIHRvIGEgaW5kaXZpZHVsZSBsaWJyYXJ5IENydExpYiB1bmRlcg0KPiA+ID4gPiAgICAg ICAgICBSZWRmaXNoUGtnLg0KPiA+ID4gPiAgICAgICAgLSBTZXBlcmF0ZSBVQ1MyLVVURjggZnVu Y3Rpb25zIHRvIGEgaW5kaXZpZHVsZSBsaWJyYXJ5DQo+ID4gPiA+ICAgICAgICAgIEJhc2VVY3My VXRmOExpYiB1bmRlciBNZGVNb2R1bGVQa2cuDQo+ID4gPiA+DQo+ID4gPiA+IEluIHYzLCBBZGQg amFuc3NvbiBsaWJyYXJ5IGFzIHRoZSByZXF1aXJlZCBzdWJtb3VkbGUgaW4NCj4gPiA+ID4gICAg ICAgIENpU2V0dGluZ3MucHkgZm9yIENJIHRlc3QuDQo+ID4gPiA+IEluIHYyLCBKc29uTGliIGlz IG1vdmVkIHRvIHVuZGVyIFJlZGZpc2hQa2cuDQo+ID4gPiA+DQo+ID4gPiA+IGVkazIgSlNPTiBs aWJyYXJ5IGlzIGJhc2VkIG9uIGphbnNzb24gb3BlbiBzb3VyY2UNCj4gPiA+ID4gKGh0dHBzOi8v Z2l0aHViLmNvbS9ha2hlcm9uL2phbnNzb24pIGFuZCB3cmFwcGVkIGFzIGFuIGVkazIgbGlicmFy eS4NCj4gPiA+ID4gZWRrMiBKc29uTGliIHdpbGwgYmUgdXNlZCBieSBlZGsyIFJlZGZpc2ggZmVh dHVyZSBkcml2ZXJzIChub3QNCj4gPiA+ID4gY29udHJpYnV0ZWQgeWV0KSBhbmQgdGhlIGVkazIg cG9ydCBvZiBsaWJyZWRmaXNoIGxpYnJhcnkgKG5vdA0KPiA+ID4gPiBjb250cmlidXRlZCB5ZXQp IGJhc2VkIG9uIERNVEYgR2l0SHViDQo+ID4gPiA+IChodHRwczovL2dpdGh1Yi5jb20vRE1URi9s aWJyZWRmaXNoKS4NCj4gPiA+ID4NCj4gPiA+ID4gSmFuc3NvbiBpcyBsaWNlbnNlZCB1bmRlciB0 aGUgTUlUIGxpY2Vuc2UocmVmZXIgdG8gUmVhZE1lLnJzdCB1bmRlcg0KPiBlZGsyKS4NCj4gPiA+ ID4gSXQgaXMgdXNlZCBpbiBwcm9kdWN0aW9uIGFuZCBpdHMgQVBJIGlzIHN0YWJsZS4gSW4gVUVG SS9FREtJSQ0KPiA+ID4gPiBlbnZpcm9ubWVudCwgUmVkZmlzaCBwcm9qZWN0IGNvbnN1bWVzIGph bnNzb24gdG8gYWNoaWV2ZSBKU09ODQo+ID4gPiBvcGVyYXRpb25zLg0KPiA+ID4gPg0KPiA+ID4g PiAqIEphbnNzb24gdmVyc2lvbiBvbiBlZGsyOiAyLjEzLjENCj4gPiA+ID4NCj4gPiA+ID4gKiBF REtJSSBqYW5zc29uIGxpYnJhcnkgd3JhcHBlcjoNCj4gPiA+ID4gICAgLSBKc29uTGliLmg6DQo+ ID4gPiA+ICAgICAgVGhpcyBpcyB0aGUgZGVuaWZpdGlvbnMgb2YgRURLSUkgSlNPTiBBUElzIHdo aWNoIGFyZSBtYXBwZWQgdG8NCj4gPiA+ID4gICAgICBqYW5uc29uIGZ1bmNpdG9ucyBhY2NvcmRp bmdseS4NCj4gPiA+ID4NCj4gPiA+ID4gICAgLSBKYW5zc29uSnNvbkxpYk1hcHBpbmcuaDoNCj4g PiA+ID4gICAgICBUaGlzIGlzIHRoZSB3cmFwcGVyIGZpbGUgdG8gbWFwIGZ1bmNpdG9ucyBhbmQg ZGVmaW5pdGlvbnMgdXNlZCBpbg0KPiA+ID4gPiAgICAgIG5hdGl2ZSBqYW5uc29uIGFwcGxpY2F0 aW9ucyB0byBlZGsyIEpzb25MaWIuIFRoaXMgYXZvaWRzIHRoZQ0KPiA+ID4gPiAgICAgIG1vZGlm aWNhdGlvbnMgb24gbmF0aXZlIGphbm5zb24gYXBwbGljYXRpb25zIHRvIGJlIGJ1aWx0IHVuZGVy DQo+ID4gPiA+ICAgICAgZWRrMiBlbnZpcm9ubWVudC4NCj4gPiA+ID4NCj4gPiA+ID4gKktub3du IGlzc3VlOg0KPiA+ID4gPiAgIEJ1aWxkIGZhaWwgd2l0aCBqYW5zc29uL3NyYy9sb2FkLmMsIG92 ZXJycmlkZSBhbmQgYWRkIGNvZGUgaW4gbG9hZC5jDQo+ID4gPiA+ICAgdG8gY29uZGl0aW9uYWxs eSB1c2Ugc3RkaW4gYWNjb3JkaW5nIHRvIEhBVkVfVU5JU1REX0ggbWFjcm8uDQo+ID4gPiA+ICAg VGhlIFBSIGlzIHN1Ym1pdHRlZCB0byBqYW5zc29uIG9wZW4gc291cmNlIGNvbW11bml0eS4NCj4g PiA+ID4gICBodHRwczovL2dpdGh1Yi5jb20vYWtoZXJvbi9qYW5zc29uL3B1bGwvNTU4DQo+ID4g PiA+DQo+ID4gPiA+IFNpZ25lZC1vZmYtYnk6IEFibmVyIENoYW5nIDxhYm5lci5jaGFuZ0BocGUu Y29tPg0KPiA+ID4gPg0KPiA+ID4gPiBDYzogU2VhbiBCcm9nYW4gPHNlYW4uYnJvZ2FuQG1pY3Jv c29mdC5jb20+DQo+ID4gPiA+IENjOiBCcmV0IEJhcmtlbGV3IDxCcmV0LkJhcmtlbGV3QG1pY3Jv c29mdC5jb20+DQo+ID4gPiA+IENjOiBBbmRyZXcgRmlzaCA8YWZpc2hAYXBwbGUuY29tPg0KPiA+ ID4gPiBDYzogTGFzemxvIEVyc2VrIDxsZXJzZWtAcmVkaGF0LmNvbT4NCj4gPiA+ID4gQ2M6IExl aWYgTGluZGhvbG0gPGxlaWZAbnV2aWFpbmMuY29tPg0KPiA+ID4gPiBDYzogTWljaGFlbCBEIEtp bm5leSA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+DQo+ID4gPiA+IENjOiBMaW1pbmcgR2Fv IDxnYW9saW1pbmdAYnlvc29mdC5jb20uY24+DQo+ID4gPiA+IENjOiBOaWNrbGUgV2FuZyA8bmlj a2xlLndhbmdAaHBlLmNvbT4NCj4gPiA+ID4gQ2M6IFBldGVyIE8nSGFubGV5IDxwZXRlci5vaGFu bGV5QGhwZS5jb20+DQo+ID4gPiA+DQo+ID4gPiA+IEFibmVyIENoYW5nICg2KToNCj4gPiA+ID4g ICBSZWRmaXNoUGtnL1VjczJVdGY4bGliOiBVQ1MyIHRvIFVGVDggbWFuaXB1bGF0aW9uIGxpYnJh cnkNCj4gPiA+ID4gICBlZGsyOiBqYW5zc29uIHN1Ym1vZHVsZSBmb3IgZWRrMiBKU09OIGxpYnJh cnkNCj4gPiA+ID4gICBSZWRmaXNoUGtnL0NydExpYjogQyBydW50aW1lIGxpYnJhcnkNCj4gPiA+ ID4gICBSZWRmaXNoUGtnL2xpYnJhcnk6IEVESzIgcG9ydCBvZiBqYW5zc29uIGxpYnJhcnkNCj4g PiA+ID4gICBSZWRmaXNoUGtnOiBBZGQgRURLMiBwb3J0IG9mIGphbnNzb24gbGlicmFyeSB0byBi dWlsZA0KPiA+ID4gPiAgIC5weXRvb2w6IEFkZCByZXF1aXJlZCBzdWJtb2R1bGUgZm9yIEpzb25M aWINCj4gPiA+ID4NCj4gPiA+ID4gIC5naXRtb2R1bGVzICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB8ICAgIDMgKw0KPiA+ID4gPiAgLnB5dG9vbC9DSVNldHRpbmdzLnB5ICAgICAg ICAgICAgICAgICAgICAgICAgIHwgICAgMiArDQo+ID4gPiA+ICBSZWFkTWUucnN0ICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICAxICsNCj4gPiA+ID4gIFJlZGZpc2hQa2cv SW5jbHVkZS9DcnQvYXNzZXJ0LmggICAgICAgICAgICAgICB8ICAgMTYgKw0KPiA+ID4gPiAgUmVk ZmlzaFBrZy9JbmNsdWRlL0NydC9lcnJuby5oICAgICAgICAgICAgICAgIHwgICAxNiArDQo+ID4g PiA+ICBSZWRmaXNoUGtnL0luY2x1ZGUvQ3J0L2xpbWl0cy5oICAgICAgICAgICAgICAgfCAgIDE2 ICsNCj4gPiA+ID4gIFJlZGZpc2hQa2cvSW5jbHVkZS9DcnQvbWF0aC5oICAgICAgICAgICAgICAg ICB8ICAgMTYgKw0KPiA+ID4gPiAgUmVkZmlzaFBrZy9JbmNsdWRlL0NydC9zdGRhcmcuaCAgICAg ICAgICAgICAgIHwgICAxNSArDQo+ID4gPiA+ICBSZWRmaXNoUGtnL0luY2x1ZGUvQ3J0L3N0ZGRl Zi5oICAgICAgICAgICAgICAgfCAgIDE2ICsNCj4gPiA+ID4gIFJlZGZpc2hQa2cvSW5jbHVkZS9D cnQvc3RkaW8uaCAgICAgICAgICAgICAgICB8ICAgMTUgKw0KPiA+ID4gPiAgUmVkZmlzaFBrZy9J bmNsdWRlL0NydC9zdGRsaWIuaCAgICAgICAgICAgICAgIHwgICAxNiArDQo+ID4gPiA+ICBSZWRm aXNoUGtnL0luY2x1ZGUvQ3J0L3N0cmluZy5oICAgICAgICAgICAgICAgfCAgIDE2ICsNCj4gPiA+ ID4gIFJlZGZpc2hQa2cvSW5jbHVkZS9DcnQvc3lzL3RpbWUuaCAgICAgICAgICAgICB8ICAgMTUg Kw0KPiA+ID4gPiAgUmVkZmlzaFBrZy9JbmNsdWRlL0NydC9zeXMvdHlwZXMuaCAgICAgICAgICAg IHwgICAxNSArDQo+ID4gPiA+ICBSZWRmaXNoUGtnL0luY2x1ZGUvQ3J0L3RpbWUuaCAgICAgICAg ICAgICAgICAgfCAgIDE1ICsNCj4gPiA+ID4gIFJlZGZpc2hQa2cvSW5jbHVkZS9MaWJyYXJ5L0Jh c2VVY3MyVXRmOExpYi5oICB8ICAgNjEgKw0KPiA+ID4gPiAgUmVkZmlzaFBrZy9JbmNsdWRlL0xp YnJhcnkvQ3J0TGliLmggICAgICAgICAgIHwgIDE5MSArKysNCj4gPiA+ID4gIFJlZGZpc2hQa2cv SW5jbHVkZS9MaWJyYXJ5L0pzb25MaWIuaCAgICAgICAgICB8ICA3NjMgKysrKysrKysrKysNCj4g PiA+ID4gIC4uLi9MaWJyYXJ5L0Jhc2VVY3MyVXRmOExpYi9CYXNlVWNzMlV0ZjhMaWIuYyB8ICA0 MjEgKysrKysrKw0KPiA+ID4gPiAgLi4uL0Jhc2VVY3MyVXRmOExpYi9CYXNlVWNzMlV0ZjhMaWIu aW5mICAgICAgIHwgICAzMSArDQo+ID4gPiA+ICBSZWRmaXNoUGtnL0xpYnJhcnkvQ3J0TGliL0Ny dExpYi5jICAgICAgICAgICAgfCAgNTk1ICsrKysrKysrKw0KPiA+ID4gPiAgUmVkZmlzaFBrZy9M aWJyYXJ5L0NydExpYi9DcnRMaWIuaW5mICAgICAgICAgIHwgICAzOCArDQo+ID4gPiA+ICBSZWRm aXNoUGtnL0xpYnJhcnkvSnNvbkxpYi9Kc29uTGliLmMgICAgICAgICAgfCAgOTY0ICsrKysrKysr KysrKysrDQo+ID4gPiA+ICBSZWRmaXNoUGtnL0xpYnJhcnkvSnNvbkxpYi9Kc29uTGliLmluZiAg ICAgICAgfCAgIDg5ICsrDQo+ID4gPiA+ICBSZWRmaXNoUGtnL0xpYnJhcnkvSnNvbkxpYi9SZWFk bWUucnN0ICAgICAgICAgfCAgIDQwICsNCj4gPiA+ID4gIFJlZGZpc2hQa2cvTGlicmFyeS9Kc29u TGliL2phbnNzb24gICAgICAgICAgICB8ICAgIDEgKw0KPiA+ID4gPiAgUmVkZmlzaFBrZy9MaWJy YXJ5L0pzb25MaWIvamFuc3Nvbl9jb25maWcuaCAgIHwgICA0MSArDQo+ID4gPiA+ICAuLi4vTGli cmFyeS9Kc29uTGliL2phbnNzb25fcHJpdmF0ZV9jb25maWcuaCAgfCAgIDE5ICsNCj4gPiA+ID4g IFJlZGZpc2hQa2cvTGlicmFyeS9Kc29uTGliL2xvYWQuYyAgICAgICAgICAgICB8IDExMTEgKysr KysrKysrKysrKysrKysNCj4gPiA+ID4gIFJlZGZpc2hQa2cvUmVkZmlzaExpYnMuZHNjLmluYyAg ICAgICAgICAgICAgICB8ICAgIDMgKw0KPiA+ID4gPiAgUmVkZmlzaFBrZy9SZWRmaXNoUGtnLmNp LnlhbWwgICAgICAgICAgICAgICAgIHwgICAyNSArDQo+ID4gPiA+ICBSZWRmaXNoUGtnL1JlZGZp c2hQa2cuZGVjICAgICAgICAgICAgICAgICAgICAgfCAgIDI1ICsNCj4gPiA+ID4gIFJlZGZpc2hQ a2cvUmVkZmlzaFBrZy5kc2MgICAgICAgICAgICAgICAgICAgICB8ICAgIDMgKw0KPiA+ID4gPiAg MzMgZmlsZXMgY2hhbmdlZCwgNDYxNCBpbnNlcnRpb25zKCspICBjcmVhdGUgbW9kZSAxMDA2NDQN Cj4gPiA+ID4gUmVkZmlzaFBrZy9JbmNsdWRlL0NydC9hc3NlcnQuaCAgY3JlYXRlIG1vZGUNCj4g PiA+ID4gMTAwNjQ0IFJlZGZpc2hQa2cvSW5jbHVkZS9DcnQvZXJybm8uaCAgY3JlYXRlIG1vZGUg MTAwNjQ0DQo+ID4gPiA+IFJlZGZpc2hQa2cvSW5jbHVkZS9DcnQvbGltaXRzLmggIGNyZWF0ZSBt b2RlIDEwMDY0NA0KPiA+ID4gPiBSZWRmaXNoUGtnL0luY2x1ZGUvQ3J0L21hdGguaCAgY3JlYXRl IG1vZGUgMTAwNjQ0DQo+ID4gPiA+IFJlZGZpc2hQa2cvSW5jbHVkZS9DcnQvc3RkYXJnLmggIGNy ZWF0ZSBtb2RlIDEwMDY0NA0KPiA+ID4gPiBSZWRmaXNoUGtnL0luY2x1ZGUvQ3J0L3N0ZGRlZi5o ICBjcmVhdGUgbW9kZSAxMDA2NDQNCj4gPiA+ID4gUmVkZmlzaFBrZy9JbmNsdWRlL0NydC9zdGRp by5oICBjcmVhdGUgbW9kZSAxMDA2NDQNCj4gPiA+ID4gUmVkZmlzaFBrZy9JbmNsdWRlL0NydC9z dGRsaWIuaCAgY3JlYXRlIG1vZGUgMTAwNjQ0DQo+ID4gPiA+IFJlZGZpc2hQa2cvSW5jbHVkZS9D cnQvc3RyaW5nLmggIGNyZWF0ZSBtb2RlIDEwMDY0NA0KPiA+ID4gPiBSZWRmaXNoUGtnL0luY2x1 ZGUvQ3J0L3N5cy90aW1lLmggIGNyZWF0ZSBtb2RlIDEwMDY0NA0KPiA+ID4gPiBSZWRmaXNoUGtn L0luY2x1ZGUvQ3J0L3N5cy90eXBlcy5oDQo+ID4gPiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQgUmVk ZmlzaFBrZy9JbmNsdWRlL0NydC90aW1lLmggIGNyZWF0ZSBtb2RlDQo+ID4gPiA+IDEwMDY0NCBS ZWRmaXNoUGtnL0luY2x1ZGUvTGlicmFyeS9CYXNlVWNzMlV0ZjhMaWIuaA0KPiA+ID4gPiAgY3Jl YXRlIG1vZGUgMTAwNjQ0IFJlZGZpc2hQa2cvSW5jbHVkZS9MaWJyYXJ5L0NydExpYi5oDQo+ID4g PiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQgUmVkZmlzaFBrZy9JbmNsdWRlL0xpYnJhcnkvSnNvbkxp Yi5oDQo+ID4gPiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQNCj4gPiA+ID4gUmVkZmlzaFBrZy9MaWJy YXJ5L0Jhc2VVY3MyVXRmOExpYi9CYXNlVWNzMlV0ZjhMaWIuYw0KPiA+ID4gPiAgY3JlYXRlIG1v ZGUgMTAwNjQ0DQo+ID4gPiA+IFJlZGZpc2hQa2cvTGlicmFyeS9CYXNlVWNzMlV0ZjhMaWIvQmFz ZVVjczJVdGY4TGliLmluZg0KPiA+ID4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IFJlZGZpc2hQa2cv TGlicmFyeS9DcnRMaWIvQ3J0TGliLmMNCj4gPiA+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NCBSZWRm aXNoUGtnL0xpYnJhcnkvQ3J0TGliL0NydExpYi5pbmYNCj4gPiA+ID4gIGNyZWF0ZSBtb2RlIDEw MDY0NCBSZWRmaXNoUGtnL0xpYnJhcnkvSnNvbkxpYi9Kc29uTGliLmMNCj4gPiA+ID4gIGNyZWF0 ZSBtb2RlIDEwMDY0NCBSZWRmaXNoUGtnL0xpYnJhcnkvSnNvbkxpYi9Kc29uTGliLmluZg0KPiA+ ID4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IFJlZGZpc2hQa2cvTGlicmFyeS9Kc29uTGliL1JlYWRt ZS5yc3QNCj4gPiA+ID4gIGNyZWF0ZSBtb2RlIDE2MDAwMCBSZWRmaXNoUGtnL0xpYnJhcnkvSnNv bkxpYi9qYW5zc29uDQo+ID4gPiA+ICBjcmVhdGUgbW9kZSAxMDA2NDQgUmVkZmlzaFBrZy9MaWJy YXJ5L0pzb25MaWIvamFuc3Nvbl9jb25maWcuaA0KPiA+ID4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0 DQo+ID4gPiA+IFJlZGZpc2hQa2cvTGlicmFyeS9Kc29uTGliL2phbnNzb25fcHJpdmF0ZV9jb25m aWcuaA0KPiA+ID4gPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IFJlZGZpc2hQa2cvTGlicmFyeS9Kc29u TGliL2xvYWQuYw0KPiA+ID4gPg0KPiA+ID4gPiAtLQ0KPiA+ID4gPiAyLjE3LjENCj4gPg0KDQo=