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.web11.7035.1592399053501272074 for ; Wed, 17 Jun 2020 06:04:13 -0700 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: hpe.com, ip: 148.163.147.86, mailfrom: prvs=0437836f39=sunnywang@hpe.com) Received: from pps.filterd (m0150242.ppops.net [127.0.0.1]) by mx0a-002e3701.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id 05HCxc7N021548; Wed, 17 Jun 2020 13:04:08 GMT Received: from g2t2354.austin.hpe.com (g2t2354.austin.hpe.com [15.233.44.27]) by mx0a-002e3701.pphosted.com with ESMTP id 31qknmg1ex-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 17 Jun 2020 13:04:06 +0000 Received: from G4W9121.americas.hpqcorp.net (exchangepmrr1.us.hpecorp.net [16.210.21.16]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by g2t2354.austin.hpe.com (Postfix) with ESMTPS id 6FD6A91; Wed, 17 Jun 2020 13:04:05 +0000 (UTC) Received: from G9W8453.americas.hpqcorp.net (2002:10d8:a0d3::10d8:a0d3) by G4W9121.americas.hpqcorp.net (2002:10d2:1510::10d2:1510) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Wed, 17 Jun 2020 13:04:05 +0000 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (15.241.52.11) by G9W8453.americas.hpqcorp.net (16.216.160.211) with Microsoft SMTP Server (TLS) id 15.0.1497.2 via Frontend Transport; Wed, 17 Jun 2020 13:04:05 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=BG//jbWCOJcxqF5OAoeiH9zmi0Ygz+z1uhAoAN+osZlTsvXiB/d9P6LO9VRT7HbA4LACaB5ALQhuMVglOlCKvKPB0UeYu7Qpy+Zutsn7xjYE4qmMN4b7zl9u8Ybml8yHaCeL/FOmNQ5ew/1hMyPKUgyczG9tz2HOnzXmd+LWrqegm+epQaIZBbTHlgytrVN0qDM3uY1XYhII/qMkeOYWK0B0OFpuFaJb6vzWWy0CmheJWY8KszkXjbTGPV5/Ui87t4VbO3Oc9M+KQfJ6FPB4VAZKuAEvWhT/vVQwpMa9W1mayKCV/1MddtNyT9XhFtHNudNBj7ucwJqHRhQgcCQj+g== 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=+9GPtc5hedrIGFT4GjmO8ISsW2iPG6EXnysFhpJ43CM=; b=XoM3q6wGMjiVshG+RESJw+aS9HP1qp3cDJZKV60YWdeOAg6mls1jVGJN8L1/jn93rz39fEADfm+nRfoB2Rlmo9ijpk0kZJimGZ8EzwiZef61VUyMP6ZLFwUvL7ul094Y5EZ+++FJfcicxYGapInTUWww6gLjaVT/LXxI+cStnAO7lWiWsAWI0U8goUOrlkz3ncJuog/9OAhvSlr8rHAb2G4L7TbHG2scjty75bbC28xtuM9bxUnJbrE+uaWy6ah8BTicD6CqwwGfTmTBq2JI11yUEJqTLxG0N0K7vRI5dvJ5dinT0WyPH8loT1ivr03FDMzsf43uVHjmfsaho6vgDA== 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 DF4PR8401MB0585.NAMPRD84.PROD.OUTLOOK.COM (2a01:111:e400:7609::21) by DF4PR8401MB0969.NAMPRD84.PROD.OUTLOOK.COM (2a01:111:e400:760f::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3109.21; Wed, 17 Jun 2020 13:04:03 +0000 Received: from DF4PR8401MB0585.NAMPRD84.PROD.OUTLOOK.COM ([fe80::69d6:52d6:4ce6:c317]) by DF4PR8401MB0585.NAMPRD84.PROD.OUTLOOK.COM ([fe80::69d6:52d6:4ce6:c317%7]) with mapi id 15.20.3088.029; Wed, 17 Jun 2020 13:04:02 +0000 From: "Wang, Sunny (HPS SW)" To: Pete Batard , "devel@edk2.groups.io" CC: "zhichao.gao@intel.com" , "ray.ni@intel.com" , "ard.biesheuvel@arm.com" , "leif@nuviainc.com" , "Wang, Sunny (HPS SW)" Subject: Re: [edk2-devel] [edk2][PATCH 1/1] MdeModulePkg/UefiBootManagerLib: Signal ReadyToBoot on platform recovery Thread-Topic: [edk2-devel] [edk2][PATCH 1/1] MdeModulePkg/UefiBootManagerLib: Signal ReadyToBoot on platform recovery Thread-Index: AQHWQ8SRyuuzMtsGq0a7PmrvMf1PKajcZk7QgAA+3wCAAAydEA== Date: Wed, 17 Jun 2020 13:04:02 +0000 Message-ID: References: <20200616095622.2820-1-pete@akeo.ie> <20200616095622.2820-2-pete@akeo.ie> <99904809-1e07-6bd8-f7ba-25e87b1fe543@akeo.ie> In-Reply-To: <99904809-1e07-6bd8-f7ba-25e87b1fe543@akeo.ie> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: akeo.ie; dkim=none (message not signed) header.d=none;akeo.ie; dmarc=none action=none header.from=hpe.com; x-originating-ip: [220.129.195.89] x-ms-publictraffictype: Email x-ms-office365-filtering-ht: Tenant x-ms-office365-filtering-correlation-id: 665e1c33-8066-4cb3-ace7-08d812bee8ad x-ms-traffictypediagnostic: DF4PR8401MB0969: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8273; x-forefront-prvs: 04371797A5 x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: p+PY3dM2NQfho2NcOZOK/s0YUD3r8njlu3dkSgJhgTAfiX4Xs4xnxr65JyrjmYNexC8tbAo7xWxPKJxcOsG7IS+kUW4a6fTpDp/RUtIwR2Lm0RjVA/nV7cX40ioxCeioJ+zMjGeHrT5FhzVb5u6Zfc/FZ6XsKHb+ouqaDLRtf9OumCVazeaO4nnZHyI5OQknl+zOsm4wmAhdHiQL7XM0h0vvSkyPnF3eni4k7P5CBUbsce9mK08HrtWzWhN+gAsD0Yp8+psB2pRUoVqpVFG3XTg7BRdU+C2L8120vfJio2QmxxmB8Q9YOjvZYB/b0WzlOOs5MhZZjYhbyL9MbYcwQZ65x7U074sTMjp11bBhCEzgFJ/aaTevwR+03DAkI0UPNg2NNJ4T1IZwB0cH3+Z3+g== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DF4PR8401MB0585.NAMPRD84.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFTY:;SFS:(6029001)(396003)(366004)(346002)(39860400002)(376002)(136003)(7696005)(6506007)(53546011)(30864003)(966005)(2906002)(8676002)(316002)(54906003)(26005)(110136005)(186003)(4326008)(5660300002)(71200400001)(8936002)(64756008)(66476007)(66556008)(55016002)(76116006)(478600001)(33656002)(66946007)(52536014)(66446008)(19627235002)(9686003)(86362001)(83380400001);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: Rm2wAE8RIe1vKN8c5BHBYaghdVTutDc4lulRij9E5sTIncpm5d7v2RFISJ+WrjvnH/54UDFHPLrplC5hzRvoz/fZycBZk+McWmGGMSIqPqbaRne697Mi6tH7tavowfP+sZwCjJBpBTYqFCnzJNaMBHlC1LBL98mXgJepFOzalm5bhzWWSpMXgwjcb65+QhTNNhSpT/1pCA5ZW9Mht/686Il/WJfvvHtxnvjuF1JdQvKj4zpNm9PmBx9PhnHC9nxdj2ORLBvHAtdirSDI0BmWOSrxoULd4X9ymg2MY+cJ6GgG7EXbfBr1ANBlpr0bmWdPD2hSR9GfXslkpzU5Y2LNZ3UU6vD2YEIvFOeW775GJEClLSj3bz8J929K+I8Jbt4A74/xkTp9XAQmpIPXVE6e6TuXtRAYzWCW9X1/DDWXyRZNlmyPs9q+oAQUWWh3nWU9qCGJtyYXv1dvgOZV9u8NnN3qDR+7j3A4O9cFRqOLor4FvJIc10kr26OdR4HXtIo8 X-MS-Exchange-CrossTenant-Network-Message-Id: 665e1c33-8066-4cb3-ace7-08d812bee8ad X-MS-Exchange-CrossTenant-originalarrivaltime: 17 Jun 2020 13:04:02.8578 (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: G3LWdhmfjQSPVEHWQOGycsZ5BdnmL3qqFulwJVHd+h/AqrXo2e+SnY+yfIAogUOwSBpKUUoW/g4HS4jN7lcj/Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DF4PR8401MB0969 X-OriginatorOrg: hpe.com X-Proofpoint-UnRewURL: 2 URL's were un-rewritten MIME-Version: 1.0 X-HPE-SCL: -1 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.216,18.0.687 definitions=2020-06-17_03:2020-06-17,2020-06-17 signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 phishscore=0 impostorscore=0 cotscore=-2147483648 malwarescore=0 priorityscore=1501 adultscore=0 mlxlogscore=999 clxscore=1015 bulkscore=0 mlxscore=0 suspectscore=0 spamscore=0 lowpriorityscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2004280000 definitions=main-2006170100 Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 VGhhbmtzIGZvciBjaGVja2luZyBteSBjb21tZW50cywgUGV0ZS4gDQoNCj4gT3IgaXMgdGhlICJv bmUgbW9yZSIgdGhlIGlzc3VlLCBtZWFuaW5nIHRoYXQgaXQgd291bGQgZ2V0IHNpZ25hbGVkIG1v cmUgdGhhbiBvbmNlPw0KW1N1bm55XSBZZWFoLCBpdCB3b3VsZCBnZXQgc2lnbmFsZWQgbW9yZSB0 aGFuIG9uY2UgaWYgdGhlIFBsYXRmb3JtUmVjb3Zlcnkgb3B0aW9uIChhIFVFRkkgYXBwbGljYXRp b24pIGNhbGxzIEVmaUJvb3RNYW5hZ2VyQm9vdCgpIHRvIGxhdW5jaCB0aGUgcmVjb3ZlcmVkIGJv b3Qgb3B0aW9uIGluc2lkZSBvZiB0aGUgYXBwbGljYXRpb24uICAgICAgDQoNCj4gSSBkb24ndCBt aW5kIHRyeWluZyBhbiBhbHRlcm5hdGl2ZSBhcHByb2FjaCwgYnV0IEkgZG9uJ3QgdW5kZXJzdGFu ZCBob3cgd2hhdCB5b3UgZGVzY3JpYmUgd291bGQgaGVscC4gQ2FuIHlvdSBwbGVhc2UgYmUgbW9y ZSBzcGVjaWZpYyBhYm91dCB3aGF0IHlvdSBoYXZlIGluIG1pbmQ/DQpbU3VubnldIFN1cmUuIEkg YWRkZWQgbW9yZSBpbmZvcm1hdGlvbiBiZWxvdy4gSWYgaXQgaXMgc3RpbGwgbm90IGNsZWFyIGVu b3VnaCwgZmVlbCBmcmVlIHRvIGxldCBtZSBrbm93Lg0KICAgICAxLiBDcmVhdGUgYSBVRUZJIGFw cGxpY2F0aW9uIHdpdGggdGhlIGNvZGUgdG8gc2lnbmFsIFJlYWR5VG9Cb290IGFuZCBwaWNrIC9l ZmkvYm9vdC9ib290YWE2NC5lZmkgZnJvbSBlaXRoZXIgU0Qgb3IgVVNCIGFuZCBydW4gaXQuDQog ICAgIDIuIFRoZW4sIGNhbGwgRWZpQm9vdE1hbmFnZXJJbml0aWFsaXplTG9hZE9wdGlvbiBsaWtl IHRoZSBmb2xsb3dpbmcgaW4gYSBEWEUgZHJpdmVyIG9yIG90aGVyIHBsYWNlcyBiZWZvcmUgIkRl ZmF1bHQgUGxhdGZvcm1SZWNvdmVyeSIgcmVnaXN0cmF0aW9uOiAgDQogIFN0YXR1cyA9IEVmaUJv b3RNYW5hZ2VySW5pdGlhbGl6ZUxvYWRPcHRpb24gKA0KICAgICAgICAgICAgICZMb2FkT3B0aW9u LA0KICAgICAgICAgICAgIDAsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtPiAwIGlzIHRoZSBPcHRpb25O dW1iZXIgdG8gbGV0IGFwcGxpY2F0aW9uIGJlIGxvYWQgYmVmb3JlICIgRGVmYXVsdCBQbGF0Zm9y bVJlY292ZXJ5IiBvcHRpb24NCiAgICAgICAgICAgICBMb2FkT3B0aW9uVHlwZVBsYXRmb3JtUmVj b3ZlcnksDQogICAgICAgICAgICAgTE9BRF9PUFRJT05fQUNUSVZFLA0KICAgICAgICAgICAgIEwi QXBwbGljYXRpb24gZm9yIHJlY292ZXJpbmcgYm9vdCBvcHRpb25zIiwNCiAgICAgICAgICAgICBG aWxlUGF0aCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgLT4gRmlsZVBhdGggaXMgdGhlIEFwcGxpY2F0aW9uJ3MgZGV2aWNlIHBh dGgsDQogICAgICAgICAgICAgTlVMTCwNCiAgICAgICAgICAgICAwDQogICAgICAgICAgICAgKTsN Cg0KDQo+IE15IHJlYXNvbmluZyBpcyB0aGF0LCBpZiBQbGF0Zm9ybVJlY292ZXJ5IyMjIyBjYW4g ZXhlY3V0ZSBhIHJlZ3VsYXIgYm9vdGxvYWRlciBsaWtlIC9lZmkvYm9vdC9ib290IyMjIy5lZmkg ZnJvbSBpbnN0YWxsYXRpb24gbWVkaWEsIHRoZW4gaXQgc2hvdWxkIGdvIHRocm91Z2ggdGhlIHNh bWUga2luZCBvZiBpbml0aWFsaXphdGlvbiB0aGF0IGhhcHBlbnMgZm9yIGEgcmVndWxhciBib290 IG9wdGlvbiwgYW5kIHRoYXQgc2hvdWxkIGluY2x1ZGUgc2lnbmFsaW5nIHRoZSBSZWFkeVRvQm9v dCBldmVudC4gDQpbU3VubnldIFRoYW5rcyBmb3IgY2xhcmlmeWluZyB0aGlzLCBhbmQgU29ycnkg YWJvdXQgdGhhdCBJIG1pc3NlZCB5b3VyIGNvdmVyIGxldHRlciBmb3IgdGhpcyBwYXRjaC4gIEkg d2FzIGp1c3QgdGhpbmtpbmcgdGhhdCB3ZSBtYXkgbm90IHJlYWxseSBuZWVkIHRvIG1ha2UgdGhp cyBiZWhhdmlvciBjaGFuZ2UgaW4gYm90aCBFREsgSUkgY29kZSBhbmQgVUVGSSBzcGVjaWZpY2F0 aW9uIGZvciBzb2x2aW5nIHRoZSBwcm9ibGVtIHNwZWNpZmljIHRvIHRoZSBjYXNlIHRoYXQgT1Mg aXMgbG9hZGVkIGJ5ICJEZWZhdWx0IFBsYXRmb3JtUmVjb3ZlcnkiIG9wdGlvbiwgYW5kIEknbSBh bHNvIG5vdCBzdXJlIGlmIGl0IGlzIHdvcnRoIG1ha2luZyB0aGlzIGNoYW5nZSB0byBhZmZlY3Qg c29tZSBvZiB0aGUgc3lzdGVtIG9yIEJJT1MgdmVuZG9ycyB3aG8gaGF2ZSBpbXBsZW1lbnRlZCB0 aGVpciBQbGF0Zm9ybVJlY292ZXJ5IG9wdGlvbi4gSWYgdGhlIGFsdGVybmF0aXZlIGFwcHJvYWNo IEkgbWVudGlvbmVkIHdvcmtzIGZvciB5b3UsIEkgdGhpbmsgdGhhdCB3b3VsZCBiZSBhbiBlYXNp ZXIgc29sdXRpb24uDQoNClJlZ2FyZHMsDQpTdW5ueSBXYW5nDQoNCi0tLS0tT3JpZ2luYWwgTWVz c2FnZS0tLS0tDQpGcm9tOiBQZXRlIEJhdGFyZCBbbWFpbHRvOnBldGVAYWtlby5pZV0gDQpTZW50 OiBXZWRuZXNkYXksIEp1bmUgMTcsIDIwMjAgNjo1OSBQTQ0KVG86IFdhbmcsIFN1bm55IChIUFMg U1cpIDxzdW5ueXdhbmdAaHBlLmNvbT47IGRldmVsQGVkazIuZ3JvdXBzLmlvDQpDYzogemhpY2hh by5nYW9AaW50ZWwuY29tOyByYXkubmlAaW50ZWwuY29tOyBhcmQuYmllc2hldXZlbEBhcm0uY29t OyBsZWlmQG51dmlhaW5jLmNvbQ0KU3ViamVjdDogUmU6IFtlZGsyLWRldmVsXSBbZWRrMl1bUEFU Q0ggMS8xXSBNZGVNb2R1bGVQa2cvVWVmaUJvb3RNYW5hZ2VyTGliOiBTaWduYWwgUmVhZHlUb0Jv b3Qgb24gcGxhdGZvcm0gcmVjb3ZlcnkNCg0KSGkgU3VubnksIHRoYW5rcyBmb3IgbG9va2luZyBp bnRvIHRoaXMuDQoNCk9uIDIwMjAuMDYuMTcgMDk6MTYsIFdhbmcsIFN1bm55IChIUFMgU1cpIHdy b3RlOg0KPiBIaSBQZXRlLg0KPiANCj4gU2luY2UgdGhlIEVmaUJvb3RNYW5hZ2VyUHJvY2Vzc0xv YWRPcHRpb24gaXMgY2FsbGVkIGJ5IFByb2Nlc3NMb2FkT3B0aW9ucyBhcyB3ZWxsLCB5b3VyIGNo YW5nZSB3b3VsZCBhbHNvIGNhdXNlIHNvbWUgdW5leHBlY3RlZCBiZWhhdmlvciBsaWtlOg0KPiAx LiBTaWduYWwgb25lIG1vcmUgUmVhZHlUb0Jvb3QgZm9yIHRoZSBQbGF0Zm9ybVJlY292ZXJ5IG9w dGlvbiB3aGljaCBpcyBhbiBhcHBsaWNhdGlvbiB0aGF0IGNhbGxzIEVmaUJvb3RNYW5hZ2VyQm9v dCgpIHRvIGxhdW5jaCBpdHMgcmVjb3ZlcmVkIGJvb3Qgb3B0aW9uLg0KDQpJJ20gbm90IHN1cmUg SSB1bmRlcnN0YW5kIGhvdyB0aGlzIHBhcnQgaXMgdW53YW50ZWQuDQoNClRoZSBwb2ludCBvZiB0 aGlzIHBhdGNoIGlzIHRvIGVuc3VyZSB0aGF0IFJlYWR5VG9Cb290IGlzIHNpZ25hbGxlZCBmb3Ig dGhlIFBsYXRmb3JtUmVjb3Zlcnkgb3B0aW9uLCBzbyBpc24ndCB3aGF0IHlvdSBkZXNjcmliZSBh Ym92ZSBleGFjdGx5IHdoYXQgd2Ugd2FudD8NCg0KT3IgaXMgdGhlICJvbmUgbW9yZSIgdGhlIGlz c3VlLCBtZWFuaW5nIHRoYXQgaXQgd291bGQgZ2V0IHNpZ25hbGxlZCBtb3JlIHRoYW4gb25jZT8N Cg0KDQo+IDIuIFNpZ25hbCBSZWFkeVRvQm9vdCBmb3IgU3lzUHJlcCMjIyMgb3IgRHJpdmVyIyMj IyB0aGF0IGlzIG5vdCByZWFsbHkgYSAiYm9vdCIgb3B0aW9uLg0KDQpZZXMsIEkndmUgYmVlbiB3 b25kZXJpbmcgYWJvdXQgdGhhdCwgYmVjYXVzZSBCZHNFbnRyeS5jJ3MgUHJvY2Vzc0xvYWRPcHRp b25zKCksIHdoaWNoIGNhbGxzIEVmaUJvb3RNYW5hZ2VyUHJvY2Vzc0xvYWRPcHRpb24oKSwNCm1l bnRpb25zIHRoYXQgaXQgd2lsbCBsb2FkIHdpbGwgbG9hZCBhbmQgc3RhcnQgZXZlcnkgRHJpdmVy IyMjIywgU3lzUHJlcCMjIyMgb3IgUGxhdGZvcm1SZWNvdmVyeSMjIyMuIEJ1dCB0aGUgY29tbWVu dCBhYm91dCB0aGUgd2hpbGUoKSBsb29wIGluIEVmaUJvb3RNYW5hZ2VyUHJvY2Vzc0xvYWRPcHRp b24oKSBvbmx5IG1lbnRpb25zIFBsYXRmb3JtUmVjb3ZlcnkjIyMjLg0KDQpJZiBuZWVkZWQsIEkg Z3Vlc3Mgd2UgY291bGQgYW1lbmQgdGhlIHBhdGNoIHRvIGRldGVjdCB0aGUgdHlwZSBvZiBvcHRp b24gYW5kIG9ubHkgc2lnbmFsIFJlYWR5VG9Cb290IGZvciBQbGF0Zm9ybVJlY292ZXJ5IyMjIy4N Cg0KPiBUbyBzb2x2ZSB5b3VyIHByb2JsZW0sIGNyZWF0aW5nIGEgUGxhdGZvcm1SZWNvdmVyeSBv cHRpb24gd2l0aCB0aGUgc21hbGxlc3Qgb3B0aW9uIG51bWJlciBhbmQgdXNpbmcgaXQgaW5zdGVh ZCBvZiBkZWZhdWx0IG9uZSAod2l0aCBzaG9ydC1mb3JtIEZpbGUgUGF0aCBNZWRpYSBEZXZpY2Ug UGF0aCkgbG9va3MgbGlrZSBhIHNpbXBsZXIgc29sdXRpb24uDQoNCkkgZG9uJ3QgbWluZCB0cnlp bmcgYW4gYWx0ZXJuYXRpdmUgYXBwcm9hY2gsIGJ1dCBJIGRvbid0IHVuZGVyc3RhbmQgaG93IHdo YXQgeW91IGRlc2NyaWJlIHdvdWxkIGhlbHAuIENhbiB5b3UgcGxlYXNlIGJlIG1vcmUgc3BlY2lm aWMgYWJvdXQgd2hhdCB5b3UgaGF2ZSBpbiBtaW5kPw0KDQpPdXIgbWFpbiBpc3N1ZSBoZXJlIGlz IHRoYXQgd2UgbXVzdCBoYXZlIFJlYWR5VG9Cb290IHNpZ25hbGxlZCBzbyB0aGF0IHRoZSBSZWFk eVRvQm9vdCgpIGZ1bmN0aW9uIGNhbGxiYWNrIGZyb20gRW1iZWRkZWRQa2cvRHJpdmVycy9Db25z b2xlUHJlZkR4ZSBnZXRzIGV4ZWN1dGVkIGluIG9yZGVyIGZvciB0aGUgYm9vdCBsb2FkZXIgaW52 b2tlZCBmcm9tIFBsYXRmb3JtUmVjb3ZlcnkjIyMjICB0byB1c2UgYSBwcm9wZXJseSBpbml0aWFs aXplZCBncmFwaGljYWwgY29uc29sZS4gU28gSSdtIG5vdCBzdXJlIEkgcXVpdGUgZ2V0IGhvdyBz d2l0Y2hpbmcgZnJvbSBvbmUgUGxhdGZvcm1SZWNvdmVyeSMjIyMgb3B0aW9uIHRvIGFub3RoZXIg d291bGQgaW1wcm92ZSB0aGluZ3MuDQoNCklmIGl0IGhlbHBzLCBoZXJlIGlzIHdoYXQgd2UgY3Vy cmVudGx5IGRlZmF1bHQgdG8sIGluIHRlcm1zIG9mIGJvb3Qgb3B0aW9ucywgb24gYSBSYXNwYmVy cnkgUGkgNCBwbGF0Zm9ybSB3aXRoIGEgbmV3bHkgYnVpbGQgZmlybXdhcmU6DQoNCltCZHNdPT09 PT09PT09PT09PUJlZ2luIExvYWQgT3B0aW9ucyBEdW1waW5nIC4uLj09PT09PT09PT09PT0NCiAg IERyaXZlciBPcHRpb25zOg0KICAgU3lzUHJlcCBPcHRpb25zOg0KICAgQm9vdCBPcHRpb25zOg0K ICAgICBCb290MDAwMDogVWlBcHAgICAgICAgICAgICAgIDB4MDEwOQ0KICAgICBCb290MDAwMTog VUVGSSBTaGVsbCAgICAgICAgICAgICAgICAgMHgwMDAwDQogICBQbGF0Zm9ybVJlY292ZXJ5IE9w dGlvbnM6DQogICAgIFBsYXRmb3JtUmVjb3ZlcnkwMDAwOiBEZWZhdWx0IFBsYXRmb3JtUmVjb3Zl cnkgICAgICAgICAgICAgICAweDAwMDENCltCZHNdPT09PT09PT09PT09PUVuZCBMb2FkIE9wdGlv bnMgRHVtcGluZz09PT09PT09PT09PT0NCg0KV2l0aCB0aGlzLCBQbGF0Zm9ybVJlY292ZXJ5MDAw MCBnZXRzIGV4ZWN1dGVkIGJ5IGRlZmF1bHQsIHdoaWNoIGlzIHdoYXQgd2Ugd2FudCwgc2luY2Ug aXQgd2lsbCBwaWNrIC9lZmkvYm9vdC9ib290YWE2NC5lZmkgZnJvbSBlaXRoZXIgU0Qgb3IgVVNC IGFuZCBydW4gaXQsIHRoZSBvbmx5IGlzc3VlIGJlaW5nIHRoYXQsIGJlY2F1c2UgUmVhZHlUb0Jv b3QgaGFzIG5vdCBiZWVuIGV4ZWN1dGVkLCB0aGUgZ3JhcGhpY2FsIGNvbnNvbGUgaXMgbm90IG9w ZXJhdGl2ZSBzbyB1c2VycyBjYW4ndCBpbnRlcmFjdCB3aXRoIHRoZSBPUyBpbnN0YWxsZXIuDQoN ClNvIEknbSByZWFsbHkgbm90IHN1cmUgaG93IGFkZGluZyBhbiBleHRyYSBQbGF0Zm9ybVJlY292 ZXJ5IyMjIyB3b3VsZCBoZWxwLiBBbmQgSSdtIGFsc28gbm90IHRvbyBmYW1pbGlhciB3aXRoIGhv dyBvbmUgd291bGQgZ28gYXJvdW5kIHRvIGFkZCBzdWNoIGFuIGVudHJ5Li4uDQoNCj4gQnkgdGhl IHdheSwgSSBhbHNvIGNoZWNrZWQgdGhlIFVFRkkgc3BlY2lmaWNhdGlvbi4gSXQgbG9va3MgbWFr aW5nIHNlbnNlIHRvIG9ubHkgc2lnbmFsIFJlYWR5VG9Cb290IGZvciBib290IG9wdGlvbiAoQm9v dCMjIyMpLg0KDQpUaGF0J3Mgc29tZXRoaW5nIEkgY29uc2lkZXJlZCB0b28sIGJ1dCBJIGRpc2Fn cmVlIHdpdGggdGhpcyBjb25jbHVzaW9uLg0KDQpNeSByZWFzb25pbmcgaXMgdGhhdCwgaWYgUGxh dGZvcm1SZWNvdmVyeSMjIyMgY2FuIGV4ZWN1dGUgYSByZWd1bGFyIGJvb3Rsb2FkZXIgbGlrZSAv ZWZpL2Jvb3QvYm9vdCMjIyMuZWZpIGZyb20gaW5zdGFsbGF0aW9uIG1lZGlhLCB0aGVuIGl0IHNo b3VsZCBnbyB0aHJvdWdoIHRoZSBzYW1lIGtpbmQgb2YgaW5pdGlhbGl6YXRpb24gdGhhdCBoYXBw ZW5zIGZvciBhIHJlZ3VsYXIgYm9vdCBvcHRpb24sIGFuZCB0aGF0IHNob3VsZCBpbmNsdWRlIHNp Z25hbGxpbmcgdGhlIFJlYWR5VG9Cb290IGV2ZW50Lg0KDQpJZiB0aGVyZSB3YXMgYSBzcGVjaWFs IGJvb3Rsb2FkZXIgZm9yIFBsYXRmb3JtUmVjb3ZlcnkjIyMjIChlLmcuIA0KL2VmaS9ib290L3Jl Y292ZXJ5IyMjIy5lZmkpIHRoZW4gSSB3b3VsZCBhZ3JlZSB3aXRoIG9ubHkgc2lnbmFsbGluZyBS ZWFkeVRvQm9vdCBmb3IgYSBmb3JtYWwgQm9vdCMjIyMgb3B0aW9uLiBCdXQgdGhhdCBpc24ndCB0 aGUgY2FzZSwgc28gSSB0aGluayBpdCBpcyByZWFzb25hYmxlIHRvIHdhbnQgdG8gaGF2ZSBSZWFk eVRvQm9vdCBhbHNvIG9jY3VyIHdoZW4gYSAvZWZpL2Jvb3QvYm9vdCMjIyMuZWZpIGJvb3Rsb2Fk ZXIgaXMgZXhlY3V0ZWQgZnJvbSBQbGF0Zm9ybVJlY292ZXJ5IyMjIy4sIGVzcGVjaWFsbHkgd2hl biB3ZSBrbm93IGl0IGNhbiBiZSBjcnVjaWFsIHRvIGVuc3VyaW5nIHRoYXQgdGhlIGVuZCB1c2Vy IGNhbiBhY3R1YWxseSB1c2UgdGhlIGdyYXBoaWNhbCBjb25zb2xlLg0KDQo+IFRoZXJlZm9yZSwg eW91ciBjaGFuZ2UgbWF5IGFsc28gcmVxdWlyZSBzcGVjaWZpY2F0aW9uIGNoYW5nZS4NCg0KWWVz LCBJIG1lbnRpb25lZCB0aGF0IGluIHRoZSBjb3ZlciBsZXR0ZXIgZm9yIHRoaXMgcGF0Y2ggKGh0 dHBzOi8vZWRrMi5ncm91cHMuaW8vZy9kZXZlbC9tZXNzYWdlLzYxMzI3ICksIHdoaWNoIGFsc28g ZGVzY3JpYmVzIHRoZSBpc3N1ZSB3ZSBhcmUgdHJ5aW5nIHRvIHNvbHZlIGluIGdyZWF0ZXIgZGV0 YWlscy4gVGhpcyBpcyB3aGF0IEkgd3JvdGU6DQoNCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KTm90ZSBob3dl dmVyIHRoYXQgdGhpcyBtYXkgcmVxdWlyZSBhIHNwZWNzIHVwZGF0ZSwgYXMgdGhlIGN1cnJlbnQg VUVGSSBzcGVjcyBmb3IgRUZJX0JPT1RfU0VSVklDRVMuQ3JlYXRlRXZlbnRFeCgpIGhhdmU6DQoN CiA+ICBFRklfRVZFTlRfR1JPVVBfUkVBRFlfVE9fQk9PVA0KID4gICAgVGhpcyBldmVudCBncm91 cCBpcyBub3RpZmllZCBieSB0aGUgc3lzdGVtIHdoZW4gdGhlIEJvb3QgTWFuYWdlcg0KID4gICAg aXMgYWJvdXQgdG8gbG9hZCBhbmQgZXhlY3V0ZSBhIGJvb3Qgb3B0aW9uLg0KDQphbmQsIG9uY2Ug dGhpcyBwYXRjaCBoYXMgYmVlbiBhcHBsaWVkLCB3ZSBtYXkgd2FudCB0byB1cGRhdGUgdGhpcyBz ZWN0aW9uIHRvIG1lbnRpb24gdGhhdCBpdCBhcHBsaWVzIHRvIGJvdGggQm9vdCBNYW5hZ2VyIGFu ZCBQbGF0Zm9ybSBSZWNvdmVyeS4NCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQoNCkFnYWluLCBJIGRvbid0 IGhhdmUgYW4gaXNzdWUgd2l0aCB0cnlpbmcgdG8gdXNlIGFuIGFsdGVybmF0ZSBhcHByb2FjaCB0 byBzb2x2ZSBvdXIgcHJvYmxlbSAodGhvdWdoIEkgdWx0aW1hdGVseSBiZWxpZXZlIHRoYXQsIGlm IFBsYXRmb3JtUmVjb3ZlcnkjIyMjIGNhbiBsYXVuY2ggYSAvZWZpL2Jvb3QvYm9vdCMjIyMuZWZp IGJvb3Rsb2FkZXIgdGhlbiB3ZSBtdXN0IHVwZGF0ZSB0aGUgc3BlY3MgYW5kIHRoZSBjb2RlIHRv IGhhdmUgUmVhZHlUb0Jvb3QgYWxzbyBzaWduYWxsZWQgdGhlbiwgYmVjYXVzZSB0aGF0J3MgdGhl IGxvZ2ljYWwgdGhpbmcgdG8gZG8pLiBCdXQgcmlnaHQgbm93LCBJJ20gbm90IHNlZWluZyBob3cg dG8gYWNoaWV2ZSB0aGF0IHdoZW4gUGxhdGZvcm1SZWNvdmVyeSMjIyMgaXMgdGhlIG9wdGlvbiB0 aGF0IGlzIHVzZWQgdG8gbGF1bmNoIHRoZSBPUyBpbnN0YWxsYXRpb24gdGhlIGJvb3Rsb2FkZXIu IFNvIGlmIHlvdSBjYW4gcHJvdmlkZSBtb2RlIGRldGFpbHMgb24gaG93IGV4YWN0bHkgeW91IHRo aW5rIGNyZWF0aW5nIGFuIGFsdGVybmF0ZSBQbGF0Zm9ybVJlY292ZXJ5IG9wdGlvbiB3b3VsZCBo ZWxwLCBJIHdvdWxkIGFwcHJlY2lhdGUgaXQuDQoNClJlZ2FyZHMsDQoNCi9QZXRlDQoNCj4gDQo+ IFJlZ2FyZHMsDQo+IFN1bm55IFdhbmcNCj4gDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0t DQo+IEZyb206IGRldmVsQGVkazIuZ3JvdXBzLmlvIFttYWlsdG86ZGV2ZWxAZWRrMi5ncm91cHMu aW9dIE9uIEJlaGFsZiBPZiANCj4gUGV0ZSBCYXRhcmQNCj4gU2VudDogVHVlc2RheSwgSnVuZSAx NiwgMjAyMCA1OjU2IFBNDQo+IFRvOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbw0KPiBDYzogemhpY2hh by5nYW9AaW50ZWwuY29tOyByYXkubmlAaW50ZWwuY29tOyBhcmQuYmllc2hldXZlbEBhcm0uY29t OyANCj4gbGVpZkBudXZpYWluYy5jb20NCj4gU3ViamVjdDogW2VkazItZGV2ZWxdIFtlZGsyXVtQ QVRDSCAxLzFdIA0KPiBNZGVNb2R1bGVQa2cvVWVmaUJvb3RNYW5hZ2VyTGliOiBTaWduYWwgUmVh ZHlUb0Jvb3Qgb24gcGxhdGZvcm0gDQo+IHJlY292ZXJ5DQo+IA0KPiBDdXJyZW50bHksIHRoZSBS ZWFkeVRvQm9vdCBldmVudCBpcyBvbmx5IHNpZ25hbGVkIHdoZW4gYSBmb3JtYWwgQm9vdCBNYW5h Z2VyIG9wdGlvbiBpcyBleGVjdXRlZCAoaW4gQm1Cb290LmMgLT4gRWZpQm9vdE1hbmFnZXJCb290 ICgpKS4NCj4gDQo+IEhvd2V2ZXIsIHdpdGggdGhlIGludHJvZHVjdGlvbiBvZiBQbGF0Zm9ybSBS ZWNvdmVyeSBpbiBVRUZJIDIuNSwgd2hpY2ggbWF5IGxlYWQgdG8gdGhlIGV4ZWN1dGlvbiBvZiBh IGJvb3QgbG9hZGVyIHRoYXQgaGFzIHNpbWlsYXIgcmVxdWlyZW1lbnRzIHRvIGEgcmVndWxhciBv bmUsIHlldCBpcyBub3QgbGF1bmNoZWQgYXMgYSBCb290IE1hbmFnZXIgb3B0aW9uLCBpdCBhbHNv IGJlY29tZXMgbmVjZXNzYXJ5IHRvIHNpZ25hbCBSZWFkeVRvQm9vdCB3aGVuIGEgUGxhdGZvcm0g UmVjb3ZlcnkgYm9vdCBsb2FkZXIgcnVucy4NCj4gDQo+IEVzcGVjaWFsbHksIHRoaXMgY2FuIGJl IGNyaXRpY2FsIHRvIGVuc3VyaW5nIHRoYXQgdGhlIGdyYXBoaWNhbCBjb25zb2xlIGlzIGFjdHVh bGx5IHVzYWJsZSBkdXJpbmcgcGxhdGZvcm0gcmVjb3ZlcnksIGFzIHNvbWUgcGxhdGZvcm1zIGRv IHJlbHkgb24gdGhlIENvbnNvbGVQcmVmRHhlIGRyaXZlciwgd2hpY2ggb25seSBwZXJmb3JtcyBj b25zb2xlIGluaXRpYWxpemF0aW9uIGFmdGVyIFJlYWR5VG9Cb290IGlzIHRyaWdnZXJlZC4NCj4g DQo+IFRoaXMgcGF0Y2ggZml4ZXMgdGhhdCBiZWhhdmlvdXIgYnkgY2FsbGluZyBFZmlTaWduYWxF dmVudFJlYWR5VG9Cb290ICgpIGluIEVmaUJvb3RNYW5hZ2VyUHJvY2Vzc0xvYWRPcHRpb24gKCks IHdoaWNoIGlzIHRoZSBmdW5jdGlvbiB0aGF0IHNldHMgdXAgdGhlIHBsYXRmb3JtIHJlY292ZXJ5 IGJvb3QgcHJvY2Vzcy4NCj4gDQo+IFNpZ25lZC1vZmYtYnk6IFBldGUgQmF0YXJkIDxwZXRlQGFr ZW8uaWU+DQo+IC0tLQ0KPiAgIE1kZU1vZHVsZVBrZy9MaWJyYXJ5L1VlZmlCb290TWFuYWdlckxp Yi9CbUxvYWRPcHRpb24uYyB8IDkgKysrKysrKysrDQo+ICAgMSBmaWxlIGNoYW5nZWQsIDkgaW5z ZXJ0aW9ucygrKQ0KPiANCj4gZGlmZiAtLWdpdCBhL01kZU1vZHVsZVBrZy9MaWJyYXJ5L1VlZmlC b290TWFuYWdlckxpYi9CbUxvYWRPcHRpb24uYyANCj4gYi9NZGVNb2R1bGVQa2cvTGlicmFyeS9V ZWZpQm9vdE1hbmFnZXJMaWIvQm1Mb2FkT3B0aW9uLmMNCj4gaW5kZXggODkzNzJiM2I5N2I4Li4x MTdmMWY1YjEyNGMgMTAwNjQ0DQo+IC0tLSBhL01kZU1vZHVsZVBrZy9MaWJyYXJ5L1VlZmlCb290 TWFuYWdlckxpYi9CbUxvYWRPcHRpb24uYw0KPiArKysgYi9NZGVNb2R1bGVQa2cvTGlicmFyeS9V ZWZpQm9vdE1hbmFnZXJMaWIvQm1Mb2FkT3B0aW9uLmMNCj4gQEAgLTEzNzYsNiArMTM3NiwxNSBA QCBFZmlCb290TWFuYWdlclByb2Nlc3NMb2FkT3B0aW9uICgNCj4gICAgICAgcmV0dXJuIEVGSV9T VUNDRVNTOw0KPiAgICAgfQ0KPiAgIA0KPiArICAvLw0KPiArICAvLyBTaWduYWwgdGhlIEVWVF9T SUdOQUxfUkVBRFlfVE9fQk9PVCBldmVudCB3aGVuIHdlIGFyZSBhYm91dCB0byBsb2FkIGFuZCBl eGVjdXRlIHRoZSBib290IG9wdGlvbi4NCj4gKyAgLy8NCj4gKyAgRWZpU2lnbmFsRXZlbnRSZWFk eVRvQm9vdCAoKTsNCj4gKyAgLy8NCj4gKyAgLy8gUmVwb3J0IFN0YXR1cyBDb2RlIHRvIGluZGlj YXRlIFJlYWR5VG9Cb290IHdhcyBzaWduYWxsZWQgIC8vIA0KPiArIFJFUE9SVF9TVEFUVVNfQ09E RSAoRUZJX1BST0dSRVNTX0NPREUsIChFRklfU09GVFdBUkVfRFhFX0JTX0RSSVZFUiB8IA0KPiAr IEVGSV9TV19EWEVfQlNfUENfUkVBRFlfVE9fQk9PVF9FVkVOVCkpOw0KPiArDQo+ICAgICAvLw0K PiAgICAgLy8gTG9hZCBhbmQgc3RhcnQgdGhlIGxvYWQgb3B0aW9uLg0KPiAgICAgLy8NCj4gLS0N Cj4gMi4yMS4wLndpbmRvd3MuMQ0KPiANCj4gDQo+IA0KPiANCg0K