From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mx.groups.io with SMTP id smtpd.web11.1385.1596008241944008169 for ; Wed, 29 Jul 2020 00:37:22 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=WksapqTV; spf=pass (domain: intel.com, ip: 134.134.136.24, mailfrom: liming.gao@intel.com) IronPort-SDR: /whECN5fFHeTRnDcRII8LgO+Coq0ydyYo4AnQje6GRB2Y/knjT3sGpX28Ods3bFKCIEwqbY51L qeeg7tJYK8jw== X-IronPort-AV: E=McAfee;i="6000,8403,9696"; a="152609440" X-IronPort-AV: E=Sophos;i="5.75,409,1589266800"; d="scan'208";a="152609440" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 29 Jul 2020 00:37:21 -0700 IronPort-SDR: Ddir8UItWzKvQwrKF23xQRgzZ6HdabUe7M/zI4VxkJ+Cc04tbnSedYBdtGHfeglu6Duz8eilAh kaJHkD3dhgkA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.75,409,1589266800"; d="scan'208";a="490672001" Received: from fmsmsx105.amr.corp.intel.com ([10.18.124.203]) by fmsmga005.fm.intel.com with ESMTP; 29 Jul 2020 00:37:20 -0700 Received: from fmsmsx158.amr.corp.intel.com (10.18.116.75) by FMSMSX105.amr.corp.intel.com (10.18.124.203) with Microsoft SMTP Server (TLS) id 14.3.439.0; Wed, 29 Jul 2020 00:37:20 -0700 Received: from FMSEDG001.ED.cps.intel.com (10.1.192.133) by fmsmsx158.amr.corp.intel.com (10.18.116.75) with Microsoft SMTP Server (TLS) id 14.3.439.0; Wed, 29 Jul 2020 00:37:21 -0700 Received: from NAM10-MW2-obe.outbound.protection.outlook.com (104.47.55.108) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (TLS) id 14.3.439.0; Wed, 29 Jul 2020 00:37:20 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=oW+1xcA+cIjk8p2ERGbJ9IXxjyvcOuYJ1TkmEHBgd0+wsCDIibzLV2IRwIYfSmW8cVU1D0lsmcreVNXgeF7lQdqALejVappxRz0qceBJzIBvSU/gw74+VKaRU5hZB3gOKdQ+A2fMpjdw2nbyN8rbokYjCHu7/O4OdBj4j1UvZv5+ZlJWfECwjm9i1wHmU9KAzyWKgNsybyKobH9axxYjrMqhVVD/XIOMwa3tcHO7XaZQypRrigsbamMvan/D8Ikd2zQ+KFHBpX01IF8TvhfQM54B4MnMUmZD3xorT+VNm/SJDyYCDqjr44X9eXd4KfsawBBn/83IOVV1dhT9E2KJmA== 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=ksw+fjih6gGxbwLMnpGMUDb3aSoCGZo5bRDxxH41H0A=; b=BhFBoq+PI0XLRwL/RGzkmAV3wCofGcgBVRKiUf4zCk0MepPWIjpJsaQDhMnTXzbGsX+FWcmudlAOYUgU1rA8IxwGWTeuIOhtcrIh4Adx0tCetbsFGRenALNicPuwiAOCNWHJLiAnhDT9WCOKN1I17aDgqjSHvqJFOoOVGuCwa5S+b8PTZtCJ8JYskR67wPZ2Jy8YWf9sRvaOUn/5Xqq8yDXVWdn1zxPMHdy0Q1DX2VWRa7x+QspFdkcRJDL6nG900NsP+XMCOvWLsKK2q5QM9q7Ur/No+yCxVgpwF5Ux8w8jC0fsM5Zdb1BtAIL148XcOG6wYeDHCzBNoDEr9kpCNg== 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=ksw+fjih6gGxbwLMnpGMUDb3aSoCGZo5bRDxxH41H0A=; b=WksapqTV0R8L7iS1ICIJsgKKM94WUR4n1XQgHt4mEqtjVvi3Wl7Op93RApxaOlmHmzZoTIDTfFx47FUR+GodI5GQvIzGud8TYoelTATkumj21svjNTbl1MoERwdt41QZnR4P32T18M5Sd6ANWIfERWlyepan0B8d+Y1LiZithiQ= Received: from MWHPR11MB1630.namprd11.prod.outlook.com (2603:10b6:301:e::7) by MWHPR11MB0080.namprd11.prod.outlook.com (2603:10b6:301:68::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3216.28; Wed, 29 Jul 2020 07:37:19 +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.3216.034; Wed, 29 Jul 2020 07:37:19 +0000 From: "Liming Gao" To: "Kinney, Michael D" , "Zhang, Shenglei" , "devel@edk2.groups.io" CC: Sean Brogan , Bret Barkelew , "Dong, Eric" , "Laszlo Ersek" , "Gao, Zhichao" , "Yao, Jiewen" , "Justen, Jordan L" , Maciej Rabeda , "Wu, Jiaxin" , "Fu, Siyuan" , "Wang, Jian J" , "Wu, Hao A" , Andrew Fish , "Ni, Ray" , "Lu, XiaoyuX" , Ard Biesheuvel , "Leif Lindholm" Subject: Re: [PATCH 00/15] Add a plugin LicenseCheck in open ci Thread-Topic: [PATCH 00/15] Add a plugin LicenseCheck in open ci Thread-Index: AQHWXnEGADvncrYqckiGkA7tbZLG9akdsjSAgAAaFqCAAAcXgIAAY+Tg Date: Wed, 29 Jul 2020 07:37:19 +0000 Message-ID: References: <20200720083709.17264-1-shenglei.zhang@intel.com> 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: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.198.147.194] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 3b3e21ed-7f6b-4f4e-6acb-08d83392396a x-ms-traffictypediagnostic: MWHPR11MB0080: 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:7691; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: NFaWVpDlYr/C+KAssYODOTOzi4r/19kWanjb4RfgyBPOmFPLuHF2+fxAgyTItbySJDTcwbH3B38yRF3G4d5YybcycZtyGNbvzYLxDAvnSsh7m89PY9bkab43ktdXCC0KhouUPJ4gSB21ptMP5eeSt96j2ot5OIfmj7cegrEipujrMasPOBnh0IrNvGuI2MNfGBi9GgyN0op5YRqXA7fVQcl/HAgHxUKeVVBoDv+f64Lt6SDdBU7FzOXoWOK9YTFu6RjGnJWYeUweVOlKQ9xGtszl3lu4MOdh5x0pDDtyGKWeE8OSFxnMggNfwRy9nqEAJOnPtfLF8SzXQg6lMF21kHLd4WlKwCHlH4BO8lDPVFLyoBLjP1u0VYxD6YQGjxt2r+VUhY1SN81sfs9iTfLaUw== 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)(346002)(366004)(86362001)(478600001)(55016002)(26005)(2906002)(6506007)(4326008)(316002)(54906003)(53546011)(8936002)(966005)(9686003)(110136005)(71200400001)(8676002)(5660300002)(66446008)(66946007)(66476007)(7696005)(76116006)(66556008)(186003)(83380400001)(52536014)(33656002)(64756008);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: 8C42HtYoOYCygaZfoEMcxGG+Tl0LC+ObcJGHo02dI3wYFbDQOxdjkc3w5OWty+pc5xxC1PiBJAFko5yrHKw15DJXzR/i3hh88Labfnnrtlq073c/3fFcmsxunvBz8/3sCzovotPagpFhsnPoeIRXSsG25BLYm/k0cmX3pqUDtP2KvOcFdvb0QfGXF5E2Tva+FPso1ACDJwA3fD1+ZiNweeTf/Cbn7Bemzm4ImxTq7CFfTFU0kpyCrEjRorfo7U8Ow/yDk0O4e+EaJyQ4UvWAwHaraz6fqTjQiX+y1I8/Vw5YhSfmlgd3Em5Ld20+5nnfnJbrSOaahYQZkTqIZv3nvuq1zQASm8jaCQeYJ864LXyMFnV0Mc1L/tU8r/23FWDLJSJ1S7tUPCFAOHoJpgGKgdHffoT6VnarA75L1TYn8usAeU09S29JNxsC0oqXRtNJgiaUc+wcGeun+AYOysCBx6l+2ppDw9MCWp6/R6WyFGJeiIx/Se/10mMoyjEufLwx 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: 3b3e21ed-7f6b-4f4e-6acb-08d83392396a X-MS-Exchange-CrossTenant-originalarrivaltime: 29 Jul 2020 07:37:19.2813 (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: cpmJdqYv9qzQ+44nLAMBfdUkX4LELqsPs9WBvalbmhih/yfSLbQKKw9O4OAETnabYWF7eFQVTEitteiE7ouH6g== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR11MB0080 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 TWlrZToNCiAgSSB0aGluayB0aGlzIGlzIGEgc2VwYXJhdGUgcmVxdWVzdC4gSSBzdWJtaXQgQlog aHR0cHM6Ly9idWd6aWxsYS50aWFub2NvcmUub3JnL3Nob3dfYnVnLmNnaT9pZD0yODY4IGZvciBp dC4gDQoNClRoYW5rcw0KTGltaW5nDQotLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQ0KRnJvbTog S2lubmV5LCBNaWNoYWVsIEQgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPiANClNlbnQ6IDIw MjDlubQ35pyIMjnml6UgOTozMw0KVG86IEdhbywgTGltaW5nIDxsaW1pbmcuZ2FvQGludGVsLmNv bT47IFpoYW5nLCBTaGVuZ2xlaSA8c2hlbmdsZWkuemhhbmdAaW50ZWwuY29tPjsgZGV2ZWxAZWRr Mi5ncm91cHMuaW87IEtpbm5leSwgTWljaGFlbCBEIDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNv bT4NCkNjOiBTZWFuIEJyb2dhbiA8c2Vhbi5icm9nYW5AbWljcm9zb2Z0LmNvbT47IEJyZXQgQmFy a2VsZXcgPEJyZXQuQmFya2VsZXdAbWljcm9zb2Z0LmNvbT47IERvbmcsIEVyaWMgPGVyaWMuZG9u Z0BpbnRlbC5jb20+OyBMYXN6bG8gRXJzZWsgPGxlcnNla0ByZWRoYXQuY29tPjsgR2FvLCBaaGlj aGFvIDx6aGljaGFvLmdhb0BpbnRlbC5jb20+OyBZYW8sIEppZXdlbiA8amlld2VuLnlhb0BpbnRl bC5jb20+OyBDaGFvIFpoYW5nIDxjaGFvLmIuemhhbmdAaW50ZWwuY29tPjsgSnVzdGVuLCBKb3Jk YW4gTCA8am9yZGFuLmwuanVzdGVuQGludGVsLmNvbT47IE1hY2llaiBSYWJlZGEgPG1hY2llai5y YWJlZGFAbGludXguaW50ZWwuY29tPjsgV3UsIEppYXhpbiA8amlheGluLnd1QGludGVsLmNvbT47 IEZ1LCBTaXl1YW4gPHNpeXVhbi5mdUBpbnRlbC5jb20+OyBXYW5nLCBKaWFuIEogPGppYW4uai53 YW5nQGludGVsLmNvbT47IFd1LCBIYW8gQSA8aGFvLmEud3VAaW50ZWwuY29tPjsgQW5kcmV3IEZp c2ggPGFmaXNoQGFwcGxlLmNvbT47IE5pLCBSYXkgPHJheS5uaUBpbnRlbC5jb20+OyBMdSwgWGlh b3l1WCA8eGlhb3l1eC5sdUBpbnRlbC5jb20+OyBBcmQgQmllc2hldXZlbCA8YXJkLmJpZXNoZXV2 ZWxAYXJtLmNvbT47IExlaWYgTGluZGhvbG0gPGxlaWZAbnV2aWFpbmMuY29tPg0KU3ViamVjdDog UkU6IFtQQVRDSCAwMC8xNV0gQWRkIGEgcGx1Z2luIExpY2Vuc2VDaGVjayBpbiBvcGVuIGNpDQoN CkhpIExpbWluZywNCg0KVGhlcmUgYXJlIGV4Y2VwdGlvbiB0byBQYXRjaENoZWNrIGFzIHdlbGwg Zm9yIGxpbmUgZW5kaW5ncyBhbmQgdGFicy4NCg0KU2VlbXMgbGlrZSBhIHNpbWlsYXIgcHJvYmxl bSwgYW5kIGEgc2luZ2xlIENJIHBsdWdpbiBjb3VsZCBzdXBwb3J0IGFsbCB0aGVzZSBjYXNlcy4N Cg0KTWlrZQ0KDQo+IC0tLS0tT3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+IEZyb206IEdhbywgTGlt aW5nIDxsaW1pbmcuZ2FvQGludGVsLmNvbT4NCj4gU2VudDogVHVlc2RheSwgSnVseSAyOCwgMjAy MCA2OjEyIFBNDQo+IFRvOiBLaW5uZXksIE1pY2hhZWwgRCA8bWljaGFlbC5kLmtpbm5leUBpbnRl bC5jb20+OyBaaGFuZywgU2hlbmdsZWkgDQo+IDxzaGVuZ2xlaS56aGFuZ0BpbnRlbC5jb20+OyBk ZXZlbEBlZGsyLmdyb3Vwcy5pbw0KPiBDYzogU2VhbiBCcm9nYW4gPHNlYW4uYnJvZ2FuQG1pY3Jv c29mdC5jb20+OyBCcmV0IEJhcmtlbGV3IA0KPiA8QnJldC5CYXJrZWxld0BtaWNyb3NvZnQuY29t PjsgRG9uZywgRXJpYyA8ZXJpYy5kb25nQGludGVsLmNvbT47IA0KPiBMYXN6bG8gRXJzZWsgPGxl cnNla0ByZWRoYXQuY29tPjsgR2FvLCBaaGljaGFvIA0KPiA8emhpY2hhby5nYW9AaW50ZWwuY29t PjsgWWFvLCBKaWV3ZW4gPGppZXdlbi55YW9AaW50ZWwuY29tPjsgQ2hhbyANCj4gWmhhbmcgPGNo YW8uYi56aGFuZ0BpbnRlbC5jb20+OyBKdXN0ZW4sIEpvcmRhbiBMIA0KPiA8am9yZGFuLmwuanVz dGVuQGludGVsLmNvbT47IE1hY2llaiBSYWJlZGEgDQo+IDxtYWNpZWoucmFiZWRhQGxpbnV4Lmlu dGVsLmNvbT47IFd1LCBKaWF4aW4gPGppYXhpbi53dUBpbnRlbC5jb20+OyBGdSwgDQo+IFNpeXVh biA8c2l5dWFuLmZ1QGludGVsLmNvbT47IFdhbmcsIEppYW4gSiA8amlhbi5qLndhbmdAaW50ZWwu Y29tPjsgDQo+IFd1LCBIYW8gQSA8aGFvLmEud3VAaW50ZWwuY29tPjsgQW5kcmV3IEZpc2ggPGFm aXNoQGFwcGxlLmNvbT47IE5pLCBSYXkgDQo+IDxyYXkubmlAaW50ZWwuY29tPjsgTHUsIFhpYW95 dVggPHhpYW95dXgubHVAaW50ZWwuY29tPjsgQXJkIEJpZXNoZXV2ZWwgDQo+IDxhcmQuYmllc2hl dXZlbEBhcm0uY29tPjsgTGVpZiBMaW5kaG9sbSA8bGVpZkBudXZpYWluYy5jb20+OyBHYW8sIA0K PiBMaW1pbmcgPGxpbWluZy5nYW9AaW50ZWwuY29tPg0KPiBTdWJqZWN0OiBSRTogW1BBVENIIDAw LzE1XSBBZGQgYSBwbHVnaW4gTGljZW5zZUNoZWNrIGluIG9wZW4gY2kNCj4gDQo+IE1pa2U6DQo+ ICAgUHJldmlvdXMgZGlzY3Vzc2lvbg0KPiAoaHR0cHM6Ly9lZGsyLmdyb3Vwcy5pby9nL2RldmVs L21lc3NhZ2UvNjI0OTQpIGlzIHRvIHJldmVydCB0aGUgDQo+IGxpY2Vuc2UgY2hlY2sgY2hhbmdl IGluIFBhdGNoQ2hlY2ssIGFuZCBlbmFibGUgbGljZW5zZSBjaGVjayBhcyANCj4gcGx1Z2luLiBJ ZiBzbywgdGhlIHBhY2thZ2UgbWFpbnRhaW5lcnMgY2FuIGNvbmZpZ3VyZSB0aGUgcGFja2FnZSBs ZXZlbCANCj4gZXhjZXB0aW9uIGxpc3QgdG8gYWxsb3cgc29tZSBzcGVjaWFsIGNhc2VzLCBzdWNo IGFzIGF1dG9nZW4gZmlsZS4NCj4gDQo+IFRoYW5rcw0KPiBMaW1pbmcNCj4gLS0tLS1PcmlnaW5h bCBNZXNzYWdlLS0tLS0NCj4gRnJvbTogS2lubmV5LCBNaWNoYWVsIEQgPG1pY2hhZWwuZC5raW5u ZXlAaW50ZWwuY29tPg0KPiBTZW50OiAyMDIw5bm0N+aciDI55pelIDc6MzQNCj4gVG86IFpoYW5n LCBTaGVuZ2xlaSA8c2hlbmdsZWkuemhhbmdAaW50ZWwuY29tPjsgZGV2ZWxAZWRrMi5ncm91cHMu aW87IA0KPiBLaW5uZXksIE1pY2hhZWwgRCA8bWljaGFlbC5kLmtpbm5leUBpbnRlbC5jb20+DQo+ IENjOiBTZWFuIEJyb2dhbiA8c2Vhbi5icm9nYW5AbWljcm9zb2Z0LmNvbT47IEJyZXQgQmFya2Vs ZXcgDQo+IDxCcmV0LkJhcmtlbGV3QG1pY3Jvc29mdC5jb20+OyBEb25nLCBFcmljIDxlcmljLmRv bmdAaW50ZWwuY29tPjsgDQo+IExhc3psbyBFcnNlayA8bGVyc2VrQHJlZGhhdC5jb20+OyBHYW8s IFpoaWNoYW8gDQo+IDx6aGljaGFvLmdhb0BpbnRlbC5jb20+OyBZYW8sIEppZXdlbiA8amlld2Vu Lnlhb0BpbnRlbC5jb20+OyBDaGFvIA0KPiBaaGFuZyA8Y2hhby5iLnpoYW5nQGludGVsLmNvbT47 IEp1c3RlbiwgSm9yZGFuIEwgDQo+IDxqb3JkYW4ubC5qdXN0ZW5AaW50ZWwuY29tPjsgTWFjaWVq IFJhYmVkYSANCj4gPG1hY2llai5yYWJlZGFAbGludXguaW50ZWwuY29tPjsgV3UsIEppYXhpbiA8 amlheGluLnd1QGludGVsLmNvbT47IEZ1LCANCj4gU2l5dWFuIDxzaXl1YW4uZnVAaW50ZWwuY29t PjsgR2FvLCBMaW1pbmcgPGxpbWluZy5nYW9AaW50ZWwuY29tPjsgDQo+IFdhbmcsIEppYW4gSiA8 amlhbi5qLndhbmdAaW50ZWwuY29tPjsgV3UsIEhhbyBBIDxoYW8uYS53dUBpbnRlbC5jb20+OyAN Cj4gQW5kcmV3IEZpc2ggPGFmaXNoQGFwcGxlLmNvbT47IE5pLCBSYXkgPHJheS5uaUBpbnRlbC5j b20+OyBMdSwgWGlhb3l1WCANCj4gPHhpYW95dXgubHVAaW50ZWwuY29tPjsgQXJkIEJpZXNoZXV2 ZWwgPGFyZC5iaWVzaGV1dmVsQGFybS5jb20+OyBMZWlmIA0KPiBMaW5kaG9sbSA8bGVpZkBudXZp YWluYy5jb20+DQo+IFN1YmplY3Q6IFJFOiBbUEFUQ0ggMDAvMTVdIEFkZCBhIHBsdWdpbiBMaWNl bnNlQ2hlY2sgaW4gb3BlbiBjaQ0KPiANCj4gQ0kgYWxyZWFkeSBydW5zIFBhdGNoQ2hlY2suICBJ ZiB3ZSBwb3J0ZWQgUGF0Y2hDaGVjayB0byBhIENJIHBsdWdpbiwgDQo+IHRoZW4gdGhlIHBsdWdp biBjb3VsZCBwZXJmb3JtIGJvdGggdGhlIGN1cnJlbnQgUGF0Y2hDaGVjayBmZWF0dXJlcyBhbmQg DQo+IHRoZSBsaWNlbnNlIGNoZWNrLg0KPiANCj4gV2hhdCB0aGlzIG9wdGlvbiBldmFsdWF0ZWQ/ DQo+IA0KPiBJZiB3ZSBkaWQgcHJvdmlkZSBQYXRjaENoZWNrIGFzIGEgQ0kgcGx1Z2luLCBkZXZl bG9wZXJzIEkgYmVsaWV2ZSANCj4gZGV2ZWxvcGVycyBjb3VsZCBydW4gYSBzdHVhcnQgY29tbWFu ZCBsaWtlbHkgZm9yIHRoZSBOT09QVCB0YXJnZXQgdG8gDQo+IHJ1biBhIFBhdGNoQ2hlY2sgQ0kg cGx1Z2luIGxvY2FsbHkuDQo+IA0KPiBUaGFua3MsDQo+IA0KPiBNaWtlDQo+IA0KPiA+IC0tLS0t T3JpZ2luYWwgTWVzc2FnZS0tLS0tDQo+ID4gRnJvbTogWmhhbmcsIFNoZW5nbGVpIDxzaGVuZ2xl aS56aGFuZ0BpbnRlbC5jb20+DQo+ID4gU2VudDogTW9uZGF5LCBKdWx5IDIwLCAyMDIwIDE6Mzcg QU0NCj4gPiBUbzogZGV2ZWxAZWRrMi5ncm91cHMuaW8NCj4gPiBDYzogS2lubmV5LCBNaWNoYWVs IEQgPG1pY2hhZWwuZC5raW5uZXlAaW50ZWwuY29tPjsNCj4gU2VhbiBCcm9nYW4NCj4gPiA8c2Vh bi5icm9nYW5AbWljcm9zb2Z0LmNvbT47IEJyZXQgQmFya2VsZXcgDQo+ID4gPEJyZXQuQmFya2Vs ZXdAbWljcm9zb2Z0LmNvbT47IERvbmcsIEVyaWMNCj4gPGVyaWMuZG9uZ0BpbnRlbC5jb20+Ow0K PiA+IExhc3psbyBFcnNlayA8bGVyc2VrQHJlZGhhdC5jb20+OyBHYW8sIFpoaWNoYW8gDQo+ID4g PHpoaWNoYW8uZ2FvQGludGVsLmNvbT47IFlhbywgSmlld2VuDQo+IDxqaWV3ZW4ueWFvQGludGVs LmNvbT47IENoYW8NCj4gPiBaaGFuZyA8Y2hhby5iLnpoYW5nQGludGVsLmNvbT47IEp1c3Rlbiwg Sm9yZGFuIEwgDQo+ID4gPGpvcmRhbi5sLmp1c3RlbkBpbnRlbC5jb20+OyBNYWNpZWogUmFiZWRh IA0KPiA+IDxtYWNpZWoucmFiZWRhQGxpbnV4LmludGVsLmNvbT47IFd1LCBKaWF4aW4NCj4gPGpp YXhpbi53dUBpbnRlbC5jb20+OyBGdSwNCj4gPiBTaXl1YW4gPHNpeXVhbi5mdUBpbnRlbC5jb20+ OyBHYW8sIExpbWluZw0KPiA8bGltaW5nLmdhb0BpbnRlbC5jb20+Ow0KPiA+IFdhbmcsIEppYW4g SiA8amlhbi5qLndhbmdAaW50ZWwuY29tPjsgV3UsIEhhbyBBDQo+IDxoYW8uYS53dUBpbnRlbC5j b20+Ow0KPiA+IEFuZHJldyBGaXNoIDxhZmlzaEBhcHBsZS5jb20+OyBOaSwgUmF5DQo+IDxyYXku bmlAaW50ZWwuY29tPjsgTHUsIFhpYW95dVgNCj4gPiA8eGlhb3l1eC5sdUBpbnRlbC5jb20+OyBB cmQgQmllc2hldXZlbA0KPiA8YXJkLmJpZXNoZXV2ZWxAYXJtLmNvbT47IExlaWYNCj4gPiBMaW5k aG9sbSA8bGVpZkBudXZpYWluYy5jb20+DQo+ID4gU3ViamVjdDogW1BBVENIIDAwLzE1XSBBZGQg YSBwbHVnaW4gTGljZW5zZUNoZWNrIGluDQo+IG9wZW4gY2kNCj4gPg0KPiA+IFJFRjoNCj4gaHR0 cHM6Ly9idWd6aWxsYS50aWFub2NvcmUub3JnL3Nob3dfYnVnLmNnaT9pZD0yNjkxDQo+ID4gUkVG Og0KPiBodHRwczovL2J1Z3ppbGxhLnRpYW5vY29yZS5vcmcvc2hvd19idWcuY2dpP2lkPTI4MzMN Cj4gPiBMaWNlbnNlQ2hlY2sgaXMgbm93IGVuYWJsZWQgaW4gUGF0Y2hDaGVjay5weS4gQnV0DQo+ IHRoZXJlJ3MgYSBwYXRjaA0KPiA+ICJSZXZlcnQgJ0Jhc2VUb29scy9QYXRjaENoZWNrLnB5OiBB ZGQgTGljZW5zZUNoZWNrJyINCj4gPiB0byBzdWdnZXN0IHJldmVydCB0aGUgY2hhbmdlLlRoZXNl IHBhdGNoIHNlcmllcw0KPiBpbnRyb2R1Y2UgYSBwbHVnaW4NCj4gPiBMaWNlbnNlQ2hlY2sgaW50 byBvcGVuIGNpIHNvIHRoYXQgbGljZW5zZSBpc3N1ZXMgY2FuDQo+IHN0aWxsIGJlIGNoZWNrZWQN Cj4gPiBhZnRlciB0aGUgY2hlY2tlciBpcyBkaXNhYmxlZCBpbiBQYXRjaENoZWNrLnB5Lg0KPiA+ IDEvMTUgaXMgdGhlIHBsdWdpbiBpbXBsZW1lbnRhdGlvbi4NCj4gPiAyLzE1IH4gMTUvMTUgaW50 cm9kdWNlIHNlY3Rpb25zICJJZ25vcmVGaWxlcyIgdG8gYWxsb3cNCj4gZGV2ZWxvcGVycyB0bw0K PiA+IHNraXAgbGljZW5zZSBjaGVjayBmb3Igc29tZSBmaWxlcyBsaWtlIGdlbmVyYXRlZA0KPiBm aWxlcy4NCj4gPg0KPiA+IE9ubHkgQlNELTItQ2xhdXNlLVBhdGVudCBhbmQgQlNELTMtQ2xhdXNl LVBhdGVudCBjYW4NCj4gcGFzcyB0aGlzDQo+ID4gY2hlY2tlci4NCj4gPg0KPiA+IENjOiBNaWNo YWVsIEQgS2lubmV5IDxtaWNoYWVsLmQua2lubmV5QGludGVsLmNvbT4NCj4gPiBDYzogU2VhbiBC cm9nYW4gPHNlYW4uYnJvZ2FuQG1pY3Jvc29mdC5jb20+DQo+ID4gQ2M6IEJyZXQgQmFya2VsZXcg PEJyZXQuQmFya2VsZXdAbWljcm9zb2Z0LmNvbT4NCj4gPiBDYzogRXJpYyBEb25nIDxlcmljLmRv bmdAaW50ZWwuY29tPg0KPiA+IENjOiBMYXN6bG8gRXJzZWsgPGxlcnNla0ByZWRoYXQuY29tPg0K PiA+IENjOiBaaGljaGFvIEdhbyA8emhpY2hhby5nYW9AaW50ZWwuY29tPg0KPiA+IENjOiBKaWV3 ZW4gWWFvIDxqaWV3ZW4ueWFvQGludGVsLmNvbT4NCj4gPiBDYzogQ2hhbyBaaGFuZyA8Y2hhby5i LnpoYW5nQGludGVsLmNvbT4NCj4gPiBDYzogSm9yZGFuIEp1c3RlbiA8am9yZGFuLmwuanVzdGVu QGludGVsLmNvbT4NCj4gPiBDYzogTWFjaWVqIFJhYmVkYSA8bWFjaWVqLnJhYmVkYUBsaW51eC5p bnRlbC5jb20+DQo+ID4gQ2M6IEppYXhpbiBXdSA8amlheGluLnd1QGludGVsLmNvbT4NCj4gPiBD YzogU2l5dWFuIEZ1IDxzaXl1YW4uZnVAaW50ZWwuY29tPg0KPiA+IENjOiBMaW1pbmcgR2FvIDxs aW1pbmcuZ2FvQGludGVsLmNvbT4NCj4gPiBDYzogSmlhbiBKIFdhbmcgPGppYW4uai53YW5nQGlu dGVsLmNvbT4NCj4gPiBDYzogSGFvIEEgV3UgPGhhby5hLnd1QGludGVsLmNvbT4NCj4gPiBDYzog Sm9yZGFuIEp1c3RlbiA8am9yZGFuLmwuanVzdGVuQGludGVsLmNvbT4NCj4gPiBDYzogQW5kcmV3 IEZpc2ggPGFmaXNoQGFwcGxlLmNvbT4NCj4gPiBDYzogUmF5IE5pIDxyYXkubmlAaW50ZWwuY29t Pg0KPiA+IENjOiBKaWFuIEogV2FuZyA8amlhbi5qLndhbmdAaW50ZWwuY29tPg0KPiA+IENjOiBY aWFveXUgTHUgPHhpYW95dXgubHVAaW50ZWwuY29tPg0KPiA+IENjOiBBcmQgQmllc2hldXZlbCA8 YXJkLmJpZXNoZXV2ZWxAYXJtLmNvbT4NCj4gPiBDYzogTGVpZiBMaW5kaG9sbSA8bGVpZkBudXZp YWluYy5jb20+IFNoZW5nbGVpIFpoYW5nICgxNSk6DQo+ID4gICAucHl0b29sL1BsdWdpbjogQWRk IGEgcGx1Z2luIExpY2Vuc2VDaGVjaw0KPiA+ICAgRmF0UGtnL0ZhdFBrZy5jaS55YW1sOiBBZGQg Y29uZmlndXJhdGlvbiBmb3INCj4gTGljZW5zZUNoZWNrDQo+ID4gICBBcm1WaXJ0UGtnL0FybVZp cnRQa2cuY2kueWFtbDogQWRkIGNvbmZpZ3VyYXRpb24gZm9yDQo+IExpY2Vuc2VDaGVjaw0KPiA+ ICAgQ3J5cHRvUGtnL0NyeXB0b1BrZy5jaS55YW1sOiBBZGQgY29uZmlndXJhdGlvbiBmb3INCj4g TGljZW5zZUNoZWNrDQo+ID4gICBFbXVsYXRvclBrZy9FbXVsYXRvclBrZy5jaS55YW1sOiBBZGQg Y29uZmlndXJhdGlvbg0KPiBmb3IgTGljZW5zZUNoZWNrDQo+ID4gICBGbXBEZXZpY2VQa2cvRm1w RGV2aWNlUGtnLmNpLnlhbWw6IEFkZCBjb25maWd1cmF0aW9uDQo+IGZvcg0KPiA+IExpY2Vuc2VD aGVjaw0KPiA+ICAgTWRlTW9kdWxlUGtnL01kZU1vZHVsZVBrZy5jaS55YW1sOiBBZGQgY29uZmln dXJhdGlvbg0KPiBmb3INCj4gPiBMaWNlbnNlQ2hlY2sNCj4gPiAgIE1kZVBrZy9NZGVQa2cuY2ku eWFtbDogQWRkIGNvbmZpZ3VyYXRpb24gZm9yDQo+IExpY2Vuc2VDaGVjaw0KPiA+ICAgTmV0d29y a1BrZy9OZXR3b3JrUGtnLmNpLnlhbWw6IEFkZCBjb25maWd1cmF0aW9uIGZvcg0KPiBMaWNlbnNl Q2hlY2sNCj4gPiAgIE92bWZQa2cvT3ZtZlBrZy5jaS55YW1sOiBBZGQgY29uZmlndXJhdGlvbiBm b3INCj4gTGljZW5zZUNoZWNrDQo+ID4gICBQY0F0Q2hpcHNldFBrZy9QY0F0Q2hpcHNldFBrZy5j aS55YW1sOiBBZGQNCj4gY29uZmlndXJhdGlvbiBmb3INCj4gPiAgICAgTGljZW5zZUNoZWNrDQo+ ID4gICBTZWN1cml0eVBrZy9TZWN1cml0eVBrZy5jaS55YW1sOiBBZGQgY29uZmlndXJhdGlvbg0K PiBmb3IgTGljZW5zZUNoZWNrDQo+ID4gICBTaGVsbFBrZy9TaGVsbFBrZy5jaS55YW1sOiBBZGQg Y29uZmlndXJhdGlvbiBmb3INCj4gTGljZW5zZUNoZWNrDQo+ID4gICBVZWZpQ3B1UGtnL1VlZmlD cHVQa2cuY2kueWFtbDogQWRkIGNvbmZpZ3VyYXRpb24gZm9yDQo+IExpY2Vuc2VDaGVjaw0KPiA+ ICAgVW5pdFRlc3RGcmFtZXdvcmtQa2c6IEFkZCBjb25maWd1cmF0aW9uIGZvcg0KPiBMaWNlbnNl Q2hlY2sgaW4geWFtbA0KPiA+IGZpbGUNCj4gPg0KPiA+ICAucHl0b29sL1BsdWdpbi9MaWNlbnNl Q2hlY2svTGljZW5zZUNoZWNrLnB5ICAgfCAxMTgNCj4gPiArKysrKysrKysrKysrKysrKysNCj4g PiAgLi4uL0xpY2Vuc2VDaGVjay9MaWNlbnNlQ2hlY2tfcGx1Z19pbi55YW1sICAgIHwgIDExDQo+ ICsrDQo+ID4gIC5weXRvb2wvUGx1Z2luL0xpY2Vuc2VDaGVjay9SZWFkbWUubWQgICAgICAgICB8 ICAxNw0KPiArKysNCj4gPiAgQXJtVmlydFBrZy9Bcm1WaXJ0UGtnLmNpLnlhbWwgICAgICAgICAg ICAgICAgIHwgICA0ICsNCj4gPiAgQ3J5cHRvUGtnL0NyeXB0b1BrZy5jaS55YW1sICAgICAgICAg ICAgICAgICAgIHwgICAzICsNCj4gPiAgRW11bGF0b3JQa2cvRW11bGF0b3JQa2cuY2kueWFtbCAg ICAgICAgICAgICAgIHwgICA0ICsNCj4gPiAgRmF0UGtnL0ZhdFBrZy5jaS55YW1sICAgICAgICAg ICAgICAgICAgICAgICAgIHwgICAzICsNCj4gPiAgRm1wRGV2aWNlUGtnL0ZtcERldmljZVBrZy5j aS55YW1sICAgICAgICAgICAgIHwgICAzICsNCj4gPiAgTWRlTW9kdWxlUGtnL01kZU1vZHVsZVBr Zy5jaS55YW1sICAgICAgICAgICAgIHwgICA0ICsNCj4gPiAgTWRlUGtnL01kZVBrZy5jaS55YW1s ICAgICAgICAgICAgICAgICAgICAgICAgIHwgICA0ICsNCj4gPiAgTmV0d29ya1BrZy9OZXR3b3Jr UGtnLmNpLnlhbWwgICAgICAgICAgICAgICAgIHwgICAzICsNCj4gPiAgT3ZtZlBrZy9Pdm1mUGtn LmNpLnlhbWwgICAgICAgICAgICAgICAgICAgICAgIHwgICA0ICsNCj4gPiAgUGNBdENoaXBzZXRQ a2cvUGNBdENoaXBzZXRQa2cuY2kueWFtbCAgICAgICAgIHwgICAzICsNCj4gPiAgU2VjdXJpdHlQ a2cvU2VjdXJpdHlQa2cuY2kueWFtbCAgICAgICAgICAgICAgIHwgICAzICsNCj4gPiAgU2hlbGxQ a2cvU2hlbGxQa2cuY2kueWFtbCAgICAgICAgICAgICAgICAgICAgIHwgICAzICsNCj4gPiAgVWVm aUNwdVBrZy9VZWZpQ3B1UGtnLmNpLnlhbWwgICAgICAgICAgICAgICAgIHwgICAzICsNCj4gPiAg Li4uL1VuaXRUZXN0RnJhbWV3b3JrUGtnLmNpLnlhbWwgICAgICAgICAgICAgIHwgICA0ICsNCj4g PiAgMTcgZmlsZXMgY2hhbmdlZCwgMTk0IGluc2VydGlvbnMoKykgIGNyZWF0ZSBtb2RlIDEwMDY0 NCANCj4gPiAucHl0b29sL1BsdWdpbi9MaWNlbnNlQ2hlY2svTGljZW5zZUNoZWNrLnB5DQo+ID4g IGNyZWF0ZSBtb2RlIDEwMDY0NA0KPiA+IC5weXRvb2wvUGx1Z2luL0xpY2Vuc2VDaGVjay9MaWNl bnNlQ2hlY2tfcGx1Z19pbi55YW1sDQo+ID4gIGNyZWF0ZSBtb2RlIDEwMDY0NA0KPiA+IC5weXRv b2wvUGx1Z2luL0xpY2Vuc2VDaGVjay9SZWFkbWUubWQNCj4gPg0KPiA+IC0tDQo+ID4gMi4xOC4w LndpbmRvd3MuMQ0KDQo=