From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from NAM12-MW2-obe.outbound.protection.outlook.com (NAM12-MW2-obe.outbound.protection.outlook.com [40.107.244.80]) by mx.groups.io with SMTP id smtpd.web12.612.1589215359612957210 for ; Mon, 11 May 2020 09:42:39 -0700 Authentication-Results: mx.groups.io; dkim=pass header.i=@vmware.com header.s=selector2 header.b=TpgzmoD3; spf=pass (domain: vmware.com, ip: 40.107.244.80, mailfrom: awarkentin@vmware.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QP+gpN12nlmypzbs0Ur9AH1cg9lQ6Hk3QvfgQXq88ORsxV8zg1roOagKNgzmTJa6J30h7vt8yKQoUN53xmG5gdeunG8F34Nr6asn4SN3mGFUXKqRF6vsWkOfFFd/SUpA0hPQwidZcmxvlxQ2gK0A95PWSO0a2mtpFdbEE4eWvvYrWjtTkO16tF9MMBXG6e/ziK+A4+Q3gje2UU/3yjiurez68HTVlSK20+w5GT9effDIXYLnMxoSicZKRJpnjqzlRWact+f5+Xsz/C/N8YWxLgOXXw2J3pocn63f2yMO1a2BetzBu3teGbI3yImPSKAyF5m1lnITXyKcEvtUTgOrpQ== 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=1xU0mamtjtyCLPeMToeA1a/8Bcbapjd5hIpR6R2LfO8=; b=ejgSsMXrL5ITNxWFDEzFVgionb8z8K4vK0NqsWRvh298cv08SjHgzgDeQaWZXDEmZeaOox90nCvJjKBSpp7AQNUCyCZXo1UylfYzkL+Mn/xxF+A2Ke8ZoNOysmJdNAZTPzgJcv3+vy3+3xG4+RbC9sYwOJsYikAiOhKECSSngpaIQK00Vn88XFplCKCnuQBdKJKm4jyXM5YFoQvcU9t9QxZfCwZBqONJiSRip8vbFH4w95/XJGgsuBVVodrLZQnLcYk0Hoo0M1aVNxpPOx0aOzd/LJ8IXBWViWI5RLQY+pWI3JbIMGFXKGNN2SDahbX0T8v6FcNNd1D8jXGd9cj84g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=vmware.com; dmarc=pass action=none header.from=vmware.com; dkim=pass header.d=vmware.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=vmware.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=1xU0mamtjtyCLPeMToeA1a/8Bcbapjd5hIpR6R2LfO8=; b=TpgzmoD3wV3CQ4WdsrXKopmSaqDB+79ToKdTYSC0ocQkUaD3OqSQrFRueiYUSq0J3DG1028y9NvmcOqrNOa2zr3V5b5Kjlr+AjNAJfmq9jWX3nVlM7+XKdXf33t4PYbRMi7KtjWyJmin8F3j5oIaN2So4JwRBGaKweKSHwMsokA= Received: from BN6PR05MB3411.namprd05.prod.outlook.com (2603:10b6:405:43::23) by BN6PR05MB2818.namprd05.prod.outlook.com (2603:10b6:404:28::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3000.11; Mon, 11 May 2020 16:42:37 +0000 Received: from BN6PR05MB3411.namprd05.prod.outlook.com ([fe80::f463:db64:43d8:5a0f]) by BN6PR05MB3411.namprd05.prod.outlook.com ([fe80::f463:db64:43d8:5a0f%3]) with mapi id 15.20.3000.016; Mon, 11 May 2020 16:42:37 +0000 From: "Andrei Warkentin" To: Ard Biesheuvel , "devel@edk2.groups.io" CC: Pete Batard , Jared McNeill , Samer El-Haj-Mahmoud , Jeremy Linton Subject: Re: [PATCH edk2-platforms v4 4/9] Silicon/Broadcom/BcmGenetDxe: avoid uncached memory for streaming DMA Thread-Topic: [PATCH edk2-platforms v4 4/9] Silicon/Broadcom/BcmGenetDxe: avoid uncached memory for streaming DMA Thread-Index: AQHWJ6RDVexvBMWWlUmvnasV7CrH56ijFL/u Date: Mon, 11 May 2020 16:42:36 +0000 Message-ID: References: <20200511145527.23453-1-ard.biesheuvel@arm.com>,<20200511145527.23453-5-ard.biesheuvel@arm.com> In-Reply-To: <20200511145527.23453-5-ard.biesheuvel@arm.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: arm.com; dkim=none (message not signed) header.d=none;arm.com; dmarc=none action=none header.from=vmware.com; x-originating-ip: [98.214.99.181] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 178f75d7-4d38-43dc-5dbe-08d7f5ca5008 x-ms-traffictypediagnostic: BN6PR05MB2818: x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8882; x-forefront-prvs: 04004D94E2 x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: lZQ/vWnsuNdSW3IRZ/Dk1fGc/mZBKH+aauecpkcCCcpRFeQBygpIbA6+6FqT/gxm6fl8T759R+pyxqHVGN3pvw58YSIY/Mzt9TecI05D9l5Z0o/eT8xgJApqG7b5FpA8/PoC1ThLS9JycRYX1douK9N65mDfQcDN7FDgpw958uW5v/aVIBC2VXWHH/Kfo8jxy1jOn6G7bJyuStn84APEup9zXpZXIMTxaPikqEn8tPwU7Zo7b0jjIVOtKbDxXrSFLCSByvqTFojcigD38A4k1ZtKq+eqGNZSUQoO/l0lzEjqYjAW82MVCJQF511SpLJ0Ix/+jMJ1bAcbRWsscpysYlZAW9IHMhc3R8ColVliEfx7vCqv+h4i2SEH0KcGobf4/5RpKUP3ehS267VbHC/y1IB4RdYNvR0NT6V0p2rQN+QxExV89SpkZswZgHKam+yAfsnFVaxNHVRfHTwx94MLl1YvamyaYI666EnZVkZWA8wDy21OHhPAGUlJiToks+NPVJHZQRWYkWowwHrEcG3XMQ== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:BN6PR05MB3411.namprd05.prod.outlook.com;PTR:;CAT:NONE;SFTY:;SFS:(4636009)(376002)(346002)(136003)(366004)(396003)(39860400002)(33430700001)(66446008)(26005)(64756008)(33440700001)(33656002)(8676002)(52536014)(6506007)(66556008)(53546011)(66946007)(478600001)(2906002)(8936002)(4326008)(66476007)(71200400001)(19627405001)(9686003)(7696005)(86362001)(5660300002)(54906003)(316002)(110136005)(55016002)(76116006)(186003);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata: U16QswrZZ+nn8tjLLULHZDAja8regWNV6y2O22LC1fQmcA4sDCqtyJnZcAyDyNYW21nWRFruDHD5Xach1mluf5QLQ/owEhOaemFeIHc+qQZORpea3bXGjSIYdAS9S31zyEvdkxMUE/TvJeqF99ERASpFZmmUAJacWWE8PKDs2m4iEHxyneHlv24uhx9uh66pvhp6QIErC8jil+qVd6fIApsVZhjU/vFnggoCtukpvJAYaqc8MjjxU4NwFbRC5QKUH4q3XGxrIKTJ+0TAkfcq6YUdCtBQIu6hyPtIUX9Q3cNaKAXCZKXl8P3Vb83oko/XApbFr2V3wvO12sZu1kb6Wpr7PBQXkMAwl85MXBwdXKm02TuXGLifDihr8bG45tHDJjtexMhotJoYVITwBZjBopnNJRjrSnohu7sXHo3HvIIaIpuE+m1Q/JyvJ+3VTxPjFwb+EU0UpnP/6TFvvF2/7X9tQtHG48OFFDw4ME9tjdM= x-ms-exchange-transport-forked: True MIME-Version: 1.0 X-OriginatorOrg: vmware.com X-MS-Exchange-CrossTenant-Network-Message-Id: 178f75d7-4d38-43dc-5dbe-08d7f5ca5008 X-MS-Exchange-CrossTenant-originalarrivaltime: 11 May 2020 16:42:36.9150 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: b39138ca-3cee-4b4a-a4d6-cd83d9dd62f0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: EWz2j7oGNLQl4yjBYX0L1+90mbGYTn+n8As5YBf7Z96m+0y3K7N2KKpmxUv6Q8aUYGq6fCdqTnNlMKEKh98B4A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN6PR05MB2818 Content-Language: en-US Content-Type: multipart/alternative; boundary="_000_BN6PR05MB34119A2B8E6206544521C00EB9A10BN6PR05MB3411namp_" --_000_BN6PR05MB34119A2B8E6206544521C00EB9A10BN6PR05MB3411namp_ Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 SXMgMTUwMCB0aGUgbWF4IE1UVSB0aGF0IFVFRkkgdXNlcz8gV2Fzbid0IGNsZWFyIGZyb20gdGhl IHNwZWMuDQoNCk90aGVyd2lzZSBsb29rcyBnb29kIC0gZXNwIG9wdGltaXppbmcgdGhlIGFsbG9j YXRpb25zIGluc3RlYWQgb2Ygd2FzdGluZyBoYWxmIHBhZ2Ugb24gZXZlcnkgYWxsb2Mg8J+Zgi4N Cg0KTEdUTQ0KDQpSZXZpZXdlZC1ieTogQW5kcmVpIFdhcmtlbnRpbiA8YW5kcmV5LndhcmtlbnRp bkBnbWFpbC5jb20+DQoNCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fDQpGcm9tOiBB cmQgQmllc2hldXZlbCA8YXJkLmJpZXNoZXV2ZWxAYXJtLmNvbT4NClNlbnQ6IE1vbmRheSwgTWF5 IDExLCAyMDIwIDk6NTUgQU0NClRvOiBkZXZlbEBlZGsyLmdyb3Vwcy5pbyA8ZGV2ZWxAZWRrMi5n cm91cHMuaW8+DQpDYzogQXJkIEJpZXNoZXV2ZWwgPGFyZC5iaWVzaGV1dmVsQGFybS5jb20+OyBQ ZXRlIEJhdGFyZCA8cGV0ZUBha2VvLmllPjsgSmFyZWQgTWNOZWlsbCA8am1jbmVpbGxAaW52aXNp YmxlLmNhPjsgQW5kcmVpIFdhcmtlbnRpbiA8YXdhcmtlbnRpbkB2bXdhcmUuY29tPjsgU2FtZXIg RWwtSGFqLU1haG1vdWQgPFNhbWVyLkVsLUhhai1NYWhtb3VkQGFybS5jb20+OyBKZXJlbXkgTGlu dG9uIDxqZXJlbXkubGludG9uQGFybS5jb20+DQpTdWJqZWN0OiBbUEFUQ0ggZWRrMi1wbGF0Zm9y bXMgdjQgNC85XSBTaWxpY29uL0Jyb2FkY29tL0JjbUdlbmV0RHhlOiBhdm9pZCB1bmNhY2hlZCBt ZW1vcnkgZm9yIHN0cmVhbWluZyBETUENCg0KVGhlIG5vbi1jb2hlcmVudCB2ZXJzaW9uIG9mIERt YUFsbG9jYXRlQnVmZmVyICgpIHJldHVybnMgdW5jYWNoZWQNCm1lbW9yeSwgdG8gZW5zdXJlIHRo YXQgdGhlIENQVSBhbmQgdGhlIGRldmljZSBzZWUgdGhlIHNhbWUgZGF0YSwNCmV2ZW4gd2UgdGhl eSBhcmUgYWNjZXNzaW5nIHRoZSBidWZmZXIgYXQgdGhlIHNhbWUgdGltZS4NCg0KVGhpcyBpcyBu b3QgcmVhbGx5IG5lY2Vzc2FyeSBmb3Igb3VyIFJYIHJpbmc6IHRoZSBDUFUgbmV2ZXIgYWNjZXNz ZXMNCnRoZSBidWZmZXIgd2hpbGUgaXQgaXMgbWFwcGVkIGZvciB3cml0aW5nIGJ5IHRoZSBkZXZp Y2UsIGFuZCBzbyB3ZQ0KY2FuIHNpbXBseSB1c2UgdGhlIHN0cmVhbWluZyBETUEgbW9kZWwsIHdo aWNoIHVzZXMgb3JkaW5hcnkgY2FjaGVkDQpidWZmZXJzLCBidXQgaXNzdWVzIGEgY2FjaGUgaW52 YWxpZGF0ZSBhdCBETUEgdW5tYXAgdGltZS4NCg0KV2hpbGUgYXQgaXQsIHJlZHVjZSB0aGUgbWF4 IHBhY2tldCBzaXplIHRvIDE1MzYgYnl0ZXMsIGFuZCBhbGxvY2F0ZQ0KdGhlIGVudGlyZSBidWZm ZXIgYXJyYXkgdXNpbmcgYSBzaW5nbGUgY2FsbC4NCg0KU2lnbmVkLW9mZi1ieTogQXJkIEJpZXNo ZXV2ZWwgPGFyZC5iaWVzaGV1dmVsQGFybS5jb20+DQotLS0NCiBTaWxpY29uL0Jyb2FkY29tL0Ry aXZlcnMvTmV0L0JjbUdlbmV0RHhlL0JjbUdlbmV0RHhlLmluZiB8ICA0ICsrKw0KIFNpbGljb24v QnJvYWRjb20vRHJpdmVycy9OZXQvQmNtR2VuZXREeGUvR2VuZXRVdGlsLmggICAgIHwgIDYgKyst LQ0KIFNpbGljb24vQnJvYWRjb20vRHJpdmVycy9OZXQvQmNtR2VuZXREeGUvR2VuZXRVdGlsLmMg ICAgIHwgMzYgKysrKysrKysrLS0tLS0tLS0tLS0NCiBTaWxpY29uL0Jyb2FkY29tL0RyaXZlcnMv TmV0L0JjbUdlbmV0RHhlL1NpbXBsZU5ldHdvcmsuYyB8ICAyICstDQogNCBmaWxlcyBjaGFuZ2Vk LCAyNiBpbnNlcnRpb25zKCspLCAyMiBkZWxldGlvbnMoLSkNCg0KZGlmZiAtLWdpdCBhL1NpbGlj b24vQnJvYWRjb20vRHJpdmVycy9OZXQvQmNtR2VuZXREeGUvQmNtR2VuZXREeGUuaW5mIGIvU2ls aWNvbi9Ccm9hZGNvbS9Ecml2ZXJzL05ldC9CY21HZW5ldER4ZS9CY21HZW5ldER4ZS5pbmYNCmlu ZGV4IDFmMWFlY2E3ZGQ2Yi4uMjQ4MTY0MjQ5YzZlIDEwMDY0NA0KLS0tIGEvU2lsaWNvbi9Ccm9h ZGNvbS9Ecml2ZXJzL05ldC9CY21HZW5ldER4ZS9CY21HZW5ldER4ZS5pbmYNCisrKyBiL1NpbGlj b24vQnJvYWRjb20vRHJpdmVycy9OZXQvQmNtR2VuZXREeGUvQmNtR2VuZXREeGUuaW5mDQpAQCAt NTEsMyArNTEsNyBAQCBbUHJvdG9jb2xzXQ0KICAgZ0JjbUdlbmV0UGxhdGZvcm1EZXZpY2VQcm90 b2NvbEd1aWQgICAgICAgICAjIyBUT19TVEFSVA0KICAgZ0VmaURldmljZVBhdGhQcm90b2NvbEd1 aWQgICAgICAgICAgICAgICAgICAjIyBCWV9TVEFSVA0KICAgZ0VmaVNpbXBsZU5ldHdvcmtQcm90 b2NvbEd1aWQgICAgICAgICAgICAgICAjIyBCWV9TVEFSVA0KKw0KK1tGaXhlZFBjZF0NCisgIGdF bWJlZGRlZFRva2VuU3BhY2VHdWlkLlBjZERtYURldmljZU9mZnNldA0KKyAgZ0VtYmVkZGVkVG9r ZW5TcGFjZUd1aWQuUGNkRG1hRGV2aWNlTGltaXQNCmRpZmYgLS1naXQgYS9TaWxpY29uL0Jyb2Fk Y29tL0RyaXZlcnMvTmV0L0JjbUdlbmV0RHhlL0dlbmV0VXRpbC5oIGIvU2lsaWNvbi9Ccm9hZGNv bS9Ecml2ZXJzL05ldC9CY21HZW5ldER4ZS9HZW5ldFV0aWwuaA0KaW5kZXggYjQ5MWVhNDY2NWIw Li5kZGZiYzA4MDZjMDcgMTAwNjQ0DQotLS0gYS9TaWxpY29uL0Jyb2FkY29tL0RyaXZlcnMvTmV0 L0JjbUdlbmV0RHhlL0dlbmV0VXRpbC5oDQorKysgYi9TaWxpY29uL0Jyb2FkY29tL0RyaXZlcnMv TmV0L0JjbUdlbmV0RHhlL0dlbmV0VXRpbC5oDQpAQCAtNTAsNyArNTAsNyBAQA0KICNkZWZpbmUg QlJHUEhZX1NIQURPV18xQ19HVFhDTEtfRU4gICAgICAgMHgwMjAwDQoNCiAjZGVmaW5lIEdFTkVU X1ZFUlNJT04gICAgICAgICAgICAgICAgICAgICAgICAgICAweDBhDQotI2RlZmluZSBHRU5FVF9N QVhfUEFDS0VUX1NJWkUgICAgICAgICAgICAgICAgICAgMjA0OA0KKyNkZWZpbmUgR0VORVRfTUFY X1BBQ0tFVF9TSVpFICAgICAgICAgICAgICAgICAgIDE1MzYNCg0KICNkZWZpbmUgR0VORVRfU1lT X1JFVl9DVFJMICAgICAgICAgICAgICAgICAgICAgIDB4MDAwDQogI2RlZmluZSAgU1lTX1JFVl9N QUpPUiAgICAgICAgICAgICAgICAgICAgICAgICAgKEJJVDI3fEJJVDI2fEJJVDI1fEJJVDI0KQ0K QEAgLTIxNyw3ICsyMTcsNyBAQCB0eXBlZGVmIHN0cnVjdCB7DQogICBVSU5UMTYgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBUeENvbnNJbmRleDsNCiAgIFVJTlQxNiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIFR4UHJvZEluZGV4Ow0KDQotICBVSU5UOCAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAqUnhCdWZmZXJbR0VORVRfRE1BX0RFU0NfQ09VTlRdOw0KKyAgRUZJX1BI WVNJQ0FMX0FERFJFU1MgICAgICAgICAgICAgICAgUnhCdWZmZXI7DQogICBHRU5FVF9NQVBfSU5G TyAgICAgICAgICAgICAgICAgICAgICBSeEJ1ZmZlck1hcFtHRU5FVF9ETUFfREVTQ19DT1VOVF07 DQogICBVSU5UMTYgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSeENvbnNJbmRleDsNCiAg IFVJTlQxNiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFJ4UHJvZEluZGV4Ow0KQEAgLTIz NSw2ICsyMzUsOCBAQCBleHRlcm4gQ09OU1QgRUZJX1NJTVBMRV9ORVRXT1JLX1BST1RPQ09MICAg ICAgZ0dlbmV0U2ltcGxlTmV0d29ya1RlbXBsYXRlOw0KICNkZWZpbmUgR0VORVRfRFJJVkVSX1NJ R05BVFVSRSAgICAgICAgICAgICAgICBTSUdOQVRVUkVfMzIoJ0cnLCAnTicsICdFJywgJ1QnKQ0K ICNkZWZpbmUgR0VORVRfUFJJVkFURV9EQVRBX0ZST01fU05QX1RISVMoYSkgICBDUihhLCBHRU5F VF9QUklWQVRFX0RBVEEsIFNucCwgR0VORVRfRFJJVkVSX1NJR05BVFVSRSkNCg0KKyNkZWZpbmUg R0VORVRfUlhfQlVGRkVSKGcsIGlkeCkgICAgICAgICAgICAgICAoKFVJTlQ4ICopKFVJTlROKShn KS0+UnhCdWZmZXIgKyBHRU5FVF9NQVhfUEFDS0VUX1NJWkUgKiAoaWR4KSkNCisNCiBFRklfU1RB VFVTDQogRUZJQVBJDQogR2VuZXRQaHlSZWFkICgNCmRpZmYgLS1naXQgYS9TaWxpY29uL0Jyb2Fk Y29tL0RyaXZlcnMvTmV0L0JjbUdlbmV0RHhlL0dlbmV0VXRpbC5jIGIvU2lsaWNvbi9Ccm9hZGNv bS9Ecml2ZXJzL05ldC9CY21HZW5ldER4ZS9HZW5ldFV0aWwuYw0KaW5kZXggNzFjNjU5ZTdmODgy Li45NGI1NzhhMTBhYTEgMTAwNjQ0DQotLS0gYS9TaWxpY29uL0Jyb2FkY29tL0RyaXZlcnMvTmV0 L0JjbUdlbmV0RHhlL0dlbmV0VXRpbC5jDQorKysgYi9TaWxpY29uL0Jyb2FkY29tL0RyaXZlcnMv TmV0L0JjbUdlbmV0RHhlL0dlbmV0VXRpbC5jDQpAQCAtMTksNiArMTksMTAgQEANCg0KICNkZWZp bmUgR0VORVRfUEhZX1JFVFJZICAgICAxMDAwDQoNCitTVEFUSUMgQ09OU1QNCitFRklfUEhZU0lD QUxfQUREUkVTUyAgIG1EbWFBZGRyZXNzTGltaXQgPSBGaXhlZFBjZEdldDY0IChQY2REbWFEZXZp Y2VMaW1pdCkgLQ0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZp eGVkUGNkR2V0NjQgKFBjZERtYURldmljZU9mZnNldCk7DQorDQogLyoqDQogICBSZWFkIGEgbWVt b3J5LW1hcHBlZCBkZXZpY2UgQ1NSLg0KDQpAQCAtNjA1LDE5ICs2MDksMTcgQEAgR2VuZXREbWFB bGxvYyAoDQogICBJTiBHRU5FVF9QUklWQVRFX0RBVEEgKkdlbmV0DQogICApDQogew0KLSAgRUZJ X1NUQVRVUyAgU3RhdHVzOw0KLSAgVUlOVE4gICAgICAgSWR4Ow0KKyAgRUZJX1NUQVRVUyAgICAg ICAgICAgICAgU3RhdHVzOw0KDQotICBmb3IgKElkeCA9IDA7IElkeCA8IEdFTkVUX0RNQV9ERVND X0NPVU5UOyBJZHgrKykgew0KLSAgICBTdGF0dXMgPSBEbWFBbGxvY2F0ZUJ1ZmZlciAoRWZpQm9v dFNlcnZpY2VzRGF0YSwgRUZJX1NJWkVfVE9fUEFHRVMgKEdFTkVUX01BWF9QQUNLRVRfU0laRSks IChWT0lEICoqKSZHZW5ldC0+UnhCdWZmZXJbSWR4XSk7DQotICAgIGlmIChFRklfRVJST1IgKFN0 YXR1cykpIHsNCi0gICAgICBERUJVRyAoKERFQlVHX0VSUk9SLCAiJWE6IEZhaWxlZCB0byBhbGxv Y2F0ZSBSWCBidWZmZXI6ICVyXG4iLCBfX0ZVTkNUSU9OX18sIFN0YXR1cykpOw0KLSAgICAgIEdl bmV0RG1hRnJlZSAoR2VuZXQpOw0KLSAgICAgIHJldHVybiBTdGF0dXM7DQotICAgIH0NCisgIEdl bmV0LT5SeEJ1ZmZlciA9IG1EbWFBZGRyZXNzTGltaXQ7DQorICBTdGF0dXMgPSBnQlMtPkFsbG9j YXRlUGFnZXMgKEFsbG9jYXRlTWF4QWRkcmVzcywgRWZpQm9vdFNlcnZpY2VzRGF0YSwNCisgICAg ICAgICAgICAgICAgICBFRklfU0laRV9UT19QQUdFUyAoR0VORVRfTUFYX1BBQ0tFVF9TSVpFICog R0VORVRfRE1BX0RFU0NfQ09VTlQpLA0KKyAgICAgICAgICAgICAgICAgICZHZW5ldC0+UnhCdWZm ZXIpOw0KKyAgaWYgKEVGSV9FUlJPUiAoU3RhdHVzKSkgew0KKyAgICBERUJVRyAoKERFQlVHX0VS Uk9SLA0KKyAgICAgICIlYTogRmFpbGVkIHRvIGFsbG9jYXRlIFJYIGJ1ZmZlcjogJXJcbiIsIF9f RlVOQ1RJT05fXywgU3RhdHVzKSk7DQogICB9DQotDQotICByZXR1cm4gRUZJX1NVQ0NFU1M7DQor ICByZXR1cm4gU3RhdHVzOw0KIH0NCg0KIC8qKg0KQEAgLTY0MCwxMSArNjQyLDExIEBAIEdlbmV0 RG1hTWFwUnhEZXNjcmlwdG9yICgNCiAgIFVJTlROICAgICAgICAgRG1hTnVtYmVyT2ZCeXRlczsN Cg0KICAgQVNTRVJUIChHZW5ldC0+UnhCdWZmZXJNYXBbRGVzY0luZGV4XS5NYXBwaW5nID09IE5V TEwpOw0KLSAgQVNTRVJUIChHZW5ldC0+UnhCdWZmZXJbRGVzY0luZGV4XSAhPSBOVUxMKTsNCisg IEFTU0VSVCAoR2VuZXQtPlJ4QnVmZmVyICE9IDApOw0KDQogICBEbWFOdW1iZXJPZkJ5dGVzID0g R0VORVRfTUFYX1BBQ0tFVF9TSVpFOw0KICAgU3RhdHVzID0gRG1hTWFwIChNYXBPcGVyYXRpb25C dXNNYXN0ZXJXcml0ZSwNCi0gICAgICAgICAgICAgKFZPSUQgKilHZW5ldC0+UnhCdWZmZXJbRGVz Y0luZGV4XSwNCisgICAgICAgICAgICAgR0VORVRfUlhfQlVGRkVSIChHZW5ldCwgRGVzY0luZGV4 KSwNCiAgICAgICAgICAgICAgJkRtYU51bWJlck9mQnl0ZXMsDQogICAgICAgICAgICAgICZHZW5l dC0+UnhCdWZmZXJNYXBbRGVzY0luZGV4XS5QaHlzQWRkcmVzcywNCiAgICAgICAgICAgICAgJkdl bmV0LT5SeEJ1ZmZlck1hcFtEZXNjSW5kZXhdLk1hcHBpbmcpOw0KQEAgLTY5NywxMyArNjk5LDkg QEAgR2VuZXREbWFGcmVlICgNCg0KICAgZm9yIChJZHggPSAwOyBJZHggPCBHRU5FVF9ETUFfREVT Q19DT1VOVDsgSWR4KyspIHsNCiAgICAgR2VuZXREbWFVbm1hcFJ4RGVzY3JpcHRvciAoR2VuZXQs IElkeCk7DQotDQotICAgIGlmIChHZW5ldC0+UnhCdWZmZXJbSWR4XSAhPSBOVUxMKSB7DQotICAg ICAgRG1hRnJlZUJ1ZmZlciAoRUZJX1NJWkVfVE9fUEFHRVMgKEdFTkVUX01BWF9QQUNLRVRfU0la RSksDQotICAgICAgICBHZW5ldC0+UnhCdWZmZXJbSWR4XSk7DQotICAgICAgR2VuZXQtPlJ4QnVm ZmVyW0lkeF0gPSBOVUxMOw0KLSAgICB9DQogICB9DQorICBnQlMtPkZyZWVQYWdlcyAoR2VuZXQt PlJ4QnVmZmVyLA0KKyAgICAgICAgIEVGSV9TSVpFX1RPX1BBR0VTIChHRU5FVF9NQVhfUEFDS0VU X1NJWkUgKiBHRU5FVF9ETUFfREVTQ19DT1VOVCkpOw0KIH0NCg0KIC8qKg0KZGlmZiAtLWdpdCBh L1NpbGljb24vQnJvYWRjb20vRHJpdmVycy9OZXQvQmNtR2VuZXREeGUvU2ltcGxlTmV0d29yay5j IGIvU2lsaWNvbi9Ccm9hZGNvbS9Ecml2ZXJzL05ldC9CY21HZW5ldER4ZS9TaW1wbGVOZXR3b3Jr LmMNCmluZGV4IDcyYWI1NTYxOWIwZS4uOTc0NmYyMTBkMWYyIDEwMDY0NA0KLS0tIGEvU2lsaWNv bi9Ccm9hZGNvbS9Ecml2ZXJzL05ldC9CY21HZW5ldER4ZS9TaW1wbGVOZXR3b3JrLmMNCisrKyBi L1NpbGljb24vQnJvYWRjb20vRHJpdmVycy9OZXQvQmNtR2VuZXREeGUvU2ltcGxlTmV0d29yay5j DQpAQCAtNzMwLDcgKzczMCw3IEBAIEdlbmV0U2ltcGxlTmV0d29ya1JlY2VpdmUgKA0KDQogICBH ZW5ldERtYVVubWFwUnhEZXNjcmlwdG9yIChHZW5ldCwgRGVzY0luZGV4KTsNCg0KLSAgRnJhbWUg PSBHZW5ldC0+UnhCdWZmZXJbRGVzY0luZGV4XTsNCisgIEZyYW1lID0gR0VORVRfUlhfQlVGRkVS IChHZW5ldCwgRGVzY0luZGV4KTsNCg0KICAgaWYgKEZyYW1lTGVuZ3RoID4gMiArIEdlbmV0LT5T bnBNb2RlLk1lZGlhSGVhZGVyU2l6ZSkgew0KICAgICAvLyBSZWNlaXZlZCBmcmFtZSBoYXMgMiBi eXRlcyBvZiBwYWRkaW5nIGF0IHRoZSBzdGFydA0KLS0NCjIuMTcuMQ0KDQo= --_000_BN6PR05MB34119A2B8E6206544521C00EB9A10BN6PR05MB3411namp_ Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: base64 PGh0bWw+DQo8aGVhZD4NCjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0i dGV4dC9odG1sOyBjaGFyc2V0PXV0Zi04Ij4NCjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyIgc3R5bGU9 ImRpc3BsYXk6bm9uZTsiPiBQIHttYXJnaW4tdG9wOjA7bWFyZ2luLWJvdHRvbTowO30gPC9zdHls ZT4NCjwvaGVhZD4NCjxib2R5IGRpcj0ibHRyIj4NCjxkaXYgc3R5bGU9ImZvbnQtZmFtaWx5OiBD b25zb2xhcywgQ291cmllciwgbW9ub3NwYWNlOyBmb250LXNpemU6IDEycHQ7IGNvbG9yOiByZ2Io MCwgMCwgMCk7Ij4NCklzIDE1MDAgdGhlIG1heCBNVFUgdGhhdCBVRUZJIHVzZXM/IFdhc24ndCBj bGVhciBmcm9tIHRoZSBzcGVjLjwvZGl2Pg0KPGRpdiBzdHlsZT0iZm9udC1mYW1pbHk6IENvbnNv bGFzLCBDb3VyaWVyLCBtb25vc3BhY2U7IGZvbnQtc2l6ZTogMTJwdDsgY29sb3I6IHJnYigwLCAw LCAwKTsiPg0KPGJyPg0KPC9kaXY+DQo8ZGl2IHN0eWxlPSJmb250LWZhbWlseTogQ29uc29sYXMs IENvdXJpZXIsIG1vbm9zcGFjZTsgZm9udC1zaXplOiAxMnB0OyBjb2xvcjogcmdiKDAsIDAsIDAp OyI+DQpPdGhlcndpc2UgbG9va3MgZ29vZCAtIGVzcCBvcHRpbWl6aW5nIHRoZSBhbGxvY2F0aW9u cyBpbnN0ZWFkIG9mIHdhc3RpbmcgaGFsZiBwYWdlIG9uIGV2ZXJ5IGFsbG9jDQo8c3BhbiBpZD0i 8J+ZgiI+8J+Zgi48L3NwYW4+PC9kaXY+DQo8ZGl2IHN0eWxlPSJmb250LWZhbWlseTogQ29uc29s YXMsIENvdXJpZXIsIG1vbm9zcGFjZTsgZm9udC1zaXplOiAxMnB0OyBjb2xvcjogcmdiKDAsIDAs IDApOyI+DQo8c3Bhbj48YnI+DQo8L3NwYW4+PC9kaXY+DQo8ZGl2IHN0eWxlPSJmb250LWZhbWls eTogQ29uc29sYXMsIENvdXJpZXIsIG1vbm9zcGFjZTsgZm9udC1zaXplOiAxMnB0OyBjb2xvcjog cmdiKDAsIDAsIDApOyI+DQo8c3Bhbj48c3Bhbj5MR1RNPGJyPg0KPC9zcGFuPg0KPGRpdj48YnI+ DQo8L2Rpdj4NCjxzcGFuPlJldmlld2VkLWJ5OiBBbmRyZWkgV2Fya2VudGluICZsdDthbmRyZXku d2Fya2VudGluQGdtYWlsLmNvbSZndDs8L3NwYW4+PGJyPg0KPC9zcGFuPjwvZGl2Pg0KPGRpdiBz dHlsZT0iZm9udC1mYW1pbHk6IENvbnNvbGFzLCBDb3VyaWVyLCBtb25vc3BhY2U7IGZvbnQtc2l6 ZTogMTJwdDsgY29sb3I6IHJnYigwLCAwLCAwKTsiPg0KPHNwYW4+PHNwYW4+PGJyPg0KPC9zcGFu Pjwvc3Bhbj48L2Rpdj4NCjxkaXYgaWQ9ImFwcGVuZG9uc2VuZCI+PC9kaXY+DQo8aHIgc3R5bGU9 ImRpc3BsYXk6aW5saW5lLWJsb2NrO3dpZHRoOjk4JSIgdGFiaW5kZXg9Ii0xIj4NCjxkaXYgaWQ9 ImRpdlJwbHlGd2RNc2ciIGRpcj0ibHRyIj48Zm9udCBmYWNlPSJDYWxpYnJpLCBzYW5zLXNlcmlm IiBzdHlsZT0iZm9udC1zaXplOjExcHQiIGNvbG9yPSIjMDAwMDAwIj48Yj5Gcm9tOjwvYj4gQXJk IEJpZXNoZXV2ZWwgJmx0O2FyZC5iaWVzaGV1dmVsQGFybS5jb20mZ3Q7PGJyPg0KPGI+U2VudDo8 L2I+IE1vbmRheSwgTWF5IDExLCAyMDIwIDk6NTUgQU08YnI+DQo8Yj5Ubzo8L2I+IGRldmVsQGVk azIuZ3JvdXBzLmlvICZsdDtkZXZlbEBlZGsyLmdyb3Vwcy5pbyZndDs8YnI+DQo8Yj5DYzo8L2I+ IEFyZCBCaWVzaGV1dmVsICZsdDthcmQuYmllc2hldXZlbEBhcm0uY29tJmd0OzsgUGV0ZSBCYXRh cmQgJmx0O3BldGVAYWtlby5pZSZndDs7IEphcmVkIE1jTmVpbGwgJmx0O2ptY25laWxsQGludmlz aWJsZS5jYSZndDs7IEFuZHJlaSBXYXJrZW50aW4gJmx0O2F3YXJrZW50aW5Adm13YXJlLmNvbSZn dDs7IFNhbWVyIEVsLUhhai1NYWhtb3VkICZsdDtTYW1lci5FbC1IYWotTWFobW91ZEBhcm0uY29t Jmd0OzsgSmVyZW15IExpbnRvbiAmbHQ7amVyZW15LmxpbnRvbkBhcm0uY29tJmd0Ozxicj4NCjxi PlN1YmplY3Q6PC9iPiBbUEFUQ0ggZWRrMi1wbGF0Zm9ybXMgdjQgNC85XSBTaWxpY29uL0Jyb2Fk Y29tL0JjbUdlbmV0RHhlOiBhdm9pZCB1bmNhY2hlZCBtZW1vcnkgZm9yIHN0cmVhbWluZyBETUE8 L2ZvbnQ+DQo8ZGl2PiZuYnNwOzwvZGl2Pg0KPC9kaXY+DQo8ZGl2IGNsYXNzPSJCb2R5RnJhZ21l bnQiPjxmb250IHNpemU9IjIiPjxzcGFuIHN0eWxlPSJmb250LXNpemU6MTFwdDsiPg0KPGRpdiBj bGFzcz0iUGxhaW5UZXh0Ij5UaGUgbm9uLWNvaGVyZW50IHZlcnNpb24gb2YgRG1hQWxsb2NhdGVC dWZmZXIgKCkgcmV0dXJucyB1bmNhY2hlZDxicj4NCm1lbW9yeSwgdG8gZW5zdXJlIHRoYXQgdGhl IENQVSBhbmQgdGhlIGRldmljZSBzZWUgdGhlIHNhbWUgZGF0YSw8YnI+DQpldmVuIHdlIHRoZXkg YXJlIGFjY2Vzc2luZyB0aGUgYnVmZmVyIGF0IHRoZSBzYW1lIHRpbWUuPGJyPg0KPGJyPg0KVGhp cyBpcyBub3QgcmVhbGx5IG5lY2Vzc2FyeSBmb3Igb3VyIFJYIHJpbmc6IHRoZSBDUFUgbmV2ZXIg YWNjZXNzZXM8YnI+DQp0aGUgYnVmZmVyIHdoaWxlIGl0IGlzIG1hcHBlZCBmb3Igd3JpdGluZyBi eSB0aGUgZGV2aWNlLCBhbmQgc28gd2U8YnI+DQpjYW4gc2ltcGx5IHVzZSB0aGUgc3RyZWFtaW5n IERNQSBtb2RlbCwgd2hpY2ggdXNlcyBvcmRpbmFyeSBjYWNoZWQ8YnI+DQpidWZmZXJzLCBidXQg aXNzdWVzIGEgY2FjaGUgaW52YWxpZGF0ZSBhdCBETUEgdW5tYXAgdGltZS48YnI+DQo8YnI+DQpX aGlsZSBhdCBpdCwgcmVkdWNlIHRoZSBtYXggcGFja2V0IHNpemUgdG8gMTUzNiBieXRlcywgYW5k IGFsbG9jYXRlPGJyPg0KdGhlIGVudGlyZSBidWZmZXIgYXJyYXkgdXNpbmcgYSBzaW5nbGUgY2Fs bC48YnI+DQo8YnI+DQpTaWduZWQtb2ZmLWJ5OiBBcmQgQmllc2hldXZlbCAmbHQ7YXJkLmJpZXNo ZXV2ZWxAYXJtLmNvbSZndDs8YnI+DQotLS08YnI+DQombmJzcDtTaWxpY29uL0Jyb2FkY29tL0Ry aXZlcnMvTmV0L0JjbUdlbmV0RHhlL0JjbUdlbmV0RHhlLmluZiB8Jm5ic3A7IDQgJiM0MzsmIzQz OyYjNDM7PGJyPg0KJm5ic3A7U2lsaWNvbi9Ccm9hZGNvbS9Ecml2ZXJzL05ldC9CY21HZW5ldER4 ZS9HZW5ldFV0aWwuaCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB8Jm5ic3A7IDYgJiM0MzsmIzQz Oy0tPGJyPg0KJm5ic3A7U2lsaWNvbi9Ccm9hZGNvbS9Ecml2ZXJzL05ldC9CY21HZW5ldER4ZS9H ZW5ldFV0aWwuYyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyB8IDM2ICYjNDM7JiM0MzsmIzQzOyYj NDM7JiM0MzsmIzQzOyYjNDM7JiM0MzsmIzQzOy0tLS0tLS0tLS0tPGJyPg0KJm5ic3A7U2lsaWNv bi9Ccm9hZGNvbS9Ecml2ZXJzL05ldC9CY21HZW5ldER4ZS9TaW1wbGVOZXR3b3JrLmMgfCZuYnNw OyAyICYjNDM7LTxicj4NCiZuYnNwOzQgZmlsZXMgY2hhbmdlZCwgMjYgaW5zZXJ0aW9ucygmIzQz OyksIDIyIGRlbGV0aW9ucygtKTxicj4NCjxicj4NCmRpZmYgLS1naXQgYS9TaWxpY29uL0Jyb2Fk Y29tL0RyaXZlcnMvTmV0L0JjbUdlbmV0RHhlL0JjbUdlbmV0RHhlLmluZiBiL1NpbGljb24vQnJv YWRjb20vRHJpdmVycy9OZXQvQmNtR2VuZXREeGUvQmNtR2VuZXREeGUuaW5mPGJyPg0KaW5kZXgg MWYxYWVjYTdkZDZiLi4yNDgxNjQyNDljNmUgMTAwNjQ0PGJyPg0KLS0tIGEvU2lsaWNvbi9Ccm9h ZGNvbS9Ecml2ZXJzL05ldC9CY21HZW5ldER4ZS9CY21HZW5ldER4ZS5pbmY8YnI+DQomIzQzOyYj NDM7JiM0MzsgYi9TaWxpY29uL0Jyb2FkY29tL0RyaXZlcnMvTmV0L0JjbUdlbmV0RHhlL0JjbUdl bmV0RHhlLmluZjxicj4NCkBAIC01MSwzICYjNDM7NTEsNyBAQCBbUHJvdG9jb2xzXTxicj4NCiZu YnNwOyZuYnNwOyBnQmNtR2VuZXRQbGF0Zm9ybURldmljZVByb3RvY29sR3VpZCZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAjIyBUT19TVEFSVDxicj4NCiZu YnNwOyZuYnNwOyBnRWZpRGV2aWNlUGF0aFByb3RvY29sR3VpZCZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAjIyBCWV9TVEFSVDxicj4NCiZuYnNwOyZuYnNwOyBn RWZpU2ltcGxlTmV0d29ya1Byb3RvY29sR3VpZCZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAj IyBCWV9TVEFSVDxicj4NCiYjNDM7PGJyPg0KJiM0MztbRml4ZWRQY2RdPGJyPg0KJiM0MzsmbmJz cDsgZ0VtYmVkZGVkVG9rZW5TcGFjZUd1aWQuUGNkRG1hRGV2aWNlT2Zmc2V0PGJyPg0KJiM0Mzsm bmJzcDsgZ0VtYmVkZGVkVG9rZW5TcGFjZUd1aWQuUGNkRG1hRGV2aWNlTGltaXQ8YnI+DQpkaWZm IC0tZ2l0IGEvU2lsaWNvbi9Ccm9hZGNvbS9Ecml2ZXJzL05ldC9CY21HZW5ldER4ZS9HZW5ldFV0 aWwuaCBiL1NpbGljb24vQnJvYWRjb20vRHJpdmVycy9OZXQvQmNtR2VuZXREeGUvR2VuZXRVdGls Lmg8YnI+DQppbmRleCBiNDkxZWE0NjY1YjAuLmRkZmJjMDgwNmMwNyAxMDA2NDQ8YnI+DQotLS0g YS9TaWxpY29uL0Jyb2FkY29tL0RyaXZlcnMvTmV0L0JjbUdlbmV0RHhlL0dlbmV0VXRpbC5oPGJy Pg0KJiM0MzsmIzQzOyYjNDM7IGIvU2lsaWNvbi9Ccm9hZGNvbS9Ecml2ZXJzL05ldC9CY21HZW5l dER4ZS9HZW5ldFV0aWwuaDxicj4NCkBAIC01MCw3ICYjNDM7NTAsNyBAQDxicj4NCiZuYnNwOyNk ZWZpbmUgQlJHUEhZX1NIQURPV18xQ19HVFhDTEtfRU4mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsgMHgwMjAwPGJyPg0KJm5ic3A7PGJyPg0KJm5ic3A7I2RlZmluZSBHRU5FVF9W RVJTSU9OJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IDB4MGE8YnI+ DQotI2RlZmluZSBHRU5FVF9NQVhfUEFDS0VUX1NJWkUmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgMjA0ODxicj4NCiYjNDM7I2RlZmluZSBHRU5FVF9N QVhfUEFDS0VUX1NJWkUmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsgMTUzNjxicj4NCiZuYnNwOzxicj4NCiZuYnNwOyNkZWZpbmUgR0VORVRfU1lTX1JF Vl9DVFJMJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7IDB4MDAwPGJyPg0KJm5ic3A7I2RlZmluZSZuYnNwOyBTWVNfUkVW X01BSk9SJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IChCSVQyN3xCSVQyNnxC SVQyNXxCSVQyNCk8YnI+DQpAQCAtMjE3LDcgJiM0MzsyMTcsNyBAQCB0eXBlZGVmIHN0cnVjdCB7 PGJyPg0KJm5ic3A7Jm5ic3A7IFVJTlQxNiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBUeENvbnNJbmRleDs8YnI+DQombmJzcDsmbmJz cDsgVUlOVDE2Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7IFR4UHJvZEluZGV4Ozxicj4NCiZuYnNwOzxicj4NCi0mbmJzcDsgVUlOVDgm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsgKlJ4QnVmZmVyW0dFTkVUX0RNQV9ERVNDX0NPVU5UXTs8YnI+DQomIzQzOyZuYnNw OyBFRklfUEhZU0lDQUxfQUREUkVTUyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBS eEJ1ZmZlcjs8YnI+DQombmJzcDsmbmJzcDsgR0VORVRfTUFQX0lORk8mbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgUnhC dWZmZXJNYXBbR0VORVRfRE1BX0RFU0NfQ09VTlRdOzxicj4NCiZuYnNwOyZuYnNwOyBVSU5UMTYm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsgUnhDb25zSW5kZXg7PGJyPg0KJm5ic3A7Jm5ic3A7IFVJTlQxNiZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBSeFByb2RJbmRleDs8 YnI+DQpAQCAtMjM1LDYgJiM0MzsyMzUsOCBAQCBleHRlcm4gQ09OU1QgRUZJX1NJTVBMRV9ORVRX T1JLX1BST1RPQ09MJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IGdHZW5ldFNpbXBsZU5l dHdvcmtUZW1wbGF0ZTs8YnI+DQombmJzcDsjZGVmaW5lIEdFTkVUX0RSSVZFUl9TSUdOQVRVUkUm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgU0lHTkFUVVJFXzMyKCdHJywgJ04nLCAn RScsICdUJyk8YnI+DQombmJzcDsjZGVmaW5lIEdFTkVUX1BSSVZBVEVfREFUQV9GUk9NX1NOUF9U SElTKGEpJm5ic3A7Jm5ic3A7IENSKGEsIEdFTkVUX1BSSVZBVEVfREFUQSwgU25wLCBHRU5FVF9E UklWRVJfU0lHTkFUVVJFKTxicj4NCiZuYnNwOzxicj4NCiYjNDM7I2RlZmluZSBHRU5FVF9SWF9C VUZGRVIoZywgaWR4KSZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAoKFVJTlQ4ICopKFVJTlRO KShnKS0mZ3Q7UnhCdWZmZXIgJiM0MzsgR0VORVRfTUFYX1BBQ0tFVF9TSVpFICogKGlkeCkpPGJy Pg0KJiM0Mzs8YnI+DQombmJzcDtFRklfU1RBVFVTPGJyPg0KJm5ic3A7RUZJQVBJPGJyPg0KJm5i c3A7R2VuZXRQaHlSZWFkICg8YnI+DQpkaWZmIC0tZ2l0IGEvU2lsaWNvbi9Ccm9hZGNvbS9Ecml2 ZXJzL05ldC9CY21HZW5ldER4ZS9HZW5ldFV0aWwuYyBiL1NpbGljb24vQnJvYWRjb20vRHJpdmVy cy9OZXQvQmNtR2VuZXREeGUvR2VuZXRVdGlsLmM8YnI+DQppbmRleCA3MWM2NTllN2Y4ODIuLjk0 YjU3OGExMGFhMSAxMDA2NDQ8YnI+DQotLS0gYS9TaWxpY29uL0Jyb2FkY29tL0RyaXZlcnMvTmV0 L0JjbUdlbmV0RHhlL0dlbmV0VXRpbC5jPGJyPg0KJiM0MzsmIzQzOyYjNDM7IGIvU2lsaWNvbi9C cm9hZGNvbS9Ecml2ZXJzL05ldC9CY21HZW5ldER4ZS9HZW5ldFV0aWwuYzxicj4NCkBAIC0xOSw2 ICYjNDM7MTksMTAgQEA8YnI+DQombmJzcDs8YnI+DQombmJzcDsjZGVmaW5lIEdFTkVUX1BIWV9S RVRSWSZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAxMDAwPGJyPg0KJm5ic3A7PGJyPg0KJiM0MztT VEFUSUMgQ09OU1Q8YnI+DQomIzQzO0VGSV9QSFlTSUNBTF9BRERSRVNTJm5ic3A7Jm5ic3A7IG1E bWFBZGRyZXNzTGltaXQgPSBGaXhlZFBjZEdldDY0IChQY2REbWFEZXZpY2VMaW1pdCkgLTxicj4N CiYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IEZpeGVkUGNkR2V0NjQgKFBjZERtYURldmljZU9mZnNl dCk7PGJyPg0KJiM0Mzs8YnI+DQombmJzcDsvKio8YnI+DQombmJzcDsmbmJzcDsgUmVhZCBhIG1l bW9yeS1tYXBwZWQgZGV2aWNlIENTUi48YnI+DQombmJzcDs8YnI+DQpAQCAtNjA1LDE5ICYjNDM7 NjA5LDE3IEBAIEdlbmV0RG1hQWxsb2MgKDxicj4NCiZuYnNwOyZuYnNwOyBJTiBHRU5FVF9QUklW QVRFX0RBVEEgKkdlbmV0PGJyPg0KJm5ic3A7Jm5ic3A7ICk8YnI+DQombmJzcDt7PGJyPg0KLSZu YnNwOyBFRklfU1RBVFVTJm5ic3A7IFN0YXR1czs8YnI+DQotJm5ic3A7IFVJTlROJm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IElkeDs8YnI+DQomIzQzOyZuYnNwOyBFRklfU1RB VFVTJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IFN0YXR1czs8YnI+DQombmJzcDs8YnI+DQotJm5ic3A7 IGZvciAoSWR4ID0gMDsgSWR4ICZsdDsgR0VORVRfRE1BX0RFU0NfQ09VTlQ7IElkeCYjNDM7JiM0 MzspIHs8YnI+DQotJm5ic3A7Jm5ic3A7Jm5ic3A7IFN0YXR1cyA9IERtYUFsbG9jYXRlQnVmZmVy IChFZmlCb290U2VydmljZXNEYXRhLCBFRklfU0laRV9UT19QQUdFUyAoR0VORVRfTUFYX1BBQ0tF VF9TSVpFKSwgKFZPSUQgKiopJmFtcDtHZW5ldC0mZ3Q7UnhCdWZmZXJbSWR4XSk7PGJyPg0KLSZu YnNwOyZuYnNwOyZuYnNwOyBpZiAoRUZJX0VSUk9SIChTdGF0dXMpKSB7PGJyPg0KLSZuYnNwOyZu YnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBERUJVRyAoKERFQlVHX0VSUk9SLCAmcXVvdDslYTogRmFp bGVkIHRvIGFsbG9jYXRlIFJYIGJ1ZmZlcjogJXJcbiZxdW90OywgX19GVU5DVElPTl9fLCBTdGF0 dXMpKTs8YnI+DQotJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IEdlbmV0RG1hRnJlZSAo R2VuZXQpOzxicj4NCi0mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgcmV0dXJuIFN0YXR1 czs8YnI+DQotJm5ic3A7Jm5ic3A7Jm5ic3A7IH08YnI+DQomIzQzOyZuYnNwOyBHZW5ldC0mZ3Q7 UnhCdWZmZXIgPSBtRG1hQWRkcmVzc0xpbWl0Ozxicj4NCiYjNDM7Jm5ic3A7IFN0YXR1cyA9IGdC Uy0mZ3Q7QWxsb2NhdGVQYWdlcyAoQWxsb2NhdGVNYXhBZGRyZXNzLCBFZmlCb290U2VydmljZXNE YXRhLDxicj4NCiYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7IEVGSV9TSVpFX1RPX1BBR0VTIChHRU5FVF9NQVhfUEFDS0VUX1NJWkUgKiBHRU5FVF9ETUFf REVTQ19DT1VOVCksPGJyPg0KJiM0MzsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsgJmFtcDtHZW5ldC0mZ3Q7UnhCdWZmZXIpOzxicj4NCiYjNDM7Jm5ic3A7IGlm IChFRklfRVJST1IgKFN0YXR1cykpIHs8YnI+DQomIzQzOyZuYnNwOyZuYnNwOyZuYnNwOyBERUJV RyAoKERFQlVHX0VSUk9SLDxicj4NCiYjNDM7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 ICZxdW90OyVhOiBGYWlsZWQgdG8gYWxsb2NhdGUgUlggYnVmZmVyOiAlclxuJnF1b3Q7LCBfX0ZV TkNUSU9OX18sIFN0YXR1cykpOzxicj4NCiZuYnNwOyZuYnNwOyB9PGJyPg0KLTxicj4NCi0mbmJz cDsgcmV0dXJuIEVGSV9TVUNDRVNTOzxicj4NCiYjNDM7Jm5ic3A7IHJldHVybiBTdGF0dXM7PGJy Pg0KJm5ic3A7fTxicj4NCiZuYnNwOzxicj4NCiZuYnNwOy8qKjxicj4NCkBAIC02NDAsMTEgJiM0 Mzs2NDIsMTEgQEAgR2VuZXREbWFNYXBSeERlc2NyaXB0b3IgKDxicj4NCiZuYnNwOyZuYnNwOyBV SU5UTiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBEbWFO dW1iZXJPZkJ5dGVzOzxicj4NCiZuYnNwOzxicj4NCiZuYnNwOyZuYnNwOyBBU1NFUlQgKEdlbmV0 LSZndDtSeEJ1ZmZlck1hcFtEZXNjSW5kZXhdLk1hcHBpbmcgPT0gTlVMTCk7PGJyPg0KLSZuYnNw OyBBU1NFUlQgKEdlbmV0LSZndDtSeEJ1ZmZlcltEZXNjSW5kZXhdICE9IE5VTEwpOzxicj4NCiYj NDM7Jm5ic3A7IEFTU0VSVCAoR2VuZXQtJmd0O1J4QnVmZmVyICE9IDApOzxicj4NCiZuYnNwOzxi cj4NCiZuYnNwOyZuYnNwOyBEbWFOdW1iZXJPZkJ5dGVzID0gR0VORVRfTUFYX1BBQ0tFVF9TSVpF Ozxicj4NCiZuYnNwOyZuYnNwOyBTdGF0dXMgPSBEbWFNYXAgKE1hcE9wZXJhdGlvbkJ1c01hc3Rl cldyaXRlLDxicj4NCi0mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsm bmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgKFZPSUQgKilHZW5ldC0mZ3Q7UnhCdWZmZXJb RGVzY0luZGV4XSw8YnI+DQomIzQzOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBHRU5FVF9SWF9CVUZGRVIgKEdl bmV0LCBEZXNjSW5kZXgpLDxicj4NCiZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyAmYW1wO0RtYU51bWJl ck9mQnl0ZXMsPGJyPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7ICZhbXA7R2VuZXQtJmd0O1J4QnVm ZmVyTWFwW0Rlc2NJbmRleF0uUGh5c0FkZHJlc3MsPGJyPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7 ICZhbXA7R2VuZXQtJmd0O1J4QnVmZmVyTWFwW0Rlc2NJbmRleF0uTWFwcGluZyk7PGJyPg0KQEAg LTY5NywxMyAmIzQzOzY5OSw5IEBAIEdlbmV0RG1hRnJlZSAoPGJyPg0KJm5ic3A7PGJyPg0KJm5i c3A7Jm5ic3A7IGZvciAoSWR4ID0gMDsgSWR4ICZsdDsgR0VORVRfRE1BX0RFU0NfQ09VTlQ7IElk eCYjNDM7JiM0MzspIHs8YnI+DQombmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsgR2VuZXREbWFVbm1h cFJ4RGVzY3JpcHRvciAoR2VuZXQsIElkeCk7PGJyPg0KLTxicj4NCi0mbmJzcDsmbmJzcDsmbmJz cDsgaWYgKEdlbmV0LSZndDtSeEJ1ZmZlcltJZHhdICE9IE5VTEwpIHs8YnI+DQotJm5ic3A7Jm5i c3A7Jm5ic3A7Jm5ic3A7Jm5ic3A7IERtYUZyZWVCdWZmZXIgKEVGSV9TSVpFX1RPX1BBR0VTIChH RU5FVF9NQVhfUEFDS0VUX1NJWkUpLDxicj4NCi0mbmJzcDsmbmJzcDsmbmJzcDsmbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsgR2VuZXQtJmd0O1J4QnVmZmVyW0lkeF0pOzxicj4NCi0mbmJzcDsmbmJz cDsmbmJzcDsmbmJzcDsmbmJzcDsgR2VuZXQtJmd0O1J4QnVmZmVyW0lkeF0gPSBOVUxMOzxicj4N Ci0mbmJzcDsmbmJzcDsmbmJzcDsgfTxicj4NCiZuYnNwOyZuYnNwOyB9PGJyPg0KJiM0MzsmbmJz cDsgZ0JTLSZndDtGcmVlUGFnZXMgKEdlbmV0LSZndDtSeEJ1ZmZlciw8YnI+DQomIzQzOyZuYnNw OyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyZuYnNwOyBFRklfU0laRV9UT19Q QUdFUyAoR0VORVRfTUFYX1BBQ0tFVF9TSVpFICogR0VORVRfRE1BX0RFU0NfQ09VTlQpKTs8YnI+ DQombmJzcDt9PGJyPg0KJm5ic3A7PGJyPg0KJm5ic3A7LyoqPGJyPg0KZGlmZiAtLWdpdCBhL1Np bGljb24vQnJvYWRjb20vRHJpdmVycy9OZXQvQmNtR2VuZXREeGUvU2ltcGxlTmV0d29yay5jIGIv U2lsaWNvbi9Ccm9hZGNvbS9Ecml2ZXJzL05ldC9CY21HZW5ldER4ZS9TaW1wbGVOZXR3b3JrLmM8 YnI+DQppbmRleCA3MmFiNTU2MTliMGUuLjk3NDZmMjEwZDFmMiAxMDA2NDQ8YnI+DQotLS0gYS9T aWxpY29uL0Jyb2FkY29tL0RyaXZlcnMvTmV0L0JjbUdlbmV0RHhlL1NpbXBsZU5ldHdvcmsuYzxi cj4NCiYjNDM7JiM0MzsmIzQzOyBiL1NpbGljb24vQnJvYWRjb20vRHJpdmVycy9OZXQvQmNtR2Vu ZXREeGUvU2ltcGxlTmV0d29yay5jPGJyPg0KQEAgLTczMCw3ICYjNDM7NzMwLDcgQEAgR2VuZXRT aW1wbGVOZXR3b3JrUmVjZWl2ZSAoPGJyPg0KJm5ic3A7PGJyPg0KJm5ic3A7Jm5ic3A7IEdlbmV0 RG1hVW5tYXBSeERlc2NyaXB0b3IgKEdlbmV0LCBEZXNjSW5kZXgpOzxicj4NCiZuYnNwOzxicj4N Ci0mbmJzcDsgRnJhbWUgPSBHZW5ldC0mZ3Q7UnhCdWZmZXJbRGVzY0luZGV4XTs8YnI+DQomIzQz OyZuYnNwOyBGcmFtZSA9IEdFTkVUX1JYX0JVRkZFUiAoR2VuZXQsIERlc2NJbmRleCk7PGJyPg0K Jm5ic3A7PGJyPg0KJm5ic3A7Jm5ic3A7IGlmIChGcmFtZUxlbmd0aCAmZ3Q7IDIgJiM0MzsgR2Vu ZXQtJmd0O1NucE1vZGUuTWVkaWFIZWFkZXJTaXplKSB7PGJyPg0KJm5ic3A7Jm5ic3A7Jm5ic3A7 Jm5ic3A7IC8vIFJlY2VpdmVkIGZyYW1lIGhhcyAyIGJ5dGVzIG9mIHBhZGRpbmcgYXQgdGhlIHN0 YXJ0PGJyPg0KLS0gPGJyPg0KMi4xNy4xPGJyPg0KPGJyPg0KPC9kaXY+DQo8L3NwYW4+PC9mb250 PjwvZGl2Pg0KPC9ib2R5Pg0KPC9odG1sPg0K --_000_BN6PR05MB34119A2B8E6206544521C00EB9A10BN6PR05MB3411namp_--