From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by mx.groups.io with SMTP id smtpd.web12.1873.1593740442846859170 for ; Thu, 02 Jul 2020 18:40:43 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=BVpJrLl+; spf=pass (domain: intel.com, ip: 134.134.136.31, mailfrom: liming.gao@intel.com) IronPort-SDR: Q58ezxonKXQMZiUtG6RiVDbPbxjgL9zhcNzARrTqRqFnut44zafMqPAszqgUFSSCQb1+cxxi1J 9//LIVJ63sIg== X-IronPort-AV: E=McAfee;i="6000,8403,9670"; a="208587869" X-IronPort-AV: E=Sophos;i="5.75,306,1589266800"; d="scan'208";a="208587869" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Jul 2020 18:40:41 -0700 IronPort-SDR: KKwB+XR79sDMNhD/3fwBltvRmJmax3KSHeOmysnta7gBKxJVgnHvZ59E3979lyFREpwjpMICVD /99CtEQi+8qA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.75,306,1589266800"; d="scan'208";a="265849031" Received: from fmsmsx107.amr.corp.intel.com ([10.18.124.205]) by fmsmga007.fm.intel.com with ESMTP; 02 Jul 2020 18:40:41 -0700 Received: from fmsmsx154.amr.corp.intel.com (10.18.116.70) by fmsmsx107.amr.corp.intel.com (10.18.124.205) with Microsoft SMTP Server (TLS) id 14.3.439.0; Thu, 2 Jul 2020 18:40:29 -0700 Received: from FMSEDG002.ED.cps.intel.com (10.1.192.134) by FMSMSX154.amr.corp.intel.com (10.18.116.70) with Microsoft SMTP Server (TLS) id 14.3.439.0; Thu, 2 Jul 2020 18:40:28 -0700 Received: from NAM10-BN7-obe.outbound.protection.outlook.com (104.47.70.101) by edgegateway.intel.com (192.55.55.69) with Microsoft SMTP Server (TLS) id 14.3.439.0; Thu, 2 Jul 2020 18:40:29 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cG3Nro2bavYH0vdmQ8rFXV/zbgl/RrUpOV6HyCnmZnp3v6M0VfG/OJCqG37Ny5iTS1/ddFrTBrIJtQzsDXIMQdYMadUhz6m6s2xa9mwOjwR9ktxkD2sNiSXi3mobYtxCx1joHKDko0OFmYAFnFGCeji29LeNlFLxEiFJTWgT5zEqjDUz1clThFZTg0uC9EjCj5FwtgM4N7jSzhplNpqFknhmHDoEkpkZqndV8kEFNpk6FqApqLzFM/H+9SqIyTTlHolY05BeZ+0LgkCxy6XpBGu+tfKGoxR7JDqpvlV1MRvU5pOEhQq2FuQYZ22u80Ewk/XqjqkMjTcPUSsgriHG1A== 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=+ti9tHKJdHPXhXFmSOBrlYj/ilmo5KsiDI8SHukHx/c=; b=M2HAhmDEFVlTEJFYRXylhx786Le4P0mkdshtRYuJkllCsS3RNKkZydJVX5EfagyHKbOjNmjLmJd09ptG+A8M5auuMc8HLSEz5SWlrOdXOvBhyeLdFhAgeYNmYBp3gQGp1+alVjIiGXHwdauR3sg6KYxQ9AKj5b2SCZk1NO8Sd8Fc71c2EMiWuDF1xsZtYHZWY3Dh7VaMb/qXtjz1TP0em9gJeqQ5isvxAw629D2v0Z/g0uiWMnY2MXvNZD8oth+Qz9GYH1XMtz1QP1HnucD1C2TVNMz7rFM76dMlqWrg2ehIUz5GafnVXdGiHr8LW1Z6pQKArTo20/yFjFSIkznCdg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel.onmicrosoft.com; s=selector2-intel-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=+ti9tHKJdHPXhXFmSOBrlYj/ilmo5KsiDI8SHukHx/c=; b=BVpJrLl+ZC04nTQdL4mHyXK8aWSv+X+FfYloBE2XWyNx6WuAlBlByNiEyjpwhaoP3JgJc55CnSDniwPM8nz5wlhg845vMw8kGt2Afl+fe3DqL99KN36HvDS1bNw7T2JIMn8KNp4AD86W5zyqMtSzM00WLLyOZXE8+t1Z4908zqA= Received: from MWHPR11MB1630.namprd11.prod.outlook.com (2603:10b6:301:e::7) by MWHPR1101MB2109.namprd11.prod.outlook.com (2603:10b6:301:53::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3153.27; Fri, 3 Jul 2020 01:40:26 +0000 Received: from MWHPR11MB1630.namprd11.prod.outlook.com ([fe80::7847:b564:1b55:b67e]) by MWHPR11MB1630.namprd11.prod.outlook.com ([fe80::7847:b564:1b55:b67e%6]) with mapi id 15.20.3131.036; Fri, 3 Jul 2020 01:40:26 +0000 From: "Liming Gao" To: "devel@edk2.groups.io" , "ard.biesheuvel@arm.com" , "leif@nuviainc.com" CC: Laszlo Ersek , Rebecca Cran , "Andrew Fish" , "Justen, Jordan L" , "Kinney, Michael D" Subject: Re: [edk2-devel] License Check - was OvmfPkg: Adding support for bhyve as OvmfPkg/Bhyve Thread-Topic: [edk2-devel] License Check - was OvmfPkg: Adding support for bhyve as OvmfPkg/Bhyve Thread-Index: AQHWUF815t7Xuk+RLkuJp4fcpNmfu6j0TQXwgAAIIICAAAUngIAAtcjg Date: Fri, 3 Jul 2020 01:40:26 +0000 Message-ID: References: <92612908-44f4-30d4-ae3a-3ad595e2141f@bsdio.com> <68b55c49-1e49-e082-ca38-68c3d321611b@redhat.com> <20200702105419.GN6739@vanye> <20200702141323.GQ6739@vanye> In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-version: 11.2.0.6 dlp-product: dlpe-windows dlp-reaction: no-action authentication-results: edk2.groups.io; dkim=none (message not signed) header.d=none;edk2.groups.io; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.198.147.219] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: c1701fd4-45a8-4ef2-0247-08d81ef20fa1 x-ms-traffictypediagnostic: MWHPR1101MB2109: x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-forefront-prvs: 045315E1EE x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: jRcZiloYYnluXd7UQsELD5BiT9pJ3a31Eq/DhyZ8NrDrMN+WzE1qwSvWx8zpeSLbxMtZ65Vsvg2Wipm0kVwhNqnAQWOx8gxiP2tsHVkBb51P35aUdzXvJUczoFy1gzHEhzAnEBnqGzlkWi3UEFrBgoKImIhprF47BjnsiMCwXvxA7tfRVzaQ3LGpuBjvY3jEPgaItrtplcEcrkBQlwOqU8HZ6yXIVRjcwBr6Set9zvgnnCIDoD3Q5abyl+ghHrqGEsRfqBUD3vnPrTXhMWIg9QTtymH79AvQtTrXGbS4/0Dcenji/qBLCNqe/r9psPLaU+aCSrTDOJY4ff57DwKaSVJe8vh+JLdDDN/pVFrEcgkPY0UETx8WStGDCrRArSF7U69V3Q0/DdTCYgTBnu6pGw== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MWHPR11MB1630.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFTY:;SFS:(4636009)(376002)(136003)(39860400002)(396003)(366004)(346002)(5660300002)(53546011)(8936002)(4326008)(76116006)(71200400001)(316002)(7696005)(110136005)(54906003)(8676002)(6506007)(107886003)(186003)(33656002)(26005)(966005)(52536014)(478600001)(2906002)(64756008)(66556008)(66476007)(66446008)(55016002)(83380400001)(9686003)(86362001)(66946007);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: zSoptUXnNNcG1dq+6IsUwYUpguEyHcEUnhgBaTGS0U3PomQojN2o1juPEO7TBGejwl0+pAqRRvSmSf4zNyQQYgrD4H2E5d7w4u4ozSFSMGRmHmZEb85EhWns/R2Vd3JdzZx/mVS9Lr/yMllCUCxBs62KsgW3kGZD7o2D8uhkFxtWVM1e8zXCJJU0SvlWcSNMZhDF4327NgDr9vy9d11kVCODG16Ep+IQArbmC0z0sOAmpS2BwZgZbdOTU7EKkv4S1J773nSvGjJuoEoZ3XJLxBjP4l2qvSnXMPz8IHm6Oy3KhY2zuiFVxjmBdrchmtCqUv6xLODM5nPFkRcf/hgnPTIhHaiMYj3+2SvxuaPdfICZI60APrfGteypYmdBt4xKnMkP8HDN+9NCZUsMjE3avDHJ8GoVscvlilYkcCjG0xx1t1Uwn2RrOxGGdXwbm62yEg5eYD/ORtBGcSJpxkuZjeqn7DWGC+guuVrPxwBYKRZWvSJhqTl7reGuwDgrhJUA MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MWHPR11MB1630.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c1701fd4-45a8-4ef2-0247-08d81ef20fa1 X-MS-Exchange-CrossTenant-originalarrivaltime: 03 Jul 2020 01:40:26.4904 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: a9++o6jn3SDKGNYLITl1MGXh8tKqq+1WHZ+euY6MqXF/fcGTjny41fj9mW9NQUPWMiE8p/WjdzWJTGrZgcJtCg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR1101MB2109 Return-Path: liming.gao@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 DQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IGRldmVsQGVkazIuZ3JvdXBz LmlvIDxkZXZlbEBlZGsyLmdyb3Vwcy5pbz4gT24gQmVoYWxmIE9mIEFyZCBCaWVzaGV1dmVsDQo+ IFNlbnQ6IFRodXJzZGF5LCBKdWx5IDIsIDIwMjAgMTA6MzIgUE0NCj4gVG86IGRldmVsQGVkazIu Z3JvdXBzLmlvOyBsZWlmQG51dmlhaW5jLmNvbTsgR2FvLCBMaW1pbmcgPGxpbWluZy5nYW9AaW50 ZWwuY29tPg0KPiBDYzogTGFzemxvIEVyc2VrIDxsZXJzZWtAcmVkaGF0LmNvbT47IFJlYmVjY2Eg Q3JhbiA8cmViZWNjYUBic2Rpby5jb20+OyBBbmRyZXcgRmlzaCA8YWZpc2hAYXBwbGUuY29tPjsg SnVzdGVuLCBKb3JkYW4gTA0KPiA8am9yZGFuLmwuanVzdGVuQGludGVsLmNvbT47IEtpbm5leSwg TWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT4NCj4gU3ViamVjdDogUmU6IFtl ZGsyLWRldmVsXSBMaWNlbnNlIENoZWNrIC0gd2FzIE92bWZQa2c6IEFkZGluZyBzdXBwb3J0IGZv ciBiaHl2ZSBhcyBPdm1mUGtnL0JoeXZlDQo+IA0KPiBPbiA3LzIvMjAgNDoxMyBQTSwgTGVpZiBM aW5kaG9sbSB2aWEgZ3JvdXBzLmlvIHdyb3RlOg0KPiA+IE9uIFRodSwgSnVsIDAyLCAyMDIwIGF0 IDEzOjQ5OjQ1ICswMDAwLCBHYW8sIExpbWluZyB3cm90ZToNCj4gPj4gTGVpZjoNCj4gPj4NCj4g Pj4+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4+PiBGcm9tOiBkZXZlbEBlZGsyLmdy b3Vwcy5pbyA8ZGV2ZWxAZWRrMi5ncm91cHMuaW8+IE9uIEJlaGFsZiBPZiBMZWlmIExpbmRob2xt DQo+ID4+PiBTZW50OiBUaHVyc2RheSwgSnVseSAyLCAyMDIwIDY6NTQgUE0NCj4gPj4+IFRvOiBM YXN6bG8gRXJzZWsgPGxlcnNla0ByZWRoYXQuY29tPg0KPiA+Pj4gQ2M6IFJlYmVjY2EgQ3JhbiA8 cmViZWNjYUBic2Rpby5jb20+OyBlZGsyLWRldmVsLWdyb3Vwcy1pbyA8ZGV2ZWxAZWRrMi5ncm91 cHMuaW8+OyBBcmQgQmllc2hldXZlbA0KPiA8YXJkLmJpZXNoZXV2ZWxAYXJtLmNvbT47DQo+ID4+ PiBBbmRyZXcgRmlzaCA8YWZpc2hAYXBwbGUuY29tPjsgSnVzdGVuLCBKb3JkYW4gTCA8am9yZGFu LmwuanVzdGVuQGludGVsLmNvbT47IEtpbm5leSwgTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5 QGludGVsLmNvbT4NCj4gPj4+IFN1YmplY3Q6IFJlOiBbZWRrMi1kZXZlbF0gTGljZW5zZSBDaGVj ayAtIHdhcyBPdm1mUGtnOiBBZGRpbmcgc3VwcG9ydCBmb3IgYmh5dmUgYXMgT3ZtZlBrZy9CaHl2 ZQ0KPiA+Pj4NCj4gPj4+IE9uIFRodSwgSnVsIDAyLCAyMDIwIGF0IDExOjI3OjI1ICswMjAwLCBM YXN6bG8gRXJzZWsgd3JvdGU6DQo+ID4+Pj4gVGhpcyBsaWtlbHkgY29tZXMgZnJvbSBCYXNlVG9v bHMgY29tbWl0IGE0Y2ZiODQyZmNhOQ0KPiA+Pj4+ICgiQmFzZVRvb2xzL1BhdGNoQ2hlY2sucHk6 IEFkZCBMaWNlbnNlQ2hlY2siLCAyMDIwLTA2LTEyKS4NCj4gPj4+Pg0KPiA+Pj4+IE9uZSBhcHBy b2FjaCB3b3VsZCBiZSB0byByZW1vdmUgIlZiZVNoaW0uaCIgZnJvbSB0aGUgdHJhY2tlZCBmaWxl cyB1bmRlcg0KPiA+Pj4+IE92bWZQa2csIHJlcGxhY2luZyBpdCB3aXRoIGEgUFJFQlVJTEQgY29t bWFuZCBpbiB0aGUgT1ZNRiBEU0MgZmlsZXMuDQo+ID4+Pj4gKFRoZW4gQmh5dmUgY291bGQgZG8g dGhlIHNhbWUuKQ0KPiA+Pj4+DQo+ID4+Pj4gSG93ZXZlciwgdGhlIGdlbmVyYXRvciwgbmFtZWx5 ICJWYmVTaGltLnNoIiwgaXMgbm90IHdyaXR0ZW4gaW4gUHl0aG9uLA0KPiA+Pj4+IGJ1dCBpbiAo UE9TSVgpIHNoZWxsLCBhbmQgc28gaXQgY2FuJ3QgYmUgY2FsbGVkIGZyb20gUFJFQlVJTEQgKEkg dGhpbmsNCj4gPj4+PiBpdCB3b3VsZCBicmVhayBPVk1GIGJ1aWxkcyBvbiBXaW5kb3dzKS4NCj4g Pj4+Pg0KPiA+Pj4+IEkgZG9uJ3Qga25vdyB3aGF0IHRvIHRlbGwgeW91LCBvdGhlciB0aGFuIHRo ZSBibGFua2V0IGxpY2Vuc2UNCj4gPj4+PiBlbmZvcmNlbWVudCBmcm9tIGNvbW1pdCBhNGNmYjg0 MmZjYTkgaXMgbGlrZWx5IHdyb25nLg0KPiA+Pj4NCj4gPj4+ICpSZWFkcyBwYXRjaCoNCj4gPj4+ ICpGaWd1cmF0aXZlbHkgc3BpdHMgY29mZmVlIGFsbCBvdmVyIGtleWJvYXJkKg0KPiA+Pj4NCj4g Pj4+IE5vLCB0aGlzIGlzIG5vdCBPSy4NCj4gPj4+DQo+ID4+PiBXZSAqU1RJTEwqIGhhdmUgbm8g YWdyZWVkIHByb2Nlc3MgZm9yIGFjY2VwdGluZyBub24gYnNkK3BhdGVudCBjb250ZW50DQo+ID4+ PiBzaW5jZSB3ZSBkcm9wcGVkIHRoZSBjb250cmlidXRpb24gYWdyZWVtZW50LiBJIGhhdmUgdHJp ZWQgdG8gcmFpc2UNCj4gPj4+IHRoaXMgaXNzdWUgc2V2ZXJhbCB0aW1lcyBpbiB0aGUgcGFzdCwg YW5kIHRoZXJlIGhhcyBuZXZlciBiZWVuIGFueQ0KPiA+Pj4gb3V0Y29tZSBmcm9tIHJlc3VsdGlu ZyBkaXNjdXNzaW9ucy4NCj4gPj4+DQo+ID4+PiBTbyBub3cgSSdtIGdvaW5nIHRvIHNlbmQgb3V0 IGEgdHdvLXBhdGNoIHNldCBjb25zaXN0aW5nIG9mOg0KPiA+Pj4gLSBSZXZlcnRpbmcgYTRjZmI4 NDJmY2E5LiAoRG9pbmcgbm90aGluZyBpcyBiZXR0ZXIgdGhhbiBpbXBseWluZyB0aGF0DQo+ID4+ PiAgICBhbnl0aGluZyAhYnNkK3BhdGVudCBjYW4gY3VycmVudGx5IGJlIGFkZGVkIHRvIHRoZSB0 cmVlLikNCj4gPj4+IC0gRGVsZXRpbmcgdGhlIHN0YXRlbWVudCBpbiBSZWFkbU1lLnJzdCBlcnJv bmVvdXNseSBjbGFpbWluZyB0aGF0IHRoZQ0KPiA+Pj4gICAgaW5jbHVkaW9uIG9mIHRoZXNlIG90 aGVyIGxpY2Vuc2VzIGFyZSBhY2NlcHRhYmxlIHVudGlsIHN1Y2ggYSBwb2ludA0KPiA+Pj4gICAg YW4gYWN0aXZlIGRlY2lzaW9uIGhhcyBiZWVuIHRha2VuLCBhcHByb3ZlZCBieSB0aGUgY29tbXVu aXR5LCB0aGF0DQo+ID4+PiAgICB0aGlzIGlzIHBlcm1pdHRlZC4NCj4gPj4+DQo+ID4+DQo+ID4+ IElmIG9ubHkgYnNkK3BhdGVudCBpcyBhbGxvd2VkLCB0aGUgY2hlY2tlciBjYW4gYmUgZW5oYW5j ZWQgdG8gY2hlY2sgdGhpcyBsaWNlbnNlIG9ubHkuDQo+ID4+IEkgZG9uJ3QgdW5kZXJzdGFuZCB3 aHkgcmVtb3ZlIHRoaXMgY2hlY2tlci4NCj4gPg0KPiA+IE1haW5seSBiZWNhdXNlIHRoYXQgd2Fz IHRoZSBlYXNpZXN0IHRoaW5nIHRvIGRvIDopDQoNClBlb3BsZSBtYXkgbWlzcyBpdC4gU28sIHRo ZSBjaGVja2VyIGlzIGhlbHBmdWwgdG8gZGV0ZWN0IHRoZSBpc3N1ZS4gDQoNCj4gPg0KPiA+IEJ1 dCBhbHNvIGJlY2F1c2U6DQo+ID4gLSBUaGUgdGhyZWFkIHRoYXQgc3Bhd25lZCB0aGlzIGFsc28g cmFpc2VkIHRoZSBwcm9ibGVtIG9mDQo+ID4gICAgbWFjaGluZS1nZW5lcmF0ZWQgZmlsZXMuDQpU aGlzIGlzIGEgZ2FwLiBXZSBoYXZlIG5vIHJ1bGUgZm9yIHRoZSBnZW5lcmF0ZWQgZmlsZS4gDQoN Cj4gPiAtIEkgYW0gc29tZXdoYXQgdW5oYXBweSB0aGUgY2hlY2tlciBnb3QgbWVyZ2VkIGluIHRo ZSBmaXJzdCBwbGFjZQ0KPiA+ICAgIHdpdGhvdXQgd2lkZXIgY29tbXVuaXR5IGZlZWRiYWNrLiBC YXNlVG9vbHMgYW5kIGl0cyBjb250ZW50cyBhcmUNCj4gPiAgICB1c2VkIGZvciBtYW55IHJlcG9z aXRvcmllcyAoZXZlbiB3aXRoaW4gVGlhbm9Db3JlKSwgYW5kIHRoaXMgYWRkZWQNCj4gPiAgICB1 bmNvbmRpdGlvbmFsIGNoZWNrIGJyZWFrcyB0aGUgdXNlIGZvciBzb21lIG9mIHRob3NlLg0KPiA+ DQpUaGUgcGF0Y2ggdG8gYWRkIHRoZSBsaWNlbnNlIGNoZWNrZXIgaXMgcmV2aWV3ZWQgaW4gZWRr MiBtYWlsIGxpc3QgZm9yIHNldmVyYWwgd2Vla3MuIA0KSSBkb24ndCBnZXQgb3RoZXIgY29tbWVu dHMuIENhbiB5b3UgZ2l2ZSB0aGUgc3VnZ2VzdGlvbiBvbiBob3cgdG8gaW1wcm92ZSB0aGUgY29t bXVuaWNhdGlvbiBpbiBlZGsyIGNvbW11bml0eT8gDQoNCkJlc2lkZXMsIHRoZXJlIGlzIGFub3Ro ZXIgbmV3IGNoZWNrZXIgb2YgRUNDIHRvIGNoZWNrIGNvZGluZyBzdHlsZSBmb3IgZWFjaCBwYXRj aC4gQ2FuIHlvdSBnaXZlIHlvdXIgY29tbWVudD8NCmh0dHBzOi8vZWRrMi5ncm91cHMuaW8vZy9k ZXZlbC9tZXNzYWdlLzYxOTY2DQoNCj4gDQo+IEkgdGhpbmsgdGhlIGZ1bmRhbWVudGFsIHByb2Js ZW0gaXMgdGhhdCBjb250cmlidXRpbmcgY29kZSB1bmRlciBhDQo+IGNvbnRyaWJ1dGlvbiBhZ3Jl ZW1lbnQgdGhhdCBpbmNsdWRlcyBhIHBhdGVudCBncmFudCBpcyBub3QgdGhlIHNhbWUgYXMNCj4g Y29udHJpYnV0aW5nIGl0IHVuZGVyIGEgcGF0ZW50IGdyYW50IGxpY2Vuc2UsIGdpdmVuIHRoYXQg dGhlIGxhdHRlciBjYW4NCj4gb25seSBiZSBkb25lIGJ5IHRoZSBhdXRob3Igb2YgdGhlIGNvZGUs IHdoaWxlIHRoZSBmb3JtZXIgY291bGQgYmUgZG9uZQ0KPiBieSBhbnlvbmUuDQo+IA0KPiBUaGlz IG1lYW5zIG91ciBjdXJyZW50IGxpY2Vuc2luZyBwb2xpY3kgaXMgYWN0dWFsbHkgbW9yZSByZXN0 cmljdGl2ZQ0KPiB0aGF0IHRoZSBvbGQgb25lLCBtYWtpbmcgaXQgbW9yZSBkaWZmaWN1bHQgdG8g aW5jb3Jwb3JhdGUgJ3NlY29uZCBoYW5kJw0KPiBjb2RlLg0KPiANCj4gSSBkb24ndCB0aGluayB3 ZSBjYW4gZml4IHRoaXMgd2l0aCBhIHBhdGNoIHRob3VnaCA6LSgNCg0KWWVzLiBUaGlzIGNoZWNr ZXIgaXMgZm9yIGN1cnJlbnQgYWxsb3dlZCBsaWNlbnNlLiBJdCBkb2Vzbid0IHJlc29sdmUgdGhp cyBpc3N1ZS4gDQoNClRoYW5rcw0KTGltaW5nDQo+IA0KPiANCg0K