From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id D1A57C3DA42 for ; Sun, 14 Jul 2024 18:27:36 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id CE0396B007B; Sun, 14 Jul 2024 14:27:35 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id C685F6B0083; Sun, 14 Jul 2024 14:27:35 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id ABCBE6B0085; Sun, 14 Jul 2024 14:27:35 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 87B056B007B for ; Sun, 14 Jul 2024 14:27:35 -0400 (EDT) Received: from smtpin07.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 09ADD80CA8 for ; Sun, 14 Jul 2024 18:27:35 +0000 (UTC) X-FDA: 82339191270.07.85848D6 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by imf09.hostedemail.com (Postfix) with ESMTP id 90ACD14002E for ; Sun, 14 Jul 2024 18:27:32 +0000 (UTC) Authentication-Results: imf09.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=fyQLD1tF; spf=pass (imf09.hostedemail.com: domain of david@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=david@redhat.com; dmarc=pass (policy=none) header.from=redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1720981616; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=H6l+Ffa6WqLbJHJcbXFstCYJukWhU/fJfjjZsKMYKUM=; b=jIBqS27cht8kXdNbo0/CozBbK6PDF1rpoXFgbUmL+hmnecTqS75GgOFCagfgj1/KZbuAV1 xj+kF883g0Ja6x1tTD6ajhTNvnYe9vRfAoB7nae58QTuklGjSvFfeldq1QB9XwO+e/HIy+ dYDWPtVleUhbxYGQCumRYSkLlZp4DQ8= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1720981616; a=rsa-sha256; cv=none; b=LmJuYQaknpi1CQb3LNZoyn9xgDuS+1KpfEjsUZss1AUOeVglI/ztkuCEH9Ee+46sMYAjbO Ptrid8RnB+Nxt/E4zh2hpfERG48aJZEBd214JkMZtOlSW3fqcsToiQtCEcCqT6pxzH+j5A L36fDZjyaq+ujttePCAriyWeplMnQDE= ARC-Authentication-Results: i=1; imf09.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=fyQLD1tF; spf=pass (imf09.hostedemail.com: domain of david@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=david@redhat.com; dmarc=pass (policy=none) header.from=redhat.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1720981651; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:autocrypt:autocrypt; bh=H6l+Ffa6WqLbJHJcbXFstCYJukWhU/fJfjjZsKMYKUM=; b=fyQLD1tFmp+4x2VTdJjjOMspyMF4HClG27bbARMmWCT3BOXbgsvvVvCwvjmOxFmhuHmcop DhJ8Yo8a93Vnvo2c/NaPcN/M0zaNCRbF7tIC1Xyn9xCRdU74EFaDfOJvQ9tKfd7CwTJ7ju DfFHdBdaurrO46YDPFb8STswq46A+nI= Received: from mail-lj1-f198.google.com (mail-lj1-f198.google.com [209.85.208.198]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-569-Gx_PXZeYMG28Q4Hxy1ovZw-1; Sun, 14 Jul 2024 14:27:30 -0400 X-MC-Unique: Gx_PXZeYMG28Q4Hxy1ovZw-1 Received: by mail-lj1-f198.google.com with SMTP id 38308e7fff4ca-2ee90339092so41784941fa.1 for ; Sun, 14 Jul 2024 11:27:29 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1720981648; x=1721586448; h=content-transfer-encoding:in-reply-to:organization:autocrypt :content-language:from:references:cc:to:subject:user-agent :mime-version:date:message-id:x-gm-message-state:from:to:cc:subject :date:message-id:reply-to; bh=OCNIEuy6z04ziOrBSHXOyiSo/vjbM5xm9uXHMo9Jo3c=; b=RnAGzn1yGcsEy5kKVqHGyprWVhK9Z9hTLws8007bx6rKrT5SCnXt6+t8vlJkhe3LaZ 126mKawpyIUtb22T8rxRg8NP90A0ETT3QUUrkq3uECW5lvvIhSFWBoD/0RNCcG5csEpG Re4kBeUk6Daq2nl8BrYkbe95tlQIpOp1nFJJ0OtyaAjqLPY9HbjFjVnkri7BCtsmPl3J UcK2lsyOAadBcwDzG4vyMkkUjxOMFQnSQ8rm4Cx+O4NbLIgWEGFi84+R8c8l6HbFEYxo sKCejuPXy8i/VdNHnKrhTC+8pEQXxYGLO5oFYq8Q7vuJuXLj2pu85o2cHQi4wv79ru2I KqEQ== X-Forwarded-Encrypted: i=1; AJvYcCXnsiTj6JqYgLoJrMaZ3uEh9E3JJIYIlLZuBuZtdItyTGmoO+jxVB+yKpC91UQaGD0rtAdc/PjrjAS1ei7Y3eJV3Eg= X-Gm-Message-State: AOJu0Yw3v1N436IgUKKDjE2eAbaQ1ne0KuJfouZx3+SWGvvnfqHI3nzQ 37umGabciExYSrG/i2zRm74M1iAeNyjYQ6VXhE/IzwaKCimDNUxT2ZApL0+I7CxzGFRv5fozVcA iDirnWjafmDgaCrJDM/PBuOmTmhPDLZxNaeNQiLDIjV1oqV4G X-Received: by 2002:a2e:9495:0:b0:2ec:558f:a3a with SMTP id 38308e7fff4ca-2eeb30b9fd7mr110199671fa.4.1720981648524; Sun, 14 Jul 2024 11:27:28 -0700 (PDT) X-Google-Smtp-Source: AGHT+IGgGBsbKG3J4SEHSzcZqPaKXVasTqI/AGOXg/jwfdExGSfj+2NvBfIk5xUu34LE1On/dkG8Eg== X-Received: by 2002:a2e:9495:0:b0:2ec:558f:a3a with SMTP id 38308e7fff4ca-2eeb30b9fd7mr110199571fa.4.1720981647843; Sun, 14 Jul 2024 11:27:27 -0700 (PDT) Received: from ?IPV6:2003:d8:2f02:7c00:e95e:dbc6:7ea8:d075? (p200300d82f027c00e95edbc67ea8d075.dip0.t-ipconnect.de. [2003:d8:2f02:7c00:e95e:dbc6:7ea8:d075]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-427a5edb4a3sm59656555e9.31.2024.07.14.11.27.26 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 14 Jul 2024 11:27:27 -0700 (PDT) Message-ID: <8da2b3bf-b9bf-44e3-88ff-750dc91c2388@redhat.com> Date: Sun, 14 Jul 2024 20:27:25 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH] mm/x86/pat: Only untrack the pfn range if unmap region To: David Wang <00107082@163.com>, Peter Xu Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org, Andrew Morton , Alex Williamson , Jason Gunthorpe , Al Viro , Dave Hansen , Andy Lutomirski , Peter Zijlstra , Thomas Gleixner , Ingo Molnar , Borislav Petkov , "Kirill A . Shutemov" , x86@kernel.org, Yan Zhao , Kevin Tian , Pei Li , Bert Karwatzki , Sergey Senozhatsky References: <20240712144244.3090089-1-peterx@redhat.com> <1182a459.1e35.190b0e61754.Coremail.00107082@163.com> From: David Hildenbrand Autocrypt: addr=david@redhat.com; keydata= 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 WNyWQQ== Organization: Red Hat In-Reply-To: <1182a459.1e35.190b0e61754.Coremail.00107082@163.com> X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Language: en-US Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64 X-Rspam-User: X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: 90ACD14002E X-Stat-Signature: 3hpwfscoctck47fz9itpcd3knjm1f3gz X-HE-Tag: 1720981652-5964 X-HE-Meta: U2FsdGVkX1/N30ZNWcR51Po7bIguPxfrSRtFZirR76ds2TbC+fUkjgIeHxmSKd5SIeVhqLUwMHK4WWe4EzlJqg03xi1Kt0buvQ9oHTsFWmIZ+ZYrFbqzUqfMyWUSIIKlA3GQTlypDuYi+k2vA0DMDu08U+8xfC1TWLCTvMYo18foH2GM7erXNz8dCJfxVDd3pKpk9f0W5SsDn/N4LZeuxFX/lA7yJttMvJ+ZI3a9Fgjpx1UHWs+wY1Pb3vLZuQPCUDCa//7NcRfo+s3ulW+o8aWFNQSdsw2kW3eOBEcu6IZKSrR1//hWPNb8zLNU2Z2X80eT78Cz40tKWR+L17uYcJMbLSyeTsFBsMolVGuFYRof0vfHdxN5LsgJ/JyeBw8l5seBJajuWYT/WyXTxl31idDnu1MrYLSqpxviRx6CQO0A0INkhtNO8fLPMT/H4mATcc8BqyIkMYvL69hy62WJEo57tPia9L+x1Ms1kjcmLLJ6NYVnTE5g87aTUfrriroSa3N8SIWdDddEoV2yZCq55oAzHfTEsx7Sc5VkJdsT4uHs8QangmI10xKurzuyQQ/m3Ky/D1Y15N9ubqKMJs5kjInxXifXEx0M9D5HHfP+iS8X/dmX4ZR2HHtqxFdlukqIALxHNO8nhBvvPtXc+NP7BDm0tmERmHLLNzfIRcR8JfJ6jCYb8b1cAjJWcp+IBarWqlsmfoUE2AKa8s6Rc1iju26YxBimUuLoIxxpQjhkqYHg3DWV7LGwKDW2B/daYqBk6H+SbhM1J/2AGPDg/uKcElQmy4g3FP+AeSbiJh6vcKBsLpXyD8zlAPQDTVAwxAVh+fMvg/Y3htE0t3+jjrN9fZLkDd06tRujm8ShmoquIYy+ebNW3HyI8ob2K75BmMj5kGZqvIx0+/uXRUL8fuCffMJTAvUiNEivNmNHmoBqxq0BFr0wEH2VjQOr9QLNfzFqFmDDPkX1Mf8o7QLnd48 qUqUydsB bk/0QX6vmPUi15+DYy9XTPcnM6aKHX1K8xmvDa313eqqCbVOKpygQdZfdhm4/sIpivSGkcoBKjOu1NA4qQwik3vbpx9yxKEeMTIV9tr+pTD/HRqBHlLyLOac9Vm119QsgIEUK8xfNzjkCvjFX3FQpBNNheS3Eje19az/mOBcNAAcpnZ940K0i/vWb8QGJri0gMX3xXvTII1WeCWwK86xrKKkvqsCjOTDk6meAePi9wViMJ+6UGvy7fu25Pm4qM0kjdKTiZJJ1Tu8RVLKGLV5B0iE4EW3EIJWwGnWYwmTqq0n/P3gTBUQF/1tgmrRp7s074mWnzYnl9ibcRI8F57rnEKBinEsl/icLNacbQ1BSgXqmqT6jOjhntz8GWpc9GD+pIAOG8+MgZOt+dpCbc9yuukSyLA+SgzkoOeQmj5tJvuzNKrGrO5ZHecSuLuluV766hh6NX2oRKjzKPnb2p+Lzlvr3Rm9LwoBMX+QUpC4NGwZ0IFPYg8IsjIUohxyQZF07H0427jBFEH05HAc= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: T24gMTQuMDcuMjQgMTI6NTksIERhdmlkIFdhbmcgd3JvdGU6DQo+IA0KPiBBdCAyMDI0LTA3LTEy IDIyOjQyOjQ0LCAiUGV0ZXIgWHUiIDxwZXRlcnhAcmVkaGF0LmNvbT4gd3JvdGU6DQo+PiBOT1RF OiBJIG1hc3NhZ2VkIHRoZSBjb21taXQgbWVzc2FnZSBjb21wYXJpbmcgdG8gdGhlIHJmYyBwb3N0 IFsxXSwgdGhlDQo+PiBwYXRjaCBpdHNlbGYgaXMgdW50b3VjaGVkLiAgQWxzbyByZW1vdmVkIHJm YyB0YWcsIGFuZCBhZGRlZCBtb3JlIHBlb3BsZQ0KPj4gaW50byB0aGUgbG9vcC4gUGxlYXNlIGtp bmRseSBoZWxwIHRlc3QgdGhpcyBwYXRjaCBpZiB5b3UgaGF2ZSBhIHJlcHJvZHVjZXIsDQo+PiBh cyBJIGNhbid0IHJlcHJvZHVjZSBpdCBteXNlbGYgZXZlbiB3aXRoIHRoZSBzeXpib3QgcmVwcm9k dWNlciBvbiB0b3Agb2YNCj4+IG1tLXVuc3RhYmxlLiAgSW5zdGVhZCBvZiBmdXJ0aGVyIGNoZWNr IG9uIHRoZSByZXByb2R1Y2VyLCBJIGRlY2lkZWQgdG8gc2VuZA0KPj4gdGhpcyBvdXQgZmlyc3Qg YXMgd2UgaGF2ZSBhIGJ1bmNoIG9mIHJlcHJvZHVjZXJzIG9uIHRoZSBsaXN0IG5vdy4uDQo+PiAt LS0NCj4+IG1tL21lbW9yeS5jIHwgNSArKy0tLQ0KPj4gMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0 aW9ucygrKSwgMyBkZWxldGlvbnMoLSkNCj4+DQo+PiBkaWZmIC0tZ2l0IGEvbW0vbWVtb3J5LmMg Yi9tbS9tZW1vcnkuYw0KPj4gaW5kZXggNGJjZDc5NjE5NTc0Li5mNTdjYzMwNGIzMTggMTAwNjQ0 DQo+PiAtLS0gYS9tbS9tZW1vcnkuYw0KPj4gKysrIGIvbW0vbWVtb3J5LmMNCj4+IEBAIC0xODI3 LDkgKzE4MjcsNiBAQCBzdGF0aWMgdm9pZCB1bm1hcF9zaW5nbGVfdm1hKHN0cnVjdCBtbXVfZ2F0 aGVyICp0bGIsDQo+PiAJaWYgKHZtYS0+dm1fZmlsZSkNCj4+IAkJdXByb2JlX211bm1hcCh2bWEs IHN0YXJ0LCBlbmQpOw0KPj4NCj4+IC0JaWYgKHVubGlrZWx5KHZtYS0+dm1fZmxhZ3MgJiBWTV9Q Rk5NQVApKQ0KPj4gLQkJdW50cmFja19wZm4odm1hLCAwLCAwLCBtbV93cl9sb2NrZWQpOw0KPj4g LQ0KPj4gCWlmIChzdGFydCAhPSBlbmQpIHsNCj4+IAkJaWYgKHVubGlrZWx5KGlzX3ZtX2h1Z2V0 bGJfcGFnZSh2bWEpKSkgew0KPj4gCQkJLyoNCj4+IEBAIC0xODk0LDYgKzE4OTEsOCBAQCB2b2lk IHVubWFwX3ZtYXMoc3RydWN0IG1tdV9nYXRoZXIgKnRsYiwgc3RydWN0IG1hX3N0YXRlICptYXMs DQo+PiAJCXVuc2lnbmVkIGxvbmcgc3RhcnQgPSBzdGFydF9hZGRyOw0KPj4gCQl1bnNpZ25lZCBs b25nIGVuZCA9IGVuZF9hZGRyOw0KPj4gCQlodWdldGxiX3phcF9iZWdpbih2bWEsICZzdGFydCwg JmVuZCk7DQo+PiArCQlpZiAodW5saWtlbHkodm1hLT52bV9mbGFncyAmIFZNX1BGTk1BUCkpDQo+ PiArCQkJdW50cmFja19wZm4odm1hLCAwLCAwLCBtbV93cl9sb2NrZWQpOw0KPj4gCQl1bm1hcF9z aW5nbGVfdm1hKHRsYiwgdm1hLCBzdGFydCwgZW5kLCAmZGV0YWlscywNCj4+IAkJCQkgbW1fd3Jf bG9ja2VkKTsNCj4+IAkJaHVnZXRsYl96YXBfZW5kKHZtYSwgJmRldGFpbHMpOw0KPj4gLS0gDQo+ PiAyLjQ1LjANCj4gDQo+IEhpLA0KPiANCj4gVG9kYXksIEkgbm90aWNlIGEga2VybmVsIHdhcm5p bmcgd2l0aCB0aGlzIHBhdGNoLg0KPiANCj4gDQo+IFtTdW4gSnVsIDE0IDE2OjUxOjM4IDIwMjRd IE9PTSBraWxsZXIgZW5hYmxlZC4NCj4gW1N1biBKdWwgMTQgMTY6NTE6MzggMjAyNF0gUmVzdGFy dGluZyB0YXNrcyAuLi4gZG9uZS4NCj4gW1N1biBKdWwgMTQgMTY6NTE6MzggMjAyNF0gcmFuZG9t OiBjcm5nIHJlc2VlZGVkIG9uIHN5c3RlbSByZXN1bXB0aW9uDQo+IFtTdW4gSnVsIDE0IDE2OjUx OjM4IDIwMjRdIFBNOiBzdXNwZW5kIGV4aXQNCj4gW1N1biBKdWwgMTQgMTY6NTE6MzggMjAyNF0g LS0tLS0tLS0tLS0tWyBjdXQgaGVyZSBdLS0tLS0tLS0tLS0tDQo+IFtTdW4gSnVsIDE0IDE2OjUx OjM4IDIwMjRdIFdBUk5JTkc6IENQVTogMSBQSUQ6IDI0ODQgYXQgYXJjaC94ODYvbW0vcGF0L21l bXR5cGUuYzoxMDAyIHVudHJhY2tfcGZuKzB4MTBjLzB4MTIwDQoNCldlIGZhaWwgdG8gZmluZCB3 aGF0IHdlIG5lZWQgaW4gdGhlIHBhZ2UgdGFibGVzLCBpbmRpY2F0aW5nIHRoYXQgdGhlIA0KcGFn ZSB0YWJsZXMgbWlnaHQgaGF2ZSBiZWVuIG1vZGlmaWVkIC8gdG9ybiBkb3duIGluIHRoZSBtZWFu dGltZS4NCg0KTGlrZWx5IHdlIGhhdmUgYSBwcmV2aW91cyBjYWxsIHRvIHVubWFwX3NpbmdsZV92 bWEoKSB0aGF0IG1vZGlmaWVzIHRoZSANCnBhZ2UgdGFibGVzLCBhbmQgdW5tYXBzIHByZXNlbnQg UEZOcy4NCg0KUEFUIGlzIGluY29tcGF0aWJsZSB0byB0aGF0LCBpdCByZWxpZXMgb24gaW5mb3Jt YXRpb24gZnJvbSB0aGUgcGFnZSANCnRhYmxlcyB0byBrbm93IHdoYXQgaXQgaGFzIHRvIHVuZG8g ZHVyaW5nIG11bm1hcCgpLCBvciB3aGF0IGl0IGhhcyB0byBkbyANCmR1cmluZyBmb3JrKCkuDQoN ClRoZSBzcGxhdCBmcm9tIHRoZSBwcmV2aW91cyBkaXNjdXNzaW9uIFsxXToNCg0KICAgZm9sbG93 X3BoeXMgYXJjaC94ODYvbW0vcGF0L21lbXR5cGUuYzo5NTcgW2lubGluZV0NCiAgIGdldF9wYXRf aW5mbysweGYyLzB4NTEwIGFyY2gveDg2L21tL3BhdC9tZW10eXBlLmM6OTkxDQogICB1bnRyYWNr X3BmbisweGY3LzB4NGQwIGFyY2gveDg2L21tL3BhdC9tZW10eXBlLmM6MTEwNA0KICAgdW5tYXBf c2luZ2xlX3ZtYSsweDFiZC8weDJiMCBtbS9tZW1vcnkuYzoxODE5DQogICB6YXBfcGFnZV9yYW5n ZV9zaW5nbGUrMHgzMjYvMHg1NjAgbW0vbWVtb3J5LmM6MTkyMA0KICAgdW5tYXBfbWFwcGluZ19y YW5nZV92bWEgbW0vbWVtb3J5LmM6MzY4NCBbaW5saW5lXQ0KICAgdW5tYXBfbWFwcGluZ19yYW5n ZV90cmVlIG1tL21lbW9yeS5jOjM3MDEgW2lubGluZV0NCiAgIHVubWFwX21hcHBpbmdfcGFnZXMg bW0vbWVtb3J5LmM6Mzc2NyBbaW5saW5lXQ0KICAgdW5tYXBfbWFwcGluZ19yYW5nZSsweDFlZS8w eDI4MCBtbS9tZW1vcnkuYzozODA0DQogICB0cnVuY2F0ZV9wYWdlY2FjaGUrMHg1My8weDkwIG1t L3RydW5jYXRlLmM6NzMxDQogICBzaW1wbGVfc2V0YXR0cisweGYyLzB4MTIwIGZzL2xpYmZzLmM6 ODg2DQogICBub3RpZnlfY2hhbmdlKzB4ZWM2LzB4MTFmMCBmcy9hdHRyLmM6NDk5DQogICBkb190 cnVuY2F0ZSsweDE1Yy8weDIyMCBmcy9vcGVuLmM6NjUNCiAgIGhhbmRsZV90cnVuY2F0ZSBmcy9u YW1laS5jOjMzMDggW2lubGluZV0NCg0KaW5kaWNhdGVzIHRoYXQgZmlsZSB0cnVuY2F0aW9uIHNl ZW1zIHRvIGVuZCB1cCBtZXNzaW5nIHdpdGggYSBQRk5NQVAgDQptYXBwaW5nIHRoYXQgaGFzIFBB VCBzZXQuIFRoYXQgaXMgLi4uIHdlaXJkLiBJIHdvdWxkIGhhdmUgdGhvdWdodCB0aGF0IA0KUEZO TUFQIHdvdWxkIG5ldmVyIHJlYWxseSBoYXBwZW4gd2l0aCBmaWxlIHRydW5jYXRpb24uDQoNCkRv ZXMgdGhpcyBvbmx5IGhhcHBlbiB3aXRoIGFuIE9PVCBkcml2ZXIsIHRoYXQgc2VlbXMgdG8gZG8g d2VpcmQgDQp0cnVuY2F0ZSBzdHVmZiBvbiBmaWxlcyB0aGF0IGhhdmUgYSBQRk5NQVAgbWFwcGlu Zz8NCg0KWzFdIA0KaHR0cHM6Ly9sb3JlLmtlcm5lbC5vcmcvYWxsLzM4NzllZTcyLTg0ZGUtNGQy YS05M2E4LWMwYjNkYzNmMGE0Y0ByZWRoYXQuY29tLw0KDQo+IFtTdW4gSnVsIDE0IDE2OjUxOjM4 IDIwMjRdIE1vZHVsZXMgbGlua2VkIGluOiBzbmRfc2VxX2R1bW15KEUpIHNuZF9ocnRpbWVyKEUp IHNuZF9zZXEoRSkgY3RyKEUpIGNjbShFKSBuZl9jb25udHJhY2tfbmV0bGluayhFKSB4ZnJtX3Vz ZXIoRSkgeGZybV9hbGdvKEUpIHh0X2FkZHJ0eXBlKEUpIGJyX25ldGZpbHRlcihFKSB4dF9DSEVD S1NVTShFKSB4dF9NQVNRVUVSQURFKEUpIHh0X2Nvbm50cmFjayhFKSBpcHRfUkVKRUNUKEUpIG5m X3JlamVjdF9pcHY0KEUpIHh0X3RjcHVkcChFKSBuZnRfY29tcGF0KEUpIG5mdF9jaGFpbl9uYXQo RSkgbmZfbmF0KEUpIG5mX2Nvbm50cmFjayhFKSBuZl9kZWZyYWdfaXB2NihFKSBuZl9kZWZyYWdf aXB2NChFKSBuZl90YWJsZXMoRSkgbmZuZXRsaW5rKEUpIGJyaWRnZShFKSBzdHAoRSkgbGxjKEUp IG92ZXJsYXkoRSkgYmluZm10X21pc2MoRSkgbmxzX2FzY2lpKEUpIG5sc19jcDQzNyhFKSB2ZmF0 KEUpIGZhdChFKSBhbWRfYXRsKEUpIGludGVsX3JhcGxfbXNyKEUpIGludGVsX3JhcGxfY29tbW9u KEUpIG52aWRpYV9kcm0oUE9FKSBudmlkaWFfbW9kZXNldChQT0UpIGVkYWNfbWNlX2FtZChFKSBr dm1fYW1kKEUpIHNuZF9oZGFfY29kZWNfcmVhbHRlayhFKSBrdm0oRSkgaXdsbXZtKEUpIHNuZF9o ZGFfY29kZWNfZ2VuZXJpYyhFKSBjcmN0MTBkaWZfcGNsbXVsKEUpIHNuZF9oZGFfc2NvZGVjX2Nv bXBvbmVudChFKSBzbmRfaGRhX2NvZGVjX2hkbWkoRSkgZ2hhc2hfY2xtdWxuaV9pbnRlbChFKSBz aGE1MTJfc3NzZTMoRSkgbWFjODAyMTEoRSkgc2hhNTEyX2dlbmVyaWMoRSkgc25kX2hkYV9pbnRl bChFKSBudmlkaWEoUE9FKSBzaGEyNTZfc3NzZTMoRSkgc25kX2ludGVsX2RzcGNmZyhFKSBwcGRl dihFKSBzaGExX3Nzc2UzKEUpIGxpYmFyYzQoRSkgc25kX2hkYV9jb2RlYyhFKSBzbmRfdXNiX2F1 ZGlvKEUpIHNuZF91c2JtaWRpX2xpYihFKSB1dmN2aWRlbyhFKSBzbmRfaGRhX2NvcmUoRSkgaXds d2lmaShFKSBhZXNuaV9pbnRlbChFKSBzbmRfcmF3bWlkaShFKSBzbmRfcGNzcChFKQ0KPiBbU3Vu IEp1bCAxNCAxNjo1MTozOCAyMDI0XcKgIHNuZF9od2RlcChFKSBzbmRfc2VxX2RldmljZShFKSBj cnlwdG9fc2ltZChFKSB2aWRlb2J1ZjJfdm1hbGxvYyhFKSBzbmRfcGNtKEUpIGNyeXB0ZChFKSB1 dmMoRSkgdmlkZW9idWYyX21lbW9wcyhFKSB2aWRlb2J1ZjJfdjRsMihFKSBzbmRfdGltZXIoRSkg cmFwbChFKSBjZmc4MDIxMShFKSBrMTB0ZW1wKEUpIHdtaV9ibW9mKEUpIHNwNTEwMF90Y28oRSkg YWNwaV9jcHVmcmVxKEUpIGNjcChFKSBzbmQoRSkgdmlkZW9kZXYoRSkgZHJtX2ttc19oZWxwZXIo RSkgdmlkZW9idWYyX2NvbW1vbihFKSByZmtpbGwoRSkgdmlkZW8oRSkgcm5nX2NvcmUoRSkgbWMo RSkgc291bmRjb3JlKEUpIGpveWRldihFKSBwYXJwb3J0X3BjKEUpIHBhcnBvcnQoRSkgc2coRSkg ZXZkZXYoRSkgbXNyKEUpIGxvb3AoRSkgZnVzZShFKSBkcm0oRSkgZWZpX3BzdG9yZShFKSBkbV9t b2QoRSkgY29uZmlnZnMoRSkgaXBfdGFibGVzKEUpIHhfdGFibGVzKEUpIGF1dG9mczQoRSkgZXh0 NChFKSBjcmMxNihFKSBtYmNhY2hlKEUpIGpiZDIoRSkgYnRyZnMoRSkgYmxha2UyYl9nZW5lcmlj KEUpIGVmaXZhcmZzKEUpIHJhaWQxMChFKSByYWlkNDU2KEUpIGFzeW5jX3JhaWQ2X3JlY292KEUp IGFzeW5jX21lbWNweShFKSBhc3luY19wcShFKSBhc3luY194b3IoRSkgYXN5bmNfdHgoRSkgcmFp ZDEoRSkgcmFpZDAoRSkgbWRfbW9kKEUpIGhpZF9nZW5lcmljKEUpIHVzYmhpZChFKSBoaWQoRSkg c2RfbW9kKEUpIGFoY2koRSkgbGliYWhjaShFKSB4aGNpX3BjaShFKSBudm1lKEUpIGxpYmF0YShF KSBjcmMzMl9wY2xtdWwoRSkgbnZtZV9jb3JlKEUpIHhoY2lfaGNkKEUpIHQxMF9waShFKSBjcmMz MmNfaW50ZWwoRSkgaTJjX3BpaXg0KEUpIHI4MTY5KEUpIGNyYzY0X3JvY2tzb2Z0KEUpIHJlYWx0 ZWsoRSkgc2NzaV9tb2QoRSkgdXNiY29yZShFKSBzY3NpX2NvbW1vbihFKSB1c2JfY29tbW9uKEUp IHdtaShFKSBncGlvX2FtZHB0KEUpIGdwaW9fZ2VuZXJpYyhFKSBidXR0b24oRSkNCj4gW1N1biBK dWwgMTQgMTY6NTE6MzggMjAyNF0gQ1BVOiAxIFBJRDogMjQ4NCBDb21tOiBnbm9tZS1zaGVsbCBU YWludGVkOiBQwqDCoMKgwqDCoMKgwqDCoMKgwqAgT0XCoMKgwqDCoMKgIDYuMTAuMC1yYzctbGlu YW4tMSAjMjgzDQo+IFtTdW4gSnVsIDE0IDE2OjUxOjM4IDIwMjRdIEhhcmR3YXJlIG5hbWU6IE1p Y3JvLVN0YXIgSW50ZXJuYXRpb25hbCBDby4sIEx0ZC4gTVMtN0I4OS9CNDUwTSBNT1JUQVIgTUFY IChNUy03Qjg5KSwgQklPUyAyLjgwIDA2LzEwLzIwMjANCj4gW1N1biBKdWwgMTQgMTY6NTE6Mzgg MjAyNF0gUklQOiAwMDEwOnVudHJhY2tfcGZuKzB4MTBjLzB4MTIwDQo+IFtTdW4gSnVsIDE0IDE2 OjUxOjM4IDIwMjRdIENvZGU6IGUyIDAxIDc0IDIyIDhiIDk4IGUwIDAwIDAwIDAwIDNiIDVkIDJj IDc0IGFjIDQ4IDhiIDdkIDMwIGU4IDY2IGUxIGJjIDAwIDg5IDVkIDJjIDQ4IDhiIDdkIDMwIGU4 IDBhIDZjIDA5IDAwIGViIDk1IDBmIDBiIGViIGRhIDwwZj4gMGIgZWIgOTUgZTggZGIgYjYgYmIg MDAgNjYgNjYgMmUgMGYgMWYgODQgMDAgMDAgMDAgMDAgMDAgOTAgOTANCj4gW1N1biBKdWwgMTQg MTY6NTE6MzggMjAyNF0gUlNQOiAwMDE4OmZmZmZhZTViNGFiMWZiZTggRUZMQUdTOiAwMDAxMDIw Mg0KPiBbU3VuIEp1bCAxNCAxNjo1MTozOCAyMDI0XSBSQVg6IDAwMDAwMDAwMDAwMDAwMjggUkJY OiAwMDAwMDAwMDAwMDAwMDAwIFJDWDogMDAwMDAwMDAwMDAwMDAwMA0KPiBbU3VuIEp1bCAxNCAx Njo1MTozOCAyMDI0XSBSRFg6IDAwMDAwMDAwMDAwMDAwMDEgUlNJOiAwMDBmZmZmZmZmZTAwMDAw IFJESTogZmZmZjkxZDViZTk5ZWE4MA0KPiBbU3VuIEp1bCAxNCAxNjo1MTozOCAyMDI0XSBSQlA6 IGZmZmY5MWQ1YzQ0ZmJlNzAgUjA4OiAwMDAwN2YyZTVmZjMyMDAwIFIwOTogMDAwMDAwMDAwMDAw MDAwMQ0KPiBbU3VuIEp1bCAxNCAxNjo1MTozOCAyMDI0XSBSMTA6IGZmZmY5MWQ1YjdhZDZkMWMg UjExOiAwMDAwN2YyZTVmZjM1ZmZmIFIxMjogMDAwMDdmMmU1ZmYzMjAwMA0KPiBbU3VuIEp1bCAx NCAxNjo1MTozOCAyMDI0XSBSMTM6IDAwMDAwMDAwMDAwMDAwMDAgUjE0OiBmZmZmYWU1YjRhYjFm ZGU4IFIxNTogZmZmZjkxZDVjNDRmYmU3MA0KPiBbU3VuIEp1bCAxNCAxNjo1MTozOCAyMDI0XSBG UzrCoCAwMDAwN2YyZTVmZjU5ZGMwKDAwMDApIEdTOmZmZmY5MWQ4NGVjODAwMDAoMDAwMCkga25s R1M6MDAwMDAwMDAwMDAwMDAwMA0KPiBbU3VuIEp1bCAxNCAxNjo1MTozOCAyMDI0XSBDUzrCoCAw MDEwIERTOiAwMDAwIEVTOiAwMDAwIENSMDogMDAwMDAwMDA4MDA1MDAzMw0KPiBbU3VuIEp1bCAx NCAxNjo1MTozOCAyMDI0XSBDUjI6IDAwMDA3ZmU3MTMxNmIwOGMgQ1IzOiAwMDAwMDAwMTg0Njhl MDAwIENSNDogMDAwMDAwMDAwMDM1MGVmMA0KPiBbU3VuIEp1bCAxNCAxNjo1MTozOCAyMDI0XSBD YWxsIFRyYWNlOg0KPiBbU3VuIEp1bCAxNCAxNjo1MTozOCAyMDI0XcKgIDxUQVNLPg0KPiBbU3Vu IEp1bCAxNCAxNjo1MTozOCAyMDI0XcKgID8gX193YXJuKzB4N2MvMHgxMjANCj4gW1N1biBKdWwg MTQgMTY6NTE6MzggMjAyNF3CoCA/IHVudHJhY2tfcGZuKzB4MTBjLzB4MTIwDQo+IFtTdW4gSnVs IDE0IDE2OjUxOjM4IDIwMjRdwqAgPyByZXBvcnRfYnVnKzB4MThkLzB4MWMwDQo+IFtTdW4gSnVs IDE0IDE2OjUxOjM4IDIwMjRdwqAgPyBoYW5kbGVfYnVnKzB4M2MvMHg4MA0KPiBbU3VuIEp1bCAx NCAxNjo1MTozOCAyMDI0XcKgID8gZXhjX2ludmFsaWRfb3ArMHgxMy8weDYwDQo+IFtTdW4gSnVs IDE0IDE2OjUxOjM4IDIwMjRdwqAgPyBhc21fZXhjX2ludmFsaWRfb3ArMHgxNi8weDIwDQo+IFtT dW4gSnVsIDE0IDE2OjUxOjM4IDIwMjRdwqAgPyB1bnRyYWNrX3BmbisweDEwYy8weDEyMA0KPiBb U3VuIEp1bCAxNCAxNjo1MTozOCAyMDI0XcKgID8gdW50cmFja19wZm4rMHg1My8weDEyMA0KPiBb U3VuIEp1bCAxNCAxNjo1MTozOCAyMDI0XcKgIHVubWFwX3ZtYXMrMHgxMTUvMHgxYTANCj4gW1N1 biBKdWwgMTQgMTY6NTE6MzggMjAyNF3CoCB1bm1hcF9yZWdpb24rMHhkNC8weDE1MA0KPiBbU3Vu IEp1bCAxNCAxNjo1MTozOCAyMDI0XcKgID8gbWFzX25vbWVtKzB4MTQvMHg4MA0KPiBbU3VuIEp1 bCAxNCAxNjo1MTozOCAyMDI0XcKgID8gc3Jzb19yZXR1cm5fdGh1bmsrMHg1LzB4NWYNCj4gW1N1 biBKdWwgMTQgMTY6NTE6MzggMjAyNF3CoCA/IG1hc19zdG9yZV9nZnArMHg1NC8weDExMA0KPiBb U3VuIEp1bCAxNCAxNjo1MTozOCAyMDI0XcKgIGRvX3ZtaV9hbGlnbl9tdW5tYXArMHgyZDQvMHg1 MzANCj4gW1N1biBKdWwgMTQgMTY6NTE6MzggMjAyNF3CoCBkb192bWlfbXVubWFwKzB4ZGEvMHgx OTANCj4gW1N1biBKdWwgMTQgMTY6NTE6MzggMjAyNF3CoCBfX3ZtX211bm1hcCsweGEwLzB4MTYw DQo+IFtTdW4gSnVsIDE0IDE2OjUxOjM4IDIwMjRdwqAgX194NjRfc3lzX211bm1hcCsweDE3LzB4 MjANCj4gW1N1biBKdWwgMTQgMTY6NTE6MzggMjAyNF3CoCBkb19zeXNjYWxsXzY0KzB4NGIvMHgx MTANCj4gW1N1biBKdWwgMTQgMTY6NTE6MzggMjAyNF3CoCBlbnRyeV9TWVNDQUxMXzY0X2FmdGVy X2h3ZnJhbWUrMHg3Ni8weDdlDQo+IFtTdW4gSnVsIDE0IDE2OjUxOjM4IDIwMjRdIFJJUDogMDAz MzoweDdmMmU2NDcyMDhmNw0KPiBbU3VuIEp1bCAxNCAxNjo1MTozOCAyMDI0XSBDb2RlOiAwMCAw MCAwMCA0OCA4YiAxNSAwOSAwNSAwZCAwMCBmNyBkOCA2NCA4OSAwMiA0OCBjNyBjMCBmZiBmZiBm ZiBmZiBjMyA2NiAyZSAwZiAxZiA4NCAwMCAwMCAwMCAwMCAwMCA2NiA5MCBiOCAwYiAwMCAwMCAw MCAwZiAwNSA8NDg+IDNkIDAxIGYwIGZmIGZmIDczIDAxIGMzIDQ4IDhiIDBkIGQ5IDA0IDBkIDAw IGY3IGQ4IDY0IDg5IDAxIDQ4DQo+IFtTdW4gSnVsIDE0IDE2OjUxOjM4IDIwMjRdIFJTUDogMDAy YjowMDAwN2ZmZDI4OWYwYTQ4IEVGTEFHUzogMDAwMDAyNDYgT1JJR19SQVg6IDAwMDAwMDAwMDAw MDAwMGINCj4gW1N1biBKdWwgMTQgMTY6NTE6MzggMjAyNF0gUkFYOiBmZmZmZmZmZmZmZmZmZmRh IFJCWDogMDAwMDdmMmU1ZmYzMTAwMCBSQ1g6IDAwMDA3ZjJlNjQ3MjA4ZjcNCj4gW1N1biBKdWwg MTQgMTY6NTE6MzggMjAyNF0gUkRYOiAwMDAwMDAwMDAwMDAwMDAwIFJTSTogMDAwMDAwMDAwMDAw MTAwMCBSREk6IDAwMDA3ZjJlNWZmMzEwMDANCj4gW1N1biBKdWwgMTQgMTY6NTE6MzggMjAyNF0g UkJQOiAwMDAwNTU3ZDVhOTMzMGEwIFIwODogMDAwMDAwMDBjMWQwMDAyOCBSMDk6IDAwMDAwMDAw YmVlZjAxMDANCj4gW1N1biBKdWwgMTQgMTY6NTE6MzggMjAyNF0gUjEwOiAwMDAwMDAwMDAwMDAw MDAxIFIxMTogMDAwMDAwMDAwMDAwMDI0NiBSMTI6IDAwMDAwMDAwMDAwMDAwMDANCj4gW1N1biBK dWwgMTQgMTY6NTE6MzggMjAyNF0gUjEzOiAwMDAwMDAwMDAwMDAwMDAxIFIxNDogMDAwMDAwMDAw MDAwMDAwMiBSMTU6IDAwMDA1NTdkNWE4NDA4YzANCj4gW1N1biBKdWwgMTQgMTY6NTE6MzggMjAy NF3CoCA8L1RBU0s+DQo+IFtTdW4gSnVsIDE0IDE2OjUxOjM4IDIwMjRdIC0tLVsgZW5kIHRyYWNl IDAwMDAwMDAwMDAwMDAwMDAgXS0tLQ0KPiBbU3VuIEp1bCAxNCAxNjo1MTozOSAyMDI0XSAtLS0t LS0tLS0tLS1bIGN1dCBoZXJlIF0tLS0tLS0tLS0tLS0NCj4gW1N1biBKdWwgMTQgMTY6NTE6Mzkg MjAyNF0gV0FSTklORzogQ1BVOiAxIFBJRDogMjI3MiBhdCBhcmNoL3g4Ni9tbS9wYXQvbWVtdHlw ZS5jOjEwMDIgdHJhY2tfcGZuX2NvcHkrMHg5NC8weGEwDQo+IFtTdW4gSnVsIDE0IDE2OjUxOjM5 IDIwMjRdIE1vZHVsZXMgbGlua2VkIGluOiBzbmRfc2VxX2R1bW15KEUpIHNuZF9ocnRpbWVyKEUp IHNuZF9zZXEoRSkgY3RyKEUpIGNjbShFKSBuZl9jb25udHJhY2tfbmV0bGluayhFKSB4ZnJtX3Vz ZXIoRSkgeGZybV9hbGdvKEUpIHh0X2FkZHJ0eXBlKEUpIGJyX25ldGZpbHRlcihFKSB4dF9DSEVD S1NVTShFKSB4dF9NQVNRVUVSQURFKEUpIHh0X2Nvbm50cmFjayhFKSBpcHRfUkVKRUNUKEUpIG5m X3JlamVjdF9pcHY0KEUpIHh0X3RjcHVkcChFKSBuZnRfY29tcGF0KEUpIG5mdF9jaGFpbl9uYXQo RSkgbmZfbmF0KEUpIG5mX2Nvbm50cmFjayhFKSBuZl9kZWZyYWdfaXB2NihFKSBuZl9kZWZyYWdf aXB2NChFKSBuZl90YWJsZXMoRSkgbmZuZXRsaW5rKEUpIGJyaWRnZShFKSBzdHAoRSkgbGxjKEUp IG92ZXJsYXkoRSkgYmluZm10X21pc2MoRSkgbmxzX2FzY2lpKEUpIG5sc19jcDQzNyhFKSB2ZmF0 KEUpIGZhdChFKSBhbWRfYXRsKEUpIGludGVsX3JhcGxfbXNyKEUpIGludGVsX3JhcGxfY29tbW9u KEUpIG52aWRpYV9kcm0oUE9FKSBudmlkaWFfbW9kZXNldChQT0UpIGVkYWNfbWNlX2FtZChFKSBr dm1fYW1kKEUpIHNuZF9oZGFfY29kZWNfcmVhbHRlayhFKSBrdm0oRSkgaXdsbXZtKEUpIHNuZF9o ZGFfY29kZWNfZ2VuZXJpYyhFKSBjcmN0MTBkaWZfcGNsbXVsKEUpIHNuZF9oZGFfc2NvZGVjX2Nv bXBvbmVudChFKSBzbmRfaGRhX2NvZGVjX2hkbWkoRSkgZ2hhc2hfY2xtdWxuaV9pbnRlbChFKSBz aGE1MTJfc3NzZTMoRSkgbWFjODAyMTEoRSkgc2hhNTEyX2dlbmVyaWMoRSkgc25kX2hkYV9pbnRl bChFKSBudmlkaWEoUE9FKSBzaGEyNTZfc3NzZTMoRSkgc25kX2ludGVsX2RzcGNmZyhFKSBwcGRl dihFKSBzaGExX3Nzc2UzKEUpIGxpYmFyYzQoRSkgc25kX2hkYV9jb2RlYyhFKSBzbmRfdXNiX2F1 ZGlvKEUpIHNuZF91c2JtaWRpX2xpYihFKSB1dmN2aWRlbyhFKSBzbmRfaGRhX2NvcmUoRSkgaXds d2lmaShFKSBhZXNuaV9pbnRlbChFKSBzbmRfcmF3bWlkaShFKSBzbmRfcGNzcChFKQ0KPiBbU3Vu IEp1bCAxNCAxNjo1MTozOSAyMDI0XcKgIHNuZF9od2RlcChFKSBzbmRfc2VxX2RldmljZShFKSBj cnlwdG9fc2ltZChFKSB2aWRlb2J1ZjJfdm1hbGxvYyhFKSBzbmRfcGNtKEUpIGNyeXB0ZChFKSB1 dmMoRSkgdmlkZW9idWYyX21lbW9wcyhFKSB2aWRlb2J1ZjJfdjRsMihFKSBzbmRfdGltZXIoRSkg cmFwbChFKSBjZmc4MDIxMShFKSBrMTB0ZW1wKEUpIHdtaV9ibW9mKEUpIHNwNTEwMF90Y28oRSkg YWNwaV9jcHVmcmVxKEUpIGNjcChFKSBzbmQoRSkgdmlkZW9kZXYoRSkgZHJtX2ttc19oZWxwZXIo RSkgdmlkZW9idWYyX2NvbW1vbihFKSByZmtpbGwoRSkgdmlkZW8oRSkgcm5nX2NvcmUoRSkgbWMo RSkgc291bmRjb3JlKEUpIGpveWRldihFKSBwYXJwb3J0X3BjKEUpIHBhcnBvcnQoRSkgc2coRSkg ZXZkZXYoRSkgbXNyKEUpIGxvb3AoRSkgZnVzZShFKSBkcm0oRSkgZWZpX3BzdG9yZShFKSBkbV9t b2QoRSkgY29uZmlnZnMoRSkgaXBfdGFibGVzKEUpIHhfdGFibGVzKEUpIGF1dG9mczQoRSkgZXh0 NChFKSBjcmMxNihFKSBtYmNhY2hlKEUpIGpiZDIoRSkgYnRyZnMoRSkgYmxha2UyYl9nZW5lcmlj KEUpIGVmaXZhcmZzKEUpIHJhaWQxMChFKSByYWlkNDU2KEUpIGFzeW5jX3JhaWQ2X3JlY292KEUp IGFzeW5jX21lbWNweShFKSBhc3luY19wcShFKSBhc3luY194b3IoRSkgYXN5bmNfdHgoRSkgcmFp ZDEoRSkgcmFpZDAoRSkgbWRfbW9kKEUpIGhpZF9nZW5lcmljKEUpIHVzYmhpZChFKSBoaWQoRSkg c2RfbW9kKEUpIGFoY2koRSkgbGliYWhjaShFKSB4aGNpX3BjaShFKSBudm1lKEUpIGxpYmF0YShF KSBjcmMzMl9wY2xtdWwoRSkgbnZtZV9jb3JlKEUpIHhoY2lfaGNkKEUpIHQxMF9waShFKSBjcmMz MmNfaW50ZWwoRSkgaTJjX3BpaXg0KEUpIHI4MTY5KEUpIGNyYzY0X3JvY2tzb2Z0KEUpIHJlYWx0 ZWsoRSkgc2NzaV9tb2QoRSkgdXNiY29yZShFKSBzY3NpX2NvbW1vbihFKSB1c2JfY29tbW9uKEUp IHdtaShFKSBncGlvX2FtZHB0KEUpIGdwaW9fZ2VuZXJpYyhFKSBidXR0b24oRSkNCj4gW1N1biBK dWwgMTQgMTY6NTE6MzkgMjAyNF0gQ1BVOiAxIFBJRDogMjI3MiBDb21tOiBYb3JnIFRhaW50ZWQ6 IFDCoMKgwqDCoMKgwqDCoCBXwqAgT0XCoMKgwqDCoMKgIDYuMTAuMC1yYzctbGluYW4tMSAjMjgz DQo+IFtTdW4gSnVsIDE0IDE2OjUxOjM5IDIwMjRdIEhhcmR3YXJlIG5hbWU6IE1pY3JvLVN0YXIg SW50ZXJuYXRpb25hbCBDby4sIEx0ZC4gTVMtN0I4OS9CNDUwTSBNT1JUQVIgTUFYIChNUy03Qjg5 KSwgQklPUyAyLjgwIDA2LzEwLzIwMjANCj4gW1N1biBKdWwgMTQgMTY6NTE6MzkgMjAyNF0gUklQ OiAwMDEwOnRyYWNrX3Bmbl9jb3B5KzB4OTQvMHhhMA0KPiBbU3VuIEp1bCAxNCAxNjo1MTozOSAy MDI0XSBDb2RlOiBmZiBmZiBmZiBlYiBiNCA0OCA4OSBlZSA0OCA4YiA0NCAyNCAxMCA0OCA4YiAz YyAyNCBiOSAwMSAwMCAwMCAwMCA0YyAyOSBlNiA0OCA4ZCA1NCAyNCAwOCA0OCA4OSA0NCAyNCAw OCBlOCBmZSBmYyBmZiBmZiBlYiA4ZiA8MGY+IDBiIGViIGQwIGU4IDczIGI5IGJiIDAwIDBmIDFm IDAwIDkwIDkwIDkwIDkwIDkwIDkwIDkwIDkwIDkwIDkwDQo+IFtTdW4gSnVsIDE0IDE2OjUxOjM5 IDIwMjRdIFJTUDogMDAxODpmZmZmYWU1YjRhMDRmYjY4IEVGTEFHUzogMDAwMTAyMDINCj4gW1N1 biBKdWwgMTQgMTY6NTE6MzkgMjAyNF0gUkFYOiAwMDAwMDAwMDAwMDAwMDI4IFJCWDogZmZmZjkx ZDU0NmFlMWQxMCBSQ1g6IDAwMDAwMDAwMDAwMDAwMDANCj4gW1N1biBKdWwgMTQgMTY6NTE6Mzkg MjAyNF0gUkRYOiAwMDAwMDAwMDAwMDAwMDAxIFJTSTogMDAwZmZmZmZmZmUwMDAwMCBSREk6IGZm ZmY5MWQ1Yjk2OWM3MDANCj4gW1N1biBKdWwgMTQgMTY6NTE6MzkgMjAyNF0gUkJQOiAwMDAwN2Zl NzEzMTZlMDAwIFIwODogZmZmZjkxZDYzOWIwYjlhMCBSMDk6IDAwMDA3ZmU3MTMxNmUwMDANCj4g W1N1biBKdWwgMTQgMTY6NTE6MzkgMjAyNF0gUjEwOiAwMDAwN2ZlNzEzMTZkZmZmIFIxMTogMDAw MDdmZTcxMzE2ZWZmZiBSMTI6IDAwMDA3ZmU3MTMxNmQwMDANCj4gW1N1biBKdWwgMTQgMTY6NTE6 MzkgMjAyNF0gUjEzOiBmZmZmOTFkNTQzNzAyZjQwIFIxNDogZmZmZjkxZDYzOWIwYjlhMCBSMTU6 IDAwMDA3ZmU3MTMxNmUwMDANCj4gW1N1biBKdWwgMTQgMTY6NTE6MzkgMjAyNF0gRlM6wqAgMDAw MDdmZTcxMjRmOGFjMCgwMDAwKSBHUzpmZmZmOTFkODRlYzgwMDAwKDAwMDApIGtubEdTOjAwMDAw MDAwMDAwMDAwMDANCj4gW1N1biBKdWwgMTQgMTY6NTE6MzkgMjAyNF0gQ1M6wqAgMDAxMCBEUzog MDAwMCBFUzogMDAwMCBDUjA6IDAwMDAwMDAwODAwNTAwMzMNCj4gW1N1biBKdWwgMTQgMTY6NTE6 MzkgMjAyNF0gQ1IyOiAwMDAwNTVkNmFiMDQ1M2MwIENSMzogMDAwMDAwMDE3OTYyNjAwMCBDUjQ6 IDAwMDAwMDAwMDAzNTBlZjANCj4gW1N1biBKdWwgMTQgMTY6NTE6MzkgMjAyNF0gQ2FsbCBUcmFj ZToNCj4gW1N1biBKdWwgMTQgMTY6NTE6MzkgMjAyNF3CoCA8VEFTSz4NCj4gW1N1biBKdWwgMTQg MTY6NTE6MzkgMjAyNF3CoCA/IF9fd2FybisweDdjLzB4MTIwDQo+IFtTdW4gSnVsIDE0IDE2OjUx OjM5IDIwMjRdwqAgPyB0cmFja19wZm5fY29weSsweDk0LzB4YTANCg0KU2FtZSB0aGluZyAoZm9s bG93LXVwIGVycm9yKSwgZHVyaW5nIGZvcmsoKSB3ZSBkb24ndCBrbm93IHdoYXQgdG8gZG8gDQpi ZWNhdXNlIHRoZSBwYWdlIHRhYmxlcyB3ZXJlIGFscmVhZHkgbW9kaWZpZWQgYW5kIHdlIGRvbid0 IGtub3cgaG93IHRvIA0KaGFuZGxlIHRoYXQgUEZOTUFQIG1hcHBpbmcuDQoNCi0tIA0KQ2hlZXJz LA0KDQpEYXZpZCAvIGRoaWxkZW5iDQoNCg==