From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by mx.groups.io with SMTP id smtpd.web10.1649.1613615665598185965 for ; Wed, 17 Feb 2021 18:34:26 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@intel.onmicrosoft.com header.s=selector2-intel-onmicrosoft-com header.b=FvBIyrPY; spf=pass (domain: intel.com, ip: 192.55.52.120, mailfrom: heng.luo@intel.com) IronPort-SDR: OqQXFgorbniyJIz78256j7DTYUwuzwVI4WwxIiUPYum+fHCiXYnvW5Jy2EcIG7LvipNScUvCdN QKYvmUFDSr2Q== X-IronPort-AV: E=McAfee;i="6000,8403,9898"; a="180818860" X-IronPort-AV: E=Sophos;i="5.81,185,1610438400"; d="scan'208";a="180818860" Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by fmsmga104.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Feb 2021 18:34:25 -0800 IronPort-SDR: sSZSDhDGHtS97ohYPAavFrs+TKt8pL4gpT5YqhHPJp8ZDJ/oh7CXMfSZtf8QB88vNF0EC54DyI Ol3lIYTd972A== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.81,185,1610438400"; d="scan'208";a="426999899" Received: from fmsmsx602.amr.corp.intel.com ([10.18.126.82]) by FMSMGA003.fm.intel.com with ESMTP; 17 Feb 2021 18:34:25 -0800 Received: from fmsmsx609.amr.corp.intel.com (10.18.126.89) by fmsmsx602.amr.corp.intel.com (10.18.126.82) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2; Wed, 17 Feb 2021 18:34:24 -0800 Received: from fmsmsx607.amr.corp.intel.com (10.18.126.87) by fmsmsx609.amr.corp.intel.com (10.18.126.89) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2; Wed, 17 Feb 2021 18:34:24 -0800 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) by fmsmsx607.amr.corp.intel.com (10.18.126.87) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2106.2 via Frontend Transport; Wed, 17 Feb 2021 18:34:24 -0800 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (104.47.55.168) by edgegateway.intel.com (192.55.55.68) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2106.2; Wed, 17 Feb 2021 18:34:23 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=UozJTUmdpJFDowP07Fu2w83HXirhHM1m5tJ8nfBTavrkc2bPusq4srBoqYcTSl3wt5aCeM4NREL8YP5hJw4Wwod9m4eL2nJ5mZc9CaNWsVNOr8rmwK/2/5IDMiPoFRNY7u457EjGHdlcP64F4eQUDZc5YIlXdqRAe7l0jjghwTsHaQdB586PEwnuZs0QcN4Ea/ZVEr47XwloNg5pLWfowPwUvM9CoOFW8c/EcXDEbAGIQwV/uJgel5T7KBxccIqtbQRB6JQL1kjAKCsLvAzULJjwfC/EiepR/mn0wJWaPzyxf8sUhHZAviKvSACj/sv5InYyMLXc4JSMSH2Cz/s42Q== 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=l7OeZzPrn89giceC4LYjA9PQVztcFMQAoEPMihHQteE=; b=FAQYW2vw185Kq4qIp7S1hG9pLpPYIwEXQQUgsFQeKZGBJGe9VWuJoI7PPsL4BED7VKfSaE4FUJXjED8koaaK2WlbfiSLnnsw4p83c4oWXTZBeoYgDzB3ggfavd71IzRWLY8MSifMjra4QH0ImF0NXmbGBjH17YdLBvYUR9h85hCZFeN4zoB/eC/Xmw/8GbQU35tXPwsbJM1e10GhoVwb9nCD/oRlnSQVGMJXkxjWEa5RcJ/cY938L2u0FnN7Dix3eJBh+y8o3eu9K+72Uh6YV6Wn+Ssc9RE4F4Rtglfby5MfSLCA50/dAPc8/rvHYzHV6eOUh9t2XeQsgUd/icLUMg== 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=l7OeZzPrn89giceC4LYjA9PQVztcFMQAoEPMihHQteE=; b=FvBIyrPYWg7PEPf3Wn8ODCSMoGxuCvhgKEz4k3grG2SMv6iK3NbuaMGDKLhk+3MtioE2TkHkKkflklpSDBmDiBnvpssFCm0sp9FmNJ3rB9pUpeZzMFdmpRTrqiJhqYzsVpyYGQvtnIdGwWLMw01Gidnu1C6sCweJUdK/imfoMoo= Received: from MWHPR11MB1805.namprd11.prod.outlook.com (2603:10b6:300:114::14) by CO1PR11MB5123.namprd11.prod.outlook.com (2603:10b6:303:94::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3846.25; Thu, 18 Feb 2021 02:34:21 +0000 Received: from MWHPR11MB1805.namprd11.prod.outlook.com ([fe80::c4cd:d1da:d205:3720]) by MWHPR11MB1805.namprd11.prod.outlook.com ([fe80::c4cd:d1da:d205:3720%7]) with mapi id 15.20.3846.042; Thu, 18 Feb 2021 02:34:21 +0000 From: "Heng Luo" To: Takuto Naito , "devel@edk2.groups.io" CC: "Chaganty, Rangasai V" , "Desimone, Nathaniel L" Subject: Re: [PATCH edk2-platforms v1 1/1] TigerlakeOpenBoardPkg/TigerlakeURvp: Fix build errors with GCC5 Thread-Topic: [PATCH edk2-platforms v1 1/1] TigerlakeOpenBoardPkg/TigerlakeURvp: Fix build errors with GCC5 Thread-Index: AQHXAunBx3OUZCzg6U+5pRkVuExowapdLhAw Date: Thu, 18 Feb 2021 02:34:21 +0000 Message-ID: References: <20210214155333.21424-1-naitaku@gmail.com> In-Reply-To: <20210214155333.21424-1-naitaku@gmail.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.5.1.3 authentication-results: gmail.com; dkim=none (message not signed) header.d=none;gmail.com; dmarc=none action=none header.from=intel.com; x-originating-ip: [192.102.204.37] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: b9dda8cf-0522-4f4d-d6f3-08d8d3b5b30a x-ms-traffictypediagnostic: CO1PR11MB5123: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: iqU4x+Bg+K4SnkPX7AWtuK8Nov7uy2MMACf1iaxnZTKB6Op1w20cJBS6q3sn0EJOHoUnDW5GppKVSHj4vGwKrtAfLwflIcOElhGlhm4YxELEvdSE++WLIRwWQujGkBB5Bu6+ir6m7Lr9lrDYT/aW2YlopvrzBtXB1kwICpooUR8CEO8vk9iQSqNocsFxbA4ja40BqGtwEphWrUrFFR+NHBMcHBtWIXsoZDNrBYHlFiDmAEXiqkSN5qTgcE8gSFJGKT131sDKBzQy+8GsPWFVfZVYPx1C+2S3IMJEb6aZmpYZGUbKwlwmKIbT6NzExq1ZH7mZvdFCA5onqpGNH4YbSLGltRFJyY3VCaSws7uFHni1t0frxL+OEY15QM/CafAuY7r2Iqwc/sp91zseJJPfiqur8IIw2MC9WbZTwa0CnFm1lyiy+TQ1oN2X/FoDjDJ3n1qz8aSfrdnNJT/RmzulMT0KojN1eznPH/XSdw3pCMpooL5ZPzXuu1gjc7VVnJPiXCPqneVJ8tLerEeHro6XNUbuvj3qD0nn47UHcSPufhbOGtm7uentRDXs45gs1/I1RkuQHGOVe+qshhoEMX1XeCoh9uRAbtIcPIw2EX/K81U= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MWHPR11MB1805.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(376002)(39860400002)(346002)(136003)(396003)(366004)(26005)(8676002)(2906002)(66946007)(316002)(19627235002)(55016002)(83380400001)(7696005)(86362001)(186003)(54906003)(110136005)(478600001)(9686003)(5660300002)(966005)(66446008)(52536014)(64756008)(53546011)(66556008)(66476007)(6506007)(30864003)(4326008)(76116006)(8936002)(71200400001)(33656002)(107886003);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: =?utf-8?B?VnBGTXA5aVZ5ekM0emNsSExNUkJXRDhmUUp6dCs2U01vaHcrTXlHRjgzVFI5?= =?utf-8?B?dkt2MUl3SDg0cXFKUUhhaUtSc1BDcGNYN3FOcjZyY2Fad2xETVdaWG5aejI4?= =?utf-8?B?VEVyTE0raVRIVEVicytneERQTStCZksrYkVuUTkrUndwQmNoOTAzQzNvZDBl?= =?utf-8?B?M0JFQXVZblJ5VEQrVURNSVFlY2NUSGdpaUdJS0FuSG56VlRVZTlPbVI4WVdr?= =?utf-8?B?TDh2SFlROGVPallSM2RtMFRSSG1HYVJ4SXFNcDM1Z0Z4UFhqek1XNTkxN0Ry?= =?utf-8?B?K2lOdDBYUUNSZVViQW9ObFpnRzl4bDEyakc2VDhVZ25RUUxWWHgyRU5zL3V6?= =?utf-8?B?ekNpaUh0dHo4cGVmSjJyMUxCWGFuWlduNjBkTW9CU3hnc21PL2lJUXk3SVha?= =?utf-8?B?Y2RkRlY2SUZMVzBiWGc2NU5JYmxXdXVCUXdrS0JEUm1KWS9vZlhKbFlXVk1X?= =?utf-8?B?OFlXQ1JJcGVmcUJBd1V3bk9Cdk8wV2NuWFo4ekk3UDRMaHZsV0VWTkRzUnRI?= =?utf-8?B?QnUwNW92ZXlBVVpRRlY5blBvR1Q1Szd3S0x0Z01FRDhRbkFxUFp4S1BXN0hK?= =?utf-8?B?TEMzWUFRUWh3NnpsSk82QVByK3EwT0dPZEV6b1pBMXY1SHFOVVpmR2N6ZDFj?= =?utf-8?B?bFpnVzNYWHc5YS94WHorNTdTQ3VaMmUvcHlIdERaYWhndVc5MmFXb3kraDdK?= =?utf-8?B?Ym1ya3FCTDI1Tkh5akhpeDdGU1Z0NGYwRFRianVmcGJUbWFSeVdKZGR3aWZK?= =?utf-8?B?SDJiVDlEQ2daZzA4dHdXOGtiS3pHSVhxdXZqSXhvMjRndXJKMEpFUmhGKzRR?= =?utf-8?B?MmIvV3hDWVdOdDdiV2FQZ0l6UUJGY1k1OC9BeWt1cGhpRDJucXJ6VzZpbWNN?= =?utf-8?B?ZnU1OFRITTlsb0ZjNERsMUF0YmprUlZGM2VQTXJTTE80TjRoMmIzY1hvK3dL?= =?utf-8?B?K3lGSHA5RTRQbTV1eVFUVVZGY00vNkpiYkpvSHRHdTRRY0tSTEFrSUQ4WU5S?= =?utf-8?B?VUd4TTBpUUx2eTRYYU13dnpZcVJtYU5LYVJwTjFOMWQ0VDBQU0Frd2pVdDha?= =?utf-8?B?K3BjWFBOWG1PL212d1daV3ZvbkxoYUM4Z0RrY3pLYzhVSm1jZ1RpOUxhM082?= =?utf-8?B?ZlJBcHFBMGVhT1MzWCs2OGcxdityZHB2QjBOV00vcnVER0RGTk5pRVFEWEhx?= =?utf-8?B?VUR2REVzN3R4RzBnTWhnbHl6aHNCK3Zka3NKSlN2Y1F0SWhOZy94VWsrY1NW?= =?utf-8?B?L0kyVUYxN3JFZjJaY0htVEthUzJpckRpMTZCbWFMNGp3RFk4akJja2tjYmtx?= =?utf-8?B?Y0NnaVJIQlJzdnhrVnNmbzFJVWZ0WURoSW5LNTBNaDVIZVhrRkR0QVBud0s3?= =?utf-8?B?Z1JzTGswN0sxUFgzWUd0V3cxZ1A3MG5ObTVNeWFoSThiMGhsK0pZd2pwc1Yx?= =?utf-8?B?emE5eUlzcW9aQks1NE05ZnJ5S1F6ZUFoRVJSK3JwWGpYcjJ0S25JOXNVeEl5?= =?utf-8?B?alZzWUxvMWx6bVpxb2dzVWVpd1ZJaHpIVXl1ZkdTaUFha3hZQWdGdXJRTC9x?= =?utf-8?B?aWNTZWFLU1I3dFpnZFBML1paZjlFTlQ3M1FlOEtKOG5aSjBHZG43aHZ6S3NU?= =?utf-8?B?YTgxblRUcEsvZVN0aHlCYjIrRVZ5MGVURWxJOUlPWU5XejlXQnNhc0paRkti?= =?utf-8?B?b2p3ZHVkZXpoMlpYYlowNTgrVWJFN01IdEFFWnNLUndJY2JUQzhiMEwveVZ3?= =?utf-8?Q?xuDYjngNlFbk16IAVGkYzMPiuo4dmr9D6apOksU?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MWHPR11MB1805.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: b9dda8cf-0522-4f4d-d6f3-08d8d3b5b30a X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Feb 2021 02:34:21.7619 (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: DF2SYpSB37FHtHgBhzpdWyy9Eo/woW/4VI5D7dPJyZS8JngPXUwPzIL1fjpQ/0lZevAh8vL7dyjW6KqyX1rwvw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO1PR11MB5123 Return-Path: heng.luo@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SGkgTmFpdG8sDQpUaGFuayB5b3UgZm9yIHlvdXIgcGF0Y2ggdG8gcmVzb2x2ZSB0aGUgcHJvYmxl bS4gDQpCYXNpY2FsbHkgdGhpcyBwYXRjaCBsb29rcyBnb29kIHRvIG1lLCAgc29tZSBzdWdnZXN0 aW9uczoNCjEuIEkgaGF2ZSBzdWJtaXR0ZWQgYSBCdWd6aWxsYSBodHRwczovL2J1Z3ppbGxhLnRp YW5vY29yZS5vcmcvc2hvd19idWcuY2dpP2lkPTMyMjQgZm9yIHRoaXMgaXNzdWUsIGNvdWxkIHlv dSBhZGQgaXQgaW4geW91ciBjb21taXQgbWVzc2FnZT8NCiAgICBUaWdlcmxha2VPcGVuQm9hcmRQ a2cvVGlnZXJsYWtlVVJ2cDogRml4IGJ1aWxkIGVycm9ycyB3aXRoIEdDQzUNCiAgICANCiAgICBS RUY6IGh0dHBzOi8vYnVnemlsbGEudGlhbm9jb3JlLm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzIyNA0K DQogICAgVGhpcyBjaGFuZ2UgZml4ZXMgYnVpbGQgZXJyb3JzIG9mIFRpZ2VybGFrZVVSdnAgd2l0 aCBHQ0M1Lg0KICAgIC0gRml4IHRoZSBwYXRoIG9mIFRpZ2VyTGFrZUZzcEJpblBrZw0KICAgLi4u DQoyLiBjb3VsZCB5b3Ugc3BpdGUgdGhpcyBwYXRjaCBpbnRvIDIgcGF0Y2hlcz8gT25lIGlzIGZv ciBQbGF0Zm9ybS9JbnRlbC9UaWdlcmxha2VPcGVuQm9hcmRQa2csIGFub3RoZXIgb25lIGlzIGZv ciBlZGsyLXBsYXRmb3Jtc1xTaWxpY29uXEludGVsXFRpZ2VybGFrZVNpbGljb25Qa2c/DQoNCjMu IEkgZmFjZSBiZWxvdyBlcnJvciB3aGVuIEkgYXBwbHkgeW91ciBwYXRjaDoNCiAgQzpcYmlvc1xv cGVuXGVkazItcGxhdGZvcm1zPmdpdCBhbSAtMyAiLi5cW1BBVENILWVkazItcGxhdGZvcm1zLXYx LTEtMV0tVGlnZXJsYWtlT3BlbkJvYXJkUGtnLVRpZ2VybGFrZVVSdnAtRml4LWJ1aWxkLWVycm9y cy13aXRoLUdDQzUucGF0Y2giDQogIEFwcGx5aW5nOiBUaWdlcmxha2VPcGVuQm9hcmRQa2cvVGln ZXJsYWtlVVJ2cDogRml4IGJ1aWxkIGVycm9ycyB3aXRoIEdDQzUNCiAgZXJyb3I6IHBhdGNoIGZy YWdtZW50IHdpdGhvdXQgaGVhZGVyIGF0IGxpbmUgMjQ6IEBAIC01Miw3ICs1Miw3IEBADQogIGVy cm9yOiBjb3VsZCBub3QgYnVpbGQgZmFrZSBhbmNlc3Rvcg0KICBoaW50OiBVc2UgJ2dpdCBhbSAt LXNob3ctY3VycmVudC1wYXRjaCcgdG8gc2VlIHRoZSBmYWlsZWQgcGF0Y2gNCiBMb29rcyBpdCBp cyB0aGUgbGluZSBlbmRpbmcgaXNzdWUsICB0aGVyZSBpcyBkb3VibGUgJ1xuJyBpbiBzb21lIGxp bmVzLiBQcm9ibGVtIGNhbiBiZSByZXNvbHZlZCBhZnRlciByZXBsYWNpbmcgIlxuXG4iIHdpdGgg IlxuIi4NCg0KVGhhbmssDQpIZW5nDQoNCj4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0tLS0NCj4g RnJvbTogVGFrdXRvIE5haXRvIDxuYWl0YWt1QGdtYWlsLmNvbT4NCj4gU2VudDogU3VuZGF5LCBG ZWJydWFyeSAxNCwgMjAyMSAxMTo1NCBQTQ0KPiBUbzogZGV2ZWxAZWRrMi5ncm91cHMuaW8NCj4g Q2M6IENoYWdhbnR5LCBSYW5nYXNhaSBWIDxyYW5nYXNhaS52LmNoYWdhbnR5QGludGVsLmNvbT47 IERlc2ltb25lLA0KPiBOYXRoYW5pZWwgTCA8bmF0aGFuaWVsLmwuZGVzaW1vbmVAaW50ZWwuY29t PjsgTHVvLCBIZW5nDQo+IDxoZW5nLmx1b0BpbnRlbC5jb20+OyBUYWt1dG8gTmFpdG8gPG5haXRh a3VAZ21haWwuY29tPg0KPiBTdWJqZWN0OiBbUEFUQ0ggZWRrMi1wbGF0Zm9ybXMgdjEgMS8xXSBU aWdlcmxha2VPcGVuQm9hcmRQa2cvVGlnZXJsYWtlVVJ2cDoNCj4gRml4IGJ1aWxkIGVycm9ycyB3 aXRoIEdDQzUNCj4gDQo+IFRoaXMgY2hhbmdlIGZpeGVzIGJ1aWxkIGVycm9ycyBvZiBUaWdlcmxh a2VVUnZwIHdpdGggR0NDNS4NCj4gDQo+IC0gRml4IHRoZSBwYXRoIG9mIFRpZ2VyTGFrZUZzcEJp blBrZw0KPiANCj4gLSBGaXggbWlzdXNlIG9mIFJFVFVSTl9FUlJPUg0KPiANCj4gLSBGaXggdGhl IFRldG9uIEdsYWNpZXIgRW5kcG9pbnQgZW50cnkgaW4gbVBjaURldmljZVRhYmxlDQo+IA0KPiAt IFJlbW92ZSB1bnVzZWQgZnVuY3Rpb24gQ2hlY2tOYXRpb25hbFNpby4NCj4gDQo+IA0KPiANCj4g U2lnbmVkLW9mZi1ieTogVGFrdXRvIE5haXRvIDxuYWl0YWt1QGdtYWlsLmNvbT4NCj4gDQo+IC0t LQ0KPiANCj4gSSB0cmllZCB0byBidWlsZCBUaWdlcmxha2VVUnZwLCBidXQgSSBmYWNlZCBzb21l IGJ1aWxkIGVycm9ycy4NCj4gDQo+IFRoaXMgcGF0Y2ggZml4ZXMgdGhlIGJ1aWxkIGVycm9ycy4N Cj4gDQo+IA0KPiANCj4gQnVpbGQgZXJyb3IgMToNCj4gDQo+IFBsYXRmb3JtL0ludGVsL1RpZ2Vy bGFrZU9wZW5Cb2FyZFBrZy9Gc3BXcmFwcGVyL0xpYnJhcnkvUGVpRnNwUG9saWN5SW5pdExpYi8N Cj4gUGVpRnNwUG9saWN5SW5pdExpYi5pbmYoNTUpOiBlcnJvciAwMDBFOiBGaWxlL2RpcmVjdG9y eSBub3QgZm91bmQgaW4gd29ya3NwYWNlDQo+IA0KPiBUaWdlckxha2VGc3BCaW5Qa2cvVGlnZXJM YWtlRnNwQmluUGtnLmRlYyBpcyBub3QgZm91bmQgaW4gcGFja2FnZXMgcGF0aDoNCj4gDQo+IEl0 IHNlZW1zIHRoYXQgdGhlIGNvcnJlY3QgcGF0aCBpcw0KPiBUaWdlckxha2VGc3BCaW5Qa2cvQ2xp ZW50L1RpZ2VyTGFrZUZzcEJpblBrZy5kZWMuDQo+IA0KPiANCj4gDQo+IEJ1aWxkIGVycm9yIDI6 DQo+IA0KPiBQbGF0Zm9ybS9JbnRlbC9UaWdlcmxha2VPcGVuQm9hcmRQa2cvUG9saWN5L0xpYnJh cnkvRHhlU2lsaWNvblBvbGljeVVwZGF0ZUxpDQo+IGIvRHhlU2lsaWNvblBvbGljeVVwZGF0ZUxh dGUuYzo5MTo1OiBub3RlOiBpbiBleHBhbnNpb24gb2YgbWFjcm8NCj4g4oCYUkVUVVJOX0VSUk9S 4oCZDQo+IA0KPiAgICA5MSB8ICAgICBSRVRVUk5fRVJST1IgKFN0YXR1cyk7DQo+IA0KPiAgICAg ICB8ICAgICBefn5+fn5+fn5+fn4NCj4gDQo+IEl0IHNlZW1zIHRoYXQgQVNTRVJUX0VGSV9FUlJP UiBzaG91bGQgYmUgaGVyZSBpbnN0ZWFkIG9mIFJFVFVSTl9FUlJPUi4NCj4gDQo+IA0KPiANCj4g QnVpbGQgZXJyb3IgMzoNCj4gDQo+IFNpbGljb24vSW50ZWwvVGlnZXJsYWtlU2lsaWNvblBrZy9J cEJsb2NrL1BjaWVScC9MaWJyYXJ5UHJpdmF0ZS9EeGVQY2hQY2llUnBQbw0KPiBsaWN5TGliL0R4 ZVBjaFBjaWVScFBvbGljeUxpYi5jOjE4Ojc3OiBlcnJvcjogbWlzc2luZyBicmFjZXMgYXJvdW5k IGluaXRpYWxpemVyIFstDQo+IFdlcnJvcj1taXNzaW5nLWJyYWNlc10NCj4gDQo+ICAgIDE4IHwg R0xPQkFMX1JFTU9WRV9JRl9VTlJFRkVSRU5DRUQgUENIX1BDSUVfREVWSUNFX09WRVJSSURFDQo+ IG1QY2llRGV2aWNlVGFibGVbXSA9IHsNCj4gDQo+ICAgICAgIHwgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IF4NCj4gDQo+IC4uLi4uLg0KPiANCj4gICAxMDEgfCAgIHsgMHg4MDg2LCAweDA5NzUsIDB4ZmYs IDAsIDAsIDAsIFBjaFBjaWVMMVN1YnN0YXRlc092ZXJyaWRlLCAwLCAweGZmLA0KPiAweDNDLCAw LCA1LCAwLCAwLCAwLCAwIH0sDQo+IA0KPiAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHsgfQ0KPiANCj4gDQo+IA0KPiBUaGUgbnVtYmVyIG9mIHRoZSBmaWVsZHMg c2VlbXMgdG8gYmUgd3JvbmcuDQo+IA0KPiANCj4gDQo+IEJ1aWxkIGVycm9yIDQ6DQo+IA0KPiBQ bGF0Zm9ybS9JbnRlbC9UaWdlcmxha2VPcGVuQm9hcmRQa2cvTGlicmFyeS9CYXNlUGxhdGZvcm1I b29rTGliL0Jhc2VQbGF0Zg0KPiBvcm1Ib29rTGliLmM6MTA1OjE6IGVycm9yOiDigJhDaGVja05h dGlvbmFsU2lv4oCZIGRlZmluZWQgYnV0IG5vdCB1c2VkIFstDQo+IFdlcnJvcj11bnVzZWQtZnVu Y3Rpb25dDQo+IA0KPiANCj4gDQo+IENoZWNrTmF0aW9uYWxTaW8gZnVuY3Rpb24gbmVlZGVkIHRv IGJlIHJlbW92ZWQuDQo+IA0KPiANCj4gDQo+IA0KPiANCj4gIC4uLi9QZWlGc3BQb2xpY3lJbml0 TGliLmluZiAgICAgICAgICAgICAgICAgICB8ICAgMiArLQ0KPiANCj4gIC4uLi9CYXNlUGxhdGZv cm1Ib29rTGliL0Jhc2VQbGF0Zm9ybUhvb2tMaWIuYyB8IDE4OCAtLS0tLS0tLS0tLS0tLS0tLS0N Cj4gDQo+ICAuLi4vRHhlU2lsaWNvblBvbGljeVVwZGF0ZUxhdGUuYyAgICAgICAgICAgICAgfCAg IDIgKy0NCj4gDQo+ICAuLi4vRHhlUGNoUGNpZVJwUG9saWN5TGliLmMgICAgICAgICAgICAgICAg ICAgfCAgIDIgKy0NCj4gDQo+ICA0IGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMTkx IGRlbGV0aW9ucygtKQ0KPiANCj4gDQo+IA0KPiBkaWZmIC0tZ2l0DQo+IGEvUGxhdGZvcm0vSW50 ZWwvVGlnZXJsYWtlT3BlbkJvYXJkUGtnL0ZzcFdyYXBwZXIvTGlicmFyeS9QZWlGc3BQb2xpY3lJ bml0TGkNCj4gYi9QZWlGc3BQb2xpY3lJbml0TGliLmluZg0KPiBiL1BsYXRmb3JtL0ludGVsL1Rp Z2VybGFrZU9wZW5Cb2FyZFBrZy9Gc3BXcmFwcGVyL0xpYnJhcnkvUGVpRnNwUG9saWN5SW5pdExp DQo+IGIvUGVpRnNwUG9saWN5SW5pdExpYi5pbmYNCj4gDQo+IGluZGV4IDlkODVkODU1ZjUuLjcw OGZiYWMwOGYgMTAwNjQ0DQo+IA0KPiAtLS0NCj4gYS9QbGF0Zm9ybS9JbnRlbC9UaWdlcmxha2VP cGVuQm9hcmRQa2cvRnNwV3JhcHBlci9MaWJyYXJ5L1BlaUZzcFBvbGljeUluaXRMaQ0KPiBiL1Bl aUZzcFBvbGljeUluaXRMaWIuaW5mDQo+IA0KPiArKysNCj4gYi9QbGF0Zm9ybS9JbnRlbC9UaWdl cmxha2VPcGVuQm9hcmRQa2cvRnNwV3JhcHBlci9MaWJyYXJ5L1BlaUZzcFBvbGljeUluaXRMaQ0K PiBiL1BlaUZzcFBvbGljeUluaXRMaWIuaW5mDQo+IA0KPiBAQCAtNTIsNyArNTIsNyBAQA0KPiAN Cj4gICAgTWRlTW9kdWxlUGtnL01kZU1vZHVsZVBrZy5kZWMNCj4gDQo+ICAgIEludGVsRnNwMlBr Zy9JbnRlbEZzcDJQa2cuZGVjDQo+IA0KPiAgICBUaWdlcmxha2VTaWxpY29uUGtnL1NpUGtnLmRl Yw0KPiANCj4gLSAgVGlnZXJMYWtlRnNwQmluUGtnL1RpZ2VyTGFrZUZzcEJpblBrZy5kZWMNCj4g DQo+ICsgIFRpZ2VyTGFrZUZzcEJpblBrZy9DbGllbnQvVGlnZXJMYWtlRnNwQmluUGtnLmRlYw0K PiANCj4gICAgVGlnZXJsYWtlT3BlbkJvYXJkUGtnL09wZW5Cb2FyZFBrZy5kZWMNCj4gDQo+ICAg IFVlZmlDcHVQa2cvVWVmaUNwdVBrZy5kZWMNCj4gDQo+ICAgIEludGVsU2lsaWNvblBrZy9JbnRl bFNpbGljb25Qa2cuZGVjDQo+IA0KPiBkaWZmIC0tZ2l0DQo+IGEvUGxhdGZvcm0vSW50ZWwvVGln ZXJsYWtlT3BlbkJvYXJkUGtnL0xpYnJhcnkvQmFzZVBsYXRmb3JtSG9va0xpYi9CYXNlUGwNCj4g YXRmb3JtSG9va0xpYi5jDQo+IGIvUGxhdGZvcm0vSW50ZWwvVGlnZXJsYWtlT3BlbkJvYXJkUGtn L0xpYnJhcnkvQmFzZVBsYXRmb3JtSG9va0xpYi9CYXNlUGwNCj4gYXRmb3JtSG9va0xpYi5jDQo+ IA0KPiBpbmRleCA2MjA5ZTUwNDUwLi5jYzUzMzc2OThiIDEwMDY0NA0KPiANCj4gLS0tDQo+IGEv UGxhdGZvcm0vSW50ZWwvVGlnZXJsYWtlT3BlbkJvYXJkUGtnL0xpYnJhcnkvQmFzZVBsYXRmb3Jt SG9va0xpYi9CYXNlUGwNCj4gYXRmb3JtSG9va0xpYi5jDQo+IA0KPiArKysNCj4gYi9QbGF0Zm9y bS9JbnRlbC9UaWdlcmxha2VPcGVuQm9hcmRQa2cvTGlicmFyeS9CYXNlUGxhdGZvcm1Ib29rTGli L0Jhc2VQbA0KPiBhdGZvcm1Ib29rTGliLmMNCj4gDQo+IEBAIC05NCwxOTQgKzk0LDYgQEAgR0xP QkFMX1JFTU9WRV9JRl9VTlJFRkVSRU5DRUQgRUZJX1NJT19UQUJMRQ0KPiBtU2lvVGFibGVXaW5i b25kX3gzNzRbXSA9IHsNCj4gDQo+ICAgIHsweDMwLCAweDAxfSAgICAgICAgICAgICAgICAgICAg Ly8gRW5hYmxlIGl0IHdpdGggQWN0aXZhdGlvbiBiaXQNCj4gDQo+ICB9Ow0KPiANCj4gDQo+IA0K PiAtLyoqDQo+IA0KPiAtICBEZXRlY3QgaWYgYSBOYXRpb25hbCAzOTMgU0lPIGlzIGRvY2tlZC4g SWYgeWVzLCBlbmFibGUgdGhlIGRvY2tlZCBTSU8NCj4gDQo+IC0gIGFuZCBpdHMgc2VyaWFsIHBv cnQsIGFuZCBkaXNhYmxlIHRoZSBvbmJvYXJkIHNlcmlhbCBwb3J0Lg0KPiANCj4gLQ0KPiANCj4g LSAgQHJldHZhbCBFRklfU1VDQ0VTUyAgICAgT3BlcmF0aW9ucyBwZXJmb3JtZWQgc3VjY2Vzc2Z1 bGx5Lg0KPiANCj4gLSoqLw0KPiANCj4gLVNUQVRJQw0KPiANCj4gLVZPSUQNCj4gDQo+IC1DaGVj a05hdGlvbmFsU2lvICgNCj4gDQo+IC0gIFZPSUQNCj4gDQo+IC0gICkNCj4gDQo+IC17DQo+IA0K PiAtICBVSU5UOCAgICAgICAgICAgRGF0YTg7DQo+IA0KPiAtDQo+IA0KPiAtICAvLw0KPiANCj4g LSAgLy8gUGM4NzM5MyBhY2Nlc3MgaXMgdGhyb3VnaCBlaXRoZXIgKDB4MmUsIDB4MmYpIG9yICgw eDRlLCAweDRmKS4NCj4gDQo+IC0gIC8vIFdlIHVzZSAoMHgyZSwgMHgyZikgd2hpY2ggaXMgZGV0 ZXJtaW5lZCBieSBCQUREIGRlZmF1bHQgc3RyYXBwaW5nDQo+IA0KPiAtICAvLw0KPiANCj4gLQ0K PiANCj4gLSAgLy8NCj4gDQo+IC0gIC8vIFJlYWQgdGhlIFBjODczOTMgc2lnbmF0dXJlDQo+IA0K PiAtICAvLw0KPiANCj4gLSAgSW9Xcml0ZTggKDB4MmUsIDB4MjApOw0KPiANCj4gLSAgRGF0YTgg PSBJb1JlYWQ4ICgweDJmKTsNCj4gDQo+IC0NCj4gDQo+IC0gIGlmIChEYXRhOCA9PSAweGVhKSB7 DQo+IA0KPiAtICAgIC8vDQo+IA0KPiAtICAgIC8vIFNpZ25hdHVyZSBtYXRjaGVzIC0gTmF0aW9u YWwgUEM4NzM5MyBTSU8gaXMgZG9ja2VkDQo+IA0KPiAtICAgIC8vDQo+IA0KPiAtDQo+IA0KPiAt ICAgIC8vDQo+IA0KPiAtICAgIC8vIEVubGFyZ2UgdGhlIExQQyBkZWNvZGUgc2NvcGUgdG8gYWNj b21tb2RhdGUgdGhlIERvY2tpbmcgTFBDIFN3aXRjaA0KPiANCj4gLSAgICAvLyBSZWdpc3RlciAo U0lPX0RPQ0tJTkdfTFBDX1NXSVRDSF9SRUdJU1RFUl9BRERSRVNTIGlzIGFsbG9jYXRlZCBhdA0K PiANCj4gLSAgICAvLyBTSU9fQkFTRV9BRERSRVNTICsgMHgxMCkNCj4gDQo+IC0gICAgLy8NCj4g DQo+IC0gICAgUGNoTHBjR2VuSW9SYW5nZVNldCAoKEZpeGVkUGNkR2V0MTYgKFBjZFNpb0Jhc2VB ZGRyZXNzKSAmDQo+IChVSU5UMTYpfjB4N0YpLCAweDIwKTsNCj4gDQo+IC0NCj4gDQo+IC0gICAg Ly8NCj4gDQo+IC0gICAgLy8gRW5hYmxlIHBvcnQgc3dpdGNoDQo+IA0KPiAtICAgIC8vDQo+IA0K PiAtICAgIElvV3JpdGU4IChTSU9fRE9DS0lOR19MUENfU1dJVENIX1JFR0lTVEVSX0FERFJFU1Ms IDB4MDYpOw0KPiANCj4gLQ0KPiANCj4gLSAgICAvLw0KPiANCj4gLSAgICAvLyBUdXJuIG9uIGRv Y2tpbmcgcG93ZXINCj4gDQo+IC0gICAgLy8NCj4gDQo+IC0gICAgSW9Xcml0ZTggKEZpeGVkUGNk R2V0MTYgKFBjZFNpb0Jhc2VBZGRyZXNzKSArIDB4MEUsIDB4OGMpOw0KPiANCj4gLQ0KPiANCj4g LSAgICBJb1dyaXRlOCAoRml4ZWRQY2RHZXQxNiAoUGNkU2lvQmFzZUFkZHJlc3MpICsgMHgwRSwg MHg5Yyk7DQo+IA0KPiAtDQo+IA0KPiAtICAgIElvV3JpdGU4IChGaXhlZFBjZEdldDE2IChQY2RT aW9CYXNlQWRkcmVzcykgKyAweDBFLCAweEJjKTsNCj4gDQo+IC0NCj4gDQo+IC0gICAgLy8NCj4g DQo+IC0gICAgLy8gRW5hYmxlIHBvcnQgc3dpdGNoDQo+IA0KPiAtICAgIC8vDQo+IA0KPiAtICAg IElvV3JpdGU4IChTSU9fRE9DS0lOR19MUENfU1dJVENIX1JFR0lTVEVSX0FERFJFU1MsIDB4Nyk7 DQo+IA0KPiAtDQo+IA0KPiAtICAgIC8vDQo+IA0KPiAtICAgIC8vIEdQSU8gc2V0dGluZw0KPiAN Cj4gLSAgICAvLw0KPiANCj4gLSAgICBJb1dyaXRlOCAoMHgyZSwgMHgyNCk7DQo+IA0KPiAtICAg IElvV3JpdGU4ICgweDJmLCAweDI5KTsNCj4gDQo+IC0NCj4gDQo+IC0gICAgLy8NCj4gDQo+IC0g ICAgLy8gRW5hYmxlIGNoaXAgY2xvY2sNCj4gDQo+IC0gICAgLy8NCj4gDQo+IC0gICAgSW9Xcml0 ZTggKDB4MmUsIDB4MjkpOw0KPiANCj4gLSAgICBJb1dyaXRlOCAoMHgyZiwgMHgxZSk7DQo+IA0K PiAtDQo+IA0KPiAtDQo+IA0KPiAtICAgIC8vDQo+IA0KPiAtICAgIC8vIEVuYWJsZSBzZXJpYWwg cG9ydA0KPiANCj4gLSAgICAvLw0KPiANCj4gLQ0KPiANCj4gLSAgICAvLw0KPiANCj4gLSAgICAv LyBTZWxlY3QgY29tMQ0KPiANCj4gLSAgICAvLw0KPiANCj4gLSAgICBJb1dyaXRlOCAoMHgyZSwg MHg3KTsNCj4gDQo+IC0gICAgSW9Xcml0ZTggKDB4MmYsIDB4Myk7DQo+IA0KPiAtDQo+IA0KPiAt ICAgIC8vDQo+IA0KPiAtICAgIC8vIEJhc2UgYWRkcmVzczogMHgzZjgNCj4gDQo+IC0gICAgLy8N Cj4gDQo+IC0gICAgSW9Xcml0ZTggKDB4MmUsIDB4NjApOw0KPiANCj4gLSAgICBJb1dyaXRlOCAo MHgyZiwgMHgwMyk7DQo+IA0KPiAtICAgIElvV3JpdGU4ICgweDJlLCAweDYxKTsNCj4gDQo+IC0g ICAgSW9Xcml0ZTggKDB4MmYsIDB4ZjgpOw0KPiANCj4gLQ0KPiANCj4gLSAgICAvLw0KPiANCj4g LSAgICAvLyBJbnRlcnJ1cHQ6IDQNCj4gDQo+IC0gICAgLy8NCj4gDQo+IC0gICAgSW9Xcml0ZTgg KDB4MmUsIDB4NzApOw0KPiANCj4gLSAgICBJb1dyaXRlOCAoMHgyZiwgMHgwNCk7DQo+IA0KPiAt DQo+IA0KPiAtICAgIC8vDQo+IA0KPiAtICAgIC8vIEVuYWJsZSBiYW5rIHNlbGVjdGlvbg0KPiAN Cj4gLSAgICAvLw0KPiANCj4gLSAgICBJb1dyaXRlOCAoMHgyZSwgMHhmMCk7DQo+IA0KPiAtICAg IElvV3JpdGU4ICgweDJmLCAweDgyKTsNCj4gDQo+IC0NCj4gDQo+IC0gICAgLy8NCj4gDQo+IC0g ICAgLy8gQWN0aXZhdGUNCj4gDQo+IC0gICAgLy8NCj4gDQo+IC0gICAgSW9Xcml0ZTggKDB4MmUs IDB4MzApOw0KPiANCj4gLSAgICBJb1dyaXRlOCAoMHgyZiwgMHgwMSk7DQo+IA0KPiAtDQo+IA0K PiAtICAgIC8vDQo+IA0KPiAtICAgIC8vIERpc2FibGUgb25ib2FyZCBzZXJpYWwgcG9ydA0KPiAN Cj4gLSAgICAvLw0KPiANCj4gLSAgICBJb1dyaXRlOCAoRml4ZWRQY2RHZXQxNiAoUGNkTHBjU2lv Q29uZmlnRGVmYXVsdFBvcnQpLCAweDU1KTsNCj4gDQo+IC0NCj4gDQo+IC0gICAgLy8NCj4gDQo+ IC0gICAgLy8gUG93ZXIgRG93biBVQVJUcw0KPiANCj4gLSAgICAvLw0KPiANCj4gLSAgICBJb1dy aXRlOCAoUGNkR2V0MTYgKFBjZExwY1Npb0luZGV4UG9ydCksIDB4Mik7DQo+IA0KPiAtICAgIElv V3JpdGU4IChQY2RHZXQxNiAoUGNkTHBjU2lvRGF0YVBvcnQpLCAweDAwKTsNCj4gDQo+IC0NCj4g DQo+IC0gICAgLy8NCj4gDQo+IC0gICAgLy8gRGlzc2FibGUgQ09NMSBkZWNvZGUNCj4gDQo+IC0g ICAgLy8NCj4gDQo+IC0gICAgSW9Xcml0ZTggKFBjZEdldDE2IChQY2RMcGNTaW9JbmRleFBvcnQp LCAweDI0KTsNCj4gDQo+IC0gICAgSW9Xcml0ZTggKFBjZEdldDE2IChQY2RMcGNTaW9EYXRhUG9y dCksIDApOw0KPiANCj4gLQ0KPiANCj4gLSAgICAvLw0KPiANCj4gLSAgICAvLyBEaXNhYmxlIENP TTIgZGVjb2RlDQo+IA0KPiAtICAgIC8vDQo+IA0KPiAtICAgIElvV3JpdGU4IChQY2RHZXQxNiAo UGNkTHBjU2lvSW5kZXhQb3J0KSwgMHgyNSk7DQo+IA0KPiAtICAgIElvV3JpdGU4IChQY2RHZXQx NiAoUGNkTHBjU2lvRGF0YVBvcnQpLCAwKTsNCj4gDQo+IC0NCj4gDQo+IC0gICAgLy8NCj4gDQo+ IC0gICAgLy8gRGlzYWJsZSBpbnRlcnJ1cHQNCj4gDQo+IC0gICAgLy8NCj4gDQo+IC0gICAgSW9X cml0ZTggKFBjZEdldDE2IChQY2RMcGNTaW9JbmRleFBvcnQpLCAweDI4KTsNCj4gDQo+IC0gICAg SW9Xcml0ZTggKFBjZEdldDE2IChQY2RMcGNTaW9EYXRhUG9ydCksIDB4MCk7DQo+IA0KPiAtDQo+ IA0KPiAtICAgIElvV3JpdGU4IChGaXhlZFBjZEdldDE2IChQY2RMcGNTaW9Db25maWdEZWZhdWx0 UG9ydCksIDB4QUEpOw0KPiANCj4gLQ0KPiANCj4gLSAgICAvLw0KPiANCj4gLSAgICAvLyBFbmFi bGUgZmxvcHB5DQo+IA0KPiAtICAgIC8vDQo+IA0KPiAtDQo+IA0KPiAtICAgIC8vDQo+IA0KPiAt ICAgIC8vIFNlbGVjdCBmbG9wcHkNCj4gDQo+IC0gICAgLy8NCj4gDQo+IC0gICAgSW9Xcml0ZTgg KDB4MmUsIDB4Nyk7DQo+IA0KPiAtICAgIElvV3JpdGU4ICgweDJmLCAweDApOw0KPiANCj4gLQ0K PiANCj4gLSAgICAvLw0KPiANCj4gLSAgICAvLyBCYXNlIGFkZHJlc3M6IDB4M2YwDQo+IA0KPiAt ICAgIC8vDQo+IA0KPiAtICAgIElvV3JpdGU4ICgweDJlLCAweDYwKTsNCj4gDQo+IC0gICAgSW9X cml0ZTggKDB4MmYsIDB4MDMpOw0KPiANCj4gLSAgICBJb1dyaXRlOCAoMHgyZSwgMHg2MSk7DQo+ IA0KPiAtICAgIElvV3JpdGU4ICgweDJmLCAweGYwKTsNCj4gDQo+IC0NCj4gDQo+IC0gICAgLy8N Cj4gDQo+IC0gICAgLy8gSW50ZXJydXB0OiA2DQo+IA0KPiAtICAgIC8vDQo+IA0KPiAtICAgIElv V3JpdGU4ICgweDJlLCAweDcwKTsNCj4gDQo+IC0gICAgSW9Xcml0ZTggKDB4MmYsIDB4MDYpOw0K PiANCj4gLQ0KPiANCj4gLSAgICAvLw0KPiANCj4gLSAgICAvLyBETUEgMg0KPiANCj4gLSAgICAv Lw0KPiANCj4gLSAgICBJb1dyaXRlOCAoMHgyZSwgMHg3NCk7DQo+IA0KPiAtICAgIElvV3JpdGU4 ICgweDJmLCAweDAyKTsNCj4gDQo+IC0NCj4gDQo+IC0gICAgLy8NCj4gDQo+IC0gICAgLy8gQWN0 aXZhdGUNCj4gDQo+IC0gICAgLy8NCj4gDQo+IC0gICAgSW9Xcml0ZTggKDB4MmUsIDB4MzApOw0K PiANCj4gLSAgICBJb1dyaXRlOCAoMHgyZiwgMHgwMSk7DQo+IA0KPiAtDQo+IA0KPiAtICB9IGVs c2Ugew0KPiANCj4gLQ0KPiANCj4gLSAgICAvLw0KPiANCj4gLSAgICAvLyBObyBOYXRpb25hbCBw Yzg3MzkzIFNJTyBpcyBkb2NrZWQsIHR1cm4gb2ZmIGRvY2sgcG93ZXIgYW5kDQo+IA0KPiAtICAg IC8vIGRpc2FibGUgcG9ydCBzd2l0Y2gNCj4gDQo+IC0gICAgLy8NCj4gDQo+IC0gICAgLy8gSW9X cml0ZTggKFNJT19CQVNFX0FERFJFU1MgKyAweDBFLCAweGJmKTsNCj4gDQo+IC0gICAgLy8gSW9X cml0ZTggKDB4NjkwLCAwKTsNCj4gDQo+IC0NCj4gDQo+IC0gICAgLy8NCj4gDQo+IC0gICAgLy8g SWYgbm8gTmF0aW9uYWwgcGM4NzM5MywganVzdCByZXR1cm4NCj4gDQo+IC0gICAgLy8NCj4gDQo+ IC0gICAgcmV0dXJuIDsNCj4gDQo+IC0gIH0NCj4gDQo+IC19DQo+IA0KPiAtDQo+IA0KPiAgLyoq DQo+IA0KPiAgQ2hlY2sgd2hldGhlciB0aGUgSVQ4NjI4IFNJTyBwcmVzZW50IG9uIExQQy4gSWYg eWVzLCBlbmFibGUgaXRzIHNlcmlhbCBwb3J0cw0KPiANCj4gDQo+IA0KPiBkaWZmIC0tZ2l0DQo+ IGEvUGxhdGZvcm0vSW50ZWwvVGlnZXJsYWtlT3BlbkJvYXJkUGtnL1BvbGljeS9MaWJyYXJ5L0R4 ZVNpbGljb25Qb2xpY3lVcGRhdA0KPiBlTGliL0R4ZVNpbGljb25Qb2xpY3lVcGRhdGVMYXRlLmMN Cj4gYi9QbGF0Zm9ybS9JbnRlbC9UaWdlcmxha2VPcGVuQm9hcmRQa2cvUG9saWN5L0xpYnJhcnkv RHhlU2lsaWNvblBvbGljeVVwZGF0DQo+IGVMaWIvRHhlU2lsaWNvblBvbGljeVVwZGF0ZUxhdGUu Yw0KPiANCj4gaW5kZXggMmVlZTk5NThiZS4uNDEwYThkMTA3MyAxMDA2NDQNCj4gDQo+IC0tLQ0K PiBhL1BsYXRmb3JtL0ludGVsL1RpZ2VybGFrZU9wZW5Cb2FyZFBrZy9Qb2xpY3kvTGlicmFyeS9E eGVTaWxpY29uUG9saWN5VXBkYXQNCj4gZUxpYi9EeGVTaWxpY29uUG9saWN5VXBkYXRlTGF0ZS5j DQo+IA0KPiArKysNCj4gYi9QbGF0Zm9ybS9JbnRlbC9UaWdlcmxha2VPcGVuQm9hcmRQa2cvUG9s aWN5L0xpYnJhcnkvRHhlU2lsaWNvblBvbGljeVVwZGF0DQo+IGVMaWIvRHhlU2lsaWNvblBvbGlj eVVwZGF0ZUxhdGUuYw0KPiANCj4gQEAgLTg4LDggKzg4LDggQEAgU2lsaWNvblBvbGljeVVwZGF0 ZUxhdGUgKA0KPiANCj4gICAgICAvLyBHT1AgRHhlIFBvbGljeSBJbml0aWFsaXphdGlvbg0KPiAN Cj4gICAgICAvLw0KPiANCj4gICAgICBTdGF0dXMgPSBHb3BQb2xpY3lJbml0RHhlIChnSW1hZ2VI YW5kbGUpOw0KPiANCj4gLSAgICBSRVRVUk5fRVJST1IgKFN0YXR1cyk7DQo+IA0KPiAgICAgIERF QlVHICgoREVCVUdfSU5GTywgIkdPUCBEeGUgUG9saWN5IEluaXRpYWxpemF0aW9uIGRvbmVcbiIp KTsNCj4gDQo+ICsgICAgQVNTRVJUX0VGSV9FUlJPUiAoU3RhdHVzKTsNCj4gDQo+ICAgIH0NCj4g DQo+IA0KPiANCj4gICAgcmV0dXJuIFBvbGljeTsNCj4gDQo+IGRpZmYgLS1naXQNCj4gYS9TaWxp Y29uL0ludGVsL1RpZ2VybGFrZVNpbGljb25Qa2cvSXBCbG9jay9QY2llUnAvTGlicmFyeVByaXZh dGUvRHhlUGNoUGNpZVJwDQo+IFBvbGljeUxpYi9EeGVQY2hQY2llUnBQb2xpY3lMaWIuYw0KPiBi L1NpbGljb24vSW50ZWwvVGlnZXJsYWtlU2lsaWNvblBrZy9JcEJsb2NrL1BjaWVScC9MaWJyYXJ5 UHJpdmF0ZS9EeGVQY2hQY2llUnANCj4gUG9saWN5TGliL0R4ZVBjaFBjaWVScFBvbGljeUxpYi5j DQo+IA0KPiBpbmRleCA1NzdlNDM2ZTMyLi4xNTUzZDJlMmFhIDEwMDY0NA0KPiANCj4gLS0tDQo+ IGEvU2lsaWNvbi9JbnRlbC9UaWdlcmxha2VTaWxpY29uUGtnL0lwQmxvY2svUGNpZVJwL0xpYnJh cnlQcml2YXRlL0R4ZVBjaFBjaWVScA0KPiBQb2xpY3lMaWIvRHhlUGNoUGNpZVJwUG9saWN5TGli LmMNCj4gDQo+ICsrKw0KPiBiL1NpbGljb24vSW50ZWwvVGlnZXJsYWtlU2lsaWNvblBrZy9JcEJs b2NrL1BjaWVScC9MaWJyYXJ5UHJpdmF0ZS9EeGVQY2hQY2llUnANCj4gUG9saWN5TGliL0R4ZVBj aFBjaWVScFBvbGljeUxpYi5jDQo+IA0KPiBAQCAtOTgsNyArOTgsNyBAQCBHTE9CQUxfUkVNT1ZF X0lGX1VOUkVGRVJFTkNFRA0KPiBQQ0hfUENJRV9ERVZJQ0VfT1ZFUlJJREUgbVBjaWVEZXZpY2VU YWJsZVtdID0gew0KPiANCj4gICAgLy8NCj4gDQo+ICAgIC8vIFRldG9uIEdsYWNpZXIgRW5kcG9p bnQNCj4gDQo+ICAgIC8vDQo+IA0KPiAtICB7IDB4ODA4NiwgMHgwOTc1LCAweGZmLCAwLCAwLCAw LCBQY2hQY2llTDFTdWJzdGF0ZXNPdmVycmlkZSwgMCwgMHhmZiwgMHgzQywgMCwgNSwNCj4gMCwg MCwgMCwgMCB9LA0KPiANCj4gKyAgeyAweDgwODYsIDB4MDk3NSwgMHhmZiwgMCwgMCwgMCwgUGNo UGNpZUwxU3Vic3RhdGVzT3ZlcnJpZGUsIDAsIDB4ZmYsIDB4M0MsIDAsIDUsDQo+IDAsIDAgfSwN Cj4gDQo+IA0KPiANCj4gICAgLy8NCj4gDQo+ICAgIC8vIEVuZCBvZiBUYWJsZQ0KPiANCj4gLS0N Cj4gDQo+IDIuMzAuMQ0KPiANCj4gDQoNCg==