From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mgamail.intel.com (mgamail.intel.com [192.55.52.88]) by sourceware.org (Postfix) with ESMTPS id 0B4D83858C01 for ; Tue, 17 Oct 2023 08:28:49 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 0B4D83858C01 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=intel.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 0B4D83858C01 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=192.55.52.88 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1697531332; cv=pass; b=fwPWlae0iE0Y/KlYi5vc6ExhIJ5IpeE+1Z++7Ff2o8aPYbndw+fTQPs45fuqiw2IEvactc4NcidCGavcgNV6Gr9NQtFSqjvnPC3bsLgURqGxnI0Eme9MH+llZsSxsqbNdwgw9MrVOWtsee1i24h4Be0cBQjlpc9eGWQQOvO2VvI= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1697531332; c=relaxed/simple; bh=7lCb0xDsjkKaFLaFEx3p28Ig8mDx6EAAXe2jhYHZnao=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=hTCqDigrOvl08X7MZXGTE/AbtGOTD0QgsnsveUJnb3WaVhUUImP1X/xbVhqgBv2qy58e0+LR2SDkL8kjFk+ivmXdZQJVAfUWfRYD9PK44sWIuxECpPiX8r2kFQWd8lpTz73WGOkoX7jZAnMvEzj6pHMj/Ah/j4B/xOLMad3afKY= ARC-Authentication-Results: i=2; server2.sourceware.org DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1697531330; x=1729067330; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=7lCb0xDsjkKaFLaFEx3p28Ig8mDx6EAAXe2jhYHZnao=; b=KG6Dv3cvPjNq2JiQ75lUUxvyu6hoU1T7vqCBmGSNVOrL5ONft6pRFkH6 3I5+2tauHYvLcAbsL/LecNJGU3sNPywQK0V/M+BD2RzHV+I8NYjwmHt4P 6UEp4YZvFUkukmGbEaJIIe9Y+/4ibtdoUzh5UcZcxqrztJOrYDTv8h+Dg ulj14h4SeCD8xeBb2eE/9gwnbVT9skB4e7EG0aes8PtJtfe3dPDnIdLHP mZwjgh9tYZNG9RuaNA3ZVE1aSav3lGy6QFCSk48rjVYpdeEtLPHl8b5gF 7NP7EJzim16TQJFacH7+2Eu2qrQ+SiHWlhR5DDwJJU2kUaz7T8ggSZVwY Q==; X-IronPort-AV: E=McAfee;i="6600,9927,10865"; a="416811779" X-IronPort-AV: E=Sophos;i="6.03,231,1694761200"; d="scan'208";a="416811779" Received: from fmsmga007.fm.intel.com ([10.253.24.52]) by fmsmga101.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Oct 2023 01:28:48 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10865"; a="759717386" X-IronPort-AV: E=Sophos;i="6.03,231,1694761200"; d="scan'208";a="759717386" Received: from fmsmsx603.amr.corp.intel.com ([10.18.126.83]) by fmsmga007.fm.intel.com with ESMTP/TLS/AES256-GCM-SHA384; 17 Oct 2023 01:28:48 -0700 Received: from fmsmsx612.amr.corp.intel.com (10.18.126.92) by fmsmsx603.amr.corp.intel.com (10.18.126.83) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.32; Tue, 17 Oct 2023 01:28:48 -0700 Received: from fmsmsx602.amr.corp.intel.com (10.18.126.82) by fmsmsx612.amr.corp.intel.com (10.18.126.92) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.32; Tue, 17 Oct 2023 01:28:47 -0700 Received: from FMSEDG603.ED.cps.intel.com (10.1.192.133) 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.2507.32 via Frontend Transport; Tue, 17 Oct 2023 01:28:47 -0700 Received: from NAM12-DM6-obe.outbound.protection.outlook.com (104.47.59.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.2507.32; Tue, 17 Oct 2023 01:28:46 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=L1o/b9PkKO8SQ6r5QV5hsAV26fhk0IVxX1QWQ/HGcKg85R+ag3eEl2HFzvumEM2JpSebwUbUQyJ+Z96VQIDd+aEFRocv4ru2HKfPMd3eCvig6xzr+7hu/WZR5HYbvpJ4lAwRcTH5KGkVl0wfZRVURhKPrFiS+1kiq3GBOb0BvEmZ5rpj+0HzzDZXNYtB03Zdei3FlzIvwe9SRcBifokVPw1BsibsnP8fU2I2cV33DRm7vTho+pNnIctQSM/VGr20ts6lho0B6ShYzpC4pw7tzsVABQpWrvviNyFG4og4LR3fKqsx/vLNCVbGZ5fiKwuVL5t1Rr7Vvdv9h9mkiGQTOw== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=7lCb0xDsjkKaFLaFEx3p28Ig8mDx6EAAXe2jhYHZnao=; b=iBlHBJH1/TZefVd9f0rkREfOMLaBUgM2geFdsUYtbSEa6BD3ZopovfZ9M0X7b59Jrpf6z7QczO9r4KOZlsUS9wxeCHWSJRdsaFyuYQKe1tXjc2WOhkFB7WMXhwYiTqxbUJkxrvpfFszYPCaiyW/0lsoZ/j8OP0W4XfL74+b7tos96sjkQWMaL0ktZa4q4T0irnHzOJ2DZZWyTh+GrxAuZHyCIlDBDoiZh15PRchTNqGvBFNXnbF8F06Eq++3l+1C6UENNbIlmnQo2kT3pf6NmJIgSV0gYSC6c0mhfQSE0J4DSQqsE6i7GRqtVqDto3csiHPo9Fr8Hrubh695pqvLqg== 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 Received: from IA1PR11MB6466.namprd11.prod.outlook.com (2603:10b6:208:3a6::21) by MW4PR11MB5936.namprd11.prod.outlook.com (2603:10b6:303:16b::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6886.34; Tue, 17 Oct 2023 08:28:44 +0000 Received: from IA1PR11MB6466.namprd11.prod.outlook.com ([fe80::feff:334c:1ca4:5151]) by IA1PR11MB6466.namprd11.prod.outlook.com ([fe80::feff:334c:1ca4:5151%3]) with mapi id 15.20.6886.034; Tue, 17 Oct 2023 08:28:44 +0000 From: "Wang, Yanzhang" To: Palmer Dabbelt , "adhemerval.zanella@linaro.org" CC: DJ Delorie , Darius Rad , "libc-alpha@sourceware.org" Subject: RE: [PATCH] RISC-V: Enable static-pie. Thread-Topic: [PATCH] RISC-V: Enable static-pie. Thread-Index: AQHZy+M/3+hew0VMFkiuU3j4uzsyUK/kVrUAgAPOjxCAAx8XAIAmtvqggAAI7ACAA/rbAIAN+BEAgAGH3HCAKI4FoA== Date: Tue, 17 Oct 2023 08:28:44 +0000 Message-ID: References: <1d075708-675d-0ad6-e51c-f911f09ee084@linaro.org> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: IA1PR11MB6466:EE_|MW4PR11MB5936:EE_ x-ms-office365-filtering-correlation-id: 967942cf-0bf5-45c1-e54b-08dbceeb13ae x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: ZZX3Zw7uLfoLliVK+afPsGSpyfZ0SAOS/NexrwcnRv7T+75IZ/7hgu6x9tQxF1H8b0An8n2nojLOWUB5Wz6SNsQRSS0359gGrlBDQUzXhPOrerHl204fFK5hcnVJtXzm8CDVoZnU3H0x1dYLwxX3GyatYBBndRWbszi056GCISfjB9hiNMrniGDTV3vmwX2x9I8k00fiZhMo/TEvQEVyMXZ2vbyWjA0GSIopRqylv7k11x9buL3KbGTN1GTeDngWQ1I8PhVaPsD42Bd6Dud5b4h486S51oxCAJXfnMZL+Osd4al1qZJMrSPU3vzFlr8WARXssZGZX24m6M2nrVv4FCQAPmNGnl6YphF6gxaIOXFhBgzoB6k/fKdPKGMBKdSxXoP8HOz5DaKvquJOT4FVU+tZJDcaqq6bozrpUTrxr1M4c6OHzzmfZSV9himggO/AByxbdCnWACHzk2YfLuE0R1hcCzrhBiXatQdfqgezVkQcdaBTsAw/16UkIO3asRDaZMvzuiozVeqn7yykrqLpuytTovn0p5B3nfbWQNqir1Zy3Q/59vGZn7SuqntF3RPiZUfRo3yAMBQFlpaNJhNO9H5Mq1YdNBauznXih2xncyI= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:IA1PR11MB6466.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(376002)(396003)(366004)(136003)(39860400002)(346002)(230922051799003)(451199024)(64100799003)(186009)(1800799009)(55016003)(26005)(7696005)(6506007)(71200400001)(83380400001)(9686003)(53546011)(66476007)(54906003)(41300700001)(5660300002)(52536014)(478600001)(4326008)(8676002)(966005)(8936002)(2906002)(76116006)(316002)(66446008)(110136005)(66556008)(64756008)(122000001)(38070700005)(66946007)(82960400001)(86362001)(38100700002)(33656002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?ZTZ4ejUxRE9aYWN3K24reWRJL0swS1FBU0YybDBvNDBrV1pPS2QwVk5rV1Mr?= =?utf-8?B?eDZsSnBiaWZhR09IUnFmamM2dFY1UTdrWHYzTnhDMUYvMXJFZm0rb1F3Y0t3?= =?utf-8?B?R1hqSklQbzdvUXZoakErMlFCaHpveGpGNmVqbEViNVFjTU1KVmlaKzRtYnBj?= =?utf-8?B?T2RPbXExUk5OOTQ4UFpPKzg1QlpaalRtT290NjYveU9XclVaSnllRXhpUWVE?= =?utf-8?B?OHYvN1JJeGFHb3JmcFZQV3NhVUZhSU44cXhaMjlXd1pSaFMzcUEyR0hjbVpT?= =?utf-8?B?cWxuSUpRS1d0dmIrMGRySTFjRmxjYkM0VzY5NWRnWTFrSWRZYjM5bHcvR0Y0?= =?utf-8?B?YkVGaEpvOEtvSzBRQTdad01GUWZhTGc4WlZOaFhjdElOZWJwZ0lTcGJRSTBV?= =?utf-8?B?UVZUZ21ONUg5NXhIOGpNT21XS2xKYWlERDJyYzV0OG1UZTR5dnNvNzA5cUZh?= =?utf-8?B?SUdncEk3alYzcGlmK1poQjVnSVZtWmtBWnNKK2Rkcjk0RExRQUNZWTVlMXFP?= =?utf-8?B?ZjB0U0FOS1BGbHhZTnoxU0IxM0tMa1JPN2ZRL3FpUHUrcFVacGNjTnYrb0lO?= =?utf-8?B?OVRoSkR6NTNCeFpUZmI2VlI3K1AxM3ZDSU1DSGJmTmJ2UERBWnJEV3BwbHRx?= =?utf-8?B?MHhXaFhlUEk4QmxaU1VhWHdCRDh3TGVOMFpEb2lXMkQ0aXRHMGl3NzJTR0Ns?= =?utf-8?B?dVM0SnFKWVJhNUd3ckNlaEJaUnRwbkxtM1VZMFlQTTIzb2srbWhINWpvMjZL?= =?utf-8?B?c3ZZdzhXZEp2M2x2Mmo4QjRPcm9QMElEWFZQTFdPbHVBelJSVUIyazhZVGRq?= =?utf-8?B?YWFtOTVOUVFqdjgrQldjdXQra2tyRkJUQjZiSytjWWNYQnE5RDM5S09CeEw5?= =?utf-8?B?WW44SzFIdCs0RFZUSFJFZ3FUdnpvRFRYTUpmTk1kMDV1TGk2OXAzV0RQbTlJ?= =?utf-8?B?RjV0di80czJjb2xjeU5nVUx4cVNVNlBlMkczR1lHZE9MaEN0MDFOaXI0Wi9a?= =?utf-8?B?Q1FQRkk5UStKSFNITTlmVzRURWVZT05odnZ2T2RrKzhyZCtxU2ZPVy8rVmFX?= =?utf-8?B?NnhDVHFiMUtVUE50QmRIR1dnQTlqeEo1elE5b2J1dkhjZUZaREN2TnNuYUIx?= =?utf-8?B?NlJxdHFBUDRxS0FlZERhcC92T2VDKzdYODhodHh4T0hNRlFUK2M4TEF0ZFBD?= =?utf-8?B?bGoyVGVNRVpwc2hKRSs5MXJwWXN2bWs4UE9ldEtIWnVYVE0xYk84QTlPK1BN?= =?utf-8?B?OU5NOEVWczhndmFIc2dzRTFiRFJicW5SMklSSXp3QUwvc1h6djA0OEMwb3RP?= =?utf-8?B?cmtvZkxET3RhMDYzQ0JVWitDaEc5bkM4MnJFOXMyZnRzSlphbDFSaTZqT1U5?= =?utf-8?B?TDliN1lwNlNOSzBnWXBPb1pBbDZHbDRvOTBTQmtGd3NPOGt2VGYyR09YNHNh?= =?utf-8?B?TmhBU1E2SVdYN2RVd3dDOXE2ZEhmR2pIZ1pWNkZGNmd6dHBGRjI5NStRVFMw?= =?utf-8?B?R0J0eGQ5MVVnVXQrT2VLcStSWUdZb1FDUzJmeW95Um9PSW4zQ01rTEY2WTlZ?= =?utf-8?B?NWtGWTZ0T3M4eUZzYTUyc01MM3BtcEVHU2VOQXIxWHJBbzM0eDgrb21SK3J0?= =?utf-8?B?cmtKRm1sNmN4K2J4NDJvVENjeElsall0WnQ4MVljazlZTGdUTWZucGc1QU1X?= =?utf-8?B?RXN6UVl6UGVrZTlSZmRFbmdCVnQxdkR3c0MrNXVrb3I0MERXck9jTkJDRUJ1?= =?utf-8?B?S2gvM0pscGtwYmJJdG9wcmhaWEMzSnhaQkdYVituU2FVOCtPNFRhWUpUZy9W?= =?utf-8?B?bGxISTZySUVyelA1OXBPc1lJZVo4YnNXdXJjelpwTlZoMVdDdVVYOHlqUlZ1?= =?utf-8?B?Y09uWG5aOEJUeXBKVHoyTjhKN2RxblkzZ0hmZlJaWE4vR2dBNldZaGRJOVBG?= =?utf-8?B?cEk5cmZTbTkxb081eHRUa0xKditnQlNsMU1lWTRWdXZwSE5HdFM1c0pLdVI1?= =?utf-8?B?bnEzQWJiOWsxNDBGSE5nNkpJWXFBcFB0eEkzRHZlSi9PaEl4UEVCTnlpQkRv?= =?utf-8?B?L3VTeFpaNjh0UFh6WjVOQ29Pd24wTUduT2QxVGpFbTdTUHBYN1dqdDNVVC91?= =?utf-8?Q?IThG0bPEzBNfPQH0dKl+A81g/?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: IA1PR11MB6466.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 967942cf-0bf5-45c1-e54b-08dbceeb13ae X-MS-Exchange-CrossTenant-originalarrivaltime: 17 Oct 2023 08:28:44.5342 (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: tt0QIyOHnUOqXGC1NvIOdJ8hQvHJFigiyTbwGSGZzxYXWOGXEDgYUXz5wcAr9HHpDYp0NlYhViMEpWMaTzcVNw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW4PR11MB5936 X-OriginatorOrg: intel.com X-Spam-Status: No, score=-3.8 required=5.0 tests=BAYES_00,BODY_8BITS,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,KAM_ASCII_DIVIDERS,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE,SPF_NONE,TXREP autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: SGksDQoNCklzIHRoZXJlIGFueSBmdXJ0aGVyIGNvbW1lbnRzIGFib3V0IHRoaXMgcGF0Y2g/DQoN CkkgaGF2ZSBwdXNoZWQgYW5vdGhlciB2MiB2ZXJzaW9uIHNvbWVkYXkgYWdvLCBhbmQgdGhlcmUn cyBubyBjb25mbGljdCBub3cuDQpodHRwczovL3BhdGNod29yay5zb3VyY2V3YXJlLm9yZy9wcm9q ZWN0L2dsaWJjL3BhdGNoLzIwMjMwODE1MDE0NDM0LjE5MDI0NDYtMS15YW56aGFuZy53YW5nQGlu dGVsLmNvbS8NCg0KVGhhbmtzLA0KWWFuemhhbmcNCg0KPiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2Ut LS0tLQ0KPiBGcm9tOiBXYW5nLCBZYW56aGFuZw0KPiBTZW50OiBUaHVyc2RheSwgU2VwdGVtYmVy IDIxLCAyMDIzIDk6NDggUE0NCj4gVG86IFBhbG1lciBEYWJiZWx0IDxwYWxtZXJAZGFiYmVsdC5j b20+OyBhZGhlbWVydmFsLnphbmVsbGFAbGluYXJvLm9yZw0KPiBDYzogREogRGVsb3JpZSA8ZGpA cmVkaGF0LmNvbT47IERhcml1cyBSYWQgPGRhcml1c0BibHVlc3BlYy5jb20+OyBsaWJjLQ0KPiBh bHBoYUBzb3VyY2V3YXJlLm9yZw0KPiBTdWJqZWN0OiBSRTogW1BBVENIXSBSSVNDLVY6IEVuYWJs ZSBzdGF0aWMtcGllLg0KPiANCj4gVGhhbmtzIGZvciBhbGwgeW91ciBjb21tZW50cywgUGFsbWVy LCBESiwgRGFpcnVzIGFuZCBBZGhlbWVydmFsLg0KPiBZb3VyIHN1Z2dlc3Rpb25zIGFyZSBzbyBo ZWxwZnVsIHRvIG1lLg0KPiANCj4gWWVzLiBJIGFsc28gZm91bmQgdGhpcyBpc3N1ZSBvbiBHaXRI dWIgdG9vIGFuZCB0aGUgbWF0aCBmYWlsdXJlcyBkaWRuJ3QNCj4gYXBwZWFyIHdpdGggUUVNVSBz eXN0ZW0uIFNvIGl0J3MgZGVmaW5pdGVseSBhIGhhcmR3YXJlIGJ1Zy4NCj4gDQo+IEFuZCBJIGZv dW5kIHRoZSByb290IGNhdXNlIG9mIGFsbW9zdCBvZiB0aGUgb3RoZXIgZmFpbHVyZXMuIEl0J3Mg YmVjYXVzZSBJDQo+IHVzZSBzc2hmcyBub3QgbmZzLiA6KCAuLg0KPiANCj4gRXZlbiB0aG91Z2gg SSBzZXQgYSBsYXJnZXIgVElNRU9VVEZBQ1RPUiBhcyB5b3Ugc2FpZCwgdGhlcmUncmUgc3RpbGwg c29tZQ0KPiB0aW1lb3V0IGZhaWx1cmVzIGxpa2UgYmVsb3cuIEFuZCBzZWVtcyB0aGUgdGltZW91 dCBpcyBub3Qgc3RhYmxlLg0KPiBTb21ldGltZXMsIG5wdGwvdHN0LXN0YWNrNCBjYW4gcGFzcyBv biBscDRhIGFuZCBzb21ldGltZXMgbm90Lg0KPiANCj4gICBtYXN0ZXIgd2l0aCBxZW11LXN5c3Rl bSAgICAgICBtYXN0ZXIgb24gbHA0YSAgICAgICAgICAgICAgICBzdGF0aWMtcGllDQo+IHBhdGNo IG9uIGxwNGENCj4gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIC0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tIC0tLS0tLS0tLS0tLS0tDQo+IC0tLS0tLS0tLS0tLS0tLQ0KPiAgIHJl c29sdi90c3QtcmVzb2x2LXJlc19uaW5pdCAgIHJlc29sdi90c3QtcmVzb2x2LXJlc19uaW5pdCAg IHJlc29sdi90c3QtDQo+IHJlc29sdi1yZXNfbmluaXQNCj4gICBucHRsL3RzdC1zdGFjazQgICAg ICAgICAgICAgICBucHRsL3RzdC1zdGFjazQNCj4gaWNvbnZkYXRhL3RzdC1sb2FkaW5nDQo+ICAg bGliaW8vdHN0LWZvcGVubG9jICAgICAgICAgICAgbGliaW8vdHN0LWZvcGVubG9jDQo+IGxvY2Fs ZWRhdGEvdHN0LWxlYWtzDQo+ICAgaWNvbnZkYXRhL3RzdC1sb2FkaW5nICAgICAgICAgaWNvbnZk YXRhL3RzdC1sb2FkaW5nICAgICAgICAgbWFsbG9jL3RzdC0NCj4gZHluYXJyYXktZmFpbA0KPiAg IGxvY2FsZWRhdGEvdHN0LWxlYWtzICAgICAgICAgIGxvY2FsZWRhdGEvdHN0LWxlYWtzICAgICAg ICAgIHBvc2l4L3RzdC0NCj4gZm5tYXRjaA0KPiAgIG1hbGxvYy90c3QtZHluYXJyYXktZmFpbCAg ICAgIG1hbGxvYy90c3QtZHluYXJyYXktZmFpbA0KPiAgIHBvc2l4L3RzdC1nbG9iLXRpbGRlICAg ICAgICAgIHBvc2l4L3RzdC1nbG9iLXRpbGRlDQo+ICAgcG9zaXgvdHN0LWZubWF0Y2ggICAgICAg ICAgICAgcG9zaXgvdHN0LWZubWF0Y2gNCj4gDQo+IEZvciB0aGUgRkFJTCB0ZXN0cywgaXQncyBs aWtlIGJlbG93LiBUaGUgbWF0aCBmYWlsdXJlcyBhcmUgZmlsdGVyZWQgb3V0IG9uDQo+IGxwNGEg YW5kIG5vdCBhcHBlYXIgb24gcWVtdS1zeXN0ZW0uDQo+IA0KPiAgIG1hc3RlciB3aXRoIHFlbXUt c3lzdGVtICAgICAgICAgICAgICAgICAgICAgICAgIG1hc3RlciBvbiBscDRhDQo+IHN0YXRpYy1w aWUgcGF0Y2ggb24gbHA0YQ0KPiAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gLS0tLS0tLS0tLS0tLS0t LS0tLS0tIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tDQo+ ICAgcmVzb2x2L210cmFjZS10c3QtcmVzb2x2LXJlc19uaW5pdCAgICAgICAgICAgICAgcmVzb2x2 L210cmFjZS10c3QtcmVzb2x2LQ0KPiByZXNfbmluaXQgICAgICAgICAgICAgIHJlc29sdi9tdHJh Y2UtdHN0LXJlc29sdi1yZXNfbmluaXQNCj4gICBucHRsL3RzdC1jYW5jZWwyMS1zdGF0aWMgICAg ICAgICAgICAgICAgICAgICAgICBsaWJpby90c3QtZm9wZW5sb2MtbWVtDQo+IGVsZi90c3QtdGxz LWFsbG9jYXRpb24tZmFpbHVyZS1zdGF0aWMtcGF0Y2hlZA0KPiAgIGxpYmlvL3RzdC1mb3Blbmxv Yy1tZW0gICAgICAgICAgICAgICAgICAgICAgICAgIGxpYmlvL3RzdC1mb3BlbmxvYy1jbXANCj4g ZWxmL3RzdC1ydGxkLWxpc3QtZGlhZ25vc3RpY3MNCj4gICBsaWJpby90c3QtZm9wZW5sb2MtY21w ICAgICAgICAgICAgICAgICAgICAgICAgICBlbGYvdHN0LXRscy1hbGxvY2F0aW9uLQ0KPiBmYWls dXJlLXN0YXRpYy1wYXRjaGVkICAgZWxmL3RzdC1zcHJvZi1iYXNpYw0KPiAgIGVsZi90c3QtdGxz LWFsbG9jYXRpb24tZmFpbHVyZS1zdGF0aWMtcGF0Y2hlZCAgIGVsZi90c3QtcnRsZC1saXN0LQ0K PiBkaWFnbm9zdGljcyAgICAgICAgICAgICAgICAgICBpY29udmRhdGEvbXRyYWNlLXRzdC1sb2Fk aW5nDQo+ICAgZWxmL3RzdC1ydGxkLWxpc3QtZGlhZ25vc3RpY3MgICAgICAgICAgICAgICAgICAg ZWxmL3RzdC1zcHJvZi1iYXNpYw0KPiBsb2NhbGVkYXRhL210cmFjZS10c3QtbGVha3MNCj4gICBl bGYvdHN0LXNwcm9mLWJhc2ljICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29udmRhdGEv bXRyYWNlLXRzdC0NCj4gbG9hZGluZyAgICAgICAgICAgICAgICAgICAgbWFsbG9jL3RzdC1keW5h cnJheS1mYWlsLW1lbQ0KPiAgIGljb252ZGF0YS9tdHJhY2UtdHN0LWxvYWRpbmcgICAgICAgICAg ICAgICAgICAgIGxvY2FsZWRhdGEvbXRyYWNlLXRzdC0NCj4gbGVha3MgICAgICAgICAgICAgICAg ICAgICBwb3NpeC90c3QtZm5tYXRjaC1tZW0NCj4gICBsb2NhbGVkYXRhL210cmFjZS10c3QtbGVh a3MgICAgICAgICAgICAgICAgICAgICBtYWxsb2MvdHN0LWR5bmFycmF5LWZhaWwtDQo+IG1lbQ0K PiAgIG1hbGxvYy90c3QtZHluYXJyYXktZmFpbC1tZW0gICAgICAgICAgICAgICAgICAgIHBvc2l4 L3RzdC1nbG9iLXRpbGRlLW1lbQ0KPiAgIHBvc2l4L3RzdC1nbG9iLXRpbGRlLW1lbSAgICAgICAg ICAgICAgICAgICAgICAgIHBvc2l4L3RzdC1mbm1hdGNoLW1lbQ0KPiAgIHBvc2l4L3RzdC1mbm1h dGNoLW1lbQ0KPiAgIHBvc2l4L2dsb2J0ZXN0DQo+IA0KPiBUYWtlIG1hc3RlciBvbiBscDRhIGFz IGFuIGV4YW1wbGUsDQo+IA0KPiAtIGVsZi90c3QtcnRsZC1saXN0LWRpYWdub3N0aWNzLCBkdWUg dG8gbWlzc2luZyBhYm5mIG1vZHVsZQ0KPiAtIGVsZi90c3Qtc3Byb2YtYmFzaWMsIHN1Y2Nlc3Nm dWxseSBwcmludCBoZWxsbyB3b3JsZCBidXQgcmV0dXJuIHN0YXR1cyBpcw0KPiAxLCBzdGlsbCB1 bmtub3duIHJvb3QgY2F1c2UNCj4gLSBlbGYvdHN0LXRscy1hbGxvY2F0aW9uLWZhaWx1cmUtc3Rh dGljLXBhdGNoZWQsIGV4ZWMgZm9ybWF0IGVycm9yLCBzdGlsbA0KPiB1bmtub3duIHJvb3QgY2F1 c2UNCj4gLSB0aGUgb3RoZXJzIGFyZSBtZW1vcnkgbm90IGZyZWVkDQo+IA0KPiBUaGUgZGlmZmVy ZW5jZSBiZXR3ZWVuIHFlbXUtc3lzdGVtIGFuZCBscDRhIGZvciBtYXN0ZXIgaXMgdGhlIHR3byBj YXNlcywNCj4gDQo+IC0gbnB0bC90c3QtY2FuY2VsMjEtc3RhdGljLCBpdCBzYWlkIHNhX2ZsYWdz ID0gU0FfT05TVEFDSyBhbmQgaGF2ZW4ndA0KPiBpbnZlc3RpZ2F0ZWQuDQo+IC0gcG9zaXgvZ2xv YnRlc3QsIGJlY2F1c2UgbXkgcWVtdS1zeXN0ZW0gaGFzIGEgZGlmZmVyZW50IHVzZXIgbmFtZS4N Cj4gDQo+IFRoZSBYRkFJTHMgYW5kIFhQQVNTZXMgYXJlIHRoZSBzYW1lIG9uIGFsbCBwbGF0Zm9y bXMgYW5kIGFsbCBicmFuY2hlcy4NCj4gU28gbm90IGxpc3QgaGVyZS4NCj4gDQo+IEkgdXNlIHRo ZSBjb21taXQgNGJlOTEzNjUyY2ExMTUxNjBiYWUxZGFmNTYwMTcwZWY4YjExMmNjYiBvZiBtYXN0 ZXIgYnJhbmNoLg0KPiANCj4gU28gaXMgdGhpcyB0aGUgZXhwZWN0ZWQgdGVzdCByZXN1bHQ/IE9y IGlzIHRoZXJlIHN0aWxsIGFueSBjYXNlIG5vdCBjb3JyZWN0DQo+IEZBSUwgb3IgUEFTUz8NCj4g DQo+IFRoYW5rcywNCj4gWWFuemhhbmcNCj4gDQo+ID4gLS0tLS1PcmlnaW5hbCBNZXNzYWdlLS0t LS0NCj4gPiBGcm9tOiBQYWxtZXIgRGFiYmVsdCA8cGFsbWVyQGRhYmJlbHQuY29tPg0KPiA+IFNl bnQ6IFdlZG5lc2RheSwgU2VwdGVtYmVyIDIwLCAyMDIzIDk6MzcgUE0NCj4gPiBUbzogYWRoZW1l cnZhbC56YW5lbGxhQGxpbmFyby5vcmcNCj4gPiBDYzogV2FuZywgWWFuemhhbmcgPHlhbnpoYW5n LndhbmdAaW50ZWwuY29tPjsgREogRGVsb3JpZQ0KPiA+IDxkakByZWRoYXQuY29tPjsgRGFyaXVz IFJhZCA8ZGFyaXVzQGJsdWVzcGVjLmNvbT47DQo+ID4gbGliYy1hbHBoYUBzb3VyY2V3YXJlLm9y Zw0KPiA+IFN1YmplY3Q6IFJlOiBbUEFUQ0hdIFJJU0MtVjogRW5hYmxlIHN0YXRpYy1waWUuDQo+ ID4NCj4gPiBPbiBNb24sIDExIFNlcCAyMDIzIDA5OjE3OjIyIFBEVCAoLTA3MDApLA0KPiA+IGFk aGVtZXJ2YWwuemFuZWxsYUBsaW5hcm8ub3JnDQo+ID4gd3JvdGU6DQo+ID4gPg0KPiA+ID4NCj4g PiA+IE9uIDA5LzA5LzIzIDAwOjMwLCBQYWxtZXIgRGFiYmVsdCB3cm90ZToNCj4gPiA+PiBPbiBG cmksIDA4IFNlcCAyMDIzIDIwOjE3OjE2IFBEVCAoLTA3MDApLCB5YW56aGFuZy53YW5nQGludGVs LmNvbQ0KPiB3cm90ZToNCj4gPiA+Pj4gSSB0b29rIHNvbWUgdGltZSB0byB0ZXN0IHRoZSBtYXN0 ZXIgd2l0aCBiaW5mbXRfbWlzYyBhbmQgcWVtdQ0KPiA+ID4+PiBzeXN0ZW0NCj4gPiBtb2RlLg0K PiA+ID4+PiBCb3RoIG9mIHRoZW0gY2FuJ3QgbWF0Y2ggdGhlIHJlcXVpcmVtZW50cyAoPD0gNiBm YWlsdXJlcykuDQo+ID4gPj4+DQo+ID4gPj4+IC0gbW9zdCBvZiBjYXNlcyB3aXRoIGJpbmZtdF9t aXNjIGZhaWwgd2l0aCBhYm9ydC4NCj4gPiA+Pg0KPiA+ID4+IFFFTVUgdXNlciBtb2RlIGlzbid0 IGEgdmFsaWQgdGVzdCBzdWl0ZSB0YXJnZXQgZm9yIGdsaWJjLCB0aGVyZSdzDQo+ID4gPj4gbG90 cw0KPiA+IG9mIGZhaWx1cmVzIGR1ZSB0byB0aGUgZW11bGF0aW9uLsKgIEkga25vdyBpdCdzIGNv bmZ1c2luZyB0aGF0DQo+ID4gcmlzY3YtZ251LSB0b29sY2hhaW4gdXNlcyBpdCwgdGhhdCBjb21l IHVwIHdoZW4gc3VwcG9ydCB3YXMgYWRkZWQuDQo+ID4gPj4NCj4gPiA+Pj4gLSBtb3N0IG9mIGNh c2VzIHdpdGggcWVtdSBzeXN0ZW0gZmFpbCB3aXRoIHRpbWVkIG91dC4NCj4gPiA+Pg0KPiA+ID4+ IFlvdSBjYW4gc2V0IFRJTUVPVVRGQUNUT1IsIHFlbXUtc3lzdGVtIGlzIGEgbG90IHNsb3dlciB0 aGFuIGhhcmR3YXJlLg0KPiA+ID4+DQo+ID4gPj4+IEFuZCBhbHNvIHRlc3RlZCB3aXRoIG15IHJp c2MtdiBib2FyZCBhbmQgc3RpbGwgZmFpbHMgNzArIGNhc2VzIGFuZA0KPiA+ID4+PiBtb3N0IG9m IHRoZW0gYXJlIG1hdGggYWNjdXJhY3kgaXNzdWUuDQo+ID4gPj4NCj4gPiA+PiBXaGljaCBib2Fy ZCBhcmUgeW91IHJ1bm5pbmcgb24/DQo+ID4gPj4NCj4gPiA+Pj4gU28gQWRoZW1lcnZhbCwgZG8g eW91IGtub3cgaG93IHRvIHNldHVwIHRoZSBlbnZpcm9ubWVudCB0bw0KPiA+ID4+PiByZXByb2R1 Y2UgdGhlIDw9IDYgZmFpbHVyZXMgPyBNYXliZSBJIGxvc3Qgc29tZSBpbXBvcnRhbnQgc3RlcHMu DQo+ID4gPj4+IFRoYW5rcyB2ZXJ5DQo+ID4gbXVjaCA6KS4NCj4gPiA+Pg0KPiA+ID4+ICtESiBh bmQgRGFyaXVzLCB3aG8gdXN1YWxseSByZXBvcnQgdGVzdCByZXN1bHRzLsKgIFRoZXkndmUgcHJv YmFibHkNCj4gPiA+PiArZ290DQo+ID4gdGhlIGJlc3QgaWRlYSBvZiBob3cgdG8gc2V0IHRoaW5n cyB1cCwgYnV0IEkgZG9uJ3QgcmVtZW1iZXIgdGhpcw0KPiA+IHJlcXVpcmluZyBhbnl0aGluZyBm YW5jeS4NCj4gPiA+DQo+ID4gPiBGb3IgdGhlIHNwZWNpZmljIHN1cHBvcnQgb2Ygc3RhdGljLXBp ZSwgSSBleHBlY3QgdGhhdCBxZW11LXN5c3RlbSBvcg0KPiA+ID4gZXZlbiBxZW11LXVzZXIgd291 bGQgYmUgYSBmZWFzaWJsZSB0ZXN0aW5nIHBsYXRmb3JtLiAgWW91IG1pZ2h0IG5lZWQNCj4gPiA+ IHNvbWUgYWRqdXN0bWVudCBpZiB0aGUgcGxhdGZvcm0gaW1wbGVtZW50cyBzb21lIG1hdGggY29k ZSBpbg0KPiA+ID4gYXNzZW1ibHksIGJ1dCBpZiB5b3UgZmlsdGVyIG91dCB0aGUgZXhwZWN0ZWQg ZmFpbHVyZXMgaXQgc2hvdWxkIGJlDQo+ID4gPiBkb2FibGUgdG8gY2hlY2sgdGhlIGZlYXR1cmUg aXMgd29ya2luZyBhcyBpbnRlbmRlZC4NCj4gPg0KPiA+IEl0IGxvb2tzIGxpa2UgdGhlIEhXIGlu IHF1ZXN0aW9uIGxpa2VseSBoYXMgc29tZSBpc3N1ZXMgaW4gdGhlIEZQVSwNCj4gPiBzZWUgPGh0 dHBzOi8vZ2l0aHViLmNvbS9yZXZ5b3MvcmV2eW9zL2lzc3Vlcy8xNz4uICBXZSdsbCBoYXZlIHRv DQo+ID4gZmlndXJlIHNvbWV0aGluZyBvdXQgKG1heWJlIGp1c3QgZGlzYWJsZSBGUCB1bnRpbCB1 c2Vyc3BhY2UgaGFzIGFjaydkDQo+ID4gdGhhdCBpdCB1bmRlcnN0YW5kcyB0aGUgZXJyYXRhPyks IGJ1dCBmb3Igbm93IGl0J3MgcHJvYmFibHkgYmVzdCB0bw0KPiA+IGp1c3QgdGVzdCBvbiBRRU1V Lg0KPiA+DQo+ID4gPiBIb3dldmVyIGl0IGlzIGhhcmQgdG8gZmlsdGVyIG91dCBpZiB5b3UganVz dCBzcGVjaWZ5IHRoZSBudW1iZXIgb2YNCj4gPiA+IGZhaWx1cmUgYmVmb3JlL2FmdGVyIHdpdGhv dXQgYnJlYWtpbmcgZG93biB3aGljaCB0ZXN0cyBoYXMgZmFpbGVkDQo+ID4gPiBhbmQgd2h5IChX YXMgaXMgZHVlIHRpbWVvdXQgZHVlIGVtdWxhdGlvbj8gV2FzIGl0IGR1ZSBtaXNzaW5nDQo+ID4g PiBsaWJzdGRjKysuc28vbGliZ2NjX3Muc28gc3VwcG9ydD8gV2FzIGlzIG1hdGggZmFpbHVyZSBk dWUgd3JvbmcNCj4gPiBlbXVsYXRpb24/KS4NCj4gPiA+DQo+ID4gPj4NCj4gPiA+Pj4NCj4gPiA+ Pj4gVGhhbmtzLA0KPiA+ID4+PiBZYW56aGFuZw0KPiA+ID4+Pg0KPiA+ID4+Pj4gLS0tLS1Pcmln aW5hbCBNZXNzYWdlLS0tLS0NCj4gPiA+Pj4+IEZyb206IEFkaGVtZXJ2YWwgWmFuZWxsYSBOZXR0 byA8YWRoZW1lcnZhbC56YW5lbGxhQGxpbmFyby5vcmc+DQo+ID4gPj4+PiBTZW50OiBUdWVzZGF5 LCBBdWd1c3QgMTUsIDIwMjMgNzo0NiBQTQ0KPiA+ID4+Pj4gVG86IFdhbmcsIFlhbnpoYW5nIDx5 YW56aGFuZy53YW5nQGludGVsLmNvbT47IFBhbG1lciBEYWJiZWx0DQo+ID4gPj4+PiA8cGFsbWVy QGRhYmJlbHQuY29tPjsgbGliYy1hbHBoYUBzb3VyY2V3YXJlLm9yZw0KPiA+ID4+Pj4gU3ViamVj dDogUmU6IFtQQVRDSF0gUklTQy1WOiBFbmFibGUgc3RhdGljLXBpZS4NCj4gPiA+Pj4+DQo+ID4g Pj4+Pg0KPiA+ID4+Pj4NCj4gPiA+Pj4+IE9uIDEzLzA4LzIzIDA5OjIwLCBXYW5nLCBZYW56aGFu ZyB2aWEgTGliYy1hbHBoYSB3cm90ZToNCj4gPiA+Pj4+ID4gSGkgUGFsbWVyLA0KPiA+ID4+Pj4g Pg0KPiA+ID4+Pj4gPiBJIGhhdmUgdGVzdGVkIHRoZSBjb21taXQoNTQyYjExMDU4NSkgd2l0aCB0 aGlzIHBhdGNoLiBUaGUNCj4gPiA+Pj4+ID4gcmVzdWx0cyBsaWtlIGJlbG93LA0KPiA+ID4+Pj4g Pg0KPiA+ID4+Pj4gPiBTdW1tYXJ5IG9mIHRlc3QgcmVzdWx0czoNCj4gPiA+Pj4+ID7CoMKgwqDC oCAxODkgRkFJTA0KPiA+ID4+Pj4gPsKgwqDCoCA0MzI4IFBBU1MNCj4gPiA+Pj4+ID7CoMKgwqDC oCAxMDEgVU5TVVBQT1JURUQNCj4gPiA+Pj4+ID7CoMKgwqDCoMKgIDE2IFhGQUlMDQo+ID4gPj4+ PiA+wqDCoMKgwqDCoMKgIDIgWFBBU1MNCj4gPiA+Pj4+ID4NCj4gPiA+Pj4+ID4gQW5kIHRoZSBj b21taXQoNTQyYjExMDU4NSkncyByZXN1bHRzIGxpa2UgYmVsb3csDQo+ID4gPj4+PiA+DQo+ID4g Pj4+PiA+IFN1bW1hcnkgb2YgdGVzdCByZXN1bHRzOg0KPiA+ID4+Pj4gPsKgwqDCoMKgIDE4OSBG QUlMDQo+ID4gPj4+PiA+wqDCoMKgIDQzMjYgUEFTUw0KPiA+ID4+Pj4gPsKgwqDCoMKgIDEwMSBV TlNVUFBPUlRFRA0KPiA+ID4+Pj4gPsKgwqDCoMKgwqAgMTYgWEZBSUwNCj4gPiA+Pj4+ID7CoMKg wqDCoMKgwqAgMiBYUEFTUw0KPiA+ID4+Pj4gPg0KPiA+ID4+Pj4gPiBUaGUgYmludXRpbHMncyBj b21taXQgaXMgMmRiMjBiOTdmMWQgYW5kIGdjYydzIGNvbW1pdCBpcw0KPiBiZjM2NjU2YTE0YS4N Cj4gPiA+Pj4+ID4NCj4gPiA+Pj4+ID4gSSB1c2UgdGhlIGNvbW1hbmQgbWFrZSBjaGVjay1nbGli Yy1saW51eCBpbiByaXNjdi1nbnUtdG9vbGNoYWluLg0KPiA+ID4+Pj4gPiBOb3Qgc3VyZSBpcyB0 aGF0IGFjY2VwdGFibGUuDQo+ID4gPj4+Pg0KPiA+ID4+Pj4gVGhlIHJpc2N2IHJlcG9ydHMgZm9y IDIuMzggcmVsZWFzZSBbMV0gbGlzdCBhdCBtYXhpbXVtIG9mIDYgRkFJTA0KPiA+ID4+Pj4gZm9y IGFsbCB0aGUgQUJJIHZhcmlhbnRzLsKgIFRoZSAxODkgZmFpbHVyZXMgeW91IGFyZSByZXBvcnRp bmcNCj4gPiA+Pj4+IG1lYW5zIHRoYXQgeW91ciBlbnZpcm9ubWVudCBpcyBlaXRoZXIgbWlzc2lu ZyBzb21lIHNldHVwIChmb3INCj4gPiA+Pj4+IGluc3RhbmNlLCBjb3B5aW5nIHRoZSBsaWJnY2Nf cy5zbyBhbmQgbGlic3RkKysuc28gb24gdGhlIGJ1aWxkDQo+ID4gPj4+PiBmb2xkZXIgc28gQysr IGFuZCB0ZXN0cyB0aGF0IHJlcXVpcmUgcHRocmVhZF9jYW5jZWwgb3IgYmFja3RyYWNlDQo+ID4g Pj4+PiB3b3JrcyBjb3JyZWN0bHkpIG9yIGl0IGlzIG5vdCBwcm9wZXJseSBjb25maWd1cmVkLg0K PiA+ID4+Pj4NCj4gPiA+Pj4+IFBsZWFzZSBzb3J0IHRoaXMgb3V0IGZpcnN0LCBzaW5jZSB3aXRo IHRoYXQgYW1vdW50IG9mIGZhaWx1cmVzIGlzDQo+ID4gPj4+PiBub3Qgc3RyYWlnaHRmb3J3YXJk IHRvIGNoZWNrIHdoZXRoZXIgc3RhdGljLXBpZSBpcyByZWFsbHkgd29ya2luZw0KPiA+ID4+Pj4g YXMNCj4gPiBpbnRlbmRlZC4NCj4gPiA+Pj4NCg==