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.web10.3850.1605754132143026326 for ; Wed, 18 Nov 2020 18:48:52 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@hpe.com header.s=pps0720 header.b=PwyShDL0; spf=pass (domain: hpe.com, ip: 148.163.143.35, mailfrom: prvs=0592d0bc15=abner.chang@hpe.com) Received: from pps.filterd (m0134425.ppops.net [127.0.0.1]) by mx0b-002e3701.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id 0AJ2i1CN000588; Thu, 19 Nov 2020 02:48:51 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=ZuyZgJbpc97GgSQHhlJOVmCfu5H1NVmajn7J+a/umm4=; b=PwyShDL0KpESWULDWG/AkAyUBHZ6x5u56T/HJLLeUBeZzyx/tV8Ahj9SSGpN3RnHEs3U DLOJTDTc0Yy7QFwCjEUFHeFaxMEI295Fh/0tT/odt4C32FdPXMfPJdxZ6i2+dAiWyGVV 0fHQg3B/zb0LEfc4z2RUH37dLXzMmoBbrRsYu9JnQcEvlXjymQkEjdlA3d616OQJdEZ9 FX3xgBdioWD5DQf3tWggSjRm2pQHhl3rLxQf/l5qBfwggqgfcGLeMxbke19YICfiTYdV nvT3u/HnfC0Tn1PVwiR7QyyJx5aQZv5L1WI5zfzGzlVqxNdiT1iRCq1rXIiz8iLoURW2 ZQ== Received: from g9t5009.houston.hpe.com (g9t5009.houston.hpe.com [15.241.48.73]) by mx0b-002e3701.pphosted.com with ESMTP id 34vjdkwv2x-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 19 Nov 2020 02:48:51 +0000 Received: from G2W6311.americas.hpqcorp.net (g2w6311.austin.hp.com [16.197.64.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by g9t5009.houston.hpe.com (Postfix) with ESMTPS id AB3F251; Thu, 19 Nov 2020 02:48:50 +0000 (UTC) Received: from G9W8670.americas.hpqcorp.net (16.220.49.29) by G2W6311.americas.hpqcorp.net (16.197.64.53) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 19 Nov 2020 02:48:48 +0000 Received: from G9W9210.americas.hpqcorp.net (2002:10dc:429b::10dc:429b) by G9W8670.americas.hpqcorp.net (2002:10dc:311d::10dc:311d) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 19 Nov 2020 02:48:47 +0000 Received: from NAM04-DM6-obe.outbound.protection.outlook.com (15.241.52.12) by G9W9210.americas.hpqcorp.net (16.220.66.155) with Microsoft SMTP Server (TLS) id 15.0.1497.2 via Frontend Transport; Thu, 19 Nov 2020 02:48:47 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=G5+3O9nc2Op1CJRJZh2FhTTEjR79oChBEwpRm70tJQJLpLiB5p62EWPYiOIfhdW2DCTZjaVOwV3v+gkMMxFcWNKOeW1LW8tgJFEA5E1UeAGPIHVMVhWb4Ngnn82RFjhifHGuPW6tjVKCi20Qj3/oegJdIQ43KJy4D4Kg19weZBncSbgCxJvmvyqOH6/k2njasq3wWJOIJFR8cGAzwUIm99I8KGQF8/siaFtAvDTmZRCH3/3RBxVp/yx4Yij/muWqWSYqksTEjSFj7cYiTfDqSTq1scA8xXoqX6wdSjbsN+JzSaloSfWOJNIgbqx8DXkK34xH88GdJ1NwuqyQjXyNgA== 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=LBsPjjMuDWP4qTEbLStDG5dOsq3aP28NvIN3yOeHNWg=; b=ASdij3N+BEnIFRWRUHoyOAGHkiSTX9C5arf9aW6sIIi8Zca7mkodYUqXuN3JM6ZHGvV2XkPYJCcuUiZg6s4zVkBaKNB/avcPXtV0JNNQIuhLjBpS6NvX+grx8Ic1jRhsECAIxf55J09BJ2Qb7Nz0PQAvcyVl0bV9rgoSTy4Jfz7dDoUfOITDolk5rzza4B/JjioQSMAu+eBi190QWlciodvlNOeO9qsC4SpSlyxIZ6ZR+dBB1ED2FnxDNyaIE+OiQZ729KvuGvzLbEqd9BExjfgHg5GO+nruQiKD96UWcu4PTN5+H6qdJzGU0DZEywjiv3h23OqsSWfLa9EAwj3/zg== 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 CS1PR8401MB0405.NAMPRD84.PROD.OUTLOOK.COM (2a01:111:e400:7513::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3564.28; Thu, 19 Nov 2020 02:48:46 +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:48:46 +0000 From: "Abner Chang" To: "devel@edk2.groups.io" , "maciej.rabeda@linux.intel.com" , Laszlo Ersek CC: 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+XGAgAAE9ICAAJfecA== Date: Thu, 19 Nov 2020 02:48:45 +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> <3b18ba66-3f0a-b6ba-b01f-4230d302b0c9@linux.intel.com> In-Reply-To: <3b18ba66-3f0a-b6ba-b01f-4230d302b0c9@linux.intel.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: edk2.groups.io; dkim=none (message not signed) header.d=none;edk2.groups.io; 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: 731270e6-a45c-4169-1466-08d88c35a284 x-ms-traffictypediagnostic: CS1PR8401MB0405: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:2331; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: Uu91kbX2PR3+2I5Pqz0D0Hl4ZW42bkNcYO671QTLURatV+rh8nZ1sErMUFqp9GATdyeENd2/mnuxz0mo95aGHSug87K4iUk22UIwMju1Fy55NZYLZYdWE3Y19yKoZZsS0jfxve8VfI3TbsuHQmR+cZLL6cH1zm3DucrFBD910Plnaf7+sf9hNfZB1QHLJccnCsc9gtaUXb6okGc6AOiFQXa0kqfEGeKbWoQ2xMT6bOJZzKgc5uQ6V9MA/qbcERd5BRQrEcbvxCC1L4w8zHyEHlrXj18rH5UTs0PpxmXox/pN5L6qgTI/U3p28cxonhHS3WZ1jKEyletXq7eQZcYfExde35Bb02gATS9xZ0YPf/l2iC+Ej4hv0HSpgAXRFvkMXD0FdsP+BiwEl1dN2uKTEw== 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)(39860400002)(346002)(376002)(366004)(396003)(66446008)(66476007)(7696005)(186003)(64756008)(26005)(83380400001)(110136005)(54906003)(8676002)(66556008)(86362001)(6506007)(8936002)(53546011)(478600001)(76116006)(52536014)(66946007)(55016002)(33656002)(5660300002)(19627235002)(966005)(9686003)(4326008)(2906002)(71200400001)(316002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: qpFbgWnYpNjkbvOB2Ik32QbiH54zjvKguCZQa+AhYijxu8QcodgENK05SPNinMHWzEEH7/jyc5g2LaI/giM+aBVtDuV3XI6Oz+5ufcYNFWBjPXo42fUcKPigWbVPXnIEdJAORq3RgbvPCsakdEc9Oys/Pz51MMGlHA60c6OLlR13Y7Vsah8oyDP0Y4cYIu4pcfzUp8kxfCl7kAjAFb4NCgKQQxveyLmtWfpuHquAVwSgbYktDFLnMjTvvPbg2Hu7MZkk4zyNGMI8Lin3lWLmFXgx9fWaDOIrtyXL114KWTnvf/HfWRXeK3bnbVtDTLpqBv3pyW3eLPj34YwoHXbQMSwMARnDD9v4gFDbRZd4E4qwlx+/S1svEKZs8IoFmeck7XCSDi72PB81gdqK3quw/+ikth7hRCcnS9sQpD9s7c84gBaDrtjOQcoqCDqt1/jDvZDuY+p1YjFcUE7ZcWeBO+u6hk/CCYiBXu4qgvLjC7AAXYe+sfDuglRz9kYsvJ+YAANyuGpM2Bi6m1B1ZtGoVh4JAkHfGwMojoh/5MZDsotzyXkzO6ZJfjNUNgKesFcI6xsiVqVbeoilxL+6MRNca88MIWRtY6+T69zsfwEqhJqDZgI+tGl5h8jBPQo4+szaVqHdgQDSz9D12Vl5ipSWcBxf8I1DUn/6huE+MXL5KjGaKn2FOCxq8NM54Svn4QaHY53l0i5QKu+YjbRH1ke5t12WLGsys8yT1qKOlilR0GT4exh7dpy4UiHmVmA/KP4udsPZoaOzXw7k5LLzm8JwGXqsLhsKENLyCgqmp648gQmG58cGSDIYFMOyq1L02JT7C6ZTTJSs/cmabXprC8cr6cQNV+2fP+8dzfFmNmn4uwuwPjP4sPKbJ0+wBzZ/txsc6Dwcl2LLE6jsxVNs5ouqUQ== X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CS1PR8401MB1144.NAMPRD84.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-Network-Message-Id: 731270e6-a45c-4169-1466-08d88c35a284 X-MS-Exchange-CrossTenant-originalarrivaltime: 19 Nov 2020 02:48:45.9495 (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: v0+jgu388J0GuW1rtyh7PFLm7prBnPJRZ45IapW+nZlJpbH2LtZ/yxfJPbsQsm86iSyY4b1SPAXV1TSpq1Vy6w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CS1PR8401MB0405 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 phishscore=0 priorityscore=1501 lowpriorityscore=0 clxscore=1015 adultscore=0 mlxlogscore=999 mlxscore=0 bulkscore=0 suspectscore=0 spamscore=0 impostorscore=0 malwarescore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2009150000 definitions=main-2011190018 Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 DQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogZGV2ZWxAZWRrMi5ncm91 cHMuaW8gW21haWx0bzpkZXZlbEBlZGsyLmdyb3Vwcy5pb10gT24gQmVoYWxmIE9mDQo+IE1hY2ll aiBSYWJlZGENCj4gU2VudDogVGh1cnNkYXksIE5vdmVtYmVyIDE5LCAyMDIwIDE6MTEgQU0NCj4g VG86IExhc3psbyBFcnNlayA8bGVyc2VrQHJlZGhhdC5jb20+OyBDaGFuZywgQWJuZXIgKEhQUyBT Vy9GVw0KPiBUZWNobm9sb2dpc3QpIDxhYm5lci5jaGFuZ0BocGUuY29tPjsgZGV2ZWxAZWRrMi5n cm91cHMuaW8NCj4gQ2M6IEppYXhpbiBXdSA8amlheGluLnd1QGludGVsLmNvbT47IFNpeXVhbiBG dSA8c2l5dWFuLmZ1QGludGVsLmNvbT47DQo+IFdhbmcsIE5pY2tsZSAoSFBTIFNXKSA8bmlja2xl LndhbmdAaHBlLmNvbT47IE8nSGFubGV5LCBQZXRlciAoRVhMKQ0KPiA8cGV0ZXIub2hhbmxleUBo cGUuY29tPg0KPiBTdWJqZWN0OiBSZTogW2VkazItZGV2ZWxdIFtORVRXT1JLX0hUVFBfRU5BQkxF IFBBVENIIDEvMV0NCj4gTmV0d29ya1BrZzogQWRkIE5FVFdPUktfSFRUUF9FTkFCTEUgbWFjcm8N Cj4gDQo+IEBMYXN6bG8NCj4gQUZBSUNTLCB5b3UgYXJlIGRvaW5nIGp1c3QgZmluZSB3aXRoIHRo ZSByZXZpZXdzLCBzaG91bGQgSSBmb3JtYWxpemUgaXQ/IDopIEkNCj4gaGF2ZSBzZW50IG9uZSBy ZXNwb25zZSB3aGVyZSBJIGhhdmUgc2lnbmVkIHVwIHVuZGVyIHlvdXIgcG9pbnRzIGFuZA0KPiBl bXBoYXNpemVkIHRoZSBwcm9ibGVtIHdpdGggcGF0Y2ggc3ViamVjdCBwcmVmaXguDQo+IA0KPiBA QWJuZXINCj4gMS4gQ29uZGl0aW9uIGJyZWFrZG93biAtIEkgYW0gYWxsIGZvciBpdCwgaXQgbG9v a3MgZ29vZC4NCj4gMi4gR3JhbnVsYXJpdHkgLSBXZSBhcmUgc2ltcGx5IGVuYWJsaW5nIEhUVFAg bGF5ZXIgZm9yIFJlZGZpc2ggdXNlIGNhc2Ugc28gaXQNCj4gc2VlbXMgcmVhc29uYWJsZSB0byBo YXZlIGEgc2VwYXJhdGUgZmxhZyB0byBlbmFibGUganVzdCB0aGF0LCB3aXRob3V0IGJvb3QNCj4g ZHJpdmVycy4NCj4gSSBhbSBhZ2FpbnN0IHJlbW92aW5nIE5FVFdPUktfSFRUUF9CT09UX0VOQUJM RSBkdWUgdG8gdW5uZWNlc3NhcnkNCj4gaW1wYWN0IHRvIG90aGVyIHBhY2thZ2VzLg0KTm8sIHdl IHdvbid0IHJlbW92ZSBORVRXT1JLX0hUVFBfQk9PVF9FTkFCTEUuDQo+IA0KPiBBd2FpdGluZyB2 Mi4NClRoYW5rcywgdjMgaXMgc2VudCAodjIgaGFzIHRoZSBkaWZmZXJlbnQgc3ViamVjdCB3aGlj aCBvbmx5IGhhcyAiUEFUQ0giIGluIHRoZSBwcmVmaXgpLg0KDQpBYm5lcg0KDQo+IA0KPiBUaGFu a3MsDQo+IE1hY2llag0KPiANCj4gT24gMTgtTm92LTIwIDE3OjUzLCBMYXN6bG8gRXJzZWsgd3Jv dGU6DQo+ID4gT24gMTEvMTgvMjAgMDQ6MTQsIENoYW5nLCBBYm5lciAoSFBTIFNXL0ZXIFRlY2hu b2xvZ2lzdCkgd3JvdGU6DQo+ID4+IEhpIExhc3psbywNCj4gPj4NCj4gPj4+IC0tLS0tT3JpZ2lu YWwgTWVzc2FnZS0tLS0tDQo+ID4+PiBGcm9tOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbyBbbWFpbHRv OmRldmVsQGVkazIuZ3JvdXBzLmlvXSBPbiBCZWhhbGYNCj4gPj4+IE9mIExhc3psbyBFcnNlaw0K PiA+Pj4gU2VudDogV2VkbmVzZGF5LCBOb3ZlbWJlciAxOCwgMjAyMCAxOjA5IEFNDQo+ID4+PiBU bzogQ2hhbmcsIEFibmVyIChIUFMgU1cvRlcgVGVjaG5vbG9naXN0KSA8YWJuZXIuY2hhbmdAaHBl LmNvbT47DQo+ID4+PiBkZXZlbEBlZGsyLmdyb3Vwcy5pbw0KPiA+Pj4gQ2M6IE1hY2llaiBSYWJl ZGEgPG1hY2llai5yYWJlZGFAbGludXguaW50ZWwuY29tPjsgSmlheGluIFd1DQo+ID4+PiA8amlh eGluLnd1QGludGVsLmNvbT47IFNpeXVhbiBGdSA8c2l5dWFuLmZ1QGludGVsLmNvbT47IFdhbmcs IE5pY2tsZQ0KPiA+Pj4gKEhQUw0KPiA+Pj4gU1cpIDxuaWNrbGUud2FuZ0BocGUuY29tPjsgTydI YW5sZXksIFBldGVyIChFWEwpDQo+ID4+PiA8cGV0ZXIub2hhbmxleUBocGUuY29tPg0KPiA+Pj4g U3ViamVjdDogUmU6IFtlZGsyLWRldmVsXSBbTkVUV09SS19IVFRQX0VOQUJMRSBQQVRDSCAxLzFd DQo+ID4+PiBOZXR3b3JrUGtnOiBBZGQgTkVUV09SS19IVFRQX0VOQUJMRSBtYWNybyBXaGVuIHdl IGltcGxlbWVudA0KPiBhIG5ldw0KPiA+Pj4gZmVhdHVyZSAob3IganVzdCBhIGNoYW5nZSkgaW4g Y29yZSBlZGsyLCBpdCdzIGJlc3QgdG8ga2VlcCBwbGF0Zm9ybXMNCj4gPj4+IChlc3BlY2lhbGx5 IG91dC1vZi10cmVlIHBsYXRmb3JtcykgY29tcGxldGVseSB1bmFmZmVjdGVkLA0KPiA+Pj4gKmlm KiB0aGlzIGlzIHBvc3NpYmxlIHRvIGRvIHdpdGhvdXQgbWFqb3IgZGlmZmljdWx0aWVzLg0KPiA+ PiBJIGdvdCB5b3VyIHBvaW50IG5vdywgTkVUV09SS19IVFRQX0JPT1RfRU5BQkxFIGRlZmF1bHQg c2V0IHRvDQo+IEZBTFNFIG1ha2VzIHNlbnNlLg0KPiA+IFRoYW5rcy4gKEFuZCBJIHRoaW5rIHlv dSBtZWFudCBORVRXT1JLX0hUVFBfRU5BQkxFLikNCj4gPg0KPiA+DQo+ID4+IFllcywgYnV0IEkg d2lsbCBicmVhayBkb3duIHRoaXMgbG9uZyBjb25kaXRpb24gY2hlY2sgaW50byB0d28gYmxvY2tz IGZvciB0aGUNCj4gcmVhZGFiaWxpdHkuDQo+ID4+DQo+ID4+ICFpZiAoJChORVRXT1JLX0hUVFBf Qk9PVF9FTkFCTEUpID09IFRSVUUpIE9SDQo+ICgkKE5FVFdPUktfSFRUUF9FTkFCTEUpID09IFRS VUUpDQo+ID4+ICAgICAhaWYgKCgkKE5FVFdPUktfVExTX0VOQUJMRSkgPT0gRkFMU0UpIEFORA0K PiAoJChORVRXT1JLX0FMTE9XX0hUVFBfQ09OTkVDVElPTlMpID09IEZBTFNFKQ0KPiA+PiAgICAg ICAgIWVycm9yICJNdXN0IGVuYWJsZSBUTFMgdG8gc3VwcG9ydCBIVFRQUywgb3IgYWxsb3cgdW5z ZWN1cmVkIEhUVFANCj4gY29ubmVjdGlvbiwgaWYgTkVUV09SS19IVFRQX0JPT1RfRU5BQkxFIG9y IE5FVFdPUktfSFRUUF9FTkFCTEUNCj4gaXMgc2V0IHRvIFRSVUUhIg0KPiA+PiAgICAgIWVuZGlm DQo+ID4+ICFlbmRpZg0KPiA+IExvb2tzIGdvb2QhDQo+ID4NCj4gPg0KPiA+PiBBaCwgeW91ciBw b2ludCBpcyB0aGF04oCZcyBub3QgcmVhc29uYWJsZSB0byBoYXZlIGJvdGgNCj4gTkVUV09SS19U TFNfRU5BQkxFIGFuZCBORVRXT1JLX0FMTE9XX0hUVFBfQ09OTkVDVElPTlMgc2V0IHRvDQo+IEZB TFNFIG9uIGVkazIuDQo+ID4gWWVzLg0KPiA+DQo+ID4+IEJ1dCB0aGlzIHNlZW1zIHRvIG1lIHRo aXMgc2NlbmFyaW8gZmFsbHMgaW50byB0aGUgY2hhbmdlIGZvciAoNSksDQo+ID4gU3VyZS4NCj4g Pg0KPiA+PiAhaWYgKCQoTkVUV09SS19IVFRQX0JPT1RfRU5BQkxFKSA9PSBUUlVFKSBPUg0KPiAo JChORVRXT1JLX0hUVFBfRU5BQkxFKSA9PSBUUlVFKQ0KPiA+PiAgICAgIWlmICgoJChORVRXT1JL X1RMU19FTkFCTEUpID09IEZBTFNFKSBBTkQNCj4gKCQoTkVUV09SS19BTExPV19IVFRQX0NPTk5F Q1RJT05TKSA9PSBGQUxTRSkNCj4gPj4gICAgICAgICFlcnJvciAiTXVzdCBlbmFibGUgVExTIHRv IHN1cHBvcnQgSFRUUFMsIG9yIGFsbG93IHVuc2VjdXJlZCBIVFRQDQo+IGNvbm5lY3Rpb24sIGlm IE5FVFdPUktfSFRUUF9CT09UX0VOQUJMRSBvciBORVRXT1JLX0hUVFBfRU5BQkxFDQo+IGlzIHNl dCB0byBUUlVFISINCj4gPj4gICAgICFlbmRpZg0KPiA+PiAhZW5kaWYNCj4gPj4gT3IgeW91IHdv dWxkIGxpa2UgdG8gaGF2ZSB0aGUgZGlmZmVyZW50IGVycm9yIG1lc3NhZ2VzPw0KPiA+IE5vLCB0 aGUgYWJvdmUgaXMgZmluZS4NCj4gPg0KPiA+PiBNeSBwb2ludCB3YXMgdGhlIG1hY3JvIHdvdWxk IGJlIGxvb2tlZCBhcyBiZWxvdyBhZnRlciB0aGlzIHBhdGNoLCAhaWYNCj4gPj4gKCQoTkVUV09S S19IVFRQX0JPT1RfRU5BQkxFKSA9PSBUUlVFKSBPUg0KPiAoJChORVRXT1JLX0hUVFBfRU5BQkxF KSA9PSBUUlVFKQ0KPiA+PiAgICAgIE5ldHdvcmtQa2cvRG5zRHhlL0Ruc0R4ZS5pbmYNCj4gPj4g ICAgICBOZXR3b3JrUGtnL0h0dHBEeGUvSHR0cER4ZS5pbmYNCj4gPj4gICAgICBOZXR3b3JrUGtn L0h0dHBVdGlsaXRpZXNEeGUvSHR0cFV0aWxpdGllc0R4ZS5pbmYNCj4gPj4gIWVuZGlmDQo+ID4+ DQo+ID4+IFRoZXJlIGNvdWxkIGJlIHRoZSB1c2UgY2FzZSAod2l0aCBORVRXT1JLX0hUVFBfQk9P VF9FTkFCTEUgPQ0KPiBGQUxTRSkgdGhhdCB0aGUgaW1wbGVtZW50YXRpb24ganVzdCByZXF1aXJl cyBIdHRwVXRpbGl0aWVzRHhlIHRvIG1hbmlwdWxhdGUNCj4gdGhlIEhUVFAgaGVhZGVycyBidXQg bm90IHJlYWxseSB0cmFuc2ZlcnJpbmcgSFRUUCByZXF1ZXN0L3Jlc3BvbnNlIHRocm91Z2gNCj4g SFRUUCBwcm90b2NvbC4gSFRUUCBwYXlsb2FkcyBtYXkgdHJhbnNmZXJyZWQgb3ZlciB0aGUgaW4t YmFuZCB0cmFuc3BvcnQuDQo+ID4gVGhlIGN1cnJlbnQgcGF0Y2ggaW5jbHVkZXMgSHR0cER4ZSB1 bmRlciAiTkVUV09SS19IVFRQX0VOQUJMRSIsIGFuZA0KPiA+IEh0dHBEeGUgZGVwZW5kcyBvbiBQ Y2RBbGxvd0h0dHBDb25uZWN0aW9ucyAoaW4gdGhlIEVmaUh0dHBSZXF1ZXN0KCkNCj4gPiBmdW5j dGlvbikuDQo+ID4NCj4gPiBUaGlzIG1lYW5zIHRoYXQgTkVUV09SS19IVFRQX0VOQUJMRSBpcyBu b3QgaW5kZXBlbmRlbnQgb2YNCj4gPiBORVRXT1JLX0FMTE9XX0hUVFBfQ09OTkVDVElPTlMuDQo+ ID4NCj4gPj4gQWJvdmUgY29uZGl0aW9uIGNoZWNrIGJyZWFrcyB0aGlzIHVzZSBjYXNlLiBUaGlz IGFsc28gcmVtaW5kcyBtZSB0aGF0IHRoZQ0KPiBjaGFuZ2UgZm9yICg1KSBhbHNvIGJyZWFrcyB0 aGlzIHVzZSBjYXNlLg0KPiA+Pg0KPiA+PiBIb3cgYWJvdXQgd2UganVzdCBsZWF2ZSBpdCB1bmNo YW5nZWQgZm9yICg1KSwgb25seSBoYW5kbGUNCj4gTkVUV09SS19IVFRQX0JPT1RfRU5BQkxFIGNh c2UuIE9yLCB3ZSBjcmVhdGUgYW5vdGhlciBtYWNybyBmb3INCj4gTkVUV09SS19IVFRQX1VUSUxJ VFkgYnV0IGl0IHNlZW1zIHRvIG1lIHRvbyBtdWNoLg0KPiA+PiBIb3dldmVyLCBJIHdvdWxkIGxp a2UgdG8gaGF2ZSBhbm90aGVyIG1hY3JvIGZvcg0KPiBOZXR3b3JrUGtnL0Ruc0R4ZS9EbnNEeGUu aW5mIGJlY2F1c2Ugbm90IGFsbCBvZiBIVFRQIGNvbm5lY3Rpb25zDQo+IHJlcXVpcmVzIEROUy4N Cj4gPj4gSG93IGRvIHlvdSB0aGluaz8NCj4gPiBBIGZlYXR1cmUgdGVzdCBtYWNybyBzdWNoIGFz IE5FVFdPUktfSFRUUF9CT09UX0VOQUJMRSBpcyBvbmx5IHVzZWZ1bA0KPiA+IGlmIGl0IGdyb3Vw cyB0b2dldGhlciBzZXZlcmFsIGRyaXZlcnMgdGhhdCBpbXBsZW1lbnQgYSBwYXJ0aWN1bGFyDQo+ ID4gZmVhdHVyZSBvciBmZWF0dXJlIHNldC4gSW4gb3RoZXIgd29yZHMsIGEgZmVhdHVyZSB0ZXN0 IG1hY3JvIGlzIG9ubHkNCj4gPiB1c2VmdWwgaWYgaXQgYWxsb3dzIGEgcGxhdGZvcm0gdG8gaWdu b3JlIHNwZWNpZmljIE5ldHdvcmtQa2cgZHJpdmVycywNCj4gPiBhbmQgdG8gYXNrIGZvciBhIGZl YXR1cmUgKHNvbWUgaGlnaGVyLWxldmVsIGZ1bmN0aW9uYWxpdHkpIGluc3RlYWQuDQo+ID4NCj4g PiBDb252ZXJzZWx5LCBpZiB3ZSBoYXZlIHZhbGlkIHBsYXRmb3JtIHVzZSBjYXNlcyB0aGF0IGRl cGVuZCBvbg0KPiA+IGluZGl2aWR1YWwgZHJpdmVycyBpbiBpc29sYXRpb24sIHRoZW4gaW50cm9k dWNpbmcgbWFjcm9zIGZvciB0aG9zZQ0KPiA+IGluZGl2aWR1YWwgZHJpdmVycyBtYWtlcyBubyBz ZW5zZS4gVGhleSBkb24ndCBidXkgcGxhdGZvcm1zIGFueQ0KPiA+IHNpbXBsaWNpdHksIHRoZXkg anVzdCBjb21wbGljYXRlIHRoZSBOZXR3b3JrUGtnIGNvcmUuIFNvIGluIHN1Y2ggYQ0KPiA+IGNh c2UsIHBsYXRmb3JtcyBzaG91bGQgaW5jbHVkZSB0aGUgZHJpdmVycyB0aGV5IGRlc2lyZSBvbmUg Ynkgb25lLg0KPiA+DQo+ID4gSWYgYSBwbGF0Zm9ybXMgd2FudHMgSFRUUCBoZWFkZXIgbWFuaXB1 bGF0aW9uIGFuZCBub3RoaW5nIGVsc2UgKG5vDQo+ID4gVExTLCBubyBIVFRQKFMpIHJlcXVlc3Rz LCBubyBETlMgbG9va3VwcyksIHRoZW4gdGhlIHBsYXRmb3JtIHNob3VsZA0KPiA+IGluY2x1ZGUg SHR0cFV0aWxpdGllc0R4ZSBleHBsaWNpdGx5LCBhbmQgYmUgZG9uZSB3aXRoIGl0LiBUaGF0J3Mg d2h5DQo+ID4gdGhlIGRyaXZlcg0KPiA+ICpleGlzdHMqIGFzIGEgc2VwYXJhdGUgZW50aXR5IGlu IHRoZSBmaXJzdCBwbGFjZS4NCj4gPg0KPiA+IElmIHlvdSB3YW50IHRvIGFjY29tbW9kYXRlIHVz ZSBjYXNlcyBmb3IgUkVTVCB3aGVyZSBhIHBsYXRmb3JtIG1heSBvcg0KPiA+IG1heSBub3QgbmVl ZCBEbnNEeGUsIHBsdXMgKGluZGVwZW5kZW50bHkpIHRoZSBwbGF0Zm9ybSBtYXkgb3IgbWF5IG5v dA0KPiA+IG5lZWQgSHR0cER4ZSwgYW5kIHRoZSBvbmx5IHRoaW5nIHRoZSBwbGF0Zm9ybSBjZXJ0 YWlubHkgbmVlZHMgaXMNCj4gPiBIdHRwVXRpbGl0aWVzRHhlLCB0aGVuIEkgcHJvcG9zZSAqbm90 KiBpbnRyb2R1Y2luZyBhbnkgbmV3IGZlYXR1cmUNCj4gPiB0ZXN0IG1hY3Jvcy4gSWYgd2UgZm9y ZXNlZSBwbGF0Zm9ybXMgZGVjaWRpbmcgd2l0aCAqdGhpcyBncmFudWxhcml0eSoNCj4gPiBhYm91 dCB0aGUgUkVTVC1yZWxhdGVkIHN1Yi1mZWF0dXJlcywgdGhlbiB0aG9zIHBsYXRmb3JtcyBzaG91 bGQganVzdA0KPiA+IGluY2x1ZGUgdGhlIGFwcHJvcHJpYXRlIGRyaXZlcnMgZnJvbSBOZXR3b3Jr UGtnIGJ5IG5hbWUuDQo+ID4NCj4gPiBUaGF0J3MgbXkgb3BpbmlvbiBhbnl3YXkgLS0gdGhlIE5l dHdvcmtQa2cgbWFpbnRhaW5lcnMgaGF2ZSBub3QNCj4gPiBjb21tZW50ZWQgeWV0IChBRkFJQ1Mp Lg0KPiA+DQo+ID4gVGhhbmtzLA0KPiA+IExhc3psbw0KPiA+DQo+IA0KPiANCj4gDQo+IA0KPiAN Cg0K