From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mx0a-002e3701.pphosted.com (mx0a-002e3701.pphosted.com [148.163.147.86]) by mx.groups.io with SMTP id smtpd.web08.3598.1605752103407000856 for ; Wed, 18 Nov 2020 18:15:03 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@hpe.com header.s=pps0720 header.b=mx4kiMoH; spf=pass (domain: hpe.com, ip: 148.163.147.86, mailfrom: prvs=0592d0bc15=abner.chang@hpe.com) Received: from pps.filterd (m0134420.ppops.net [127.0.0.1]) by mx0b-002e3701.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id 0AJ28OqU020413; Thu, 19 Nov 2020 02:15:02 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=nrHr0dSs0qTg+NFYvUOEVGobd+ugWDcNMutLDtOP8mo=; b=mx4kiMoHwEhZ1ByklCH3MgxQMdAhhb9XL1WqMOJelhqFZ1nUCoiZBmkZ2C/sLCMEudse 10WJs/HEdS5rc+QB17DTm3bifk39zCwKa7qGv1ZE4TrgswB+eQfcNJkGraVbyi5blztH Y0H82V1+4GXdHpBC62MmbYh2XVLKxOTMdoBZg8vQiZqhsbVxhJn2nJ9MCCATWAdYCWwL He2dck7g+pA3NT+R5GAJXjfbYsp4eU80r8bL6pZf+hcH6EAqvNqFRIDcceWv+X3RryOs cqQPCpJkfxof19mikd3ZC63JMRpiZN9kbft+YQSOGWwvuSyGZlySkQAShn/kQN6HE3u3 NQ== Received: from g4t3426.houston.hpe.com (g4t3426.houston.hpe.com [15.241.140.75]) by mx0b-002e3701.pphosted.com with ESMTP id 34vqe8anw6-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 19 Nov 2020 02:15:02 +0000 Received: from G1W8106.americas.hpqcorp.net (g1w8106.austin.hp.com [16.193.72.61]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by g4t3426.houston.hpe.com (Postfix) with ESMTPS id 9F6C465; Thu, 19 Nov 2020 02:15:01 +0000 (UTC) Received: from G4W9333.americas.hpqcorp.net (16.208.32.119) by G1W8106.americas.hpqcorp.net (16.193.72.61) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 19 Nov 2020 02:14:48 +0000 Received: from G4W10205.americas.hpqcorp.net (2002:10cf:520f::10cf:520f) by G4W9333.americas.hpqcorp.net (2002:10d0:2077::10d0:2077) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 19 Nov 2020 02:14:48 +0000 Received: from NAM11-BN8-obe.outbound.protection.outlook.com (15.241.52.12) by G4W10205.americas.hpqcorp.net (16.207.82.15) with Microsoft SMTP Server (TLS) id 15.0.1497.2 via Frontend Transport; Thu, 19 Nov 2020 02:14:47 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=k67gxCSMhrFpGgxMfpAGTYZ7A8UAlGrf04wmE/cBK2LMLdsRQR/+R08wM6J1JkFV+VpcdXW3v4FophwvfRBIlh2lHIHxV/rX1nRfHCckb/ZOCy0epVkX1wscRblX3yF8vu+J2le8vNd60lrjS9OsahgmsLqM+BDQnfe3JLfwKt1eSDyc9F350q5X7hL/MVgXv90hcpe5wyrmMYAo1kMkuj0cy3mc3/B9tZSAPlt97pDeSAHUXssQecQC3+gOhNrvTgQ1B8UGsOEvlIHknC8AIZm4tDGU8+00gac5u56X1QfXcmcuNg3Mw3ZuHY4waIIKKAM/X3ABMjt4unmCPJpbIQ== 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=nrHr0dSs0qTg+NFYvUOEVGobd+ugWDcNMutLDtOP8mo=; b=fA8Y+UCv7qteedqRo06L3C7GOezcRe7Y6ZAWPye2JWPa69e0wqMvdPiFKclkkXhUrR3f2s2fzD2/Ak3+uTNXIB9MWwiOvvikcGviopAmhBmN2ZgJJRm4rWPm274KGDvpW4+V0rmUzpWweZfUmmoFk/QshRNAvCIi95NXn+cexYY9xi3zGrrUlqpiUFn6+vg2ELQN962vLAHpFKlGoCbnHlaYdqqb5ieZcqLHisYJWAEcDBXAzgIiXowOqJAnMOzl9cjWPzhADGytAhu+AJJu+obsNYI8lz0hr2m37nTqHQuhpoT7pnMwg+8N/k0KHrl/ir/hHUZ3CDSrlaYc6AY8gQ== 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 CS1PR8401MB1143.NAMPRD84.PROD.OUTLOOK.COM (2a01:111:e400:7513::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3589.22; Thu, 19 Nov 2020 02:14:44 +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.3589.020; Thu, 19 Nov 2020 02:14:43 +0000 From: "Abner Chang" To: Laszlo Ersek , "devel@edk2.groups.io" CC: Maciej Rabeda , Jiaxin Wu , Siyuan Fu , "Wang, Nickle (HPS SW)" , "O'Hanley, Peter (EXL)" Subject: Re: [edk2-devel] [NETWORK_HTTP_ENABLE PATCH 1/1] NetworkPkg: Add NETWORK_HTTP_ENABLE macro Thread-Topic: [edk2-devel] [NETWORK_HTTP_ENABLE PATCH 1/1] NetworkPkg: Add NETWORK_HTTP_ENABLE macro Thread-Index: AQHWuHCorRv4LBC0Pk2+oyqnzqdI7KnKB+YQgAKPzQCAAJSmYIAA+XGAgACb0qA= Date: Thu, 19 Nov 2020 02:14:43 +0000 Message-ID: References: <20201111131927.21323-1-abner.chang@hpe.com> <20201111131927.21323-2-abner.chang@hpe.com> <9357a533-108e-b4c3-6aa8-3f9dcea0846c@redhat.com> <0a6b860d-5e45-20bb-0f44-42c4ac99f178@redhat.com> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: redhat.com; dkim=none (message not signed) header.d=none;redhat.com; dmarc=none action=none header.from=hpe.com; x-originating-ip: [16.242.247.131] x-ms-publictraffictype: Email x-ms-office365-filtering-ht: Tenant x-ms-office365-filtering-correlation-id: db50165b-bce5-4860-a19d-08d88c30e156 x-ms-traffictypediagnostic: CS1PR8401MB1143: 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: QukquPKvEBAtj1l62J1SClS5tQFDEH4bndHqXtLmb33nOZHoA7JpUJ9NF/hfTf6FWxC4xGt9RfEwgqn7JpkSUu+sFLP6oWNfiZ2TfOyihOSF05Iz+sM3S6iVQpQh7eJ4mqA2p6NNdjzWNBmsYfBPmvNjKOlczorhOjnUcoK5bJiygKHXWPTpAWocwtl1jj/xgpVon06gAcelH+nRiZWIKGnN/RlSqa2y9gb5iVDHymaMjWSlTY2PJvItb8I93T3+TUVFrBVwti25AhwM1np+JGD4y4KWvrSlSdNe8LNBXkQqVcoWfk1eE4XPnczntRHCg9fwNAXlLszt6ErNp01bjw== 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:(136003)(396003)(366004)(346002)(39860400002)(376002)(478600001)(2906002)(8936002)(76116006)(64756008)(55016002)(66556008)(66446008)(9686003)(6506007)(8676002)(110136005)(66946007)(54906003)(52536014)(5660300002)(7696005)(316002)(66476007)(71200400001)(186003)(53546011)(4326008)(26005)(83380400001)(33656002)(86362001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: EVKTxtWbdNH90tolevz4strXCkjh3KYrPFRT6mP+6MYizu4+ZUt5AJISLj1d4j/CvUKY4bhhde5vjlti9GbzbJ4QSiBP7e0vApMRhv83b5g/2lRFMdpxHJO1LMBaifwWv9OT4pbDWW/cMdGx5ay9rumAvt4TrA7QX2hMKu8O6k+eviwBcNYPbF1mUhiz9yxvJ5TkzH+t2InpT0JTDbZ1NeKKWsn+qsdUmi/fpBF6v9sxqwAIKIWfp/amm1Gbjw/MI3+sFrwm+GM70tC5mYsz/J9LA9yOvbPtamfL5dF09HfAvh6neG5t5ALzNXI0jmK7SZVOEz1z6PPy+UT+qlXubbxr+mwvtKYneoCqZp/b45Yb//YvXjt0uEtob5N/D9AuDbO8pU6KUuWL5xKURPtTjM5hNJHks9P7ds/dGIGLXC86y/eEuKJLIxkCCF4WuY6JShD6wXo7O4FWnVFbEXf9e9T69VZqSjVGEYl7Bi8H5dqzUTR2DPjCIh7uriSPzc6jpTMnByl8pChPcUgv/DUl3Qr8QjdTX47FFTpuRb8jqtqwg6dlbtZN+EqYYRlg4vAgsN3gPCVlzLSN0tRBr5IGMiBsAg2zm/GHR6MacJ5hCV7Y/K7z6z+HCXhCrs/z+Lb9QthQMOpWmdHmwHFHCicB6Hkk1ijqxq4fjrwMJHZ4L3vZNYcu3x8GFvn6BDIBrKWBFTG6V8uFleKB4McXhfdrjw7+fB22pkA4sEq4ztsoOvo1pu5tVjFTcbay7T617MBBJGS5CVoS7ouLlPg4XancnwY+aAkXLJ1EHEw6SIRybNW2TIfd9tftzmS4TsVaerlPidyV/zScp7Kj2RJXehApnyI/cROlZcVcdz/7j9N7rhGDAAd4hSEN+xwL1qQTJaguRkhVDMvO4CaY1cdGDW4/0w== X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CS1PR8401MB1144.NAMPRD84.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-Network-Message-Id: db50165b-bce5-4860-a19d-08d88c30e156 X-MS-Exchange-CrossTenant-originalarrivaltime: 19 Nov 2020 02:14:43.8785 (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: AZLwj+RNNis0JHj9mDpIX1Kl6g3G1zKzsd7JbBKrd3H/5LiN2J41gMTdAbNOOMaBgtve2dLikadaJ6JZJ2PHmg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CS1PR8401MB1143 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.312,18.0.737 definitions=2020-11-18_10:2020-11-17,2020-11-18 signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 mlxscore=0 mlxlogscore=999 suspectscore=0 impostorscore=0 clxscore=1015 malwarescore=0 spamscore=0 phishscore=0 bulkscore=0 adultscore=0 priorityscore=1501 lowpriorityscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2009150000 definitions=main-2011190013 Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogTGFzemxvIEVyc2VrIFtt YWlsdG86bGVyc2VrQHJlZGhhdC5jb21dDQo+IFNlbnQ6IFRodXJzZGF5LCBOb3ZlbWJlciAxOSwg MjAyMCAxMjo1MyBBTQ0KPiBUbzogQ2hhbmcsIEFibmVyIChIUFMgU1cvRlcgVGVjaG5vbG9naXN0 KSA8YWJuZXIuY2hhbmdAaHBlLmNvbT47DQo+IGRldmVsQGVkazIuZ3JvdXBzLmlvDQo+IENjOiBN YWNpZWogUmFiZWRhIDxtYWNpZWoucmFiZWRhQGxpbnV4LmludGVsLmNvbT47IEppYXhpbiBXdQ0K PiA8amlheGluLnd1QGludGVsLmNvbT47IFNpeXVhbiBGdSA8c2l5dWFuLmZ1QGludGVsLmNvbT47 IFdhbmcsIE5pY2tsZSAoSFBTDQo+IFNXKSA8bmlja2xlLndhbmdAaHBlLmNvbT47IE8nSGFubGV5 LCBQZXRlciAoRVhMKQ0KPiA8cGV0ZXIub2hhbmxleUBocGUuY29tPg0KPiBTdWJqZWN0OiBSZTog W2VkazItZGV2ZWxdIFtORVRXT1JLX0hUVFBfRU5BQkxFIFBBVENIIDEvMV0NCj4gTmV0d29ya1Br ZzogQWRkIE5FVFdPUktfSFRUUF9FTkFCTEUgbWFjcm8NCj4gDQo+IE9uIDExLzE4LzIwIDA0OjE0 LCBDaGFuZywgQWJuZXIgKEhQUyBTVy9GVyBUZWNobm9sb2dpc3QpIHdyb3RlOg0KPiA+IEhpIExh c3psbywNCj4gPg0KPiA+PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KPiA+PiBGcm9tOiBk ZXZlbEBlZGsyLmdyb3Vwcy5pbyBbbWFpbHRvOmRldmVsQGVkazIuZ3JvdXBzLmlvXSBPbiBCZWhh bGYgT2YNCj4gPj4gTGFzemxvIEVyc2VrDQo+ID4+IFNlbnQ6IFdlZG5lc2RheSwgTm92ZW1iZXIg MTgsIDIwMjAgMTowOSBBTQ0KPiA+PiBUbzogQ2hhbmcsIEFibmVyIChIUFMgU1cvRlcgVGVjaG5v bG9naXN0KSA8YWJuZXIuY2hhbmdAaHBlLmNvbT47DQo+ID4+IGRldmVsQGVkazIuZ3JvdXBzLmlv DQo+ID4+IENjOiBNYWNpZWogUmFiZWRhIDxtYWNpZWoucmFiZWRhQGxpbnV4LmludGVsLmNvbT47 IEppYXhpbiBXdQ0KPiA+PiA8amlheGluLnd1QGludGVsLmNvbT47IFNpeXVhbiBGdSA8c2l5dWFu LmZ1QGludGVsLmNvbT47IFdhbmcsIE5pY2tsZQ0KPiA+PiAoSFBTDQo+ID4+IFNXKSA8bmlja2xl LndhbmdAaHBlLmNvbT47IE8nSGFubGV5LCBQZXRlciAoRVhMKQ0KPiA+PiA8cGV0ZXIub2hhbmxl eUBocGUuY29tPg0KPiA+PiBTdWJqZWN0OiBSZTogW2VkazItZGV2ZWxdIFtORVRXT1JLX0hUVFBf RU5BQkxFIFBBVENIIDEvMV0NCj4gPj4gTmV0d29ya1BrZzogQWRkIE5FVFdPUktfSFRUUF9FTkFC TEUgbWFjcm8NCj4gDQo+ID4+IFdoZW4gd2UgaW1wbGVtZW50IGEgbmV3IGZlYXR1cmUgKG9yIGp1 c3QgYSBjaGFuZ2UpIGluIGNvcmUgZWRrMiwgaXQncw0KPiA+PiBiZXN0IHRvIGtlZXAgcGxhdGZv cm1zIChlc3BlY2lhbGx5IG91dC1vZi10cmVlIHBsYXRmb3JtcykgY29tcGxldGVseQ0KPiA+PiB1 bmFmZmVjdGVkLA0KPiA+PiAqaWYqIHRoaXMgaXMgcG9zc2libGUgdG8gZG8gd2l0aG91dCBtYWpv ciBkaWZmaWN1bHRpZXMuDQo+ID4NCj4gPiBJIGdvdCB5b3VyIHBvaW50IG5vdywgTkVUV09SS19I VFRQX0JPT1RfRU5BQkxFIGRlZmF1bHQgc2V0IHRvIEZBTFNFDQo+IG1ha2VzIHNlbnNlLg0KPiAN Cj4gVGhhbmtzLiAoQW5kIEkgdGhpbmsgeW91IG1lYW50IE5FVFdPUktfSFRUUF9FTkFCTEUuKQ0K WWVzDQo+IA0KPiANCj4gPiBZZXMsIGJ1dCBJIHdpbGwgYnJlYWsgZG93biB0aGlzIGxvbmcgY29u ZGl0aW9uIGNoZWNrIGludG8gdHdvIGJsb2NrcyBmb3IgdGhlDQo+IHJlYWRhYmlsaXR5Lg0KPiA+ DQo+ID4gIWlmICgkKE5FVFdPUktfSFRUUF9CT09UX0VOQUJMRSkgPT0gVFJVRSkgT1INCj4gKCQo TkVUV09SS19IVFRQX0VOQUJMRSkgPT0gVFJVRSkNCj4gPiAgICAhaWYgKCgkKE5FVFdPUktfVExT X0VOQUJMRSkgPT0gRkFMU0UpIEFORA0KPiAoJChORVRXT1JLX0FMTE9XX0hUVFBfQ09OTkVDVElP TlMpID09IEZBTFNFKQ0KPiA+ICAgICAgICFlcnJvciAiTXVzdCBlbmFibGUgVExTIHRvIHN1cHBv cnQgSFRUUFMsIG9yIGFsbG93IHVuc2VjdXJlZCBIVFRQDQo+IGNvbm5lY3Rpb24sIGlmIE5FVFdP UktfSFRUUF9CT09UX0VOQUJMRSBvciBORVRXT1JLX0hUVFBfRU5BQkxFDQo+IGlzIHNldCB0byBU UlVFISINCj4gPiAgICAhZW5kaWYNCj4gPiAhZW5kaWYNCj4gDQo+IExvb2tzIGdvb2QhDQo+IA0K PiANCj4gPiBBaCwgeW91ciBwb2ludCBpcyB0aGF04oCZcyBub3QgcmVhc29uYWJsZSB0byBoYXZl IGJvdGgNCj4gTkVUV09SS19UTFNfRU5BQkxFIGFuZCBORVRXT1JLX0FMTE9XX0hUVFBfQ09OTkVD VElPTlMgc2V0IHRvDQo+IEZBTFNFIG9uIGVkazIuDQo+IA0KPiBZZXMuDQo+IA0KPiA+IEJ1dCB0 aGlzIHNlZW1zIHRvIG1lIHRoaXMgc2NlbmFyaW8gZmFsbHMgaW50byB0aGUgY2hhbmdlIGZvciAo NSksDQo+IA0KPiBTdXJlLg0KPiANCj4gPiAhaWYgKCQoTkVUV09SS19IVFRQX0JPT1RfRU5BQkxF KSA9PSBUUlVFKSBPUg0KPiAoJChORVRXT1JLX0hUVFBfRU5BQkxFKSA9PSBUUlVFKQ0KPiA+ICAg ICFpZiAoKCQoTkVUV09SS19UTFNfRU5BQkxFKSA9PSBGQUxTRSkgQU5EDQo+ICgkKE5FVFdPUktf QUxMT1dfSFRUUF9DT05ORUNUSU9OUykgPT0gRkFMU0UpDQo+ID4gICAgICAgIWVycm9yICJNdXN0 IGVuYWJsZSBUTFMgdG8gc3VwcG9ydCBIVFRQUywgb3IgYWxsb3cgdW5zZWN1cmVkIEhUVFANCj4g Y29ubmVjdGlvbiwgaWYgTkVUV09SS19IVFRQX0JPT1RfRU5BQkxFIG9yIE5FVFdPUktfSFRUUF9F TkFCTEUNCj4gaXMgc2V0IHRvIFRSVUUhIg0KPiA+ICAgICFlbmRpZg0KPiA+ICFlbmRpZg0KPiA+ IE9yIHlvdSB3b3VsZCBsaWtlIHRvIGhhdmUgdGhlIGRpZmZlcmVudCBlcnJvciBtZXNzYWdlcz8N Cj4gDQo+IE5vLCB0aGUgYWJvdmUgaXMgZmluZS4NCj4gDQo+ID4gTXkgcG9pbnQgd2FzIHRoZSBt YWNybyB3b3VsZCBiZSBsb29rZWQgYXMgYmVsb3cgYWZ0ZXIgdGhpcyBwYXRjaCwgIWlmDQo+ID4g KCQoTkVUV09SS19IVFRQX0JPT1RfRU5BQkxFKSA9PSBUUlVFKSBPUg0KPiAoJChORVRXT1JLX0hU VFBfRU5BQkxFKSA9PSBUUlVFKQ0KPiA+ICAgICBOZXR3b3JrUGtnL0Ruc0R4ZS9EbnNEeGUuaW5m DQo+ID4gICAgIE5ldHdvcmtQa2cvSHR0cER4ZS9IdHRwRHhlLmluZg0KPiA+ICAgICBOZXR3b3Jr UGtnL0h0dHBVdGlsaXRpZXNEeGUvSHR0cFV0aWxpdGllc0R4ZS5pbmYNCj4gPiAhZW5kaWYNCj4g Pg0KPiA+IFRoZXJlIGNvdWxkIGJlIHRoZSB1c2UgY2FzZSAod2l0aCBORVRXT1JLX0hUVFBfQk9P VF9FTkFCTEUgPSBGQUxTRSkNCj4gdGhhdCB0aGUgaW1wbGVtZW50YXRpb24ganVzdCByZXF1aXJl cyBIdHRwVXRpbGl0aWVzRHhlIHRvIG1hbmlwdWxhdGUgdGhlDQo+IEhUVFAgaGVhZGVycyBidXQg bm90IHJlYWxseSB0cmFuc2ZlcnJpbmcgSFRUUCByZXF1ZXN0L3Jlc3BvbnNlIHRocm91Z2gNCj4g SFRUUCBwcm90b2NvbC4gSFRUUCBwYXlsb2FkcyBtYXkgdHJhbnNmZXJyZWQgb3ZlciB0aGUgaW4t YmFuZCB0cmFuc3BvcnQuDQo+IA0KPiBUaGUgY3VycmVudCBwYXRjaCBpbmNsdWRlcyBIdHRwRHhl IHVuZGVyICJORVRXT1JLX0hUVFBfRU5BQkxFIiwgYW5kDQo+IEh0dHBEeGUgZGVwZW5kcyBvbiBQ Y2RBbGxvd0h0dHBDb25uZWN0aW9ucyAoaW4gdGhlIEVmaUh0dHBSZXF1ZXN0KCkNCj4gZnVuY3Rp b24pLg0KPiANCj4gVGhpcyBtZWFucyB0aGF0IE5FVFdPUktfSFRUUF9FTkFCTEUgaXMgbm90IGlu ZGVwZW5kZW50IG9mDQo+IE5FVFdPUktfQUxMT1dfSFRUUF9DT05ORUNUSU9OUy4NCj4gDQo+ID4g QWJvdmUgY29uZGl0aW9uIGNoZWNrIGJyZWFrcyB0aGlzIHVzZSBjYXNlLiBUaGlzIGFsc28gcmVt aW5kcyBtZSB0aGF0IHRoZQ0KPiBjaGFuZ2UgZm9yICg1KSBhbHNvIGJyZWFrcyB0aGlzIHVzZSBj YXNlLg0KPiA+DQo+ID4gSG93IGFib3V0IHdlIGp1c3QgbGVhdmUgaXQgdW5jaGFuZ2VkIGZvciAo NSksIG9ubHkgaGFuZGxlDQo+IE5FVFdPUktfSFRUUF9CT09UX0VOQUJMRSBjYXNlLiBPciwgd2Ug Y3JlYXRlIGFub3RoZXIgbWFjcm8gZm9yDQo+IE5FVFdPUktfSFRUUF9VVElMSVRZIGJ1dCBpdCBz ZWVtcyB0byBtZSB0b28gbXVjaC4NCj4gPiBIb3dldmVyLCBJIHdvdWxkIGxpa2UgdG8gaGF2ZSBh bm90aGVyIG1hY3JvIGZvcg0KPiBOZXR3b3JrUGtnL0Ruc0R4ZS9EbnNEeGUuaW5mIGJlY2F1c2Ug bm90IGFsbCBvZiBIVFRQIGNvbm5lY3Rpb25zDQo+IHJlcXVpcmVzIEROUy4NCj4gPiBIb3cgZG8g eW91IHRoaW5rPw0KPiANCj4gQSBmZWF0dXJlIHRlc3QgbWFjcm8gc3VjaCBhcyBORVRXT1JLX0hU VFBfQk9PVF9FTkFCTEUgaXMgb25seSB1c2VmdWwgaWYNCj4gaXQgZ3JvdXBzIHRvZ2V0aGVyIHNl dmVyYWwgZHJpdmVycyB0aGF0IGltcGxlbWVudCBhIHBhcnRpY3VsYXIgZmVhdHVyZSBvcg0KPiBm ZWF0dXJlIHNldC4gSW4gb3RoZXIgd29yZHMsIGEgZmVhdHVyZSB0ZXN0IG1hY3JvIGlzIG9ubHkg dXNlZnVsIGlmIGl0IGFsbG93cyBhDQo+IHBsYXRmb3JtIHRvIGlnbm9yZSBzcGVjaWZpYyBOZXR3 b3JrUGtnIGRyaXZlcnMsIGFuZCB0byBhc2sgZm9yIGEgZmVhdHVyZQ0KPiAoc29tZSBoaWdoZXIt bGV2ZWwgZnVuY3Rpb25hbGl0eSkgaW5zdGVhZC4NCj4gDQo+IENvbnZlcnNlbHksIGlmIHdlIGhh dmUgdmFsaWQgcGxhdGZvcm0gdXNlIGNhc2VzIHRoYXQgZGVwZW5kIG9uIGluZGl2aWR1YWwNCj4g ZHJpdmVycyBpbiBpc29sYXRpb24sIHRoZW4gaW50cm9kdWNpbmcgbWFjcm9zIGZvciB0aG9zZSBp bmRpdmlkdWFsIGRyaXZlcnMNCj4gbWFrZXMgbm8gc2Vuc2UuIFRoZXkgZG9uJ3QgYnV5IHBsYXRm b3JtcyBhbnkgc2ltcGxpY2l0eSwgdGhleSBqdXN0DQo+IGNvbXBsaWNhdGUgdGhlIE5ldHdvcmtQ a2cgY29yZS4gU28gaW4gc3VjaCBhIGNhc2UsIHBsYXRmb3JtcyBzaG91bGQgaW5jbHVkZQ0KPiB0 aGUgZHJpdmVycyB0aGV5IGRlc2lyZSBvbmUgYnkgb25lLg0KPiANCj4gSWYgYSBwbGF0Zm9ybXMg d2FudHMgSFRUUCBoZWFkZXIgbWFuaXB1bGF0aW9uIGFuZCBub3RoaW5nIGVsc2UgKG5vIFRMUywg bm8NCj4gSFRUUChTKSByZXF1ZXN0cywgbm8gRE5TIGxvb2t1cHMpLCB0aGVuIHRoZSBwbGF0Zm9y bSBzaG91bGQgaW5jbHVkZQ0KPiBIdHRwVXRpbGl0aWVzRHhlIGV4cGxpY2l0bHksIGFuZCBiZSBk b25lIHdpdGggaXQuIFRoYXQncyB3aHkgdGhlIGRyaXZlcg0KPiAqZXhpc3RzKiBhcyBhIHNlcGFy YXRlIGVudGl0eSBpbiB0aGUgZmlyc3QgcGxhY2UuDQo+IA0KPiBJZiB5b3Ugd2FudCB0byBhY2Nv bW1vZGF0ZSB1c2UgY2FzZXMgZm9yIFJFU1Qgd2hlcmUgYSBwbGF0Zm9ybSBtYXkgb3INCj4gbWF5 IG5vdCBuZWVkIERuc0R4ZSwgcGx1cyAoaW5kZXBlbmRlbnRseSkgdGhlIHBsYXRmb3JtIG1heSBv ciBtYXkgbm90DQo+IG5lZWQgSHR0cER4ZSwgYW5kIHRoZSBvbmx5IHRoaW5nIHRoZSBwbGF0Zm9y bSBjZXJ0YWlubHkgbmVlZHMgaXMNCj4gSHR0cFV0aWxpdGllc0R4ZSwgdGhlbiBJIHByb3Bvc2Ug Km5vdCogaW50cm9kdWNpbmcgYW55IG5ldyBmZWF0dXJlIHRlc3QNCj4gbWFjcm9zLiBJZiB3ZSBm b3Jlc2VlIHBsYXRmb3JtcyBkZWNpZGluZyB3aXRoICp0aGlzIGdyYW51bGFyaXR5KiBhYm91dCB0 aGUNCj4gUkVTVC1yZWxhdGVkIHN1Yi1mZWF0dXJlcywgdGhlbiB0aG9zIHBsYXRmb3JtcyBzaG91 bGQganVzdCBpbmNsdWRlIHRoZQ0KPiBhcHByb3ByaWF0ZSBkcml2ZXJzIGZyb20gTmV0d29ya1Br ZyBieSBuYW1lLg0KPiANCj4gVGhhdCdzIG15IG9waW5pb24gYW55d2F5IC0tIHRoZSBOZXR3b3Jr UGtnIG1haW50YWluZXJzIGhhdmUgbm90DQo+IGNvbW1lbnRlZCB5ZXQgKEFGQUlDUykuDQpZZXMu IGp1c3Qga2VlcCBpdCBzaW1wbGUgZm9yIE5ldHdvcmsgc3RhY2suDQoNCj4gDQo+IFRoYW5rcywN Cj4gTGFzemxvDQoNCg==