From embedded-pv-devel-bounces@lists.xenproject.org Mon Dec 05 13:05:41 2016
Return-path: <embedded-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 05 Dec 2016 13:05:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.84_2)
	(envelope-from <embedded-pv-devel-bounces@lists.xenproject.org>)
	id 1cDsxh-0006zC-01; Mon, 05 Dec 2016 13:05:40 +0000
Received: from mail6.bemta6.messagelabs.com ([193.109.254.103])
 by lists.xenproject.org with esmtp (Exim 4.84_2)
 (envelope-from <andr2000@gmail.com>)
 id 1cDsxg-0006yu-4i; Mon, 05 Dec 2016 13:05:40 +0000
Received: from [193.109.254.147] by server-11.bemta-6.messagelabs.com id
 47/05-28490-32665485; Mon, 05 Dec 2016 13:05:39 +0000
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFprFIsWRWlGSWpSXmKPExsVyMfTSEV3lNNc
 IgyN7mS1W9lxktvi+ZTKTA5PH4Q9XWAIYo1gz85LyKxJYMzaumMpUsICl4vbZSewNjKeYuxg5
 OYQESiQ+vr0JZHNxsAhcYpHY2LOQFcSREHjHIrG9q5EFpEpCIEZi5dU/rBB2jcTUf0vYIboVJ
 b4+m84E0iAksJxJ4vyT7WBFbAJGEstv/ABrFhFQkri3ajJYEbPADmaJzVdvghUJC7hKPJt/B2
 wSi4CqROOOiWANvAJOEg3n5zFDbJOTuHmuk3kCI98CRoZVjBrFqUVlqUW6hiZ6SUWZ6RkluYm
 ZObqGBmZ6uanFxYnpqTmJScV6yfm5mxiBYcMABDsYr28MOMQoycGkJMo7JcE1QogvKT+lMiOx
 OCO+qDQntfgQowwHh5IEb2AKUE6wKDU9tSItMwcYwDBpCQ4eJRHeqSBp3uKCxNzizHSI1ClGS
 45jsxY/ZeI48H4FkNzVueYpkxBLXn5eqpQ4byxIgwBIQ0ZpHtw4WJRdYpSVEuZlBDpQiKcgtS
 g3swRV/hWjOAejkjBvOcgUnsy8Eritr4AOYgI66MRxZ5CDShIRUlINjKtPXHC/P188ZWGLwrX
 GY9Osi9c84M77IZIubz6DX8Hmf7D0c4+zGv7lhi+82VprzVu5AzfNvO7IVeS/4HPa5A9Xewr3
 rT/IMrFX9fB67UcvHbYe+Pa48HAx36e00OJ1b3R9MhLeTM22evfuWuvX93zcKho3D4bWlhxZk
 au65F72xWim2ys7nJRYijMSDbWYi4oTAR/lGkmtAgAA
X-Env-Sender: andr2000@gmail.com
X-Msg-Ref: server-10.tower-27.messagelabs.com!1480943138!55609281!1
X-Originating-IP: [209.85.210.196]
X-SpamReason: No, hits=0.0 required=7.0 tests=
X-StarScan-Received: 
X-StarScan-Version: 9.0.16; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 24081 invoked from network); 5 Dec 2016 13:05:39 -0000
Received: from mail-wj0-f196.google.com (HELO mail-wj0-f196.google.com)
 (209.85.210.196)
 by server-10.tower-27.messagelabs.com with AES128-GCM-SHA256 encrypted SMTP;
 5 Dec 2016 13:05:39 -0000
Received: by mail-wj0-f196.google.com with SMTP id j10so11855038wjb.3;
 Mon, 05 Dec 2016 05:05:38 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
 h=from:to:cc:subject:date:message-id;
 bh=1nAGCgnwUaTxTcgfD6CgZ5FeVM2V9TsvC2sb/00+LFg=;
 b=Nq4EH1bnnpzmrZtoDriNNISbj3lhQ1euVGaTvRQGZ1Sjz67oBKZ48of/DqSwt51Mcs
 z/4CoC2oxsZpfZ4q9UvFzrbNkr/+iKuvpnt961fIWJsK6doRL9PcPD0cWkqw1iQ4gzM/
 suAeEkIIJs1Ykf9+SUahhc0V/Y+WOp3DTF3Zx4a0KICVdF/7aHrlBZtnFgYRSVhCJM90
 17kx5KB242OqpnlIc90uf8TRcsfCF7uM4DCUbGfEEJa4Yivo0wzl+qteFckcWBzQNf8w
 bMaNiSJGvOqmdFgLuxW7D3mKHRJKUBm0nZOiX+OyhPKPy0Ito5jD46Be+pagGRxegL0u
 rU+Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20130820;
 h=x-gm-message-state:from:to:cc:subject:date:message-id;
 bh=1nAGCgnwUaTxTcgfD6CgZ5FeVM2V9TsvC2sb/00+LFg=;
 b=Y8ONSoKhJ4et56o7HCNL8ZCw7qtteO4RVxt7Gv5W0JIhlgDBM/2mPoQnJ8WthFgchb
 2pasrw+tnyPOtaqS+Ewb4Vqlk4ETtht/1U8to1xham45E2ATXzTg8GMplu65rBwFWqZ/
 yFL/Rs7uJaHS4/Xd6gKUHrFgd0CS5/Da7EwEG987/hLirPVlT+BRn1YmfX1JFeh3ChHL
 wnudvjpDUNYJrjQtoiS2TqCkQAefxSf01GgtE9e9j2CbvnGcqhEo4HnCXXyg2y0b5ykK
 oF7v1VEqUVpIxb+1igsV2fxfybV/6mWx8DarrjRS1pxZvInwiCRTbakO3fZN4sPpP6Q3
 H6RQ==
X-Gm-Message-State: AKaTC01VoNQAx4A29W8vHEuYfruhSgTkf0TL8XOFOVindg0YGmrjAlPnUFqnUtPncKnxoQ==
X-Received: by 10.194.113.129 with SMTP id iy1mr51528893wjb.127.1480943138666; 
 Mon, 05 Dec 2016 05:05:38 -0800 (PST)
Received: from a2k-HP-ProDesk-600-G2-SFF.kyiv.epam.com
 (ll-58.209.223.85.sovam.net.ua. [85.223.209.58])
 by smtp.gmail.com with ESMTPSA id f76sm26732wmd.15.2016.12.05.05.05.37
 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128);
 Mon, 05 Dec 2016 05:05:37 -0800 (PST)
From: Oleksandr Andrushchenko <andr2000@gmail.com>
To: xen-devel@lists.xenproject.org
Date: Mon,  5 Dec 2016 15:05:28 +0200
Message-Id: <1480943129-20524-1-git-send-email-andr2000@gmail.com>
X-Mailer: git-send-email 2.7.4
Cc: embedded-pv-devel@lists.xenproject.org, lars.kurth@citrix.com,
 konrad.wilk@oracle.com, vlad.babchuk@gmail.com, ian.jackson@eu.citrix.com,
 dario.faggioli@citrix.com, tim@xen.org, iurii.konovalenko@globallogic.com,
 andrii.anisov@gmail.com, olekstysh@gmail.com, andr2000@gmail.com,
 al1img@gmail.com, david.vrabel@citrix.com, JBeulich@suse.com,
 julien.grall@arm.com, oleksandr.dmytryshyn@globallogic.com,
 joculator@gmail.com
Subject: [Embedded-pv-devel] [Xen-devel][PATCH v15] sndif: add ABI for
	para-virtual sound
X-BeenThere: embedded-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <embedded-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/cgi-bin/mailman/options/embedded-pv-devel>, 
 <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:embedded-pv-devel@lists.xenproject.org>
List-Help: <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/cgi-bin/mailman/listinfo/embedded-pv-devel>, 
 <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: embedded-pv-devel-bounces@lists.xenproject.org
Sender: "Embedded-pv-devel" <embedded-pv-devel-bounces@lists.xenproject.org>

RnJvbTogT2xla3NhbmRyIEFuZHJ1c2hjaGVua28gPE9sZWtzYW5kcl9BbmRydXNoY2hlbmtvQGVw
YW0uY29tPgoKSGksIGFsbCEKClBsZWFzZSBmaW5kIHRoZSBuZXh0IHZlcnNpb24gb2YgdGhlIEFC
SSBmb3IgdGhlIFBWIHNvdW5kCmFmdGVyIGFkZHJlc3NpbmcgcmV2aWV3IGNvbW1lbnRzLgoKVGhh
bmsgeW91LApPbGVrc2FuZHIgQW5kcnVzaGNoZW5rbwpPbGVrc2FuZHIgR3J5dHNvdgoKT2xla3Nh
bmRyIEFuZHJ1c2hjaGVua28gKDEpOgogIFRoaXMgaXMgdGhlIEFCSSBmb3IgdGhlIHR3byBoYWx2
ZXMgb2YgYSBwYXJhLXZpcnR1YWxpemVkICAgICBzb3VuZAogICAgZHJpdmVyIHRvIGNvbW11bmlj
YXRlIHdpdGggZWFjaCB0byBvdGhlci4KCiB4ZW4vaW5jbHVkZS9wdWJsaWMvaW8vc25kaWYuaCB8
IDY3MSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIDEgZmlsZSBj
aGFuZ2VkLCA2NzEgaW5zZXJ0aW9ucygrKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHhlbi9pbmNsdWRl
L3B1YmxpYy9pby9zbmRpZi5oCgotLSAKMi43LjQKCgpfX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fXwpFbWJlZGRlZC1wdi1kZXZlbCBtYWlsaW5nIGxpc3QKRW1i
ZWRkZWQtcHYtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9q
ZWN0Lm9yZy9jZ2ktYmluL21haWxtYW4vbGlzdGluZm8vZW1iZWRkZWQtcHYtZGV2ZWw=

From embedded-pv-devel-bounces@lists.xenproject.org Mon Dec 05 13:05:41 2016
Return-path: <embedded-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 05 Dec 2016 13:05:41 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.84_2)
	(envelope-from <embedded-pv-devel-bounces@lists.xenproject.org>)
	id 1cDsxh-0006zC-01; Mon, 05 Dec 2016 13:05:40 +0000
Received: from mail6.bemta6.messagelabs.com ([193.109.254.103])
 by lists.xenproject.org with esmtp (Exim 4.84_2)
 (envelope-from <andr2000@gmail.com>)
 id 1cDsxg-0006yu-4i; Mon, 05 Dec 2016 13:05:40 +0000
Received: from [193.109.254.147] by server-11.bemta-6.messagelabs.com id
 47/05-28490-32665485; Mon, 05 Dec 2016 13:05:39 +0000
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFprFIsWRWlGSWpSXmKPExsVyMfTSEV3lNNc
 IgyN7mS1W9lxktvi+ZTKTA5PH4Q9XWAIYo1gz85LyKxJYMzaumMpUsICl4vbZSewNjKeYuxg5
 OYQESiQ+vr0JZHNxsAhcYpHY2LOQFcSREHjHIrG9q5EFpEpCIEZi5dU/rBB2jcTUf0vYIboVJ
 b4+m84E0iAksJxJ4vyT7WBFbAJGEstv/ABrFhFQkri3ajJYEbPADmaJzVdvghUJC7hKPJt/B2
 wSi4CqROOOiWANvAJOEg3n5zFDbJOTuHmuk3kCI98CRoZVjBrFqUVlqUW6hiZ6SUWZ6RkluYm
 ZObqGBmZ6uanFxYnpqTmJScV6yfm5mxiBYcMABDsYr28MOMQoycGkJMo7JcE1QogvKT+lMiOx
 OCO+qDQntfgQowwHh5IEb2AKUE6wKDU9tSItMwcYwDBpCQ4eJRHeqSBp3uKCxNzizHSI1ClGS
 45jsxY/ZeI48H4FkNzVueYpkxBLXn5eqpQ4byxIgwBIQ0ZpHtw4WJRdYpSVEuZlBDpQiKcgtS
 g3swRV/hWjOAejkjBvOcgUnsy8Eritr4AOYgI66MRxZ5CDShIRUlINjKtPXHC/P188ZWGLwrX
 GY9Osi9c84M77IZIubz6DX8Hmf7D0c4+zGv7lhi+82VprzVu5AzfNvO7IVeS/4HPa5A9Xewr3
 rT/IMrFX9fB67UcvHbYe+Pa48HAx36e00OJ1b3R9MhLeTM22evfuWuvX93zcKho3D4bWlhxZk
 au65F72xWim2ys7nJRYijMSDbWYi4oTAR/lGkmtAgAA
X-Env-Sender: andr2000@gmail.com
X-Msg-Ref: server-10.tower-27.messagelabs.com!1480943138!55609281!1
X-Originating-IP: [209.85.210.196]
X-SpamReason: No, hits=0.0 required=7.0 tests=
X-StarScan-Received: 
X-StarScan-Version: 9.0.16; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 24081 invoked from network); 5 Dec 2016 13:05:39 -0000
Received: from mail-wj0-f196.google.com (HELO mail-wj0-f196.google.com)
 (209.85.210.196)
 by server-10.tower-27.messagelabs.com with AES128-GCM-SHA256 encrypted SMTP;
 5 Dec 2016 13:05:39 -0000
Received: by mail-wj0-f196.google.com with SMTP id j10so11855038wjb.3;
 Mon, 05 Dec 2016 05:05:38 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
 h=from:to:cc:subject:date:message-id;
 bh=1nAGCgnwUaTxTcgfD6CgZ5FeVM2V9TsvC2sb/00+LFg=;
 b=Nq4EH1bnnpzmrZtoDriNNISbj3lhQ1euVGaTvRQGZ1Sjz67oBKZ48of/DqSwt51Mcs
 z/4CoC2oxsZpfZ4q9UvFzrbNkr/+iKuvpnt961fIWJsK6doRL9PcPD0cWkqw1iQ4gzM/
 suAeEkIIJs1Ykf9+SUahhc0V/Y+WOp3DTF3Zx4a0KICVdF/7aHrlBZtnFgYRSVhCJM90
 17kx5KB242OqpnlIc90uf8TRcsfCF7uM4DCUbGfEEJa4Yivo0wzl+qteFckcWBzQNf8w
 bMaNiSJGvOqmdFgLuxW7D3mKHRJKUBm0nZOiX+OyhPKPy0Ito5jD46Be+pagGRxegL0u
 rU+Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20130820;
 h=x-gm-message-state:from:to:cc:subject:date:message-id;
 bh=1nAGCgnwUaTxTcgfD6CgZ5FeVM2V9TsvC2sb/00+LFg=;
 b=Y8ONSoKhJ4et56o7HCNL8ZCw7qtteO4RVxt7Gv5W0JIhlgDBM/2mPoQnJ8WthFgchb
 2pasrw+tnyPOtaqS+Ewb4Vqlk4ETtht/1U8to1xham45E2ATXzTg8GMplu65rBwFWqZ/
 yFL/Rs7uJaHS4/Xd6gKUHrFgd0CS5/Da7EwEG987/hLirPVlT+BRn1YmfX1JFeh3ChHL
 wnudvjpDUNYJrjQtoiS2TqCkQAefxSf01GgtE9e9j2CbvnGcqhEo4HnCXXyg2y0b5ykK
 oF7v1VEqUVpIxb+1igsV2fxfybV/6mWx8DarrjRS1pxZvInwiCRTbakO3fZN4sPpP6Q3
 H6RQ==
X-Gm-Message-State: AKaTC01VoNQAx4A29W8vHEuYfruhSgTkf0TL8XOFOVindg0YGmrjAlPnUFqnUtPncKnxoQ==
X-Received: by 10.194.113.129 with SMTP id iy1mr51528893wjb.127.1480943138666; 
 Mon, 05 Dec 2016 05:05:38 -0800 (PST)
Received: from a2k-HP-ProDesk-600-G2-SFF.kyiv.epam.com
 (ll-58.209.223.85.sovam.net.ua. [85.223.209.58])
 by smtp.gmail.com with ESMTPSA id f76sm26732wmd.15.2016.12.05.05.05.37
 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128);
 Mon, 05 Dec 2016 05:05:37 -0800 (PST)
From: Oleksandr Andrushchenko <andr2000@gmail.com>
To: xen-devel@lists.xenproject.org
Date: Mon,  5 Dec 2016 15:05:28 +0200
Message-Id: <1480943129-20524-1-git-send-email-andr2000@gmail.com>
X-Mailer: git-send-email 2.7.4
Cc: embedded-pv-devel@lists.xenproject.org, lars.kurth@citrix.com,
 konrad.wilk@oracle.com, vlad.babchuk@gmail.com, ian.jackson@eu.citrix.com,
 dario.faggioli@citrix.com, tim@xen.org, iurii.konovalenko@globallogic.com,
 andrii.anisov@gmail.com, olekstysh@gmail.com, andr2000@gmail.com,
 al1img@gmail.com, david.vrabel@citrix.com, JBeulich@suse.com,
 julien.grall@arm.com, oleksandr.dmytryshyn@globallogic.com,
 joculator@gmail.com
Subject: [Embedded-pv-devel] [Xen-devel][PATCH v15] sndif: add ABI for
	para-virtual sound
X-BeenThere: embedded-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <embedded-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/cgi-bin/mailman/options/embedded-pv-devel>, 
 <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:embedded-pv-devel@lists.xenproject.org>
List-Help: <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/cgi-bin/mailman/listinfo/embedded-pv-devel>, 
 <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: embedded-pv-devel-bounces@lists.xenproject.org
Sender: "Embedded-pv-devel" <embedded-pv-devel-bounces@lists.xenproject.org>

RnJvbTogT2xla3NhbmRyIEFuZHJ1c2hjaGVua28gPE9sZWtzYW5kcl9BbmRydXNoY2hlbmtvQGVw
YW0uY29tPgoKSGksIGFsbCEKClBsZWFzZSBmaW5kIHRoZSBuZXh0IHZlcnNpb24gb2YgdGhlIEFC
SSBmb3IgdGhlIFBWIHNvdW5kCmFmdGVyIGFkZHJlc3NpbmcgcmV2aWV3IGNvbW1lbnRzLgoKVGhh
bmsgeW91LApPbGVrc2FuZHIgQW5kcnVzaGNoZW5rbwpPbGVrc2FuZHIgR3J5dHNvdgoKT2xla3Nh
bmRyIEFuZHJ1c2hjaGVua28gKDEpOgogIFRoaXMgaXMgdGhlIEFCSSBmb3IgdGhlIHR3byBoYWx2
ZXMgb2YgYSBwYXJhLXZpcnR1YWxpemVkICAgICBzb3VuZAogICAgZHJpdmVyIHRvIGNvbW11bmlj
YXRlIHdpdGggZWFjaCB0byBvdGhlci4KCiB4ZW4vaW5jbHVkZS9wdWJsaWMvaW8vc25kaWYuaCB8
IDY3MSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIDEgZmlsZSBj
aGFuZ2VkLCA2NzEgaW5zZXJ0aW9ucygrKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHhlbi9pbmNsdWRl
L3B1YmxpYy9pby9zbmRpZi5oCgotLSAKMi43LjQKCgpfX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fXwpFbWJlZGRlZC1wdi1kZXZlbCBtYWlsaW5nIGxpc3QKRW1i
ZWRkZWQtcHYtZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9q
ZWN0Lm9yZy9jZ2ktYmluL21haWxtYW4vbGlzdGluZm8vZW1iZWRkZWQtcHYtZGV2ZWw=

From embedded-pv-devel-bounces@lists.xenproject.org Mon Dec 05 13:05:45 2016
Return-path: <embedded-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 05 Dec 2016 13:05:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.84_2)
	(envelope-from <embedded-pv-devel-bounces@lists.xenproject.org>)
	id 1cDsxl-00070a-7u; Mon, 05 Dec 2016 13:05:45 +0000
Received: from mail6.bemta6.messagelabs.com ([193.109.254.103])
 by lists.xenproject.org with esmtp (Exim 4.84_2)
 (envelope-from <andr2000@gmail.com>)
 id 1cDsxj-000708-K0; Mon, 05 Dec 2016 13:05:43 +0000
Received: from [193.109.254.147] by server-7.bemta-6.messagelabs.com id
 36/63-29519-62665485; Mon, 05 Dec 2016 13:05:42 +0000
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFlrDIsWRWlGSWpSXmKPExsXiVRvkrKua5hp
 h0Dhb3mJlz0Vmi+9bJjM5MHkc/nCFJYAxijUzLym/IoE143NzO1vBrn6mipmtKg2Mj04wdjFy
 cggJFEs8WfGUtYuRi4NF4CWLxOXDe5lAHAmBflaJp29WgVVJCMRI/PvzFsqulJjfvJINoltR4
 uuz6WANQgLLmSS+bV3LCpJgEzCSWH7jBwuILSKgJHFv1WSwImaBHcwSm6/eBCsSFqiVuLn8HV
 gRi4CqxIt7TewgNq+Ak8TltgssENvkJG6e62QGsTkFnCXurusHinMAbXOSOPfZfwKjwAJGhlW
 MGsWpRWWpRbpGpnpJRZnpGSW5iZk5uoYGZnq5qcXFiempOYlJxXrJ+bmbGIFhxgAEOxhXLQg8
 xCjJwaQkyjslwTVCiC8pP6UyI7E4I76oNCe1+BCjDAeHkgRvYApQTrAoNT21Ii0zBxjwMGkJD
 h4lEV55kDRvcUFibnFmOkTqFKMxx7Rni58ycezoXPOUSYglLz8vVUqcdydIqQBIaUZpHtwgWC
 ReYpSVEuZlBDpNiKcgtSg3swRV/hWjOAejkjCvA8gUnsy8Erh9r4BOYQI65cRxZ5BTShIRUlI
 NjMV8eQJCJyz2zvTsjH7b9eXicf/nkemMBs9O/NY0fjBr845WdZWYg1O7p2rHr9p+1sbtoWaT
 lOsucYU2HjuVnQ8PnJZS4TRf2FXwr1eqYsEXo7Ze2Qtezyc836CnuPxejdyU6XqXugudixfnF
 k42SOaZl2+47LqdrNcqiXvhE//0Hk1omvDcRYmlOCPRUIu5qDgRAAc08uG/AgAA
X-Env-Sender: andr2000@gmail.com
X-Msg-Ref: server-15.tower-27.messagelabs.com!1480943141!22850794!1
X-Originating-IP: [74.125.82.67]
X-SpamReason: No, hits=0.5 required=7.0 tests=BODY_RANDOM_LONG
X-StarScan-Received: 
X-StarScan-Version: 9.0.16; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 54064 invoked from network); 5 Dec 2016 13:05:41 -0000
Received: from mail-wm0-f67.google.com (HELO mail-wm0-f67.google.com)
 (74.125.82.67)
 by server-15.tower-27.messagelabs.com with AES128-GCM-SHA256 encrypted SMTP;
 5 Dec 2016 13:05:41 -0000
Received: by mail-wm0-f67.google.com with SMTP id a20so15896581wme.2;
 Mon, 05 Dec 2016 05:05:41 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
 h=from:to:cc:subject:date:message-id:in-reply-to:references;
 bh=XWuv5+sTmMq8jVnGG9itwSzFybv+COmuy+nAGAew7IU=;
 b=PCL/DWU5NIR+PMFqq7N5z3PDx3swfsgvL+7F3CduFC/0s61YCYeCGaehYxYzDqlyOQ
 aXpKlADXkXj82F/lV6uRNP1isBpqZDql0xLZRAARu2xrqGn49/SDL6vEFm9eTiAR6n6B
 PTjO5vzb9wFu51M7EQfyIB2wyNjgtoDcSYkUpvVPBF8rFpxqePH1UfWSRR+jDZAVDjUw
 1JnU1c/MBGnxDcW3fHu/p2AAnXBkFlkXYRMSScBboiFKbEs6BjAvSblBTTPBOivRvYIG
 9aF6P2sARkLfcg74JuKDMdlYBYvb0GkADlpv4DfzL8fG4XVBxrCQIMdUGclTab6KHYTu
 LudA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20130820;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references;
 bh=XWuv5+sTmMq8jVnGG9itwSzFybv+COmuy+nAGAew7IU=;
 b=XIsE8KBoSkbsQwqw3iIDu+N6XDLF35UG41mFXfpnkBOvLeJ4vZQQ/kHuMDSOCqXuGL
 AOHCXxi+PElPswPS+x2h5Bad5EtvdLtExTBIL5ChxdjS4zS93HFE1051hihq+CD8gU8c
 aLXR56iZZ7alE/GKUfVrbawlW1qm+sTm6aBLo0VBORI1LFOJs8/BgT+VpQjpHlcw9pMt
 OLOBlZWqH6get+CZ74OCLiwzc7QsDsFmlXdnu3eM2dk1qUQggnQY6aZhCLWZepF36xAq
 q+LUidU25H5GLOfRUDwdoxuAejlWsbHPzBZ0cEW0xG8VKwq72DmEAelt86KjRW66CWbs
 y5/A==
X-Gm-Message-State: AKaTC01C7Ofq5+q6Y4WZay0BTvyUB1/0gToKeTe5oagfhkD2KWQscoaV3GVWd5s0ulTtAg==
X-Received: by 10.28.107.21 with SMTP id g21mr9604056wmc.131.1480943140289;
 Mon, 05 Dec 2016 05:05:40 -0800 (PST)
Received: from a2k-HP-ProDesk-600-G2-SFF.kyiv.epam.com
 (ll-58.209.223.85.sovam.net.ua. [85.223.209.58])
 by smtp.gmail.com with ESMTPSA id f76sm26732wmd.15.2016.12.05.05.05.38
 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128);
 Mon, 05 Dec 2016 05:05:39 -0800 (PST)
From: Oleksandr Andrushchenko <andr2000@gmail.com>
To: xen-devel@lists.xenproject.org
Date: Mon,  5 Dec 2016 15:05:29 +0200
Message-Id: <1480943129-20524-2-git-send-email-andr2000@gmail.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1480943129-20524-1-git-send-email-andr2000@gmail.com>
References: <1480943129-20524-1-git-send-email-andr2000@gmail.com>
Cc: embedded-pv-devel@lists.xenproject.org, lars.kurth@citrix.com,
 konrad.wilk@oracle.com, vlad.babchuk@gmail.com, ian.jackson@eu.citrix.com,
 dario.faggioli@citrix.com, tim@xen.org, iurii.konovalenko@globallogic.com,
 andrii.anisov@gmail.com, olekstysh@gmail.com, andr2000@gmail.com,
 al1img@gmail.com, david.vrabel@citrix.com, JBeulich@suse.com,
 julien.grall@arm.com, oleksandr.dmytryshyn@globallogic.com,
 joculator@gmail.com
Subject: [Embedded-pv-devel] [PATCH v15] This is the ABI for the two halves
	of a para-virtualized sound driver to communicate with each
	to other.
X-BeenThere: embedded-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <embedded-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/cgi-bin/mailman/options/embedded-pv-devel>, 
 <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:embedded-pv-devel@lists.xenproject.org>
List-Help: <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/cgi-bin/mailman/listinfo/embedded-pv-devel>, 
 <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: embedded-pv-devel-bounces@lists.xenproject.org
Sender: "Embedded-pv-devel" <embedded-pv-devel-bounces@lists.xenproject.org>

RnJvbTogT2xla3NhbmRyIEFuZHJ1c2hjaGVua28gPE9sZWtzYW5kcl9BbmRydXNoY2hlbmtvQGVw
YW0uY29tPgoKU2lnbmVkLW9mZi1ieTogT2xla3NhbmRyIEFuZHJ1c2hjaGVua28gPE9sZWtzYW5k
cl9BbmRydXNoY2hlbmtvQGVwYW0uY29tPgpTaWduZWQtb2ZmLWJ5OiBPbGVrc2FuZHIgR3J5dHNv
diA8T2xla3NhbmRyX0dyeXRzb3ZAZXBhbS5jb20+ClNpZ25lZC1vZmYtYnk6IE9sZWtzYW5kciBE
bXl0cnlzaHluIDxvbGVrc2FuZHIuZG15dHJ5c2h5bkBnbG9iYWxsb2dpYy5jb20+ClNpZ25lZC1v
ZmYtYnk6IEl1cmlpIEtvbm92YWxlbmtvIDxpdXJpaS5rb25vdmFsZW5rb0BnbG9iYWxsb2dpYy5j
b20+CgotLS0KQ2hhbmdlcyBzaW5jZSB2MToKICogcmVtb3ZlZCBfX2F0dHJpYnV0ZV9fKChfX3Bh
Y2tlZF9fKSkgZnJvbSBhbGwgc3RydWN0dXJlcyBkZWZpbml0aW9ucwoKQ2hhbmdlcyBzaW5jZSB2
MjoKICogcmVtb3ZlZCBhbGwgQyBzdHJ1Y3R1cmVzCiAqIGFkZGVkIHByb3RvY29sIGRlc2NyaXB0
aW9uIGJldHdlZW4gZnJvbnRlbmQgYW5kIGJhY2tlbmQgZHJpdmVycwoKQ2hhbmdlcyBzaW5jZSB2
MzoKICogZml4ZWQgc29tZSB0eXBvcwogKiByZW5hbWVkIFhFTlNORF9QQ01fRk9STUFUX0ZMT0FU
XyoqIHRvIFhFTlNORF9QQ01fRk9STUFUX0YzMl8qKgogKiByZW5hbWVkIFhFTlNORF9QQ01fRk9S
TUFUX0ZMT0FUNjRfKiogdG8gWEVOU05EX1BDTV9GT1JNQVRfRjY0XyoqCiAqIGFkZGVkICdpZCcg
ZmllbGQgdG8gdGhlIHJlcXVlc3QgYW5kIHJlc3BvbnNlIHBhY2tldHMKICogcmVuYW1lZCAnc3Ry
ZWFtX2lkJyB0byAnc3RyZWFtJyBpbiB0aGUgcGFja2V0cyBkZXNjcmlwdGlvbgogKiByZW5hbWVk
ICdwY21fZGF0YV9yYXRlJyB0byAncGNtX3JhdGUnIGluIHRoZSBwYWNrZXRzIGRlc2NyaXB0aW9u
CiAqIHJlbmFtZWQgJ3BjbV9zdHJlYW1fdHlwZScgdG8gJ3BjbV90eXBlJyBpbiB0aGUgcGFja2V0
cyBkZXNjcmlwdGlvbgogKiByZW1vdmVkICdzdHJlYW1faWQnIGZpZWxkIGZyb20gdGhlIHJlc3Bv
bnNlIHBhY2tldHMKCkNoYW5nZXMgc2luY2UgdjQ6CiAqIHJlbmFtZWQgJ3N0cmVhbV9pZCcgYmFj
ayB0byB0aGUgdG8gJ3N0cmVhbScgaW4gdGhlIHBhY2tldHMgZGVzY3JpcHRpb24KICogbW92ZWQg
J2lkJyBmaWVsZCB0byB0aGUgdXBwZXIgcG9zaXRpb24gaW4gdGhlIHJlc3BvbnNlIHBhY2tldHMK
CkNoYW5nZXMgc2luY2UgdjU6CiAqIFNsaWdodGx5IHJld29ya2VkIHJlcXVlc3QvcmVzcG9uc2Ug
cGFja2V0cwogKiBTaXplIG9mIHRoZSByZXF1ZXN0L3Jlc3BvbnNlIHBhY2tldCBpcyBjaGFuZ2Vk
IHRvIHRoZSA2NCBieXRlcwogKiBOb3cgcGFyYW1ldGVycyBmb3IgdGhlIFhFTlNORF9PUF9TRVRf
Vk9MVU1FL1hFTlNORF9PUF9HRVRfVk9MVU1FIGFyZQogICBwYXNzZWQgdmlhIHNoYXJlZCBwYWdl
CiAqIEFkZGVkIHBhcmFtZXRlcnMgZm9yIHRoZSBYZW5CdXMgbm9kZXMgKG5vdyBlYWNoIHN0cmVh
bSBjYW4gYmUgbWFwcGVkCiAgIHRvIHRoZSBkZWZpbmVkIHNvdW5kIGRldmljZSBpbiB0aGUgYmFj
a2VuZCB1c2luZyB0aG9zZSBwYXJhbWV0ZXJzKQogKiBBZGRlZCBYZW5CdXMgc3RhdGUgZGlhZ3Jh
bXMgZGVzY3JpcHRpb24KCkNoYW5nZXMgc2luY2UgdjY6CiAqIFJld29ya2VkIHN0cmVhbXMgZGVz
Y3JpcHRpb24gIGluIHRoZSBCYWNrZW5kIFhlbkJ1cyBOb2RlcwoKQ2hhbmdlcyBzaW5jZSB2NzoK
ICogcmUtd29ya2VkIGJhY2tlbmQgZGV2aWNlIHBhcmFtZXRlcnMgdG8gYmUgbW9yZSBnZW5lcmlj
IGFuZCBmbGV4aWJsZQogKiBleHRlbmRlZCBmcm9udGVuZCBkZXZpY2UgcGFyYW1ldGVycwogKiBz
bGlnaHRseSB1cGRhdGVkIHN0YXRlIG1hY2hpbmUgZGVzY3JpcHRpb24gYWRkZWQgbXV0ZS91bm11
dGUgY29tbWFuZHMKICogYWRkZWQgY29uc3RhbnRzIGZvciBYZW5TdG9yZSBjb25maWd1cmF0aW9u
IHN0cmluZ3MKICAgKGZpZWxkcywgUENNIGZvcm1hdHMgZXRjLikKICogY2hhbmdlZCByZXF1ZXN0
L3Jlc3BvbnNlIHN0cnVjdHVyZSBzaXplIGZyb20gNjQgb2N0ZXRzIHRvIDE2CiAqIGludHJvZHVj
ZWQgZHluYW1pYyBidWZmZXIgYWxsb2NhdGlvbiBpbnN0ZWFkIG9mCiAgIHN0YXRpYyBYRU5TTkRf
TUFYX1BBR0VTX1BFUl9SRVFVRVNUCiAqIHJlLXdvcmtlZCBvcGVuIHJlcXVlc3QgdG8gYWxsb3cg
ZHluYW1pYyBidWZmZXIgYWxsb2NhdGlvbgogKiByZS13b3JrZWQgcmVhZC93cml0ZS92b2x1bWUg
cmVxdWVzdHMsIHNvIHRoZXkgZG9uJ3QgcGFzcyBncmVmczoKICAgYnVmZmVyIGZyb20gdGhlIG9w
ZW4gcmVxdWVzdCBpcyB1c2VkIGZvciB0aGVzZSBvcGVyYXRpb25zIHRvIHBhc3MgZGF0YQogKiBz
cGVjaWZpZWQgdHlwZSBvZiB0aGUgdm9sdW1lIHZhbHVlIHRvIGJlIGEgc2lnbmVkIHZhbHVlIGlu
IHN0ZXBzCiAgIG9mIDAuMDAxIGRCbSwgd2hpbGUgMCBiZWluZyAwZEJtLgogKiBhZGRlZCBMaW51
eCBpbmNsdWRlIGZpbGUgd2l0aCBzdHJ1Y3R1cmUgZGVmaW5pdGlvbnMKCkNoYW5nZXMgc2luY2Ug
djg6CiAqIGNoYW5nZWQgZnJvbnRlbmQtaWQgdG8gZnJvbnRlbmRfaWQKICogc2luZ2xlIHNvdW5k
IGNhcmQgc3VwcG9ydCwgY29uZmlndXJlZCB3aXRoIGJ1bmNoIG9mCiAgIGRldmljZXMvc3RyZWFt
cwogKiBjbGFyaWZ1Y2F0aW9uIG1hZGUgb24gc2FtcGxlIHJhdGVzIGFuZCBmb3JtYXRzIGV4cHJl
c3NlZCBhcwogICBkZWNpbWFscyB3L28gYW55IHBhcnRpY3VsYXIgb3JkZXJpbmcKICogcHV0IGRl
c2NyaXB0aW9uIG9mIG1pZ3JhdGlvbi9kaXNjb25uZWN0aW9uIHN0YXRlCiAqIHJlcGxhY2VkIF9f
YXR0cmlidXRlX18oKHBhY2tlZCkpIHRvIF9fcGFja2VkCiAqIGNoYW5nZWQgcGFkZGluZyBvZiBy
aW5nIHN0cnVjdHVyZXMgdG8gNjQgdG8gZml0IGNhY2hlIGxpbmUKICogcmVtb3ZlZWQgI2lmZGVm
IF9fS0VSTkVMCiAqIGV4cGxpY2l0bHkgc3RhdGVkIHdoaWNoIGluZGljZXMgaW4gWGVuU3RvcmUg
Y29uZmlndXJhdGlvbgogICBhcmUgY29udGlndW91cwogKiBhZGRlZCBkZXNjcmlwdGlvbiB0byB3
aGF0IGZyb250ZW5kJ3MgZGVmYXVsdHMgYXJlCiAqIG1hZGUgbmFtZXMgb2YgdmlydHVhbCBjYXJk
L2RldmljZXMgb3B0aW9uYWwKICogcmVtb3ZlZCBQQ01fRk9STUFUX1NQRUNJQUwKICogY2hhbmdl
ZCB2b2x1bWUgdW5pdHMgZnJvbSBkQm0gdG8gZEIKCkNoYW5nZXMgc2luY2Ugdjk6CiAqIHJlbW92
ZWQgc25kaWZfbGludXguaAogKiBtb3ZlZCBhbGwgc3RydWN0dXJlcyBmcm9tIHNuZGlmX2xpbnV4
LmggdG8gc25kaWYuaAogKiBzdHJ1Y3R1cmVzIHBhZGRlZCB3aGVyZSBuZWVkZWQKICogZml4ZWQg
SHogY29tbWVudAoKQ2hhbmdlcyBzaW5jZSB2MTA6CiAqIGZpeGVkIHRhYnMgdG8gNCBzcGFjZXMg
dG8gY29tcGx5IHdpdGggWGVuIGNvZGluZyBzdHlsZQogKiBhZGRlZCBwbGFjZWhvbGRlcnMgdG8g
ZW1wdHkgc3RydWN0dXJlcyAoQzg5IGNvbmNlcm4pCiAqIGFkZGVkIG1pc3NpbmcgaGVhZGVyIGlu
Y2x1ZGVzCgpDaGFuZ2VzIHNpbmNlIHYxMToKICogYWRkZWQgWEVOU05EX1JTUF9OT1RTVVBQIGVy
cm9yIGNvZGUKICogY2hhbmdlZCBncmVmWzBdIHRvIGdyZWZbMV0gd2l0aCBjb21tZW50CiAqIG1v
ZGlmaWVkIGNvbW1lbnRzIG9uIGVtcHR5IHN0cnVjdHVyZXMKICogcmVtb3ZlZCAiX18iIGZyb20g
bWVtYmVyIG5hbWVzCiAqIGZpeGVkIGluZGVudGF0aW9uCiAqIGFkZGVkIHBhZGRpbmcgaW4gdW5p
b24geGVuc25kX3Jlc3AKICogY2hhbmdlZCBfX1hFTl9QVUJMSUNfSU9fWEVOU05EX0hfXyB0byBf
X1hFTl9QVUJMSUNfSU9fU05ESUZfSF9fCgpDaGFuZ2VzIHNpbmNlIHYxMjoKICogY2hhbmdlZCBp
bmRlbnRhdGlvbiBmb3IgZGVmaW5lcwogKiBtaXNzZWQgIjsiIGFmdGVyIGdyZWZbMV0KICogZG9j
dW1lbnRhdGlvbiBjaGFuZ2VzCiAqIGNoYW5nZWQgcmVxL3Jlc3Agc3RydWN0dXJlcwogKiBjaGFu
Z2VkIHhlbnNuZF9wYWdlX2RpcmVjdG9yeSBzdHJ1Y3R1cmUKICogcGFzcyBidWZmZXIgc2l6ZSBp
biBvcGVuIHJlcXVlc3QKCkNoYW5nZXMgc2luY2UgdjEzOgogKiBub3RlIG9uIHVzYWdlIG9mIGdy
YW50IHJlZiAwCiAqIGFsbCBwYWdlIHNpemVzIGFyZSBYRU5fUEFHRV9TSVpFCiAqIHBhZGRpbmcv
cmVzZXJ2ZWQgY2xlYW51cC9maXhlcwogKiByZW1vdmVkIGVtcHR5IHN0cnVjdHVyZXMKCkNoYW5n
ZXMgc2luY2UgdjE0OgogKiB0dXJuIHBhZGRpbmcgaW50byByZXNlcnZlZAotLS0KLS0tCiB4ZW4v
aW5jbHVkZS9wdWJsaWMvaW8vc25kaWYuaCB8IDY3MSArKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysKIDEgZmlsZSBjaGFuZ2VkLCA2NzEgaW5zZXJ0aW9ucygrKQogY3Jl
YXRlIG1vZGUgMTAwNjQ0IHhlbi9pbmNsdWRlL3B1YmxpYy9pby9zbmRpZi5oCgpkaWZmIC0tZ2l0
IGEveGVuL2luY2x1ZGUvcHVibGljL2lvL3NuZGlmLmggYi94ZW4vaW5jbHVkZS9wdWJsaWMvaW8v
c25kaWYuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42MGE2ZDg4Ci0tLSAv
ZGV2L251bGwKKysrIGIveGVuL2luY2x1ZGUvcHVibGljL2lvL3NuZGlmLmgKQEAgLTAsMCArMSw2
NzEgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIHNuZGlmLmgKKyAqCisgKiBVbmlmaWVk
IHNvdW5kLWRldmljZSBJL08gaW50ZXJmYWNlIGZvciBYZW4gZ3Vlc3QgT1Nlcy4KKyAqCisgKiBQ
ZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNv
biBvYnRhaW5pbmcgYSBjb3B5CisgKiBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRv
Y3VtZW50YXRpb24gZmlsZXMgKHRoZSAiU29mdHdhcmUiKSwgdG8KKyAqIGRlYWwgaW4gdGhlIFNv
ZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24g
dGhlCisgKiByaWdodHMgdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0
cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3IKKyAqIHNlbGwgY29waWVzIG9mIHRoZSBTb2Z0d2Fy
ZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzCisgKiBmdXJu
aXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgorICoK
KyAqIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNl
IHNoYWxsIGJlIGluY2x1ZGVkIGluCisgKiBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRp
b25zIG9mIHRoZSBTb2Z0d2FyZS4KKyAqCisgKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFT
IElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgorICogSU1QTElF
RCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFksCisgKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5G
UklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKKyAqIEFVVEhPUlMgT1IgQ09QWVJJR0hU
IEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKKyAqIExJ
QUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJX
SVNFLCBBUklTSU5HCisgKiBGUk9NLCBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBT
T0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSCisgKiBERUFMSU5HUyBJTiBUSEUgU09GVFdBUkUu
CisgKgorICogQ29weXJpZ2h0IChDKSAyMDEzLTIwMTUgR2xvYmFsTG9naWMgSW5jLgorICogQ29w
eXJpZ2h0IChDKSAyMDE2IEVQQU0gU3lzdGVtcyBJbmMuCisgKgorICogQXV0aG9yczogT2xla3Nh
bmRyIEFuZHJ1c2hjaGVua28gPE9sZWtzYW5kcl9BbmRydXNoY2hlbmtvQGVwYW0uY29tPgorICog
ICAgICAgICAgT2xla3NhbmRyIEdyeXRzb3YgPE9sZWtzYW5kcl9Hcnl0c292QGVwYW0uY29tPgor
ICogICAgICAgICAgT2xla3NhbmRyIERteXRyeXNoeW4gPG9sZWtzYW5kci5kbXl0cnlzaHluQGds
b2JhbGxvZ2ljLmNvbT4KKyAqICAgICAgICAgIEl1cmlpIEtvbm92YWxlbmtvIDxpdXJpaS5rb25v
dmFsZW5rb0BnbG9iYWxsb2dpYy5jb20+CisgKi8KKworI2lmbmRlZiBfX1hFTl9QVUJMSUNfSU9f
U05ESUZfSF9fCisjZGVmaW5lIF9fWEVOX1BVQkxJQ19JT19TTkRJRl9IX18KKworI2luY2x1ZGUg
InJpbmcuaCIKKyNpbmNsdWRlICIuLi9ncmFudF90YWJsZS5oIgorCisvKgorICogRnJvbnQtPmJh
Y2sgbm90aWZpY2F0aW9uczogV2hlbiBlbnF1ZXVpbmcgYSBuZXcgcmVxdWVzdCwgc2VuZGluZyBh
CisgKiBub3RpZmljYXRpb24gY2FuIGJlIG1hZGUgY29uZGl0aW9uYWwgb24gcmVxX2V2ZW50IChp
LmUuLCB0aGUgZ2VuZXJpYworICogaG9sZC1vZmYgbWVjaGFuaXNtIHByb3ZpZGVkIGJ5IHRoZSBy
aW5nIG1hY3JvcykuIEJhY2tlbmRzIG11c3Qgc2V0CisgKiByZXFfZXZlbnQgYXBwcm9wcmlhdGVs
eSAoZS5nLiwgdXNpbmcgUklOR19GSU5BTF9DSEVDS19GT1JfUkVRVUVTVFMoKSkuCisgKgorICog
QmFjay0+ZnJvbnQgbm90aWZpY2F0aW9uczogV2hlbiBlbnF1ZXVpbmcgYSBuZXcgcmVzcG9uc2Us
IHNlbmRpbmcgYQorICogbm90aWZpY2F0aW9uIGNhbiBiZSBtYWRlIGNvbmRpdGlvbmFsIG9uIHJz
cF9ldmVudCAoaS5lLiwgdGhlIGdlbmVyaWMKKyAqIGhvbGQtb2ZmIG1lY2hhbmlzbSBwcm92aWRl
ZCBieSB0aGUgcmluZyBtYWNyb3MpLiBGcm9udGVuZHMgbXVzdCBzZXQKKyAqIHJzcF9ldmVudCBh
cHByb3ByaWF0ZWx5IChlLmcuLCB1c2luZyBSSU5HX0ZJTkFMX0NIRUNLX0ZPUl9SRVNQT05TRVMo
KSkuCisgKi8KKworLyoKKyAqIEZlYXR1cmUgYW5kIFBhcmFtZXRlciBOZWdvdGlhdGlvbgorICog
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisgKiBUaGUgdHdvIGhhbHZlcyBvZiBh
IFBhcmEtdmlydHVhbCBzb3VuZCBjYXJkIGRyaXZlciB1dGlsaXplIG5vZGVzIHdpdGhpbiB0aGUK
KyAqIFhlblN0b3JlIHRvIGNvbW11bmljYXRlIGNhcGFiaWxpdGllcyBhbmQgdG8gbmVnb3RpYXRl
IG9wZXJhdGluZyBwYXJhbWV0ZXJzLgorICogVGhpcyBzZWN0aW9uIGVudW1lcmF0ZXMgdGhlc2Ug
bm9kZXMgd2hpY2ggcmVzaWRlIGluIHRoZSByZXNwZWN0aXZlIGZyb250IGFuZAorICogYmFja2Vu
ZCBwb3J0aW9ucyBvZiB0aGUgWGVuU3RvcmUsIGZvbGxvd2luZyB0aGUgWGVuQnVzIGNvbnZlbnRp
b24uCisgKgorICogQWxsIGRhdGEgaW4gdGhlIFhlblN0b3JlIGlzIHN0b3JlZCBhcyBzdHJpbmdz
LiAgTm9kZXMgc3BlY2lmeWluZyBudW1lcmljCisgKiB2YWx1ZXMgYXJlIGVuY29kZWQgaW4gZGVj
aW1hbC4gIEludGVnZXIgdmFsdWUgcmFuZ2VzIGxpc3RlZCBiZWxvdyBhcmUKKyAqIGV4cHJlc3Nl
ZCBhcyBmaXhlZCBzaXplZCBpbnRlZ2VyIHR5cGVzIGNhcGFibGUgb2Ygc3RvcmluZyB0aGUgY29u
dmVyc2lvbgorICogb2YgYSBwcm9wZXJseSBmb3JtYXRlZCBub2RlIHN0cmluZywgd2l0aG91dCBs
b3NzIG9mIGluZm9ybWF0aW9uLgorICoKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgQmFja2VuZCBYZW5CdXMgTm9kZXMKKyAqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKgorICoKKyAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gQWRkcmVzc2lu
ZyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAqCisgKiBJbmRpY2VzIHVzZWQg
dG8gYWRkcmVzcyBmcm9udGVuZHMsIGRyaXZlciBpbnN0YW5jZXMsIGNhcmRzLAorICogZGV2aWNl
cyBhbmQgc3RyZWFtcy4KKyAqCisgKiBmcm9udGVuZF9pZAorICogICAgICBWYWx1ZXM6ICAgICAg
ICAgPHVpbnQ+CisgKgorICogICAgICBEb21haW4gSUQgb2YgdGhlIHNvdW5kIGZyb250ZW5kLgor
ICoKKyAqIGRydl9pZHgKKyAqICAgICAgVmFsdWVzOiAgICAgICAgIDx1aW50PgorICoKKyAqICAg
ICAgWmVybyBiYXNlZCBjb250aWd1b3VzIGluZGV4IG9mIHRoZSB2aXJ0dWFsaXplZCBzb3VuZCBk
cml2ZXIgaW5zdGFuY2UgaW4KKyAqICAgICAgdGhpcyBkb21haW4uIE11bHRpcGxlIFBWIGRyaXZl
cnMgYXJlIGFsbG93ZWQgaW4gdGhlIGRvbWFpbgorICogICAgICBhdCB0aGUgc2FtZSB0aW1lLgor
ICoKKyAqIGRldl9pZAorICogICAgICBWYWx1ZXM6ICAgICAgICAgPHVpbnQ+CisgKgorICogICAg
ICBVbmlxdWUgZGV2aWNlIElELgorICogICAgICBEb2Vzbid0IGhhdmUgdG8gYmUgemVybyBiYXNl
ZCBhbmQvb3IgdG8gYmUgY29udGlndW91cy4KKyAqCisgKiBzdHJlYW1faWR4CisgKiAgICAgIFZh
bHVlczogICAgICAgICA8dWludD4KKyAqCisgKiAgICAgIFplcm8gYmFzZWQgY29udGlndW91cyBp
bmRleCBvZiB0aGUgc3RyZWFtIG9mIHRoZSBkZXZpY2UuCisgKgorICogRXhhbXBsZSBmb3IgdGhl
IGZyb250ZW5kIHJ1bm5pbmcgaW4gZG9tYWluIDUsIGluc3RhbmNlIG9mIHRoZSBkcml2ZXIKKyAq
IGluIHRoZSBmcm9udCBpcyAwIChzaW5nbGUgb3IgZmlyc3QgUFYgZHJpdmVyKSwgZGV2aWNlIGlk
IDIsCisgKiBmaXJzdCBzdHJlYW0gKDApOgorICogL2xvY2FsL2RvbWFpbi88ZnJvbnRlbmRfaWQ+
L2RldmljZS92c25kLzxkcnZfaWR4Pi8KKyAqICAgICAgICAgZGV2aWNlLzxkZXZfaWQ+L3N0cmVh
bS88c3RyZWFtX2lkeD4vdHlwZSA9ICJwIgorICogL2xvY2FsL2RvbWFpbi81L2RldmljZS92c25k
LzAvZGV2aWNlLzIvc3RyZWFtLzAvdHlwZSA9ICJwIgorICoKKyAqLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLSBQQ00gc2V0dGluZ3MgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0KKyAqCisgKiBFdmVyeSB2aXJ0dWFsaXplZCBzb3VuZCBmcm9udGVuZCBoYXMgc2V0IG9mIGRl
dmljZXMgYW5kIHN0cmVhbXMsIGVhY2gKKyAqIGlzIGluZGl2aWR1YWxseSBjb25maWd1cmVkLiBQ
YXJ0IG9mIHRoZSBQQ00gY29uZmlndXJhdGlvbiBjYW4gYmUgZGVmaW5lZCBhdAorICogaGlnaGVy
IGxldmVsIGFuZCBiZSBmdWxseSBvciBwYXJ0aWFsbHkgcmUtdXNlZCBieSB0aGUgdW5kZXJseWlu
ZyBsYXllcnMuCisgKiBUaGVzZSBjb25maWd1cmF0aW9uIHZhbHVlcyBhcmU6CisgKiAgbyBudW1i
ZXIgb2YgY2hhbm5lbHMgKG1pbi9tYXgpCisgKiAgbyBzdXBwb3J0ZWQgc2FtcGxlIHJhdGVzCisg
KiAgbyBzdXBwb3J0ZWQgc2FtcGxlIGZvcm1hdHMuCisgKiBFLmcuIG9uZSBjYW4gZGVmaW5lIHRo
ZXNlIHZhbHVlcyBmb3IgdGhlIHdob2xlIGRyaXZlciwgZGV2aWNlIG9yIHN0cmVhbS4KKyAqIEV2
ZXJ5IHVuZGVybHlpbmcgbGF5ZXIgaW4gdHVybiBjYW4gcmUtZGVmaW5lIHNvbWUgb3IgYWxsIG9m
IHRoZW0gdG8gYmV0dGVyCisgKiBmaXQgaXRzIG5lZWRzLiBGb3IgZXhhbXBsZSwgZHJpdmVyIG1h
eSBkZWZpbmUgbnVtYmVyIG9mIGNoYW5uZWxzIHRvIGJlCisgKiBpbiBbMTsgOF0gcmFuZ2UsIGFu
ZCBzb21lIHBhcnRpY3VsYXIgc3RyZWFtIG1heSBiZSBsaW1pdGVkIHRvIFsxOyAyXSBvbmx5Lgor
ICogVGhlIHJ1bGUgaXMgdGhhdCB0aGUgdW5kZXJseWluZyBsYXllciBtdXN0IGJlIGEgc3Vic2V0
IG9mIHRoZSB1cHBlciBsYXllcgorICogcmFuZ2UuCisgKgorICogTm90ZTogaWYgYW55IG9mIHRo
ZSB2YWx1ZXMgYXJlIG5vdCBkZWZpbmVkIHRoZW4gUFYgZHJpdmVyIHNob3VsZCB1c2UKKyAqIGl0
cyBkZWZhdWx0IHZhbHVlcyBpbnN0ZWFkLgorICoKKyAqIGNoYW5uZWxzLW1pbgorICogICAgICBW
YWx1ZXM6ICAgICAgICAgPHVpbnQ+CisgKgorICogICAgICBUaGUgbWluaW11bSBhbW91bnQgb2Yg
Y2hhbm5lbHMgdGhhdCBpcyBzdXBwb3J0ZWQuCisgKiAgICAgIE11c3QgYmUgYXQgbGVhc3QgMS4g
SWYgbm90IGRlZmluZWQgdGhlbiB1c2UgZnJvbnRlbmQncyBkZWZhdWx0LgorICoKKyAqIGNoYW5u
ZWxzLW1heAorICogICAgICBWYWx1ZXM6ICAgICAgICAgPHVpbnQ+CisgKgorICogICAgICBUaGUg
bWF4aW11bSBhbW91bnQgb2YgY2hhbm5lbHMgdGhhdCBpcyBzdXBwb3J0ZWQuCisgKiAgICAgIE11
c3QgYmUgYXQgbGVhc3QgPGNoYW5uZWxzLW1pbj4uIElmIG5vdCBkZWZpbmVkIHRoZW4gdXNlIGZy
b250ZW5kJ3MKKyAqICAgICAgZGVmYXVsdC4KKyAqCisgKiBzYW1wbGUtcmF0ZXMKKyAqICAgICAg
VmFsdWVzOiAgICAgICAgIDxsaXN0IG9mIHVpbnRzPgorICoKKyAqICAgICAgTGlzdCBvZiBzdXBw
b3J0ZWQgc2FtcGxlIHJhdGVzIHNlcGFyYXRlZCBieSBYRU5TTkRfTElTVF9TRVBBUkFUT1IuCisg
KiAgICAgIElmIG5vdCBkZWZpbmVkIHRoZW4gdXNlIGZyb250ZW5kJ3MgZGVmYXVsdC4gU2FtcGxl
IHJhdGVzIGFyZSBleHByZXNzZWQKKyAqICAgICAgYXMgYSBsaXN0IG9mIGRlY2ltYWwgdmFsdWVz
IHcvbyBhbnkgb3JkZXJpbmcgcmVxdWlyZW1lbnQuCisgKgorICogc2FtcGxlLWZvcm1hdHMKKyAq
ICAgICAgVmFsdWVzOiAgICAgICAgIDxsaXN0IG9mIFhFTlNORF9QQ01fRk9STUFUX1hYWF9TVFI+
CisgKgorICogICAgICBMaXN0IG9mIHN1cHBvcnRlZCBzYW1wbGUgZm9ybWF0cyBzZXBhcmF0ZWQg
YnkgWEVOU05EX0xJU1RfU0VQQVJBVE9SLgorICogICAgICBJZiBub3QgZGVmaW5lZCB0aGVuIHVz
ZSBmcm9udGVuZCdzIGRlZmF1bHQuCisgKgorICogYnVmZmVyLXNpemUKKyAqICAgICAgVmFsdWVz
OiAgICAgICAgIDx1aW50PgorICoKKyAqICAgICAgVGhlIG1heGltdW0gc2l6ZSBpbiBvY3RldHMg
b2YgdGhlIGJ1ZmZlciB0byBhbGxvY2F0ZSBwZXIgc3RyZWFtLgorICoKKyAqIEV4YW1wbGUgY29u
ZmlndXJhdGlvbjoKKyAqCisgKiBEcml2ZXIgY29uZmlndXJhdGlvbiB1c2VkIGJ5IGFsbCBzdHJl
YW1zOgorICogL2xvY2FsL2RvbWFpbi81L2RldmljZS92c25kLzAvc2FtcGxlLWZvcm1hdHMgPSAi
czg7dTg7czE2X2xlO3MxNl9iZSIKKyAqIFN0cmVhbSBvdmVycmlkZXMgc2FtcGxlIHJhdGVzIHN1
cHBvcnRlZDoKKyAqIC9sb2NhbC9kb21haW4vNS9kZXZpY2UvdnNuZC8wL2RldmljZS8yL3N0cmVh
bS8wL3NhbXBsZS1yYXRlcyA9CisgKiAgICAgICAgIjgwMDA7MjIwNTA7NDQxMDA7NDgwMDAiCisg
KgorICotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBWaXJ0dWFsIHNvdW5kIGNhcmQgc2V0dGluZ3Mg
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAqIHNob3J0LW5hbWUKKyAqICAgICAgVmFsdWVz
OiAgICAgICAgIDxjaGFyWzMyXT4KKyAqCisgKiAgICAgIFNob3J0IG5hbWUgb2YgdGhlIHZpcnR1
YWwgc291bmQgY2FyZC4gT3B0aW9uYWwuCisgKgorICogbG9uZy1uYW1lCisgKiAgICAgIFZhbHVl
czogICAgICAgICA8Y2hhcls4MF0+CisgKgorICogICAgICBMb25nIG5hbWUgb2YgdGhlIHZpcnR1
YWwgc291bmQgY2FyZC4gT3B0aW9uYWwuCisgKgorICogRm9yIGV4YW1wbGUsCisgKiAvbG9jYWwv
ZG9tYWluLzUvZGV2aWNlL3ZzbmQvMC9zaG9ydC1uYW1lID0gIlZpcnR1YWwgYXVkaW8iCisgKiAv
bG9jYWwvZG9tYWluLzUvZGV2aWNlL3ZzbmQvMC9sb25nLW5hbWUgPQorICogICAgICAgICAiVmly
dHVhbCBhdWRpbyBhdCBjZW50ZXIgc3RhY2siCisgKgorICotLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLSBEZXZpY2Ugc2V0dGluZ3MgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K
KyAqIG5hbWUKKyAqICAgICAgVmFsdWVzOiAgICAgICAgIDxjaGFyWzgwXT4KKyAqCisgKiAgICAg
IE5hbWUgb2YgdGhlIHNvdW5kIGRldmljZSB3aXRoaW4gdGhlIHZpcnR1YWwgc291bmQgY2FyZC4g
T3B0aW9uYWwuCisgKgorICogRm9yIGV4YW1wbGUsCisgKiAvbG9jYWwvZG9tYWluLzUvZGV2aWNl
L3ZzbmQvMC9kZXZpY2UvMC9uYW1lID0gIkdlbmVyYWwgYW5hbG9nIgorICoKKyAqLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0gU3RyZWFtIHNldHRpbmdzIC0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0KKyAqCisgKiB0eXBlCisgKiAgICAgIFZhbHVlczogICAgICAgICAicCIsICJj
IgorICoKKyAqICAgICAgU3RyZWFtIHR5cGU6ICJwIiAtIHBsYXliYWNrIHN0cmVhbSwgImMiIC0g
Y2FwdHVyZSBzdHJlYW0KKyAqCisgKiAgICAgIElmIGJvdGggY2FwdHVyZSBhbmQgcGxheWJhY2sg
YXJlIG5lZWRlZCB0aGVuIHR3byBzdHJlYW1zIG5lZWQgdG8gYmUKKyAqICAgICAgZGVmaW5lZCB1
bmRlciB0aGUgc2FtZSBkZXZpY2UuIEZvciBleGFtcGxlLAorICogICAgICAvbG9jYWwvZG9tYWlu
LzUvZGV2aWNlL3ZzbmQvMC9kZXZpY2UvMC9zdHJlYW0vMC90eXBlID0gInAiCisgKiAgICAgIC9s
b2NhbC9kb21haW4vNS9kZXZpY2UvdnNuZC8wL2RldmljZS8wL3N0cmVhbS8xL3R5cGUgPSAiYyIK
KyAqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAg
IEZyb250ZW5kIFhlbkJ1cyBOb2RlcworICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKgorICotLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLSBSZXF1ZXN0IFRyYW5zcG9ydCBQYXJhbWV0ZXJzIC0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tCisgKgorICogVGhlc2UgYXJlIHBlciBzdHJlYW0uCisgKgorICogZXZl
bnQtY2hhbm5lbAorICogICAgICBWYWx1ZXM6ICAgICAgICAgPHVpbnQ+CisgKgorICogICAgICBU
aGUgaWRlbnRpZmllciBvZiB0aGUgWGVuIGV2ZW50IGNoYW5uZWwgdXNlZCB0byBzaWduYWwgYWN0
aXZpdHkKKyAqICAgICAgaW4gdGhlIHJpbmcgYnVmZmVyLgorICoKKyAqIHJpbmctcmVmCisgKiAg
ICAgIFZhbHVlczogICAgICAgICA8dWludD4KKyAqCisgKiAgICAgIFRoZSBYZW4gZ3JhbnQgcmVm
ZXJlbmNlIGdyYW50aW5nIHBlcm1pc3Npb24gZm9yIHRoZSBiYWNrZW5kIHRvIG1hcAorICogICAg
ICBhIHNvbGUgcGFnZSBpbiBhIHNpbmdsZSBwYWdlIHNpemVkIHJpbmcgYnVmZmVyLgorICoKKyAq
IGluZGV4CisgKiAgICAgIFZhbHVlczogICAgICAgICA8dWludD4KKyAqCisgKiAgICAgIEFmdGVy
IHN0cmVhbSBpbml0aWFsaXphdGlvbiBpdCBpcyBhc3NpZ25lZCBhIHVuaXF1ZSBJRCAod2l0aGlu
IHRoZSBmcm9udAorICogICAgICBkcml2ZXIpLCBzbyBldmVyeSBzdHJlYW0gb2YgdGhlIGZyb250
ZW5kIGNhbiBiZSBpZGVudGlmaWVkIGJ5IHRoZQorICogICAgICBiYWNrZW5kIGJ5IHRoaXMgSUQu
IFRoaXMgaXMgbm90IGVxdWFsIHRvIHN0cmVhbV9pZHggYXMgdGhlIGxhdGVyIGlzCisgKiAgICAg
IHplcm8gYmFzZWQgd2l0aGluIGEgZGV2aWNlLCBidXQgdGhpcyBpbmRleCBpcyBjb250aWd1b3Vz
IHdpdGhpbiB0aGUKKyAqICAgICAgZHJpdmVyLgorICovCisKKy8qCisgKiBTVEFURSBESUFHUkFN
UworICoKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFN0YXJ0dXAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqCisgKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioKKyAqCisgKiBUb29sIHN0YWNrIGNyZWF0ZXMgZnJvbnQgYW5kIGJh
Y2sgc3RhdGUgbm9kZXMgd2l0aCBpbml0aWFsIHN0YXRlCisgKiBYZW5idXNTdGF0ZUluaXRpYWxp
c2luZy4KKyAqIFRvb2wgc3RhY2sgY3JlYXRlcyBhbmQgc2V0cyB1cCBmcm9udGVuZCBzb3VuZCBj
b25maWd1cmF0aW9uIG5vZGVzIHBlciBkb21haW4uCisgKgorICogRnJvbnQgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIEJhY2sKKyAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PSAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisgKiBYZW5idXNT
dGF0ZUluaXRpYWxpc2luZyAgICAgICAgICAgICAgWGVuYnVzU3RhdGVJbml0aWFsaXNpbmcKKyAq
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbyBRdWVyeSBiYWNrZW5kIGRl
dmljZSBpZGVudGlmaWNhdGlvbgorICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGRhdGEuCisgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG8g
T3BlbiBhbmQgdmFsaWRhdGUgYmFja2VuZCBkZXZpY2UuCisgKiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWCisgKiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgWGVuYnVzU3RhdGVJbml0V2FpdAorICoKKyAqIG8gUXVl
cnkgZnJvbnRlbmQgY29uZmlndXJhdGlvbgorICogbyBBbGxvY2F0ZSBhbmQgaW5pdGlhbGl6ZQor
ICogICBldmVudCBjaGFubmVscyBwZXIgY29uZmlndXJlZAorICogICBwbGF5YmFjay9jYXB0dXJl
IHN0cmVhbS4KKyAqIG8gUHVibGlzaCB0cmFuc3BvcnQgcGFyYW1ldGVycworICogICB0aGF0IHdp
bGwgYmUgaW4gZWZmZWN0IGR1cmluZworICogICB0aGlzIGNvbm5lY3Rpb24uCisgKiAgICAgICAg
ICAgICAgfAorICogICAgICAgICAgICAgIHwKKyAqICAgICAgICAgICAgICBWCisgKiBYZW5idXNT
dGF0ZUluaXRpYWxpc2VkCisgKgorICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBvIFF1ZXJ5IGZyb250ZW5kIHRyYW5zcG9ydCBwYXJhbWV0ZXJzLgorICogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvIENvbm5lY3QgdG8gdGhlIGV2ZW50IGNoYW5u
ZWxzLgorICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB8CisgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHwKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgVgorICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFhlbmJ1
c1N0YXRlQ29ubmVjdGVkCisgKgorICogIG8gQ3JlYXRlIGFuZCBpbml0aWFsaXplIE9TCisgKiAg
dmlydHVhbCBzb3VuZCBkZXZpY2UgaW5zdGFuY2VzCisgKiAgYXMgcGVyIGNvbmZpZ3VyYXRpb24u
CisgKiAgICAgICAgICAgICAgfAorICogICAgICAgICAgICAgIHwKKyAqICAgICAgICAgICAgICBW
CisgKiBYZW5idXNTdGF0ZUNvbm5lY3RlZAorICoKKyAqICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBYZW5idXNTdGF0ZVVua25vd24KKyAqICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBYZW5idXNTdGF0ZUNsb3NlZAorICogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFhlbmJ1c1N0YXRlQ2xvc2luZworICogbyBSZW1vdmUgdmlydHVh
bCBzb3VuZCBkZXZpY2UKKyAqIG8gUmVtb3ZlIGV2ZW50IGNoYW5uZWxzCisgKiAgICAgICAgICAg
ICAgfAorICogICAgICAgICAgICAgIHwKKyAqICAgICAgICAgICAgICBWCisgKiBYZW5idXNTdGF0
ZUNsb3NlZAorICoKKyAqLworCisvKgorICogUENNIEZPUk1BVFMKKyAqCisgKiBYRU5TTkRfUENN
X0ZPUk1BVF88Zm9ybWF0PltfPGVuZGlhbj5dCisgKgorICogZm9ybWF0OiA8Uy9VL0Y+PGJpdHM+
IG9yIDxuYW1lPgorICogICAgIFMgLSBzaWduZWQsIFUgLSB1bnNpZ25lZCwgRiAtIGZsb2F0Cisg
KiAgICAgYml0cyAtIDgsIDE2LCAyNCwgMzIKKyAqICAgICBuYW1lIC0gTVVfTEFXLCBHU00sIGV0
Yy4KKyAqCisgKiBlbmRpYW46IDxMRS9CRT4sIG1heSBiZSBhYnNlbnQKKyAqICAgICBMRSAtIExp
dHRsZSBlbmRpYW4sIEJFIC0gQmlnIGVuZGlhbgorICovCisjZGVmaW5lIFhFTlNORF9QQ01fRk9S
TUFUX1M4ICAgICAgICAgICAgMAorI2RlZmluZSBYRU5TTkRfUENNX0ZPUk1BVF9VOCAgICAgICAg
ICAgIDEKKyNkZWZpbmUgWEVOU05EX1BDTV9GT1JNQVRfUzE2X0xFICAgICAgICAyCisjZGVmaW5l
IFhFTlNORF9QQ01fRk9STUFUX1MxNl9CRSAgICAgICAgMworI2RlZmluZSBYRU5TTkRfUENNX0ZP
Uk1BVF9VMTZfTEUgICAgICAgIDQKKyNkZWZpbmUgWEVOU05EX1BDTV9GT1JNQVRfVTE2X0JFICAg
ICAgICA1CisjZGVmaW5lIFhFTlNORF9QQ01fRk9STUFUX1MyNF9MRSAgICAgICAgNgorI2RlZmlu
ZSBYRU5TTkRfUENNX0ZPUk1BVF9TMjRfQkUgICAgICAgIDcKKyNkZWZpbmUgWEVOU05EX1BDTV9G
T1JNQVRfVTI0X0xFICAgICAgICA4CisjZGVmaW5lIFhFTlNORF9QQ01fRk9STUFUX1UyNF9CRSAg
ICAgICAgOQorI2RlZmluZSBYRU5TTkRfUENNX0ZPUk1BVF9TMzJfTEUgICAgICAgIDEwCisjZGVm
aW5lIFhFTlNORF9QQ01fRk9STUFUX1MzMl9CRSAgICAgICAgMTEKKyNkZWZpbmUgWEVOU05EX1BD
TV9GT1JNQVRfVTMyX0xFICAgICAgICAxMgorI2RlZmluZSBYRU5TTkRfUENNX0ZPUk1BVF9VMzJf
QkUgICAgICAgIDEzCisjZGVmaW5lIFhFTlNORF9QQ01fRk9STUFUX0YzMl9MRSAgICAgICAgMTQg
LyogNC1ieXRlIGZsb2F0LCBJRUVFLTc1NCAzMi1iaXQsICovCisjZGVmaW5lIFhFTlNORF9QQ01f
Rk9STUFUX0YzMl9CRSAgICAgICAgMTUgLyogcmFuZ2UgLTEuMCB0byAxLjAgICAgICAgICAgICAg
ICovCisjZGVmaW5lIFhFTlNORF9QQ01fRk9STUFUX0Y2NF9MRSAgICAgICAgMTYgLyogOC1ieXRl
IGZsb2F0LCBJRUVFLTc1NCA2NC1iaXQsICovCisjZGVmaW5lIFhFTlNORF9QQ01fRk9STUFUX0Y2
NF9CRSAgICAgICAgMTcgLyogcmFuZ2UgLTEuMCB0byAxLjAgICAgICAgICAgICAgICovCisjZGVm
aW5lIFhFTlNORF9QQ01fRk9STUFUX0lFQzk1OF9TVUJGUkFNRV9MRSAxOAorI2RlZmluZSBYRU5T
TkRfUENNX0ZPUk1BVF9JRUM5NThfU1VCRlJBTUVfQkUgMTkKKyNkZWZpbmUgWEVOU05EX1BDTV9G
T1JNQVRfTVVfTEFXICAgICAgICAyMAorI2RlZmluZSBYRU5TTkRfUENNX0ZPUk1BVF9BX0xBVyAg
ICAgICAgIDIxCisjZGVmaW5lIFhFTlNORF9QQ01fRk9STUFUX0lNQV9BRFBDTSAgICAgMjIKKyNk
ZWZpbmUgWEVOU05EX1BDTV9GT1JNQVRfTVBFRyAgICAgICAgICAyMworI2RlZmluZSBYRU5TTkRf
UENNX0ZPUk1BVF9HU00gICAgICAgICAgIDI0CisKKy8qCisgKiBSRVFVRVNUIENPREVTLgorICov
CisjZGVmaW5lIFhFTlNORF9PUF9PUEVOICAgICAgICAgICAgICAgICAgMAorI2RlZmluZSBYRU5T
TkRfT1BfQ0xPU0UgICAgICAgICAgICAgICAgIDEKKyNkZWZpbmUgWEVOU05EX09QX1JFQUQgICAg
ICAgICAgICAgICAgICAyCisjZGVmaW5lIFhFTlNORF9PUF9XUklURSAgICAgICAgICAgICAgICAg
MworI2RlZmluZSBYRU5TTkRfT1BfU0VUX1ZPTFVNRSAgICAgICAgICAgIDQKKyNkZWZpbmUgWEVO
U05EX09QX0dFVF9WT0xVTUUgICAgICAgICAgICA1CisjZGVmaW5lIFhFTlNORF9PUF9NVVRFICAg
ICAgICAgICAgICAgICAgNgorI2RlZmluZSBYRU5TTkRfT1BfVU5NVVRFICAgICAgICAgICAgICAg
IDcKKworLyoKKyAqIFhFTlNUT1JFIEZJRUxEIEFORCBQQVRIIE5BTUUgU1RSSU5HUywgSEVMUEVS
Uy4KKyAqLworI2RlZmluZSBYRU5TTkRfRFJJVkVSX05BTUUgICAgICAgICAgICAgICJ2c25kIgor
CisjZGVmaW5lIFhFTlNORF9MSVNUX1NFUEFSQVRPUiAgICAgICAgICAgIjsiCisvKiBQYXRoIGVu
dHJpZXMgKi8KKyNkZWZpbmUgWEVOU05EX1BBVEhfREVWSUNFICAgICAgICAgICAgICAiZGV2aWNl
IgorI2RlZmluZSBYRU5TTkRfUEFUSF9TVFJFQU0gICAgICAgICAgICAgICJzdHJlYW0iCisvKiBG
aWVsZCBuYW1lcyAqLworI2RlZmluZSBYRU5TTkRfRklFTERfVkNBUkRfU0hPUlRfTkFNRSAgICJz
aG9ydC1uYW1lIgorI2RlZmluZSBYRU5TTkRfRklFTERfVkNBUkRfTE9OR19OQU1FICAgICJsb25n
LW5hbWUiCisjZGVmaW5lIFhFTlNORF9GSUVMRF9SSU5HX1JFRiAgICAgICAgICAgInJpbmctcmVm
IgorI2RlZmluZSBYRU5TTkRfRklFTERfRVZUX0NITkwgICAgICAgICAgICJldmVudC1jaGFubmVs
IgorI2RlZmluZSBYRU5TTkRfRklFTERfREVWSUNFX05BTUUgICAgICAgICJuYW1lIgorI2RlZmlu
ZSBYRU5TTkRfRklFTERfVFlQRSAgICAgICAgICAgICAgICJ0eXBlIgorI2RlZmluZSBYRU5TTkRf
RklFTERfU1RSRUFNX0lOREVYICAgICAgICJpbmRleCIKKyNkZWZpbmUgWEVOU05EX0ZJRUxEX0NI
QU5ORUxTX01JTiAgICAgICAiY2hhbm5lbHMtbWluIgorI2RlZmluZSBYRU5TTkRfRklFTERfQ0hB
Tk5FTFNfTUFYICAgICAgICJjaGFubmVscy1tYXgiCisjZGVmaW5lIFhFTlNORF9GSUVMRF9TQU1Q
TEVfUkFURVMgICAgICAgInNhbXBsZS1yYXRlcyIKKyNkZWZpbmUgWEVOU05EX0ZJRUxEX1NBTVBM
RV9GT1JNQVRTICAgICAic2FtcGxlLWZvcm1hdHMiCisjZGVmaW5lIFhFTlNORF9GSUVMRF9CVUZG
RVJfU0laRSAgICAgICAgImJ1ZmZlci1zaXplIgorCisvKiBTdHJlYW0gdHlwZSBmaWVsZCB2YWx1
ZXMuICovCisjZGVmaW5lIFhFTlNORF9TVFJFQU1fVFlQRV9QTEFZQkFDSyAgICAgInAiCisjZGVm
aW5lIFhFTlNORF9TVFJFQU1fVFlQRV9DQVBUVVJFICAgICAgImMiCisvKiBTYW1wbGUgcmF0ZSBt
YXggc3RyaW5nIGxlbmd0aCAqLworI2RlZmluZSBYRU5TTkRfU0FNUExFX1JBVEVfTUFYX0xFTiAg
ICAgIDYKKy8qIFNhbXBsZSBmb3JtYXQgZmllbGQgdmFsdWVzICovCisjZGVmaW5lIFhFTlNORF9T
QU1QTEVfRk9STUFUX01BWF9MRU4gICAgMjQKKworI2RlZmluZSBYRU5TTkRfUENNX0ZPUk1BVF9T
OF9TVFIgICAgICAgICJzOCIKKyNkZWZpbmUgWEVOU05EX1BDTV9GT1JNQVRfVThfU1RSICAgICAg
ICAidTgiCisjZGVmaW5lIFhFTlNORF9QQ01fRk9STUFUX1MxNl9MRV9TVFIgICAgInMxNl9sZSIK
KyNkZWZpbmUgWEVOU05EX1BDTV9GT1JNQVRfUzE2X0JFX1NUUiAgICAiczE2X2JlIgorI2RlZmlu
ZSBYRU5TTkRfUENNX0ZPUk1BVF9VMTZfTEVfU1RSICAgICJ1MTZfbGUiCisjZGVmaW5lIFhFTlNO
RF9QQ01fRk9STUFUX1UxNl9CRV9TVFIgICAgInUxNl9iZSIKKyNkZWZpbmUgWEVOU05EX1BDTV9G
T1JNQVRfUzI0X0xFX1NUUiAgICAiczI0X2xlIgorI2RlZmluZSBYRU5TTkRfUENNX0ZPUk1BVF9T
MjRfQkVfU1RSICAgICJzMjRfYmUiCisjZGVmaW5lIFhFTlNORF9QQ01fRk9STUFUX1UyNF9MRV9T
VFIgICAgInUyNF9sZSIKKyNkZWZpbmUgWEVOU05EX1BDTV9GT1JNQVRfVTI0X0JFX1NUUiAgICAi
dTI0X2JlIgorI2RlZmluZSBYRU5TTkRfUENNX0ZPUk1BVF9TMzJfTEVfU1RSICAgICJzMzJfbGUi
CisjZGVmaW5lIFhFTlNORF9QQ01fRk9STUFUX1MzMl9CRV9TVFIgICAgInMzMl9iZSIKKyNkZWZp
bmUgWEVOU05EX1BDTV9GT1JNQVRfVTMyX0xFX1NUUiAgICAidTMyX2xlIgorI2RlZmluZSBYRU5T
TkRfUENNX0ZPUk1BVF9VMzJfQkVfU1RSICAgICJ1MzJfYmUiCisjZGVmaW5lIFhFTlNORF9QQ01f
Rk9STUFUX0YzMl9MRV9TVFIgICAgImZsb2F0X2xlIgorI2RlZmluZSBYRU5TTkRfUENNX0ZPUk1B
VF9GMzJfQkVfU1RSICAgICJmbG9hdF9iZSIKKyNkZWZpbmUgWEVOU05EX1BDTV9GT1JNQVRfRjY0
X0xFX1NUUiAgICAiZmxvYXQ2NF9sZSIKKyNkZWZpbmUgWEVOU05EX1BDTV9GT1JNQVRfRjY0X0JF
X1NUUiAgICAiZmxvYXQ2NF9iZSIKKyNkZWZpbmUgWEVOU05EX1BDTV9GT1JNQVRfSUVDOTU4X1NV
QkZSQU1FX0xFX1NUUiAiaWVjOTU4X3N1YmZyYW1lX2xlIgorI2RlZmluZSBYRU5TTkRfUENNX0ZP
Uk1BVF9JRUM5NThfU1VCRlJBTUVfQkVfU1RSICJpZWM5NThfc3ViZnJhbWVfYmUiCisjZGVmaW5l
IFhFTlNORF9QQ01fRk9STUFUX01VX0xBV19TVFIgICAgIm11X2xhdyIKKyNkZWZpbmUgWEVOU05E
X1BDTV9GT1JNQVRfQV9MQVdfU1RSICAgICAiYV9sYXciCisjZGVmaW5lIFhFTlNORF9QQ01fRk9S
TUFUX0lNQV9BRFBDTV9TVFIgImltYV9hZHBjbSIKKyNkZWZpbmUgWEVOU05EX1BDTV9GT1JNQVRf
TVBFR19TVFIgICAgICAibXBlZyIKKyNkZWZpbmUgWEVOU05EX1BDTV9GT1JNQVRfR1NNX1NUUiAg
ICAgICAiZ3NtIgorCisvKgorICogU1RBVFVTIFJFVFVSTiBDT0RFUy4KKyAqLworLyogT3BlcmF0
aW9uIG5vdCBzdXBwb3J0ZWQuICovCisjZGVmaW5lIFhFTlNORF9SU1BfTk9UU1VQUCAgICAgICAg
ICAgICAgKC0yKQorLyogT3BlcmF0aW9uIGZhaWxlZCBmb3Igc29tZSB1bnNwZWNpZmllZCByZWFz
b24gKGUuIGcuIC1FSU8pLiAqLworI2RlZmluZSBYRU5TTkRfUlNQX0VSUk9SICAgICAgICAgICAg
ICAgICgtMSkKKy8qIE9wZXJhdGlvbiBjb21wbGV0ZWQgc3VjY2Vzc2Z1bGx5LiAqLworI2RlZmlu
ZSBYRU5TTkRfUlNQX09LQVkgICAgICAgICAgICAgICAgIDAKKworLyoKKyAqIEFzc3VtcHRpb25z
OgorICogICBvIHVzYWdlIG9mIGdyYW50IHJlZmVyZW5jZSAwIGFzIGludmFsaWQgZ3JhbnQgcmVm
ZXJlbmNlOgorICogICAgIGdyYW50IHJlZmVyZW5jZSAwIGlzIHZhbGlkLCBidXQgbmV2ZXIgZXhw
b3NlZCB0byBhIFBWIGRyaXZlciwKKyAqICAgICBiZWNhdXNlIG9mIHRoZSBmYWN0IGl0IGlzIGFs
cmVhZHkgaW4gdXNlL3Jlc2VydmVkIGJ5IHRoZSBQViBjb25zb2xlLgorICogICBvIGFsbCByZWZl
cmVuY2VzIGluIHRoaXMgZG9jdW1lbnQgdG8gcGFnZSBzaXplcyBtdXN0IGJlIHRyZWF0ZWQKKyAq
ICAgICBhcyBwYWdlcyBvZiBzaXplIFhFTl9QQUdFX1NJWkUgdW5sZXNzICBvdGhlcndpc2Ugbm90
ZWQuCisgKgorICogRGVzY3JpcHRpb24gb2YgdGhlIHByb3RvY29sIGJldHdlZW4gZnJvbnRlbmQg
YW5kIGJhY2tlbmQgZHJpdmVyLgorICoKKyAqIFRoZSB0d28gaGFsdmVzIG9mIGEgUGFyYS12aXJ0
dWFsIHNvdW5kIGRyaXZlciBjb21tdW5pY2F0ZSB3aXRoCisgKiBlYWNoIG90aGVyIHVzaW5nIGEg
c2hhcmVkIHBhZ2UgYW5kIGFuIGV2ZW50IGNoYW5uZWwuCisgKiBTaGFyZWQgcGFnZSBjb250YWlu
cyBhIHJpbmcgd2l0aCByZXF1ZXN0L3Jlc3BvbnNlIHBhY2tldHMuCisgKgorICogQWxsIHJlc2Vy
dmVkIGZpZWxkcyBpbiB0aGUgc3RydWN0dXJlcyBiZWxvdyBtdXN0IGJlIDAuCisgKgorICogQWxs
IHJlcXVlc3QgcGFja2V0cyBoYXZlIHRoZSBzYW1lIGxlbmd0aCAoMzIgb2N0ZXRzKQorICogQWxs
IHJlcXVlc3QgcGFja2V0cyBoYXZlIGNvbW1vbiBoZWFkZXI6CisgKiAgICAgICAgICAwICAgICAg
ICAgICAgICAgICAxICAgICAgICAgICAgICAgICAgMiAgICAgICAgICAgICAgICAzICAgICAgICBv
Y3RldAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t
LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgaWQgICAgICAg
ICAgICAgICAgfCAgICBvcGVyYXRpb24gICAgfCAgICAgc3RyZWFtX2lkeCAgfAorICogKy0tLS0t
LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t
LS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0t
LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICog
ICBpZCAtIHVpbnQxNl90LCBwcml2YXRlIGd1ZXN0IHZhbHVlLCBlY2hvZWQgaW4gcmVzcG9uc2UK
KyAqICAgb3BlcmF0aW9uIC0gdWludDhfdCwgb3BlcmF0aW9uIGNvZGUKKyAqICAgc3RyZWFtX2lk
eCAtIHVpbnQ4X3QsIGluZGV4IG9mIHRoZSBzdHJlYW0gKCJzdHJlYW1zX2lkeCIgWGVuU3RvcmUg
ZW50cnkKKyAqICAgICBvZiB0aGUgc3RyZWFtKQorICoKKyAqCisgKiBSZXF1ZXN0IG9wZW4gLSBv
cGVuIGEgUENNIHN0cmVhbSBmb3IgcGxheWJhY2sgb3IgY2FwdHVyZToKKyAqICAgICAgICAgIDAg
ICAgICAgICAgICAgICAgIDEgICAgICAgICAgICAgICAgICAyICAgICAgICAgICAgICAgIDMgICAg
ICAgIG9jdGV0CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t
LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAgICAgICAgICBpZCAg
ICAgICAgICAgICAgICB8IFhFTlNORF9PUF9PUEVOICB8ICAgICBzdHJlYW1faWR4ICB8CisgKiAr
LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0t
LS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNl
cnZlZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgKiArLS0tLS0tLS0tLS0tLS0t
LS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0r
CisgKiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwY21fcmF0ZSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB8CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t
LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICBwY21fZm9y
bWF0ICAgICB8ICBwY21fY2hhbm5lbHMgICB8ICAgICAgICAgICAgIHJlc2VydmVkICAgICAgICAg
ICAgICB8CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t
LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGJ1ZmZlcl9zeiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgKiArLS0t
LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t
LS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAgICAgICAgICAgICAgICAgIGdyZWZfZGlyZWN0b3J5
X3N0YXJ0ICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgKiArLS0tLS0tLS0tLS0tLS0tLS0r
LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisg
KiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc2VydmVkICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB8CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t
LS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8L1wvXC9cL1wvXC9c
L1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wv
XC98CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t
LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHJlc2VydmVkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgKiArLS0tLS0t
LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t
LS0tLS0tLS0rCisgKgorICogcGNtX3JhdGUgLSB1aW50MzJfdCwgc3RyZWFtIGRhdGEgcmF0ZSwg
SHoKKyAqIHBjbV9mb3JtYXQgLSB1aW50OF90LCBYRU5TTkRfUENNX0ZPUk1BVF9YWFggdmFsdWUK
KyAqIHBjbV9jaGFubmVscyAtIHVpbnQ4X3QsIG51bWJlciBvZiBjaGFubmVscyBvZiB0aGlzIHN0
cmVhbQorICogYnVmZmVyX3N6IC0gdWludDMyX3QsIGJ1ZmZlciBzaXplIHRvIGJlIGFsbG9jYXRl
ZCBpbiBvY3RldHMKKyAqIGdyZWZfZGlyZWN0b3J5X3N0YXJ0IC0gZ3JhbnRfcmVmX3QsIGEgcmVm
ZXJlbmNlIHRvIHRoZSBmaXJzdCBzaGFyZWQgcGFnZQorICogICBkZXNjcmliaW5nIHNoYXJlZCBi
dWZmZXIgcmVmZXJlbmNlcy4gQXQgbGVhc3Qgb25lIHBhZ2UgZXhpc3RzLiBJZiBzaGFyZWQKKyAq
ICAgYnVmZmVyIHNpemUgZXhjZWVkcyB3aGF0IGNhbiBiZSBhZGRyZXNzZWQgYnkgdGhpcyBzaW5n
bGUgcGFnZSwgdGhlbgorICogICByZWZlcmVuY2UgdG8gdGhlIG5leHQgcGFnZSBtdXN0IGJlIHN1
cHBsaWVkIChzZWUgZ3JlZl9kaXJfbmV4dF9wYWdlIGJlbG93KQorICovCisKK3N0cnVjdCB4ZW5z
bmRfb3Blbl9yZXEgeworICAgIHVpbnQzMl90IHBjbV9yYXRlOyAvKiBpbiBIeiAqLworICAgIHVp
bnQ4X3QgcGNtX2Zvcm1hdDsKKyAgICB1aW50OF90IHBjbV9jaGFubmVsczsKKyAgICB1aW50MTZf
dCByZXNlcnZlZDsKKyAgICB1aW50MzJfdCBidWZmZXJfc3o7CisgICAgZ3JhbnRfcmVmX3QgZ3Jl
Zl9kaXJlY3Rvcnlfc3RhcnQ7Cit9OworCisvKgorICogU2hhcmVkIHBhZ2UgZm9yIFhFTlNORF9P
UF9PUEVOIGJ1ZmZlciBkZXNjcmlwdG9yIChncmVmX2RpcmVjdG9yeSBpbiB0aGUKKyAqICAgcmVx
dWVzdCkgZW1wbG95cyBhIGxpc3Qgb2YgcGFnZXMsIGRlc2NyaWJpbmcgYWxsIHBhZ2VzIG9mIHRo
ZSBzaGFyZWQgZGF0YQorICogICBidWZmZXI6CisgKiAgICAgICAgICAwICAgICAgICAgICAgICAg
ICAxICAgICAgICAgICAgICAgICAgMiAgICAgICAgICAgICAgICAzICAgICAgICBvY3RldAorICog
Ky0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0t
LS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgZ3JlZl9kaXJf
bmV4dF9wYWdlICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0t
LS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t
KworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ3JlZlswXSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t
LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfC9cL1wvXC9c
L1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wv
XC9cL1wvfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t
LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgZ3JlZltpXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0t
LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t
LS0tLS0tLS0tLS0tKworICogfC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9c
L1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvfAorICogKy0tLS0tLS0tLS0tLS0tLS0t
Ky0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKwor
ICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ3JlZltOIC0xXSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t
LS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICoKKyAqIGdyZWZfZGly
X25leHRfcGFnZSAtIGdyYW50X3JlZl90LCByZWZlcmVuY2UgdG8gdGhlIG5leHQgcGFnZSBkZXNj
cmliaW5nCisgKiAgIHBhZ2UgZGlyZWN0b3J5LiBNdXN0IGJlIDAgaWYgbm8gbW9yZSBwYWdlcyBp
biB0aGUgbGlzdC4KKyAqIGdyZWZbaV0gLSBncmFudF9yZWZfdCwgcmVmZXJlbmNlIHRvIGEgc2hh
cmVkIHBhZ2Ugb2YgdGhlIGJ1ZmZlcgorICogICBhbGxvY2F0ZWQgYXQgWEVOU05EX09QX09QRU4K
KyAqCisgKiBOdW1iZXIgb2YgZ3JhbnRfcmVmX3QgZW50cmllcyBpbiB0aGUgd2hvbGUgcGFnZSBk
aXJlY3RvcnkgaXMgbm90CisgKiBwYXNzZWQsIGJ1dCBpbnN0ZWFkIGNhbiBiZSBjYWxjdWxhdGVk
IGFzOgorICogICBudW1fZ3JlZnNfdG90YWwgPSAoWEVOU05EX09QX09QRU4uYnVmZmVyX3N6ICsg
WEVOX1BBR0VfU0laRSAtIDEpIC8KKyAqICAgICAgIFhFTl9QQUdFX1NJWkUKKyAqLworCitzdHJ1
Y3QgeGVuc25kX3BhZ2VfZGlyZWN0b3J5IHsKKyAgICBncmFudF9yZWZfdCBncmVmX2Rpcl9uZXh0
X3BhZ2U7CisgICAgZ3JhbnRfcmVmX3QgZ3JlZlsxXTsgLyogVmFyaWFibGUgbGVuZ3RoICovCit9
OworCisvKgorICogIFJlcXVlc3QgY2xvc2UgLSBjbG9zZSBhbiBvcGVuZWQgcGNtIHN0cmVhbToK
KyAqICAgICAgICAgIDAgICAgICAgICAgICAgICAgIDEgICAgICAgICAgICAgICAgICAyICAgICAg
ICAgICAgICAgIDMgICAgICAgIG9jdGV0CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t
LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAg
ICAgICAgICAgICBpZCAgICAgICAgICAgICAgICB8IFhFTlNORF9PUF9DTE9TRSB8ICAgICBzdHJl
YW1faWR4ICB8CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t
LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHJlc2VydmVkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgKiAr
LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0t
LS0tLS0tLS0tLS0tLS0rCisgKiB8L1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9c
L1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC98CisgKiArLS0tLS0tLS0tLS0tLS0t
LS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0r
CisgKiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc2VydmVkICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB8CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t
LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKi8KKworLyoKKyAq
IFJlcXVlc3QgcmVhZC93cml0ZSAtIHVzZWQgZm9yIHJlYWQgKGZvciBjYXB0dXJlKSBvciB3cml0
ZSAoZm9yIHBsYXliYWNrKToKKyAqICAgICAgICAgIDAgICAgICAgICAgICAgICAgIDEgICAgICAg
ICAgICAgICAgICAyICAgICAgICAgICAgICAgIDMgICAgICAgIG9jdGV0CisgKiArLS0tLS0tLS0t
LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t
LS0tLS0rCisgKiB8ICAgICAgICAgICAgICAgICBpZCAgICAgICAgICAgICAgICB8ICAgIG9wZXJh
dGlvbiAgICB8ICAgICBzdHJlYW1faWR4ICB8CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t
LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc2VydmVkICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB8CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0t
LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBvZmZzZXQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cisg
KiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0r
LS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBs
ZW5ndGggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgKiArLS0tLS0tLS0tLS0t
LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t
LS0rCisgKiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc2VydmVkICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB8CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t
LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8L1wvXC9c
L1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wv
XC9cL1wvXC98CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t
LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHJlc2VydmVkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgKiAr
LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0t
LS0tLS0tLS0tLS0tLS0rCisgKgorICogb3BlcmF0aW9uIC0gWEVOU05EX09QX1JFQUQgZm9yIHJl
YWQgb3IgWEVOU05EX09QX1dSSVRFIGZvciB3cml0ZQorICogb2Zmc2V0IC0gdWludDMyX3QsIHJl
YWQgb3Igd3JpdGUgZGF0YSBvZmZzZXQgd2l0aGluIHRoZSBzaGFyZWQgYnVmZmVyCisgKiAgIHBh
c3NlZCB3aXRoIFhFTlNORF9PUF9PUEVOIHJlcXVlc3QKKyAqIGxlbmd0aCAtIHVpbnQzMl90LCBy
ZWFkIG9yIHdyaXRlIGRhdGEgbGVuZ3RoCisgKi8KKworc3RydWN0IHhlbnNuZF9yd19yZXEgewor
ICAgIHVpbnQzMl90IG9mZnNldDsKKyAgICB1aW50MzJfdCBsZW47Cit9OworCisvKgorICogUmVx
dWVzdCBzZXQvZ2V0IHZvbHVtZSAtIHNldC9nZXQgY2hhbm5lbHMnIHZvbHVtZSBvZiB0aGUgc3Ry
ZWFtIGdpdmVuOgorICogICAgICAgICAgMCAgICAgICAgICAgICAgICAgMSAgICAgICAgICAgICAg
ICAgIDIgICAgICAgICAgICAgICAgMyAgICAgICAgb2N0ZXQKKyAqICstLS0tLS0tLS0tLS0tLS0t
LSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsK
KyAqIHwgICAgICAgICAgICAgICAgIGlkICAgICAgICAgICAgICAgIHwgICAgb3BlcmF0aW9uICAg
IHwgICAgIHN0cmVhbV9pZHggIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t
LS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t
LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wv
XC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL3wKKyAqICstLS0t
LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t
LS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSst
LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAq
CisgKiBvcGVyYXRpb24gLSBYRU5TTkRfT1BfU0VUX1ZPTFVNRSBmb3Igdm9sdW1lIHNldAorICog
ICBvciBYRU5TTkRfT1BfR0VUX1ZPTFVNRSBmb3Igdm9sdW1lIGdldAorICogQnVmZmVyIHBhc3Nl
ZCB3aXRoIFhFTlNORF9PUF9PUEVOIGlzIHVzZWQgdG8gZXhjaGFuZ2Ugdm9sdW1lCisgKiB2YWx1
ZXM6CisgKgorICogICAgICAgICAgMCAgICAgICAgICAgICAgICAgMSAgICAgICAgICAgICAgICAg
IDIgICAgICAgICAgICAgICAgMyAgICAgICAgb2N0ZXQKKyAqICstLS0tLS0tLS0tLS0tLS0tLSst
LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAq
IHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhbm5lbFswXSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t
LSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqICsvXC9cL1wvXC9cL1wv
XC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9c
L3wKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t
LS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgY2hhbm5lbFtpXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0t
LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t
LS0tLS0tLSsKKyAqICsvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wv
XC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL3wKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0t
LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwg
ICAgICAgICAgICAgICAgY2hhbm5lbFtYRU5TTkRfT1BfT1BFTi5wY21fY2hhbm5lbHMgLSAxXSAg
ICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSst
LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqCisgKiBjaGFubmVsW2ldIC0g
c2ludDMyX3QsIHZvbHVtZSBvZiBpLXRoIGNoYW5uZWwKKyAqIFZvbHVtZSBpcyBleHByZXNzZWQg
YXMgYSBzaWduZWQgdmFsdWUgaW4gc3RlcHMgb2YgMC4wMDEgZEIsCisgKiB3aGlsZSAwIGJlaW5n
IDAgZEIuCisgKi8KKworLyoKKyAqIFJlcXVlc3QgbXV0ZS91bm11dGUgLSBtdXRlL3VubXV0ZSBz
dHJlYW06CisgKiAgICAgICAgICAwICAgICAgICAgICAgICAgICAxICAgICAgICAgICAgICAgICAg
MiAgICAgICAgICAgICAgICAzICAgICAgICBvY3RldAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0t
LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICog
fCAgICAgICAgICAgICAgICAgaWQgICAgICAgICAgICAgICAgfCAgICBvcGVyYXRpb24gICAgfCAg
ICAgc3RyZWFtX2lkeCAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t
Ky0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICByZXNlcnZlZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
fAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t
LS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wv
XC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvfAorICogKy0tLS0tLS0t
LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t
LS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t
LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICoKKyAq
IG9wZXJhdGlvbiAtIFhFTlNORF9PUF9NVVRFIGZvciBtdXRlIG9yIFhFTlNORF9PUF9VTk1VVEUg
Zm9yIHVubXV0ZQorICogQnVmZmVyIHBhc3NlZCB3aXRoIFhFTlNORF9PUF9PUEVOIGlzIHVzZWQg
dG8gZXhjaGFuZ2UgbXV0ZS91bm11dGUKKyAqIHZhbHVlczoKKyAqCisgKiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBvY3RldAorICogKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBjaGFubmVsWzBdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tKworICogKy9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9c
L1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvfAorICogKy0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwor
ICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFubmVsW2ldICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICogKy9cL1wvXC9cL1wv
XC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9c
L1wvfAorICogKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICBjaGFubmVsW1hF
TlNORF9PUF9PUEVOLnBjbV9jaGFubmVscyAtIDFdICAgICAgICAgICAgICAgfAorICogKy0tLS0t
LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t
LS0tLS0tLS0tKworICoKKyAqIGNoYW5uZWxbaV0gLSB1aW50OF90LCBub24temVybyBpZiBpLXRo
IGNoYW5uZWwgbmVlZHMgdG8gYmUgbXV0ZWQvdW5tdXRlZAorICovCisKKy8qCisgKiBBbGwgcmVz
cG9uc2UgcGFja2V0cyBoYXZlIHRoZSBzYW1lIGxlbmd0aCAoMzIgb2N0ZXRzKQorICoKKyAqIFJl
c3BvbnNlIGZvciBhbGwgcmVxdWVzdHM6CisgKiAgICAgICAgICAwICAgICAgICAgICAgICAgICAx
ICAgICAgICAgICAgICAgICAgMiAgICAgICAgICAgICAgICAzICAgICAgICBvY3RldAorICogKy0t
LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t
LS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgaWQgICAgICAgICAgICAgICAgfCAg
ICBvcGVyYXRpb24gICAgfCAgICAgc3RyZWFtX2lkeCAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0t
Ky0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKwor
ICogfCAgICAgIHN0YXR1cyAgICAgfCAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCAgICAg
ICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t
LS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t
LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9c
L1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvfAorICogKy0tLS0t
LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t
LS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0t
LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICoK
KyAqIGlkIC0gdWludDE2X3QsIGNvcGllZCBmcm9tIHRoZSByZXF1ZXN0CisgKiBzdHJlYW1faWR4
IC0gdWludDhfdCwgY29waWVkIGZyb20gcmVxdWVzdAorICogb3BlcmF0aW9uIC0gdWludDhfdCwg
WEVOU05EX09QXyogLSBjb3BpZWQgZnJvbSByZXF1ZXN0CisgKiBzdGF0dXMgLSBpbnQ4X3QsIHJl
c3BvbnNlIHN0YXR1cyAoWEVOU05EX1JTUF8qKQorICovCisKK3N0cnVjdCB4ZW5zbmRfcmVxIHsK
KyAgICB1aW50MTZfdCBpZDsKKyAgICB1aW50OF90IG9wZXJhdGlvbjsKKyAgICB1aW50OF90IHN0
cmVhbV9pZHg7CisgICAgdWludDMyX3QgcmVzZXJ2ZWQ7CisgICAgdW5pb24geworICAgICAgICBz
dHJ1Y3QgeGVuc25kX29wZW5fcmVxIG9wZW47CisgICAgICAgIHN0cnVjdCB4ZW5zbmRfcndfcmVx
IHJ3OworICAgICAgICB1aW50OF90IHJlc2VydmVkWzI0XTsKKyAgICB9IG9wOworfTsKKworc3Ry
dWN0IHhlbnNuZF9yZXNwIHsKKyAgICB1aW50MTZfdCBpZDsKKyAgICB1aW50OF90IG9wZXJhdGlv
bjsKKyAgICB1aW50OF90IHN0cmVhbV9pZHg7CisgICAgaW50OF90IHN0YXR1czsKKyAgICB1aW50
OF90IHJlc2VydmVkWzI3XTsKK307CisKK0RFRklORV9SSU5HX1RZUEVTKHhlbl9zbmRpZiwgc3Ry
dWN0IHhlbnNuZF9yZXEsIHN0cnVjdCB4ZW5zbmRfcmVzcCk7CisKKyNlbmRpZiAvKiBfX1hFTl9Q
VUJMSUNfSU9fU05ESUZfSF9fICovCi0tIAoyLjcuNAoKCl9fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fCkVtYmVkZGVkLXB2LWRldmVsIG1haWxpbmcgbGlzdApF
bWJlZGRlZC1wdi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnBy
b2plY3Qub3JnL2NnaS1iaW4vbWFpbG1hbi9saXN0aW5mby9lbWJlZGRlZC1wdi1kZXZlbA==

From embedded-pv-devel-bounces@lists.xenproject.org Mon Dec 05 13:05:45 2016
Return-path: <embedded-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Mon, 05 Dec 2016 13:05:45 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.84_2)
	(envelope-from <embedded-pv-devel-bounces@lists.xenproject.org>)
	id 1cDsxl-00070a-7u; Mon, 05 Dec 2016 13:05:45 +0000
Received: from mail6.bemta6.messagelabs.com ([193.109.254.103])
 by lists.xenproject.org with esmtp (Exim 4.84_2)
 (envelope-from <andr2000@gmail.com>)
 id 1cDsxj-000708-K0; Mon, 05 Dec 2016 13:05:43 +0000
Received: from [193.109.254.147] by server-7.bemta-6.messagelabs.com id
 36/63-29519-62665485; Mon, 05 Dec 2016 13:05:42 +0000
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFlrDIsWRWlGSWpSXmKPExsXiVRvkrKua5hp
 h0Dhb3mJlz0Vmi+9bJjM5MHkc/nCFJYAxijUzLym/IoE143NzO1vBrn6mipmtKg2Mj04wdjFy
 cggJFEs8WfGUtYuRi4NF4CWLxOXDe5lAHAmBflaJp29WgVVJCMRI/PvzFsqulJjfvJINoltR4
 uuz6WANQgLLmSS+bV3LCpJgEzCSWH7jBwuILSKgJHFv1WSwImaBHcwSm6/eBCsSFqiVuLn8HV
 gRi4CqxIt7TewgNq+Ak8TltgssENvkJG6e62QGsTkFnCXurusHinMAbXOSOPfZfwKjwAJGhlW
 MGsWpRWWpRbpGpnpJRZnpGSW5iZk5uoYGZnq5qcXFiempOYlJxXrJ+bmbGIFhxgAEOxhXLQg8
 xCjJwaQkyjslwTVCiC8pP6UyI7E4I76oNCe1+BCjDAeHkgRvYApQTrAoNT21Ii0zBxjwMGkJD
 h4lEV55kDRvcUFibnFmOkTqFKMxx7Rni58ycezoXPOUSYglLz8vVUqcdydIqQBIaUZpHtwgWC
 ReYpSVEuZlBDpNiKcgtSg3swRV/hWjOAejkjCvA8gUnsy8Erh9r4BOYQI65cRxZ5BTShIRUlI
 NjMV8eQJCJyz2zvTsjH7b9eXicf/nkemMBs9O/NY0fjBr845WdZWYg1O7p2rHr9p+1sbtoWaT
 lOsucYU2HjuVnQ8PnJZS4TRf2FXwr1eqYsEXo7Ze2Qtezyc836CnuPxejdyU6XqXugudixfnF
 k42SOaZl2+47LqdrNcqiXvhE//0Hk1omvDcRYmlOCPRUIu5qDgRAAc08uG/AgAA
X-Env-Sender: andr2000@gmail.com
X-Msg-Ref: server-15.tower-27.messagelabs.com!1480943141!22850794!1
X-Originating-IP: [74.125.82.67]
X-SpamReason: No, hits=0.5 required=7.0 tests=BODY_RANDOM_LONG
X-StarScan-Received: 
X-StarScan-Version: 9.0.16; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 54064 invoked from network); 5 Dec 2016 13:05:41 -0000
Received: from mail-wm0-f67.google.com (HELO mail-wm0-f67.google.com)
 (74.125.82.67)
 by server-15.tower-27.messagelabs.com with AES128-GCM-SHA256 encrypted SMTP;
 5 Dec 2016 13:05:41 -0000
Received: by mail-wm0-f67.google.com with SMTP id a20so15896581wme.2;
 Mon, 05 Dec 2016 05:05:41 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
 h=from:to:cc:subject:date:message-id:in-reply-to:references;
 bh=XWuv5+sTmMq8jVnGG9itwSzFybv+COmuy+nAGAew7IU=;
 b=PCL/DWU5NIR+PMFqq7N5z3PDx3swfsgvL+7F3CduFC/0s61YCYeCGaehYxYzDqlyOQ
 aXpKlADXkXj82F/lV6uRNP1isBpqZDql0xLZRAARu2xrqGn49/SDL6vEFm9eTiAR6n6B
 PTjO5vzb9wFu51M7EQfyIB2wyNjgtoDcSYkUpvVPBF8rFpxqePH1UfWSRR+jDZAVDjUw
 1JnU1c/MBGnxDcW3fHu/p2AAnXBkFlkXYRMSScBboiFKbEs6BjAvSblBTTPBOivRvYIG
 9aF6P2sARkLfcg74JuKDMdlYBYvb0GkADlpv4DfzL8fG4XVBxrCQIMdUGclTab6KHYTu
 LudA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20130820;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references;
 bh=XWuv5+sTmMq8jVnGG9itwSzFybv+COmuy+nAGAew7IU=;
 b=XIsE8KBoSkbsQwqw3iIDu+N6XDLF35UG41mFXfpnkBOvLeJ4vZQQ/kHuMDSOCqXuGL
 AOHCXxi+PElPswPS+x2h5Bad5EtvdLtExTBIL5ChxdjS4zS93HFE1051hihq+CD8gU8c
 aLXR56iZZ7alE/GKUfVrbawlW1qm+sTm6aBLo0VBORI1LFOJs8/BgT+VpQjpHlcw9pMt
 OLOBlZWqH6get+CZ74OCLiwzc7QsDsFmlXdnu3eM2dk1qUQggnQY6aZhCLWZepF36xAq
 q+LUidU25H5GLOfRUDwdoxuAejlWsbHPzBZ0cEW0xG8VKwq72DmEAelt86KjRW66CWbs
 y5/A==
X-Gm-Message-State: AKaTC01C7Ofq5+q6Y4WZay0BTvyUB1/0gToKeTe5oagfhkD2KWQscoaV3GVWd5s0ulTtAg==
X-Received: by 10.28.107.21 with SMTP id g21mr9604056wmc.131.1480943140289;
 Mon, 05 Dec 2016 05:05:40 -0800 (PST)
Received: from a2k-HP-ProDesk-600-G2-SFF.kyiv.epam.com
 (ll-58.209.223.85.sovam.net.ua. [85.223.209.58])
 by smtp.gmail.com with ESMTPSA id f76sm26732wmd.15.2016.12.05.05.05.38
 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128);
 Mon, 05 Dec 2016 05:05:39 -0800 (PST)
From: Oleksandr Andrushchenko <andr2000@gmail.com>
To: xen-devel@lists.xenproject.org
Date: Mon,  5 Dec 2016 15:05:29 +0200
Message-Id: <1480943129-20524-2-git-send-email-andr2000@gmail.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1480943129-20524-1-git-send-email-andr2000@gmail.com>
References: <1480943129-20524-1-git-send-email-andr2000@gmail.com>
Cc: embedded-pv-devel@lists.xenproject.org, lars.kurth@citrix.com,
 konrad.wilk@oracle.com, vlad.babchuk@gmail.com, ian.jackson@eu.citrix.com,
 dario.faggioli@citrix.com, tim@xen.org, iurii.konovalenko@globallogic.com,
 andrii.anisov@gmail.com, olekstysh@gmail.com, andr2000@gmail.com,
 al1img@gmail.com, david.vrabel@citrix.com, JBeulich@suse.com,
 julien.grall@arm.com, oleksandr.dmytryshyn@globallogic.com,
 joculator@gmail.com
Subject: [Embedded-pv-devel] [PATCH v15] This is the ABI for the two halves
	of a para-virtualized sound driver to communicate with each
	to other.
X-BeenThere: embedded-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <embedded-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/cgi-bin/mailman/options/embedded-pv-devel>, 
 <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:embedded-pv-devel@lists.xenproject.org>
List-Help: <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/cgi-bin/mailman/listinfo/embedded-pv-devel>, 
 <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: embedded-pv-devel-bounces@lists.xenproject.org
Sender: "Embedded-pv-devel" <embedded-pv-devel-bounces@lists.xenproject.org>

RnJvbTogT2xla3NhbmRyIEFuZHJ1c2hjaGVua28gPE9sZWtzYW5kcl9BbmRydXNoY2hlbmtvQGVw
YW0uY29tPgoKU2lnbmVkLW9mZi1ieTogT2xla3NhbmRyIEFuZHJ1c2hjaGVua28gPE9sZWtzYW5k
cl9BbmRydXNoY2hlbmtvQGVwYW0uY29tPgpTaWduZWQtb2ZmLWJ5OiBPbGVrc2FuZHIgR3J5dHNv
diA8T2xla3NhbmRyX0dyeXRzb3ZAZXBhbS5jb20+ClNpZ25lZC1vZmYtYnk6IE9sZWtzYW5kciBE
bXl0cnlzaHluIDxvbGVrc2FuZHIuZG15dHJ5c2h5bkBnbG9iYWxsb2dpYy5jb20+ClNpZ25lZC1v
ZmYtYnk6IEl1cmlpIEtvbm92YWxlbmtvIDxpdXJpaS5rb25vdmFsZW5rb0BnbG9iYWxsb2dpYy5j
b20+CgotLS0KQ2hhbmdlcyBzaW5jZSB2MToKICogcmVtb3ZlZCBfX2F0dHJpYnV0ZV9fKChfX3Bh
Y2tlZF9fKSkgZnJvbSBhbGwgc3RydWN0dXJlcyBkZWZpbml0aW9ucwoKQ2hhbmdlcyBzaW5jZSB2
MjoKICogcmVtb3ZlZCBhbGwgQyBzdHJ1Y3R1cmVzCiAqIGFkZGVkIHByb3RvY29sIGRlc2NyaXB0
aW9uIGJldHdlZW4gZnJvbnRlbmQgYW5kIGJhY2tlbmQgZHJpdmVycwoKQ2hhbmdlcyBzaW5jZSB2
MzoKICogZml4ZWQgc29tZSB0eXBvcwogKiByZW5hbWVkIFhFTlNORF9QQ01fRk9STUFUX0ZMT0FU
XyoqIHRvIFhFTlNORF9QQ01fRk9STUFUX0YzMl8qKgogKiByZW5hbWVkIFhFTlNORF9QQ01fRk9S
TUFUX0ZMT0FUNjRfKiogdG8gWEVOU05EX1BDTV9GT1JNQVRfRjY0XyoqCiAqIGFkZGVkICdpZCcg
ZmllbGQgdG8gdGhlIHJlcXVlc3QgYW5kIHJlc3BvbnNlIHBhY2tldHMKICogcmVuYW1lZCAnc3Ry
ZWFtX2lkJyB0byAnc3RyZWFtJyBpbiB0aGUgcGFja2V0cyBkZXNjcmlwdGlvbgogKiByZW5hbWVk
ICdwY21fZGF0YV9yYXRlJyB0byAncGNtX3JhdGUnIGluIHRoZSBwYWNrZXRzIGRlc2NyaXB0aW9u
CiAqIHJlbmFtZWQgJ3BjbV9zdHJlYW1fdHlwZScgdG8gJ3BjbV90eXBlJyBpbiB0aGUgcGFja2V0
cyBkZXNjcmlwdGlvbgogKiByZW1vdmVkICdzdHJlYW1faWQnIGZpZWxkIGZyb20gdGhlIHJlc3Bv
bnNlIHBhY2tldHMKCkNoYW5nZXMgc2luY2UgdjQ6CiAqIHJlbmFtZWQgJ3N0cmVhbV9pZCcgYmFj
ayB0byB0aGUgdG8gJ3N0cmVhbScgaW4gdGhlIHBhY2tldHMgZGVzY3JpcHRpb24KICogbW92ZWQg
J2lkJyBmaWVsZCB0byB0aGUgdXBwZXIgcG9zaXRpb24gaW4gdGhlIHJlc3BvbnNlIHBhY2tldHMK
CkNoYW5nZXMgc2luY2UgdjU6CiAqIFNsaWdodGx5IHJld29ya2VkIHJlcXVlc3QvcmVzcG9uc2Ug
cGFja2V0cwogKiBTaXplIG9mIHRoZSByZXF1ZXN0L3Jlc3BvbnNlIHBhY2tldCBpcyBjaGFuZ2Vk
IHRvIHRoZSA2NCBieXRlcwogKiBOb3cgcGFyYW1ldGVycyBmb3IgdGhlIFhFTlNORF9PUF9TRVRf
Vk9MVU1FL1hFTlNORF9PUF9HRVRfVk9MVU1FIGFyZQogICBwYXNzZWQgdmlhIHNoYXJlZCBwYWdl
CiAqIEFkZGVkIHBhcmFtZXRlcnMgZm9yIHRoZSBYZW5CdXMgbm9kZXMgKG5vdyBlYWNoIHN0cmVh
bSBjYW4gYmUgbWFwcGVkCiAgIHRvIHRoZSBkZWZpbmVkIHNvdW5kIGRldmljZSBpbiB0aGUgYmFj
a2VuZCB1c2luZyB0aG9zZSBwYXJhbWV0ZXJzKQogKiBBZGRlZCBYZW5CdXMgc3RhdGUgZGlhZ3Jh
bXMgZGVzY3JpcHRpb24KCkNoYW5nZXMgc2luY2UgdjY6CiAqIFJld29ya2VkIHN0cmVhbXMgZGVz
Y3JpcHRpb24gIGluIHRoZSBCYWNrZW5kIFhlbkJ1cyBOb2RlcwoKQ2hhbmdlcyBzaW5jZSB2NzoK
ICogcmUtd29ya2VkIGJhY2tlbmQgZGV2aWNlIHBhcmFtZXRlcnMgdG8gYmUgbW9yZSBnZW5lcmlj
IGFuZCBmbGV4aWJsZQogKiBleHRlbmRlZCBmcm9udGVuZCBkZXZpY2UgcGFyYW1ldGVycwogKiBz
bGlnaHRseSB1cGRhdGVkIHN0YXRlIG1hY2hpbmUgZGVzY3JpcHRpb24gYWRkZWQgbXV0ZS91bm11
dGUgY29tbWFuZHMKICogYWRkZWQgY29uc3RhbnRzIGZvciBYZW5TdG9yZSBjb25maWd1cmF0aW9u
IHN0cmluZ3MKICAgKGZpZWxkcywgUENNIGZvcm1hdHMgZXRjLikKICogY2hhbmdlZCByZXF1ZXN0
L3Jlc3BvbnNlIHN0cnVjdHVyZSBzaXplIGZyb20gNjQgb2N0ZXRzIHRvIDE2CiAqIGludHJvZHVj
ZWQgZHluYW1pYyBidWZmZXIgYWxsb2NhdGlvbiBpbnN0ZWFkIG9mCiAgIHN0YXRpYyBYRU5TTkRf
TUFYX1BBR0VTX1BFUl9SRVFVRVNUCiAqIHJlLXdvcmtlZCBvcGVuIHJlcXVlc3QgdG8gYWxsb3cg
ZHluYW1pYyBidWZmZXIgYWxsb2NhdGlvbgogKiByZS13b3JrZWQgcmVhZC93cml0ZS92b2x1bWUg
cmVxdWVzdHMsIHNvIHRoZXkgZG9uJ3QgcGFzcyBncmVmczoKICAgYnVmZmVyIGZyb20gdGhlIG9w
ZW4gcmVxdWVzdCBpcyB1c2VkIGZvciB0aGVzZSBvcGVyYXRpb25zIHRvIHBhc3MgZGF0YQogKiBz
cGVjaWZpZWQgdHlwZSBvZiB0aGUgdm9sdW1lIHZhbHVlIHRvIGJlIGEgc2lnbmVkIHZhbHVlIGlu
IHN0ZXBzCiAgIG9mIDAuMDAxIGRCbSwgd2hpbGUgMCBiZWluZyAwZEJtLgogKiBhZGRlZCBMaW51
eCBpbmNsdWRlIGZpbGUgd2l0aCBzdHJ1Y3R1cmUgZGVmaW5pdGlvbnMKCkNoYW5nZXMgc2luY2Ug
djg6CiAqIGNoYW5nZWQgZnJvbnRlbmQtaWQgdG8gZnJvbnRlbmRfaWQKICogc2luZ2xlIHNvdW5k
IGNhcmQgc3VwcG9ydCwgY29uZmlndXJlZCB3aXRoIGJ1bmNoIG9mCiAgIGRldmljZXMvc3RyZWFt
cwogKiBjbGFyaWZ1Y2F0aW9uIG1hZGUgb24gc2FtcGxlIHJhdGVzIGFuZCBmb3JtYXRzIGV4cHJl
c3NlZCBhcwogICBkZWNpbWFscyB3L28gYW55IHBhcnRpY3VsYXIgb3JkZXJpbmcKICogcHV0IGRl
c2NyaXB0aW9uIG9mIG1pZ3JhdGlvbi9kaXNjb25uZWN0aW9uIHN0YXRlCiAqIHJlcGxhY2VkIF9f
YXR0cmlidXRlX18oKHBhY2tlZCkpIHRvIF9fcGFja2VkCiAqIGNoYW5nZWQgcGFkZGluZyBvZiBy
aW5nIHN0cnVjdHVyZXMgdG8gNjQgdG8gZml0IGNhY2hlIGxpbmUKICogcmVtb3ZlZWQgI2lmZGVm
IF9fS0VSTkVMCiAqIGV4cGxpY2l0bHkgc3RhdGVkIHdoaWNoIGluZGljZXMgaW4gWGVuU3RvcmUg
Y29uZmlndXJhdGlvbgogICBhcmUgY29udGlndW91cwogKiBhZGRlZCBkZXNjcmlwdGlvbiB0byB3
aGF0IGZyb250ZW5kJ3MgZGVmYXVsdHMgYXJlCiAqIG1hZGUgbmFtZXMgb2YgdmlydHVhbCBjYXJk
L2RldmljZXMgb3B0aW9uYWwKICogcmVtb3ZlZCBQQ01fRk9STUFUX1NQRUNJQUwKICogY2hhbmdl
ZCB2b2x1bWUgdW5pdHMgZnJvbSBkQm0gdG8gZEIKCkNoYW5nZXMgc2luY2Ugdjk6CiAqIHJlbW92
ZWQgc25kaWZfbGludXguaAogKiBtb3ZlZCBhbGwgc3RydWN0dXJlcyBmcm9tIHNuZGlmX2xpbnV4
LmggdG8gc25kaWYuaAogKiBzdHJ1Y3R1cmVzIHBhZGRlZCB3aGVyZSBuZWVkZWQKICogZml4ZWQg
SHogY29tbWVudAoKQ2hhbmdlcyBzaW5jZSB2MTA6CiAqIGZpeGVkIHRhYnMgdG8gNCBzcGFjZXMg
dG8gY29tcGx5IHdpdGggWGVuIGNvZGluZyBzdHlsZQogKiBhZGRlZCBwbGFjZWhvbGRlcnMgdG8g
ZW1wdHkgc3RydWN0dXJlcyAoQzg5IGNvbmNlcm4pCiAqIGFkZGVkIG1pc3NpbmcgaGVhZGVyIGlu
Y2x1ZGVzCgpDaGFuZ2VzIHNpbmNlIHYxMToKICogYWRkZWQgWEVOU05EX1JTUF9OT1RTVVBQIGVy
cm9yIGNvZGUKICogY2hhbmdlZCBncmVmWzBdIHRvIGdyZWZbMV0gd2l0aCBjb21tZW50CiAqIG1v
ZGlmaWVkIGNvbW1lbnRzIG9uIGVtcHR5IHN0cnVjdHVyZXMKICogcmVtb3ZlZCAiX18iIGZyb20g
bWVtYmVyIG5hbWVzCiAqIGZpeGVkIGluZGVudGF0aW9uCiAqIGFkZGVkIHBhZGRpbmcgaW4gdW5p
b24geGVuc25kX3Jlc3AKICogY2hhbmdlZCBfX1hFTl9QVUJMSUNfSU9fWEVOU05EX0hfXyB0byBf
X1hFTl9QVUJMSUNfSU9fU05ESUZfSF9fCgpDaGFuZ2VzIHNpbmNlIHYxMjoKICogY2hhbmdlZCBp
bmRlbnRhdGlvbiBmb3IgZGVmaW5lcwogKiBtaXNzZWQgIjsiIGFmdGVyIGdyZWZbMV0KICogZG9j
dW1lbnRhdGlvbiBjaGFuZ2VzCiAqIGNoYW5nZWQgcmVxL3Jlc3Agc3RydWN0dXJlcwogKiBjaGFu
Z2VkIHhlbnNuZF9wYWdlX2RpcmVjdG9yeSBzdHJ1Y3R1cmUKICogcGFzcyBidWZmZXIgc2l6ZSBp
biBvcGVuIHJlcXVlc3QKCkNoYW5nZXMgc2luY2UgdjEzOgogKiBub3RlIG9uIHVzYWdlIG9mIGdy
YW50IHJlZiAwCiAqIGFsbCBwYWdlIHNpemVzIGFyZSBYRU5fUEFHRV9TSVpFCiAqIHBhZGRpbmcv
cmVzZXJ2ZWQgY2xlYW51cC9maXhlcwogKiByZW1vdmVkIGVtcHR5IHN0cnVjdHVyZXMKCkNoYW5n
ZXMgc2luY2UgdjE0OgogKiB0dXJuIHBhZGRpbmcgaW50byByZXNlcnZlZAotLS0KLS0tCiB4ZW4v
aW5jbHVkZS9wdWJsaWMvaW8vc25kaWYuaCB8IDY3MSArKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysKIDEgZmlsZSBjaGFuZ2VkLCA2NzEgaW5zZXJ0aW9ucygrKQogY3Jl
YXRlIG1vZGUgMTAwNjQ0IHhlbi9pbmNsdWRlL3B1YmxpYy9pby9zbmRpZi5oCgpkaWZmIC0tZ2l0
IGEveGVuL2luY2x1ZGUvcHVibGljL2lvL3NuZGlmLmggYi94ZW4vaW5jbHVkZS9wdWJsaWMvaW8v
c25kaWYuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42MGE2ZDg4Ci0tLSAv
ZGV2L251bGwKKysrIGIveGVuL2luY2x1ZGUvcHVibGljL2lvL3NuZGlmLmgKQEAgLTAsMCArMSw2
NzEgQEAKKy8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIHNuZGlmLmgKKyAqCisgKiBVbmlmaWVk
IHNvdW5kLWRldmljZSBJL08gaW50ZXJmYWNlIGZvciBYZW4gZ3Vlc3QgT1Nlcy4KKyAqCisgKiBQ
ZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNv
biBvYnRhaW5pbmcgYSBjb3B5CisgKiBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRv
Y3VtZW50YXRpb24gZmlsZXMgKHRoZSAiU29mdHdhcmUiKSwgdG8KKyAqIGRlYWwgaW4gdGhlIFNv
ZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24g
dGhlCisgKiByaWdodHMgdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0
cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3IKKyAqIHNlbGwgY29waWVzIG9mIHRoZSBTb2Z0d2Fy
ZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzCisgKiBmdXJu
aXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOgorICoK
KyAqIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNl
IHNoYWxsIGJlIGluY2x1ZGVkIGluCisgKiBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRp
b25zIG9mIHRoZSBTb2Z0d2FyZS4KKyAqCisgKiBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgIkFT
IElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwgRVhQUkVTUyBPUgorICogSU1QTElF
RCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFksCisgKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBTkQgTk9OSU5G
UklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKKyAqIEFVVEhPUlMgT1IgQ09QWVJJR0hU
IEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERBTUFHRVMgT1IgT1RIRVIKKyAqIExJ
QUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09OVFJBQ1QsIFRPUlQgT1IgT1RIRVJX
SVNFLCBBUklTSU5HCisgKiBGUk9NLCBPVVQgT0YgT1IgSU4gQ09OTkVDVElPTiBXSVRIIFRIRSBT
T0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSCisgKiBERUFMSU5HUyBJTiBUSEUgU09GVFdBUkUu
CisgKgorICogQ29weXJpZ2h0IChDKSAyMDEzLTIwMTUgR2xvYmFsTG9naWMgSW5jLgorICogQ29w
eXJpZ2h0IChDKSAyMDE2IEVQQU0gU3lzdGVtcyBJbmMuCisgKgorICogQXV0aG9yczogT2xla3Nh
bmRyIEFuZHJ1c2hjaGVua28gPE9sZWtzYW5kcl9BbmRydXNoY2hlbmtvQGVwYW0uY29tPgorICog
ICAgICAgICAgT2xla3NhbmRyIEdyeXRzb3YgPE9sZWtzYW5kcl9Hcnl0c292QGVwYW0uY29tPgor
ICogICAgICAgICAgT2xla3NhbmRyIERteXRyeXNoeW4gPG9sZWtzYW5kci5kbXl0cnlzaHluQGds
b2JhbGxvZ2ljLmNvbT4KKyAqICAgICAgICAgIEl1cmlpIEtvbm92YWxlbmtvIDxpdXJpaS5rb25v
dmFsZW5rb0BnbG9iYWxsb2dpYy5jb20+CisgKi8KKworI2lmbmRlZiBfX1hFTl9QVUJMSUNfSU9f
U05ESUZfSF9fCisjZGVmaW5lIF9fWEVOX1BVQkxJQ19JT19TTkRJRl9IX18KKworI2luY2x1ZGUg
InJpbmcuaCIKKyNpbmNsdWRlICIuLi9ncmFudF90YWJsZS5oIgorCisvKgorICogRnJvbnQtPmJh
Y2sgbm90aWZpY2F0aW9uczogV2hlbiBlbnF1ZXVpbmcgYSBuZXcgcmVxdWVzdCwgc2VuZGluZyBh
CisgKiBub3RpZmljYXRpb24gY2FuIGJlIG1hZGUgY29uZGl0aW9uYWwgb24gcmVxX2V2ZW50IChp
LmUuLCB0aGUgZ2VuZXJpYworICogaG9sZC1vZmYgbWVjaGFuaXNtIHByb3ZpZGVkIGJ5IHRoZSBy
aW5nIG1hY3JvcykuIEJhY2tlbmRzIG11c3Qgc2V0CisgKiByZXFfZXZlbnQgYXBwcm9wcmlhdGVs
eSAoZS5nLiwgdXNpbmcgUklOR19GSU5BTF9DSEVDS19GT1JfUkVRVUVTVFMoKSkuCisgKgorICog
QmFjay0+ZnJvbnQgbm90aWZpY2F0aW9uczogV2hlbiBlbnF1ZXVpbmcgYSBuZXcgcmVzcG9uc2Us
IHNlbmRpbmcgYQorICogbm90aWZpY2F0aW9uIGNhbiBiZSBtYWRlIGNvbmRpdGlvbmFsIG9uIHJz
cF9ldmVudCAoaS5lLiwgdGhlIGdlbmVyaWMKKyAqIGhvbGQtb2ZmIG1lY2hhbmlzbSBwcm92aWRl
ZCBieSB0aGUgcmluZyBtYWNyb3MpLiBGcm9udGVuZHMgbXVzdCBzZXQKKyAqIHJzcF9ldmVudCBh
cHByb3ByaWF0ZWx5IChlLmcuLCB1c2luZyBSSU5HX0ZJTkFMX0NIRUNLX0ZPUl9SRVNQT05TRVMo
KSkuCisgKi8KKworLyoKKyAqIEZlYXR1cmUgYW5kIFBhcmFtZXRlciBOZWdvdGlhdGlvbgorICog
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisgKiBUaGUgdHdvIGhhbHZlcyBvZiBh
IFBhcmEtdmlydHVhbCBzb3VuZCBjYXJkIGRyaXZlciB1dGlsaXplIG5vZGVzIHdpdGhpbiB0aGUK
KyAqIFhlblN0b3JlIHRvIGNvbW11bmljYXRlIGNhcGFiaWxpdGllcyBhbmQgdG8gbmVnb3RpYXRl
IG9wZXJhdGluZyBwYXJhbWV0ZXJzLgorICogVGhpcyBzZWN0aW9uIGVudW1lcmF0ZXMgdGhlc2Ug
bm9kZXMgd2hpY2ggcmVzaWRlIGluIHRoZSByZXNwZWN0aXZlIGZyb250IGFuZAorICogYmFja2Vu
ZCBwb3J0aW9ucyBvZiB0aGUgWGVuU3RvcmUsIGZvbGxvd2luZyB0aGUgWGVuQnVzIGNvbnZlbnRp
b24uCisgKgorICogQWxsIGRhdGEgaW4gdGhlIFhlblN0b3JlIGlzIHN0b3JlZCBhcyBzdHJpbmdz
LiAgTm9kZXMgc3BlY2lmeWluZyBudW1lcmljCisgKiB2YWx1ZXMgYXJlIGVuY29kZWQgaW4gZGVj
aW1hbC4gIEludGVnZXIgdmFsdWUgcmFuZ2VzIGxpc3RlZCBiZWxvdyBhcmUKKyAqIGV4cHJlc3Nl
ZCBhcyBmaXhlZCBzaXplZCBpbnRlZ2VyIHR5cGVzIGNhcGFibGUgb2Ygc3RvcmluZyB0aGUgY29u
dmVyc2lvbgorICogb2YgYSBwcm9wZXJseSBmb3JtYXRlZCBub2RlIHN0cmluZywgd2l0aG91dCBs
b3NzIG9mIGluZm9ybWF0aW9uLgorICoKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogICAgICAg
ICAgICAgICAgICAgICAgICAgICAgQmFja2VuZCBYZW5CdXMgTm9kZXMKKyAqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKgorICoKKyAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gQWRkcmVzc2lu
ZyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAqCisgKiBJbmRpY2VzIHVzZWQg
dG8gYWRkcmVzcyBmcm9udGVuZHMsIGRyaXZlciBpbnN0YW5jZXMsIGNhcmRzLAorICogZGV2aWNl
cyBhbmQgc3RyZWFtcy4KKyAqCisgKiBmcm9udGVuZF9pZAorICogICAgICBWYWx1ZXM6ICAgICAg
ICAgPHVpbnQ+CisgKgorICogICAgICBEb21haW4gSUQgb2YgdGhlIHNvdW5kIGZyb250ZW5kLgor
ICoKKyAqIGRydl9pZHgKKyAqICAgICAgVmFsdWVzOiAgICAgICAgIDx1aW50PgorICoKKyAqICAg
ICAgWmVybyBiYXNlZCBjb250aWd1b3VzIGluZGV4IG9mIHRoZSB2aXJ0dWFsaXplZCBzb3VuZCBk
cml2ZXIgaW5zdGFuY2UgaW4KKyAqICAgICAgdGhpcyBkb21haW4uIE11bHRpcGxlIFBWIGRyaXZl
cnMgYXJlIGFsbG93ZWQgaW4gdGhlIGRvbWFpbgorICogICAgICBhdCB0aGUgc2FtZSB0aW1lLgor
ICoKKyAqIGRldl9pZAorICogICAgICBWYWx1ZXM6ICAgICAgICAgPHVpbnQ+CisgKgorICogICAg
ICBVbmlxdWUgZGV2aWNlIElELgorICogICAgICBEb2Vzbid0IGhhdmUgdG8gYmUgemVybyBiYXNl
ZCBhbmQvb3IgdG8gYmUgY29udGlndW91cy4KKyAqCisgKiBzdHJlYW1faWR4CisgKiAgICAgIFZh
bHVlczogICAgICAgICA8dWludD4KKyAqCisgKiAgICAgIFplcm8gYmFzZWQgY29udGlndW91cyBp
bmRleCBvZiB0aGUgc3RyZWFtIG9mIHRoZSBkZXZpY2UuCisgKgorICogRXhhbXBsZSBmb3IgdGhl
IGZyb250ZW5kIHJ1bm5pbmcgaW4gZG9tYWluIDUsIGluc3RhbmNlIG9mIHRoZSBkcml2ZXIKKyAq
IGluIHRoZSBmcm9udCBpcyAwIChzaW5nbGUgb3IgZmlyc3QgUFYgZHJpdmVyKSwgZGV2aWNlIGlk
IDIsCisgKiBmaXJzdCBzdHJlYW0gKDApOgorICogL2xvY2FsL2RvbWFpbi88ZnJvbnRlbmRfaWQ+
L2RldmljZS92c25kLzxkcnZfaWR4Pi8KKyAqICAgICAgICAgZGV2aWNlLzxkZXZfaWQ+L3N0cmVh
bS88c3RyZWFtX2lkeD4vdHlwZSA9ICJwIgorICogL2xvY2FsL2RvbWFpbi81L2RldmljZS92c25k
LzAvZGV2aWNlLzIvc3RyZWFtLzAvdHlwZSA9ICJwIgorICoKKyAqLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLSBQQ00gc2V0dGluZ3MgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0KKyAqCisgKiBFdmVyeSB2aXJ0dWFsaXplZCBzb3VuZCBmcm9udGVuZCBoYXMgc2V0IG9mIGRl
dmljZXMgYW5kIHN0cmVhbXMsIGVhY2gKKyAqIGlzIGluZGl2aWR1YWxseSBjb25maWd1cmVkLiBQ
YXJ0IG9mIHRoZSBQQ00gY29uZmlndXJhdGlvbiBjYW4gYmUgZGVmaW5lZCBhdAorICogaGlnaGVy
IGxldmVsIGFuZCBiZSBmdWxseSBvciBwYXJ0aWFsbHkgcmUtdXNlZCBieSB0aGUgdW5kZXJseWlu
ZyBsYXllcnMuCisgKiBUaGVzZSBjb25maWd1cmF0aW9uIHZhbHVlcyBhcmU6CisgKiAgbyBudW1i
ZXIgb2YgY2hhbm5lbHMgKG1pbi9tYXgpCisgKiAgbyBzdXBwb3J0ZWQgc2FtcGxlIHJhdGVzCisg
KiAgbyBzdXBwb3J0ZWQgc2FtcGxlIGZvcm1hdHMuCisgKiBFLmcuIG9uZSBjYW4gZGVmaW5lIHRo
ZXNlIHZhbHVlcyBmb3IgdGhlIHdob2xlIGRyaXZlciwgZGV2aWNlIG9yIHN0cmVhbS4KKyAqIEV2
ZXJ5IHVuZGVybHlpbmcgbGF5ZXIgaW4gdHVybiBjYW4gcmUtZGVmaW5lIHNvbWUgb3IgYWxsIG9m
IHRoZW0gdG8gYmV0dGVyCisgKiBmaXQgaXRzIG5lZWRzLiBGb3IgZXhhbXBsZSwgZHJpdmVyIG1h
eSBkZWZpbmUgbnVtYmVyIG9mIGNoYW5uZWxzIHRvIGJlCisgKiBpbiBbMTsgOF0gcmFuZ2UsIGFu
ZCBzb21lIHBhcnRpY3VsYXIgc3RyZWFtIG1heSBiZSBsaW1pdGVkIHRvIFsxOyAyXSBvbmx5Lgor
ICogVGhlIHJ1bGUgaXMgdGhhdCB0aGUgdW5kZXJseWluZyBsYXllciBtdXN0IGJlIGEgc3Vic2V0
IG9mIHRoZSB1cHBlciBsYXllcgorICogcmFuZ2UuCisgKgorICogTm90ZTogaWYgYW55IG9mIHRo
ZSB2YWx1ZXMgYXJlIG5vdCBkZWZpbmVkIHRoZW4gUFYgZHJpdmVyIHNob3VsZCB1c2UKKyAqIGl0
cyBkZWZhdWx0IHZhbHVlcyBpbnN0ZWFkLgorICoKKyAqIGNoYW5uZWxzLW1pbgorICogICAgICBW
YWx1ZXM6ICAgICAgICAgPHVpbnQ+CisgKgorICogICAgICBUaGUgbWluaW11bSBhbW91bnQgb2Yg
Y2hhbm5lbHMgdGhhdCBpcyBzdXBwb3J0ZWQuCisgKiAgICAgIE11c3QgYmUgYXQgbGVhc3QgMS4g
SWYgbm90IGRlZmluZWQgdGhlbiB1c2UgZnJvbnRlbmQncyBkZWZhdWx0LgorICoKKyAqIGNoYW5u
ZWxzLW1heAorICogICAgICBWYWx1ZXM6ICAgICAgICAgPHVpbnQ+CisgKgorICogICAgICBUaGUg
bWF4aW11bSBhbW91bnQgb2YgY2hhbm5lbHMgdGhhdCBpcyBzdXBwb3J0ZWQuCisgKiAgICAgIE11
c3QgYmUgYXQgbGVhc3QgPGNoYW5uZWxzLW1pbj4uIElmIG5vdCBkZWZpbmVkIHRoZW4gdXNlIGZy
b250ZW5kJ3MKKyAqICAgICAgZGVmYXVsdC4KKyAqCisgKiBzYW1wbGUtcmF0ZXMKKyAqICAgICAg
VmFsdWVzOiAgICAgICAgIDxsaXN0IG9mIHVpbnRzPgorICoKKyAqICAgICAgTGlzdCBvZiBzdXBw
b3J0ZWQgc2FtcGxlIHJhdGVzIHNlcGFyYXRlZCBieSBYRU5TTkRfTElTVF9TRVBBUkFUT1IuCisg
KiAgICAgIElmIG5vdCBkZWZpbmVkIHRoZW4gdXNlIGZyb250ZW5kJ3MgZGVmYXVsdC4gU2FtcGxl
IHJhdGVzIGFyZSBleHByZXNzZWQKKyAqICAgICAgYXMgYSBsaXN0IG9mIGRlY2ltYWwgdmFsdWVz
IHcvbyBhbnkgb3JkZXJpbmcgcmVxdWlyZW1lbnQuCisgKgorICogc2FtcGxlLWZvcm1hdHMKKyAq
ICAgICAgVmFsdWVzOiAgICAgICAgIDxsaXN0IG9mIFhFTlNORF9QQ01fRk9STUFUX1hYWF9TVFI+
CisgKgorICogICAgICBMaXN0IG9mIHN1cHBvcnRlZCBzYW1wbGUgZm9ybWF0cyBzZXBhcmF0ZWQg
YnkgWEVOU05EX0xJU1RfU0VQQVJBVE9SLgorICogICAgICBJZiBub3QgZGVmaW5lZCB0aGVuIHVz
ZSBmcm9udGVuZCdzIGRlZmF1bHQuCisgKgorICogYnVmZmVyLXNpemUKKyAqICAgICAgVmFsdWVz
OiAgICAgICAgIDx1aW50PgorICoKKyAqICAgICAgVGhlIG1heGltdW0gc2l6ZSBpbiBvY3RldHMg
b2YgdGhlIGJ1ZmZlciB0byBhbGxvY2F0ZSBwZXIgc3RyZWFtLgorICoKKyAqIEV4YW1wbGUgY29u
ZmlndXJhdGlvbjoKKyAqCisgKiBEcml2ZXIgY29uZmlndXJhdGlvbiB1c2VkIGJ5IGFsbCBzdHJl
YW1zOgorICogL2xvY2FsL2RvbWFpbi81L2RldmljZS92c25kLzAvc2FtcGxlLWZvcm1hdHMgPSAi
czg7dTg7czE2X2xlO3MxNl9iZSIKKyAqIFN0cmVhbSBvdmVycmlkZXMgc2FtcGxlIHJhdGVzIHN1
cHBvcnRlZDoKKyAqIC9sb2NhbC9kb21haW4vNS9kZXZpY2UvdnNuZC8wL2RldmljZS8yL3N0cmVh
bS8wL3NhbXBsZS1yYXRlcyA9CisgKiAgICAgICAgIjgwMDA7MjIwNTA7NDQxMDA7NDgwMDAiCisg
KgorICotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBWaXJ0dWFsIHNvdW5kIGNhcmQgc2V0dGluZ3Mg
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAqIHNob3J0LW5hbWUKKyAqICAgICAgVmFsdWVz
OiAgICAgICAgIDxjaGFyWzMyXT4KKyAqCisgKiAgICAgIFNob3J0IG5hbWUgb2YgdGhlIHZpcnR1
YWwgc291bmQgY2FyZC4gT3B0aW9uYWwuCisgKgorICogbG9uZy1uYW1lCisgKiAgICAgIFZhbHVl
czogICAgICAgICA8Y2hhcls4MF0+CisgKgorICogICAgICBMb25nIG5hbWUgb2YgdGhlIHZpcnR1
YWwgc291bmQgY2FyZC4gT3B0aW9uYWwuCisgKgorICogRm9yIGV4YW1wbGUsCisgKiAvbG9jYWwv
ZG9tYWluLzUvZGV2aWNlL3ZzbmQvMC9zaG9ydC1uYW1lID0gIlZpcnR1YWwgYXVkaW8iCisgKiAv
bG9jYWwvZG9tYWluLzUvZGV2aWNlL3ZzbmQvMC9sb25nLW5hbWUgPQorICogICAgICAgICAiVmly
dHVhbCBhdWRpbyBhdCBjZW50ZXIgc3RhY2siCisgKgorICotLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLSBEZXZpY2Ugc2V0dGluZ3MgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K
KyAqIG5hbWUKKyAqICAgICAgVmFsdWVzOiAgICAgICAgIDxjaGFyWzgwXT4KKyAqCisgKiAgICAg
IE5hbWUgb2YgdGhlIHNvdW5kIGRldmljZSB3aXRoaW4gdGhlIHZpcnR1YWwgc291bmQgY2FyZC4g
T3B0aW9uYWwuCisgKgorICogRm9yIGV4YW1wbGUsCisgKiAvbG9jYWwvZG9tYWluLzUvZGV2aWNl
L3ZzbmQvMC9kZXZpY2UvMC9uYW1lID0gIkdlbmVyYWwgYW5hbG9nIgorICoKKyAqLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0gU3RyZWFtIHNldHRpbmdzIC0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0KKyAqCisgKiB0eXBlCisgKiAgICAgIFZhbHVlczogICAgICAgICAicCIsICJj
IgorICoKKyAqICAgICAgU3RyZWFtIHR5cGU6ICJwIiAtIHBsYXliYWNrIHN0cmVhbSwgImMiIC0g
Y2FwdHVyZSBzdHJlYW0KKyAqCisgKiAgICAgIElmIGJvdGggY2FwdHVyZSBhbmQgcGxheWJhY2sg
YXJlIG5lZWRlZCB0aGVuIHR3byBzdHJlYW1zIG5lZWQgdG8gYmUKKyAqICAgICAgZGVmaW5lZCB1
bmRlciB0aGUgc2FtZSBkZXZpY2UuIEZvciBleGFtcGxlLAorICogICAgICAvbG9jYWwvZG9tYWlu
LzUvZGV2aWNlL3ZzbmQvMC9kZXZpY2UvMC9zdHJlYW0vMC90eXBlID0gInAiCisgKiAgICAgIC9s
b2NhbC9kb21haW4vNS9kZXZpY2UvdnNuZC8wL2RldmljZS8wL3N0cmVhbS8xL3R5cGUgPSAiYyIK
KyAqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAg
IEZyb250ZW5kIFhlbkJ1cyBOb2RlcworICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKgorICotLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLSBSZXF1ZXN0IFRyYW5zcG9ydCBQYXJhbWV0ZXJzIC0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tCisgKgorICogVGhlc2UgYXJlIHBlciBzdHJlYW0uCisgKgorICogZXZl
bnQtY2hhbm5lbAorICogICAgICBWYWx1ZXM6ICAgICAgICAgPHVpbnQ+CisgKgorICogICAgICBU
aGUgaWRlbnRpZmllciBvZiB0aGUgWGVuIGV2ZW50IGNoYW5uZWwgdXNlZCB0byBzaWduYWwgYWN0
aXZpdHkKKyAqICAgICAgaW4gdGhlIHJpbmcgYnVmZmVyLgorICoKKyAqIHJpbmctcmVmCisgKiAg
ICAgIFZhbHVlczogICAgICAgICA8dWludD4KKyAqCisgKiAgICAgIFRoZSBYZW4gZ3JhbnQgcmVm
ZXJlbmNlIGdyYW50aW5nIHBlcm1pc3Npb24gZm9yIHRoZSBiYWNrZW5kIHRvIG1hcAorICogICAg
ICBhIHNvbGUgcGFnZSBpbiBhIHNpbmdsZSBwYWdlIHNpemVkIHJpbmcgYnVmZmVyLgorICoKKyAq
IGluZGV4CisgKiAgICAgIFZhbHVlczogICAgICAgICA8dWludD4KKyAqCisgKiAgICAgIEFmdGVy
IHN0cmVhbSBpbml0aWFsaXphdGlvbiBpdCBpcyBhc3NpZ25lZCBhIHVuaXF1ZSBJRCAod2l0aGlu
IHRoZSBmcm9udAorICogICAgICBkcml2ZXIpLCBzbyBldmVyeSBzdHJlYW0gb2YgdGhlIGZyb250
ZW5kIGNhbiBiZSBpZGVudGlmaWVkIGJ5IHRoZQorICogICAgICBiYWNrZW5kIGJ5IHRoaXMgSUQu
IFRoaXMgaXMgbm90IGVxdWFsIHRvIHN0cmVhbV9pZHggYXMgdGhlIGxhdGVyIGlzCisgKiAgICAg
IHplcm8gYmFzZWQgd2l0aGluIGEgZGV2aWNlLCBidXQgdGhpcyBpbmRleCBpcyBjb250aWd1b3Vz
IHdpdGhpbiB0aGUKKyAqICAgICAgZHJpdmVyLgorICovCisKKy8qCisgKiBTVEFURSBESUFHUkFN
UworICoKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIFN0YXJ0dXAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqCisgKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioKKyAqCisgKiBUb29sIHN0YWNrIGNyZWF0ZXMgZnJvbnQgYW5kIGJh
Y2sgc3RhdGUgbm9kZXMgd2l0aCBpbml0aWFsIHN0YXRlCisgKiBYZW5idXNTdGF0ZUluaXRpYWxp
c2luZy4KKyAqIFRvb2wgc3RhY2sgY3JlYXRlcyBhbmQgc2V0cyB1cCBmcm9udGVuZCBzb3VuZCBj
b25maWd1cmF0aW9uIG5vZGVzIHBlciBkb21haW4uCisgKgorICogRnJvbnQgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIEJhY2sKKyAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PSAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisgKiBYZW5idXNT
dGF0ZUluaXRpYWxpc2luZyAgICAgICAgICAgICAgWGVuYnVzU3RhdGVJbml0aWFsaXNpbmcKKyAq
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbyBRdWVyeSBiYWNrZW5kIGRl
dmljZSBpZGVudGlmaWNhdGlvbgorICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGRhdGEuCisgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG8g
T3BlbiBhbmQgdmFsaWRhdGUgYmFja2VuZCBkZXZpY2UuCisgKiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBWCisgKiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgWGVuYnVzU3RhdGVJbml0V2FpdAorICoKKyAqIG8gUXVl
cnkgZnJvbnRlbmQgY29uZmlndXJhdGlvbgorICogbyBBbGxvY2F0ZSBhbmQgaW5pdGlhbGl6ZQor
ICogICBldmVudCBjaGFubmVscyBwZXIgY29uZmlndXJlZAorICogICBwbGF5YmFjay9jYXB0dXJl
IHN0cmVhbS4KKyAqIG8gUHVibGlzaCB0cmFuc3BvcnQgcGFyYW1ldGVycworICogICB0aGF0IHdp
bGwgYmUgaW4gZWZmZWN0IGR1cmluZworICogICB0aGlzIGNvbm5lY3Rpb24uCisgKiAgICAgICAg
ICAgICAgfAorICogICAgICAgICAgICAgIHwKKyAqICAgICAgICAgICAgICBWCisgKiBYZW5idXNT
dGF0ZUluaXRpYWxpc2VkCisgKgorICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBvIFF1ZXJ5IGZyb250ZW5kIHRyYW5zcG9ydCBwYXJhbWV0ZXJzLgorICogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvIENvbm5lY3QgdG8gdGhlIGV2ZW50IGNoYW5u
ZWxzLgorICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB8CisgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHwKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgVgorICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFhlbmJ1
c1N0YXRlQ29ubmVjdGVkCisgKgorICogIG8gQ3JlYXRlIGFuZCBpbml0aWFsaXplIE9TCisgKiAg
dmlydHVhbCBzb3VuZCBkZXZpY2UgaW5zdGFuY2VzCisgKiAgYXMgcGVyIGNvbmZpZ3VyYXRpb24u
CisgKiAgICAgICAgICAgICAgfAorICogICAgICAgICAgICAgIHwKKyAqICAgICAgICAgICAgICBW
CisgKiBYZW5idXNTdGF0ZUNvbm5lY3RlZAorICoKKyAqICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBYZW5idXNTdGF0ZVVua25vd24KKyAqICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBYZW5idXNTdGF0ZUNsb3NlZAorICogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIFhlbmJ1c1N0YXRlQ2xvc2luZworICogbyBSZW1vdmUgdmlydHVh
bCBzb3VuZCBkZXZpY2UKKyAqIG8gUmVtb3ZlIGV2ZW50IGNoYW5uZWxzCisgKiAgICAgICAgICAg
ICAgfAorICogICAgICAgICAgICAgIHwKKyAqICAgICAgICAgICAgICBWCisgKiBYZW5idXNTdGF0
ZUNsb3NlZAorICoKKyAqLworCisvKgorICogUENNIEZPUk1BVFMKKyAqCisgKiBYRU5TTkRfUENN
X0ZPUk1BVF88Zm9ybWF0PltfPGVuZGlhbj5dCisgKgorICogZm9ybWF0OiA8Uy9VL0Y+PGJpdHM+
IG9yIDxuYW1lPgorICogICAgIFMgLSBzaWduZWQsIFUgLSB1bnNpZ25lZCwgRiAtIGZsb2F0Cisg
KiAgICAgYml0cyAtIDgsIDE2LCAyNCwgMzIKKyAqICAgICBuYW1lIC0gTVVfTEFXLCBHU00sIGV0
Yy4KKyAqCisgKiBlbmRpYW46IDxMRS9CRT4sIG1heSBiZSBhYnNlbnQKKyAqICAgICBMRSAtIExp
dHRsZSBlbmRpYW4sIEJFIC0gQmlnIGVuZGlhbgorICovCisjZGVmaW5lIFhFTlNORF9QQ01fRk9S
TUFUX1M4ICAgICAgICAgICAgMAorI2RlZmluZSBYRU5TTkRfUENNX0ZPUk1BVF9VOCAgICAgICAg
ICAgIDEKKyNkZWZpbmUgWEVOU05EX1BDTV9GT1JNQVRfUzE2X0xFICAgICAgICAyCisjZGVmaW5l
IFhFTlNORF9QQ01fRk9STUFUX1MxNl9CRSAgICAgICAgMworI2RlZmluZSBYRU5TTkRfUENNX0ZP
Uk1BVF9VMTZfTEUgICAgICAgIDQKKyNkZWZpbmUgWEVOU05EX1BDTV9GT1JNQVRfVTE2X0JFICAg
ICAgICA1CisjZGVmaW5lIFhFTlNORF9QQ01fRk9STUFUX1MyNF9MRSAgICAgICAgNgorI2RlZmlu
ZSBYRU5TTkRfUENNX0ZPUk1BVF9TMjRfQkUgICAgICAgIDcKKyNkZWZpbmUgWEVOU05EX1BDTV9G
T1JNQVRfVTI0X0xFICAgICAgICA4CisjZGVmaW5lIFhFTlNORF9QQ01fRk9STUFUX1UyNF9CRSAg
ICAgICAgOQorI2RlZmluZSBYRU5TTkRfUENNX0ZPUk1BVF9TMzJfTEUgICAgICAgIDEwCisjZGVm
aW5lIFhFTlNORF9QQ01fRk9STUFUX1MzMl9CRSAgICAgICAgMTEKKyNkZWZpbmUgWEVOU05EX1BD
TV9GT1JNQVRfVTMyX0xFICAgICAgICAxMgorI2RlZmluZSBYRU5TTkRfUENNX0ZPUk1BVF9VMzJf
QkUgICAgICAgIDEzCisjZGVmaW5lIFhFTlNORF9QQ01fRk9STUFUX0YzMl9MRSAgICAgICAgMTQg
LyogNC1ieXRlIGZsb2F0LCBJRUVFLTc1NCAzMi1iaXQsICovCisjZGVmaW5lIFhFTlNORF9QQ01f
Rk9STUFUX0YzMl9CRSAgICAgICAgMTUgLyogcmFuZ2UgLTEuMCB0byAxLjAgICAgICAgICAgICAg
ICovCisjZGVmaW5lIFhFTlNORF9QQ01fRk9STUFUX0Y2NF9MRSAgICAgICAgMTYgLyogOC1ieXRl
IGZsb2F0LCBJRUVFLTc1NCA2NC1iaXQsICovCisjZGVmaW5lIFhFTlNORF9QQ01fRk9STUFUX0Y2
NF9CRSAgICAgICAgMTcgLyogcmFuZ2UgLTEuMCB0byAxLjAgICAgICAgICAgICAgICovCisjZGVm
aW5lIFhFTlNORF9QQ01fRk9STUFUX0lFQzk1OF9TVUJGUkFNRV9MRSAxOAorI2RlZmluZSBYRU5T
TkRfUENNX0ZPUk1BVF9JRUM5NThfU1VCRlJBTUVfQkUgMTkKKyNkZWZpbmUgWEVOU05EX1BDTV9G
T1JNQVRfTVVfTEFXICAgICAgICAyMAorI2RlZmluZSBYRU5TTkRfUENNX0ZPUk1BVF9BX0xBVyAg
ICAgICAgIDIxCisjZGVmaW5lIFhFTlNORF9QQ01fRk9STUFUX0lNQV9BRFBDTSAgICAgMjIKKyNk
ZWZpbmUgWEVOU05EX1BDTV9GT1JNQVRfTVBFRyAgICAgICAgICAyMworI2RlZmluZSBYRU5TTkRf
UENNX0ZPUk1BVF9HU00gICAgICAgICAgIDI0CisKKy8qCisgKiBSRVFVRVNUIENPREVTLgorICov
CisjZGVmaW5lIFhFTlNORF9PUF9PUEVOICAgICAgICAgICAgICAgICAgMAorI2RlZmluZSBYRU5T
TkRfT1BfQ0xPU0UgICAgICAgICAgICAgICAgIDEKKyNkZWZpbmUgWEVOU05EX09QX1JFQUQgICAg
ICAgICAgICAgICAgICAyCisjZGVmaW5lIFhFTlNORF9PUF9XUklURSAgICAgICAgICAgICAgICAg
MworI2RlZmluZSBYRU5TTkRfT1BfU0VUX1ZPTFVNRSAgICAgICAgICAgIDQKKyNkZWZpbmUgWEVO
U05EX09QX0dFVF9WT0xVTUUgICAgICAgICAgICA1CisjZGVmaW5lIFhFTlNORF9PUF9NVVRFICAg
ICAgICAgICAgICAgICAgNgorI2RlZmluZSBYRU5TTkRfT1BfVU5NVVRFICAgICAgICAgICAgICAg
IDcKKworLyoKKyAqIFhFTlNUT1JFIEZJRUxEIEFORCBQQVRIIE5BTUUgU1RSSU5HUywgSEVMUEVS
Uy4KKyAqLworI2RlZmluZSBYRU5TTkRfRFJJVkVSX05BTUUgICAgICAgICAgICAgICJ2c25kIgor
CisjZGVmaW5lIFhFTlNORF9MSVNUX1NFUEFSQVRPUiAgICAgICAgICAgIjsiCisvKiBQYXRoIGVu
dHJpZXMgKi8KKyNkZWZpbmUgWEVOU05EX1BBVEhfREVWSUNFICAgICAgICAgICAgICAiZGV2aWNl
IgorI2RlZmluZSBYRU5TTkRfUEFUSF9TVFJFQU0gICAgICAgICAgICAgICJzdHJlYW0iCisvKiBG
aWVsZCBuYW1lcyAqLworI2RlZmluZSBYRU5TTkRfRklFTERfVkNBUkRfU0hPUlRfTkFNRSAgICJz
aG9ydC1uYW1lIgorI2RlZmluZSBYRU5TTkRfRklFTERfVkNBUkRfTE9OR19OQU1FICAgICJsb25n
LW5hbWUiCisjZGVmaW5lIFhFTlNORF9GSUVMRF9SSU5HX1JFRiAgICAgICAgICAgInJpbmctcmVm
IgorI2RlZmluZSBYRU5TTkRfRklFTERfRVZUX0NITkwgICAgICAgICAgICJldmVudC1jaGFubmVs
IgorI2RlZmluZSBYRU5TTkRfRklFTERfREVWSUNFX05BTUUgICAgICAgICJuYW1lIgorI2RlZmlu
ZSBYRU5TTkRfRklFTERfVFlQRSAgICAgICAgICAgICAgICJ0eXBlIgorI2RlZmluZSBYRU5TTkRf
RklFTERfU1RSRUFNX0lOREVYICAgICAgICJpbmRleCIKKyNkZWZpbmUgWEVOU05EX0ZJRUxEX0NI
QU5ORUxTX01JTiAgICAgICAiY2hhbm5lbHMtbWluIgorI2RlZmluZSBYRU5TTkRfRklFTERfQ0hB
Tk5FTFNfTUFYICAgICAgICJjaGFubmVscy1tYXgiCisjZGVmaW5lIFhFTlNORF9GSUVMRF9TQU1Q
TEVfUkFURVMgICAgICAgInNhbXBsZS1yYXRlcyIKKyNkZWZpbmUgWEVOU05EX0ZJRUxEX1NBTVBM
RV9GT1JNQVRTICAgICAic2FtcGxlLWZvcm1hdHMiCisjZGVmaW5lIFhFTlNORF9GSUVMRF9CVUZG
RVJfU0laRSAgICAgICAgImJ1ZmZlci1zaXplIgorCisvKiBTdHJlYW0gdHlwZSBmaWVsZCB2YWx1
ZXMuICovCisjZGVmaW5lIFhFTlNORF9TVFJFQU1fVFlQRV9QTEFZQkFDSyAgICAgInAiCisjZGVm
aW5lIFhFTlNORF9TVFJFQU1fVFlQRV9DQVBUVVJFICAgICAgImMiCisvKiBTYW1wbGUgcmF0ZSBt
YXggc3RyaW5nIGxlbmd0aCAqLworI2RlZmluZSBYRU5TTkRfU0FNUExFX1JBVEVfTUFYX0xFTiAg
ICAgIDYKKy8qIFNhbXBsZSBmb3JtYXQgZmllbGQgdmFsdWVzICovCisjZGVmaW5lIFhFTlNORF9T
QU1QTEVfRk9STUFUX01BWF9MRU4gICAgMjQKKworI2RlZmluZSBYRU5TTkRfUENNX0ZPUk1BVF9T
OF9TVFIgICAgICAgICJzOCIKKyNkZWZpbmUgWEVOU05EX1BDTV9GT1JNQVRfVThfU1RSICAgICAg
ICAidTgiCisjZGVmaW5lIFhFTlNORF9QQ01fRk9STUFUX1MxNl9MRV9TVFIgICAgInMxNl9sZSIK
KyNkZWZpbmUgWEVOU05EX1BDTV9GT1JNQVRfUzE2X0JFX1NUUiAgICAiczE2X2JlIgorI2RlZmlu
ZSBYRU5TTkRfUENNX0ZPUk1BVF9VMTZfTEVfU1RSICAgICJ1MTZfbGUiCisjZGVmaW5lIFhFTlNO
RF9QQ01fRk9STUFUX1UxNl9CRV9TVFIgICAgInUxNl9iZSIKKyNkZWZpbmUgWEVOU05EX1BDTV9G
T1JNQVRfUzI0X0xFX1NUUiAgICAiczI0X2xlIgorI2RlZmluZSBYRU5TTkRfUENNX0ZPUk1BVF9T
MjRfQkVfU1RSICAgICJzMjRfYmUiCisjZGVmaW5lIFhFTlNORF9QQ01fRk9STUFUX1UyNF9MRV9T
VFIgICAgInUyNF9sZSIKKyNkZWZpbmUgWEVOU05EX1BDTV9GT1JNQVRfVTI0X0JFX1NUUiAgICAi
dTI0X2JlIgorI2RlZmluZSBYRU5TTkRfUENNX0ZPUk1BVF9TMzJfTEVfU1RSICAgICJzMzJfbGUi
CisjZGVmaW5lIFhFTlNORF9QQ01fRk9STUFUX1MzMl9CRV9TVFIgICAgInMzMl9iZSIKKyNkZWZp
bmUgWEVOU05EX1BDTV9GT1JNQVRfVTMyX0xFX1NUUiAgICAidTMyX2xlIgorI2RlZmluZSBYRU5T
TkRfUENNX0ZPUk1BVF9VMzJfQkVfU1RSICAgICJ1MzJfYmUiCisjZGVmaW5lIFhFTlNORF9QQ01f
Rk9STUFUX0YzMl9MRV9TVFIgICAgImZsb2F0X2xlIgorI2RlZmluZSBYRU5TTkRfUENNX0ZPUk1B
VF9GMzJfQkVfU1RSICAgICJmbG9hdF9iZSIKKyNkZWZpbmUgWEVOU05EX1BDTV9GT1JNQVRfRjY0
X0xFX1NUUiAgICAiZmxvYXQ2NF9sZSIKKyNkZWZpbmUgWEVOU05EX1BDTV9GT1JNQVRfRjY0X0JF
X1NUUiAgICAiZmxvYXQ2NF9iZSIKKyNkZWZpbmUgWEVOU05EX1BDTV9GT1JNQVRfSUVDOTU4X1NV
QkZSQU1FX0xFX1NUUiAiaWVjOTU4X3N1YmZyYW1lX2xlIgorI2RlZmluZSBYRU5TTkRfUENNX0ZP
Uk1BVF9JRUM5NThfU1VCRlJBTUVfQkVfU1RSICJpZWM5NThfc3ViZnJhbWVfYmUiCisjZGVmaW5l
IFhFTlNORF9QQ01fRk9STUFUX01VX0xBV19TVFIgICAgIm11X2xhdyIKKyNkZWZpbmUgWEVOU05E
X1BDTV9GT1JNQVRfQV9MQVdfU1RSICAgICAiYV9sYXciCisjZGVmaW5lIFhFTlNORF9QQ01fRk9S
TUFUX0lNQV9BRFBDTV9TVFIgImltYV9hZHBjbSIKKyNkZWZpbmUgWEVOU05EX1BDTV9GT1JNQVRf
TVBFR19TVFIgICAgICAibXBlZyIKKyNkZWZpbmUgWEVOU05EX1BDTV9GT1JNQVRfR1NNX1NUUiAg
ICAgICAiZ3NtIgorCisvKgorICogU1RBVFVTIFJFVFVSTiBDT0RFUy4KKyAqLworLyogT3BlcmF0
aW9uIG5vdCBzdXBwb3J0ZWQuICovCisjZGVmaW5lIFhFTlNORF9SU1BfTk9UU1VQUCAgICAgICAg
ICAgICAgKC0yKQorLyogT3BlcmF0aW9uIGZhaWxlZCBmb3Igc29tZSB1bnNwZWNpZmllZCByZWFz
b24gKGUuIGcuIC1FSU8pLiAqLworI2RlZmluZSBYRU5TTkRfUlNQX0VSUk9SICAgICAgICAgICAg
ICAgICgtMSkKKy8qIE9wZXJhdGlvbiBjb21wbGV0ZWQgc3VjY2Vzc2Z1bGx5LiAqLworI2RlZmlu
ZSBYRU5TTkRfUlNQX09LQVkgICAgICAgICAgICAgICAgIDAKKworLyoKKyAqIEFzc3VtcHRpb25z
OgorICogICBvIHVzYWdlIG9mIGdyYW50IHJlZmVyZW5jZSAwIGFzIGludmFsaWQgZ3JhbnQgcmVm
ZXJlbmNlOgorICogICAgIGdyYW50IHJlZmVyZW5jZSAwIGlzIHZhbGlkLCBidXQgbmV2ZXIgZXhw
b3NlZCB0byBhIFBWIGRyaXZlciwKKyAqICAgICBiZWNhdXNlIG9mIHRoZSBmYWN0IGl0IGlzIGFs
cmVhZHkgaW4gdXNlL3Jlc2VydmVkIGJ5IHRoZSBQViBjb25zb2xlLgorICogICBvIGFsbCByZWZl
cmVuY2VzIGluIHRoaXMgZG9jdW1lbnQgdG8gcGFnZSBzaXplcyBtdXN0IGJlIHRyZWF0ZWQKKyAq
ICAgICBhcyBwYWdlcyBvZiBzaXplIFhFTl9QQUdFX1NJWkUgdW5sZXNzICBvdGhlcndpc2Ugbm90
ZWQuCisgKgorICogRGVzY3JpcHRpb24gb2YgdGhlIHByb3RvY29sIGJldHdlZW4gZnJvbnRlbmQg
YW5kIGJhY2tlbmQgZHJpdmVyLgorICoKKyAqIFRoZSB0d28gaGFsdmVzIG9mIGEgUGFyYS12aXJ0
dWFsIHNvdW5kIGRyaXZlciBjb21tdW5pY2F0ZSB3aXRoCisgKiBlYWNoIG90aGVyIHVzaW5nIGEg
c2hhcmVkIHBhZ2UgYW5kIGFuIGV2ZW50IGNoYW5uZWwuCisgKiBTaGFyZWQgcGFnZSBjb250YWlu
cyBhIHJpbmcgd2l0aCByZXF1ZXN0L3Jlc3BvbnNlIHBhY2tldHMuCisgKgorICogQWxsIHJlc2Vy
dmVkIGZpZWxkcyBpbiB0aGUgc3RydWN0dXJlcyBiZWxvdyBtdXN0IGJlIDAuCisgKgorICogQWxs
IHJlcXVlc3QgcGFja2V0cyBoYXZlIHRoZSBzYW1lIGxlbmd0aCAoMzIgb2N0ZXRzKQorICogQWxs
IHJlcXVlc3QgcGFja2V0cyBoYXZlIGNvbW1vbiBoZWFkZXI6CisgKiAgICAgICAgICAwICAgICAg
ICAgICAgICAgICAxICAgICAgICAgICAgICAgICAgMiAgICAgICAgICAgICAgICAzICAgICAgICBv
Y3RldAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t
LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgaWQgICAgICAg
ICAgICAgICAgfCAgICBvcGVyYXRpb24gICAgfCAgICAgc3RyZWFtX2lkeCAgfAorICogKy0tLS0t
LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t
LS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0t
LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICog
ICBpZCAtIHVpbnQxNl90LCBwcml2YXRlIGd1ZXN0IHZhbHVlLCBlY2hvZWQgaW4gcmVzcG9uc2UK
KyAqICAgb3BlcmF0aW9uIC0gdWludDhfdCwgb3BlcmF0aW9uIGNvZGUKKyAqICAgc3RyZWFtX2lk
eCAtIHVpbnQ4X3QsIGluZGV4IG9mIHRoZSBzdHJlYW0gKCJzdHJlYW1zX2lkeCIgWGVuU3RvcmUg
ZW50cnkKKyAqICAgICBvZiB0aGUgc3RyZWFtKQorICoKKyAqCisgKiBSZXF1ZXN0IG9wZW4gLSBv
cGVuIGEgUENNIHN0cmVhbSBmb3IgcGxheWJhY2sgb3IgY2FwdHVyZToKKyAqICAgICAgICAgIDAg
ICAgICAgICAgICAgICAgIDEgICAgICAgICAgICAgICAgICAyICAgICAgICAgICAgICAgIDMgICAg
ICAgIG9jdGV0CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t
LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAgICAgICAgICBpZCAg
ICAgICAgICAgICAgICB8IFhFTlNORF9PUF9PUEVOICB8ICAgICBzdHJlYW1faWR4ICB8CisgKiAr
LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0t
LS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNl
cnZlZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgKiArLS0tLS0tLS0tLS0tLS0t
LS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0r
CisgKiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwY21fcmF0ZSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB8CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t
LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICBwY21fZm9y
bWF0ICAgICB8ICBwY21fY2hhbm5lbHMgICB8ICAgICAgICAgICAgIHJlc2VydmVkICAgICAgICAg
ICAgICB8CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t
LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGJ1ZmZlcl9zeiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgKiArLS0t
LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t
LS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAgICAgICAgICAgICAgICAgIGdyZWZfZGlyZWN0b3J5
X3N0YXJ0ICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgKiArLS0tLS0tLS0tLS0tLS0tLS0r
LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisg
KiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc2VydmVkICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICB8CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t
LS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8L1wvXC9cL1wvXC9c
L1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wv
XC98CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t
LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHJlc2VydmVkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgKiArLS0tLS0t
LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t
LS0tLS0tLS0rCisgKgorICogcGNtX3JhdGUgLSB1aW50MzJfdCwgc3RyZWFtIGRhdGEgcmF0ZSwg
SHoKKyAqIHBjbV9mb3JtYXQgLSB1aW50OF90LCBYRU5TTkRfUENNX0ZPUk1BVF9YWFggdmFsdWUK
KyAqIHBjbV9jaGFubmVscyAtIHVpbnQ4X3QsIG51bWJlciBvZiBjaGFubmVscyBvZiB0aGlzIHN0
cmVhbQorICogYnVmZmVyX3N6IC0gdWludDMyX3QsIGJ1ZmZlciBzaXplIHRvIGJlIGFsbG9jYXRl
ZCBpbiBvY3RldHMKKyAqIGdyZWZfZGlyZWN0b3J5X3N0YXJ0IC0gZ3JhbnRfcmVmX3QsIGEgcmVm
ZXJlbmNlIHRvIHRoZSBmaXJzdCBzaGFyZWQgcGFnZQorICogICBkZXNjcmliaW5nIHNoYXJlZCBi
dWZmZXIgcmVmZXJlbmNlcy4gQXQgbGVhc3Qgb25lIHBhZ2UgZXhpc3RzLiBJZiBzaGFyZWQKKyAq
ICAgYnVmZmVyIHNpemUgZXhjZWVkcyB3aGF0IGNhbiBiZSBhZGRyZXNzZWQgYnkgdGhpcyBzaW5n
bGUgcGFnZSwgdGhlbgorICogICByZWZlcmVuY2UgdG8gdGhlIG5leHQgcGFnZSBtdXN0IGJlIHN1
cHBsaWVkIChzZWUgZ3JlZl9kaXJfbmV4dF9wYWdlIGJlbG93KQorICovCisKK3N0cnVjdCB4ZW5z
bmRfb3Blbl9yZXEgeworICAgIHVpbnQzMl90IHBjbV9yYXRlOyAvKiBpbiBIeiAqLworICAgIHVp
bnQ4X3QgcGNtX2Zvcm1hdDsKKyAgICB1aW50OF90IHBjbV9jaGFubmVsczsKKyAgICB1aW50MTZf
dCByZXNlcnZlZDsKKyAgICB1aW50MzJfdCBidWZmZXJfc3o7CisgICAgZ3JhbnRfcmVmX3QgZ3Jl
Zl9kaXJlY3Rvcnlfc3RhcnQ7Cit9OworCisvKgorICogU2hhcmVkIHBhZ2UgZm9yIFhFTlNORF9P
UF9PUEVOIGJ1ZmZlciBkZXNjcmlwdG9yIChncmVmX2RpcmVjdG9yeSBpbiB0aGUKKyAqICAgcmVx
dWVzdCkgZW1wbG95cyBhIGxpc3Qgb2YgcGFnZXMsIGRlc2NyaWJpbmcgYWxsIHBhZ2VzIG9mIHRo
ZSBzaGFyZWQgZGF0YQorICogICBidWZmZXI6CisgKiAgICAgICAgICAwICAgICAgICAgICAgICAg
ICAxICAgICAgICAgICAgICAgICAgMiAgICAgICAgICAgICAgICAzICAgICAgICBvY3RldAorICog
Ky0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0t
LS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgZ3JlZl9kaXJf
bmV4dF9wYWdlICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0t
LS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t
KworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ3JlZlswXSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t
LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfC9cL1wvXC9c
L1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wv
XC9cL1wvfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t
LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgZ3JlZltpXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0t
LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t
LS0tLS0tLS0tLS0tKworICogfC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9c
L1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvfAorICogKy0tLS0tLS0tLS0tLS0tLS0t
Ky0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKwor
ICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ3JlZltOIC0xXSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t
LS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICoKKyAqIGdyZWZfZGly
X25leHRfcGFnZSAtIGdyYW50X3JlZl90LCByZWZlcmVuY2UgdG8gdGhlIG5leHQgcGFnZSBkZXNj
cmliaW5nCisgKiAgIHBhZ2UgZGlyZWN0b3J5LiBNdXN0IGJlIDAgaWYgbm8gbW9yZSBwYWdlcyBp
biB0aGUgbGlzdC4KKyAqIGdyZWZbaV0gLSBncmFudF9yZWZfdCwgcmVmZXJlbmNlIHRvIGEgc2hh
cmVkIHBhZ2Ugb2YgdGhlIGJ1ZmZlcgorICogICBhbGxvY2F0ZWQgYXQgWEVOU05EX09QX09QRU4K
KyAqCisgKiBOdW1iZXIgb2YgZ3JhbnRfcmVmX3QgZW50cmllcyBpbiB0aGUgd2hvbGUgcGFnZSBk
aXJlY3RvcnkgaXMgbm90CisgKiBwYXNzZWQsIGJ1dCBpbnN0ZWFkIGNhbiBiZSBjYWxjdWxhdGVk
IGFzOgorICogICBudW1fZ3JlZnNfdG90YWwgPSAoWEVOU05EX09QX09QRU4uYnVmZmVyX3N6ICsg
WEVOX1BBR0VfU0laRSAtIDEpIC8KKyAqICAgICAgIFhFTl9QQUdFX1NJWkUKKyAqLworCitzdHJ1
Y3QgeGVuc25kX3BhZ2VfZGlyZWN0b3J5IHsKKyAgICBncmFudF9yZWZfdCBncmVmX2Rpcl9uZXh0
X3BhZ2U7CisgICAgZ3JhbnRfcmVmX3QgZ3JlZlsxXTsgLyogVmFyaWFibGUgbGVuZ3RoICovCit9
OworCisvKgorICogIFJlcXVlc3QgY2xvc2UgLSBjbG9zZSBhbiBvcGVuZWQgcGNtIHN0cmVhbToK
KyAqICAgICAgICAgIDAgICAgICAgICAgICAgICAgIDEgICAgICAgICAgICAgICAgICAyICAgICAg
ICAgICAgICAgIDMgICAgICAgIG9jdGV0CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t
LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAg
ICAgICAgICAgICBpZCAgICAgICAgICAgICAgICB8IFhFTlNORF9PUF9DTE9TRSB8ICAgICBzdHJl
YW1faWR4ICB8CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t
LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHJlc2VydmVkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgKiAr
LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0t
LS0tLS0tLS0tLS0tLS0rCisgKiB8L1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9c
L1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC98CisgKiArLS0tLS0tLS0tLS0tLS0t
LS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0r
CisgKiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc2VydmVkICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB8CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t
LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKi8KKworLyoKKyAq
IFJlcXVlc3QgcmVhZC93cml0ZSAtIHVzZWQgZm9yIHJlYWQgKGZvciBjYXB0dXJlKSBvciB3cml0
ZSAoZm9yIHBsYXliYWNrKToKKyAqICAgICAgICAgIDAgICAgICAgICAgICAgICAgIDEgICAgICAg
ICAgICAgICAgICAyICAgICAgICAgICAgICAgIDMgICAgICAgIG9jdGV0CisgKiArLS0tLS0tLS0t
LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0t
LS0tLS0rCisgKiB8ICAgICAgICAgICAgICAgICBpZCAgICAgICAgICAgICAgICB8ICAgIG9wZXJh
dGlvbiAgICB8ICAgICBzdHJlYW1faWR4ICB8CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t
LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc2VydmVkICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB8CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0t
LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBvZmZzZXQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cisg
KiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0r
LS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBs
ZW5ndGggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgKiArLS0tLS0tLS0tLS0t
LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t
LS0rCisgKiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc2VydmVkICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB8CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t
LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8L1wvXC9c
L1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wv
XC9cL1wvXC98CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t
LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIHJlc2VydmVkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgKiAr
LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0t
LS0tLS0tLS0tLS0tLS0rCisgKgorICogb3BlcmF0aW9uIC0gWEVOU05EX09QX1JFQUQgZm9yIHJl
YWQgb3IgWEVOU05EX09QX1dSSVRFIGZvciB3cml0ZQorICogb2Zmc2V0IC0gdWludDMyX3QsIHJl
YWQgb3Igd3JpdGUgZGF0YSBvZmZzZXQgd2l0aGluIHRoZSBzaGFyZWQgYnVmZmVyCisgKiAgIHBh
c3NlZCB3aXRoIFhFTlNORF9PUF9PUEVOIHJlcXVlc3QKKyAqIGxlbmd0aCAtIHVpbnQzMl90LCBy
ZWFkIG9yIHdyaXRlIGRhdGEgbGVuZ3RoCisgKi8KKworc3RydWN0IHhlbnNuZF9yd19yZXEgewor
ICAgIHVpbnQzMl90IG9mZnNldDsKKyAgICB1aW50MzJfdCBsZW47Cit9OworCisvKgorICogUmVx
dWVzdCBzZXQvZ2V0IHZvbHVtZSAtIHNldC9nZXQgY2hhbm5lbHMnIHZvbHVtZSBvZiB0aGUgc3Ry
ZWFtIGdpdmVuOgorICogICAgICAgICAgMCAgICAgICAgICAgICAgICAgMSAgICAgICAgICAgICAg
ICAgIDIgICAgICAgICAgICAgICAgMyAgICAgICAgb2N0ZXQKKyAqICstLS0tLS0tLS0tLS0tLS0t
LSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsK
KyAqIHwgICAgICAgICAgICAgICAgIGlkICAgICAgICAgICAgICAgIHwgICAgb3BlcmF0aW9uICAg
IHwgICAgIHN0cmVhbV9pZHggIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t
LS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t
LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wv
XC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL3wKKyAqICstLS0t
LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t
LS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSst
LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAq
CisgKiBvcGVyYXRpb24gLSBYRU5TTkRfT1BfU0VUX1ZPTFVNRSBmb3Igdm9sdW1lIHNldAorICog
ICBvciBYRU5TTkRfT1BfR0VUX1ZPTFVNRSBmb3Igdm9sdW1lIGdldAorICogQnVmZmVyIHBhc3Nl
ZCB3aXRoIFhFTlNORF9PUF9PUEVOIGlzIHVzZWQgdG8gZXhjaGFuZ2Ugdm9sdW1lCisgKiB2YWx1
ZXM6CisgKgorICogICAgICAgICAgMCAgICAgICAgICAgICAgICAgMSAgICAgICAgICAgICAgICAg
IDIgICAgICAgICAgICAgICAgMyAgICAgICAgb2N0ZXQKKyAqICstLS0tLS0tLS0tLS0tLS0tLSst
LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAq
IHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhbm5lbFswXSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t
LSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqICsvXC9cL1wvXC9cL1wv
XC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9c
L3wKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t
LS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgY2hhbm5lbFtpXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0t
LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t
LS0tLS0tLSsKKyAqICsvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wv
XC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL3wKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0t
LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwg
ICAgICAgICAgICAgICAgY2hhbm5lbFtYRU5TTkRfT1BfT1BFTi5wY21fY2hhbm5lbHMgLSAxXSAg
ICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSst
LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqCisgKiBjaGFubmVsW2ldIC0g
c2ludDMyX3QsIHZvbHVtZSBvZiBpLXRoIGNoYW5uZWwKKyAqIFZvbHVtZSBpcyBleHByZXNzZWQg
YXMgYSBzaWduZWQgdmFsdWUgaW4gc3RlcHMgb2YgMC4wMDEgZEIsCisgKiB3aGlsZSAwIGJlaW5n
IDAgZEIuCisgKi8KKworLyoKKyAqIFJlcXVlc3QgbXV0ZS91bm11dGUgLSBtdXRlL3VubXV0ZSBz
dHJlYW06CisgKiAgICAgICAgICAwICAgICAgICAgICAgICAgICAxICAgICAgICAgICAgICAgICAg
MiAgICAgICAgICAgICAgICAzICAgICAgICBvY3RldAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0t
LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICog
fCAgICAgICAgICAgICAgICAgaWQgICAgICAgICAgICAgICAgfCAgICBvcGVyYXRpb24gICAgfCAg
ICAgc3RyZWFtX2lkeCAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t
Ky0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICByZXNlcnZlZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
fAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t
LS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wv
XC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvfAorICogKy0tLS0tLS0t
LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t
LS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t
LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICoKKyAq
IG9wZXJhdGlvbiAtIFhFTlNORF9PUF9NVVRFIGZvciBtdXRlIG9yIFhFTlNORF9PUF9VTk1VVEUg
Zm9yIHVubXV0ZQorICogQnVmZmVyIHBhc3NlZCB3aXRoIFhFTlNORF9PUF9PUEVOIGlzIHVzZWQg
dG8gZXhjaGFuZ2UgbXV0ZS91bm11dGUKKyAqIHZhbHVlczoKKyAqCisgKiAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBvY3RldAorICogKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBjaGFubmVsWzBdICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tKworICogKy9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9c
L1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvfAorICogKy0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwor
ICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFubmVsW2ldICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICogKy9cL1wvXC9cL1wv
XC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9c
L1wvfAorICogKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICBjaGFubmVsW1hF
TlNORF9PUF9PUEVOLnBjbV9jaGFubmVscyAtIDFdICAgICAgICAgICAgICAgfAorICogKy0tLS0t
LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t
LS0tLS0tLS0tKworICoKKyAqIGNoYW5uZWxbaV0gLSB1aW50OF90LCBub24temVybyBpZiBpLXRo
IGNoYW5uZWwgbmVlZHMgdG8gYmUgbXV0ZWQvdW5tdXRlZAorICovCisKKy8qCisgKiBBbGwgcmVz
cG9uc2UgcGFja2V0cyBoYXZlIHRoZSBzYW1lIGxlbmd0aCAoMzIgb2N0ZXRzKQorICoKKyAqIFJl
c3BvbnNlIGZvciBhbGwgcmVxdWVzdHM6CisgKiAgICAgICAgICAwICAgICAgICAgICAgICAgICAx
ICAgICAgICAgICAgICAgICAgMiAgICAgICAgICAgICAgICAzICAgICAgICBvY3RldAorICogKy0t
LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t
LS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgaWQgICAgICAgICAgICAgICAgfCAg
ICBvcGVyYXRpb24gICAgfCAgICAgc3RyZWFtX2lkeCAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0t
Ky0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKwor
ICogfCAgICAgIHN0YXR1cyAgICAgfCAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCAgICAg
ICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t
LS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t
LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9c
L1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvfAorICogKy0tLS0t
LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t
LS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0t
LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICoK
KyAqIGlkIC0gdWludDE2X3QsIGNvcGllZCBmcm9tIHRoZSByZXF1ZXN0CisgKiBzdHJlYW1faWR4
IC0gdWludDhfdCwgY29waWVkIGZyb20gcmVxdWVzdAorICogb3BlcmF0aW9uIC0gdWludDhfdCwg
WEVOU05EX09QXyogLSBjb3BpZWQgZnJvbSByZXF1ZXN0CisgKiBzdGF0dXMgLSBpbnQ4X3QsIHJl
c3BvbnNlIHN0YXR1cyAoWEVOU05EX1JTUF8qKQorICovCisKK3N0cnVjdCB4ZW5zbmRfcmVxIHsK
KyAgICB1aW50MTZfdCBpZDsKKyAgICB1aW50OF90IG9wZXJhdGlvbjsKKyAgICB1aW50OF90IHN0
cmVhbV9pZHg7CisgICAgdWludDMyX3QgcmVzZXJ2ZWQ7CisgICAgdW5pb24geworICAgICAgICBz
dHJ1Y3QgeGVuc25kX29wZW5fcmVxIG9wZW47CisgICAgICAgIHN0cnVjdCB4ZW5zbmRfcndfcmVx
IHJ3OworICAgICAgICB1aW50OF90IHJlc2VydmVkWzI0XTsKKyAgICB9IG9wOworfTsKKworc3Ry
dWN0IHhlbnNuZF9yZXNwIHsKKyAgICB1aW50MTZfdCBpZDsKKyAgICB1aW50OF90IG9wZXJhdGlv
bjsKKyAgICB1aW50OF90IHN0cmVhbV9pZHg7CisgICAgaW50OF90IHN0YXR1czsKKyAgICB1aW50
OF90IHJlc2VydmVkWzI3XTsKK307CisKK0RFRklORV9SSU5HX1RZUEVTKHhlbl9zbmRpZiwgc3Ry
dWN0IHhlbnNuZF9yZXEsIHN0cnVjdCB4ZW5zbmRfcmVzcCk7CisKKyNlbmRpZiAvKiBfX1hFTl9Q
VUJMSUNfSU9fU05ESUZfSF9fICovCi0tIAoyLjcuNAoKCl9fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fCkVtYmVkZGVkLXB2LWRldmVsIG1haWxpbmcgbGlzdApF
bWJlZGRlZC1wdi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpodHRwczovL2xpc3RzLnhlbnBy
b2plY3Qub3JnL2NnaS1iaW4vbWFpbG1hbi9saXN0aW5mby9lbWJlZGRlZC1wdi1kZXZlbA==

From embedded-pv-devel-bounces@lists.xenproject.org Thu Dec 08 15:13:08 2016
Return-path: <embedded-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 08 Dec 2016 15:13:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.84_2)
	(envelope-from <embedded-pv-devel-bounces@lists.xenproject.org>)
	id 1cF0Ng-0005gS-2O; Thu, 08 Dec 2016 15:13:08 +0000
Received: from mail6.bemta5.messagelabs.com ([195.245.231.135])
 by lists.xenproject.org with esmtp (Exim 4.84_2)
 (envelope-from <andr2000@gmail.com>)
 id 1cF0Ne-0005gH-MY; Thu, 08 Dec 2016 15:13:06 +0000
Received: from [85.158.139.211] by server-5.bemta-5.messagelabs.com id
 B2/DA-02084-18879485; Thu, 08 Dec 2016 15:13:05 +0000
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFmpmleJIrShJLcpLzFFi42K5GHrpkG5DhWe
 EwcXPEhYrey4yW3zfMpnJgcnj8IcrLAGMUayZeUn5FQmsGW39exkLnCvu/b3M2MBo1sXIySEk
 UCIx7/EGpi5GLg4WgaWsEu++vwVzJAQOskq8mviIEaRKQiBGYunjCewQdo3ExUf9rBDdihJfn
 01ngrCnM0lMeugJ0iws0MQo8fjJcrAGEQEliXurJkMVVUkc6fkPtoFZYBazxMV7B9lAEmwCRh
 LLb/xgAbF5BWwk1m95wtzFyAF0k4rEjzllIGFRgXCJ97MWskGUCEqcnPkErJxTwFli0vEVYPO
 ZBWwl7szdzQxhy0tsfzuHeQKj8CwkLbOQlM1CUraAkXkVo0ZxalFZapGuoaFeUlFmekZJbmJm
 jq6hgalebmpxcWJ6ak5iUrFecn7uJkZgwDMAwQ7Gle3OhxglOZiURHl3TXCPEOJLyk+pzEgsz
 ogvKs1JLT7EKMPBoSTBm1LuGSEkWJSanlqRlpkDjD2YtAQHj5IIr00ZUJq3uCAxtzgzHSJ1it
 GV49qbhU+ZOPa9BZHHZi0GkgferwCSuzrXPGUSYsnLz0uVEufVBJktANKcUZoHNxqWNi4xyko
 J8zICHSvEU5BalJtZgir/ilGcg1FJmHc5yBSezLwSuAteAR3HBHTcvBvuIMeVJCKkpBoYk2be
 yRThbq865JZ/lb1jOUPazpYVkY9yUo9tPvW8XPXNKh7eNyaVsu8MIya/X/i17987vh4f6e195
 zPENl9sONz9ISqyQP/zivnx04L/iouq7C/TO+Ho1fDsreq3g3ck2Uo7zi6Unj4j0Dj/gpE1x/
 4c+6thf5gUs+/+/OzTfOX8JP45L2Y+UmIpzkg01GIuKk4EAMFAu08WAwAA
X-Env-Sender: andr2000@gmail.com
X-Msg-Ref: server-2.tower-206.messagelabs.com!1481209978!53814994!1
X-Originating-IP: [209.85.210.194]
X-SpamReason: No, hits=0.0 required=7.0 tests=
X-StarScan-Received: 
X-StarScan-Version: 9.0.16; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 24640 invoked from network); 8 Dec 2016 15:12:58 -0000
Received: from mail-wj0-f194.google.com (HELO mail-wj0-f194.google.com)
 (209.85.210.194)
 by server-2.tower-206.messagelabs.com with AES128-GCM-SHA256 encrypted SMTP;
 8 Dec 2016 15:12:58 -0000
Received: by mail-wj0-f194.google.com with SMTP id j10so27571227wjb.3;
 Thu, 08 Dec 2016 07:13:04 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
 h=subject:to:references:cc:from:message-id:date:user-agent
 :mime-version:in-reply-to:content-transfer-encoding;
 bh=NwEjx7KM8WJSmWLeb7e3wLL63MWCnk2PxLDLIBnv30o=;
 b=XpEgVrR7iyA/1O3P7vLZJ7de8/bddqtlSnNSc0T3LrBDH9SD1JKqif3Wn3XKqH3eqq
 xFkn8gOD5HZsCkeIVMJ5QU6If9IMqSDGeo1ROmnv04WOcD6sFfrsVMTgcohLbZCgi3Dy
 /58/iQokcNt+XZbes/qOifBkc1iFnrpX5rYLFG1bRSNAntF737nSrm3OrsNCapHyM/t5
 hWnJyWIHXJDUbqc5c71TrIV+LIxpT/6jsOiSMLJIUJjHh7GQ9fRxx+zZBCAE5UpsCIMX
 e5lhC2TxrP9TkPC8JSuxawrYW68VhOKHYyL+JzvK7wEPWexOtZmpKY4DLkuVLjv62UpV
 Z2tg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20130820;
 h=x-gm-message-state:subject:to:references:cc:from:message-id:date
 :user-agent:mime-version:in-reply-to:content-transfer-encoding;
 bh=NwEjx7KM8WJSmWLeb7e3wLL63MWCnk2PxLDLIBnv30o=;
 b=RPircWtixlCgt0f4vdGH/zVNXp2SyTJ7dycU8FeM1tzi/rZGiBg9ZLVQrLPLWPZSGv
 TyRn/fo3xLibRp/WyvXi8A4D1z7MGrEO9vV79/ZFQ/2naAkIu2mijZpAcFVrF4J65Ack
 nA8oqFzhgDyWix5E1FbMBxcnOPP8bF5/ONollMFRXp7MA1zYD3G4bQFavHyxMURg43qH
 3Jz8PQoojEhl3dVUWbbQNT+zpgQaclXKXifRAUu6WWOi+zcr9DXpiEZG4iHFB8vrBzFM
 9k9x6NG1iSBdQTEXYlUAZE2ClhPXsQLRczMwqhYF13QMBZLRSaikNLNWqe4ZZfAbUDNB
 IYFg==
X-Gm-Message-State: AKaTC01fHzS33d4K1Cv4rtHAAytZIxuLlbL2VKeDsqEWShf6WntcwLTUd3NPUi4K6jhKvA==
X-Received: by 10.194.111.102 with SMTP id ih6mr62843883wjb.214.1481209983986; 
 Thu, 08 Dec 2016 07:13:03 -0800 (PST)
Received: from [10.17.182.9] (ll-56.209.223.85.sovam.net.ua. [85.223.209.56])
 by smtp.gmail.com with ESMTPSA id
 l187sm15776166wml.6.2016.12.08.07.13.02
 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
 Thu, 08 Dec 2016 07:13:03 -0800 (PST)
To: xen-devel@lists.xenproject.org
References: <1480943129-20524-1-git-send-email-andr2000@gmail.com>
 <1480943129-20524-2-git-send-email-andr2000@gmail.com>
From: Oleksandr Andrushchenko <andr2000@gmail.com>
Message-ID: <c9758f6d-fbd8-ca07-caf5-859218318702@gmail.com>
Date: Thu, 8 Dec 2016 17:13:02 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101
 Thunderbird/45.4.0
MIME-Version: 1.0
In-Reply-To: <1480943129-20524-2-git-send-email-andr2000@gmail.com>
Cc: lars.kurth@citrix.com, iurii.konovalenko@globallogic.com,
 konrad.wilk@oracle.com, vlad.babchuk@gmail.com, ian.jackson@eu.citrix.com,
 dario.faggioli@citrix.com, tim@xen.org, julien.grall@arm.com,
 andrii.anisov@gmail.com, olekstysh@gmail.com,
 embedded-pv-devel@lists.xenproject.org, al1img@gmail.com,
 david.vrabel@citrix.com, JBeulich@suse.com,
 oleksandr.dmytryshyn@globallogic.com, joculator@gmail.com
Subject: Re: [Embedded-pv-devel] [PATCH v15] This is the ABI for the two
 halves of a para-virtualized sound driver to communicate with each to
 other.
X-BeenThere: embedded-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <embedded-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/cgi-bin/mailman/options/embedded-pv-devel>, 
 <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:embedded-pv-devel@lists.xenproject.org>
List-Help: <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/cgi-bin/mailman/listinfo/embedded-pv-devel>, 
 <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: embedded-pv-devel-bounces@lists.xenproject.org
Sender: "Embedded-pv-devel" <embedded-pv-devel-bounces@lists.xenproject.org>

SSdtIGp1c3Qgd29uZGVyaW5nIGlmIGFueWJvZHkgaGFkIGEgY2hhbmNlIHRvIGxvb2sgYXQgdGhl
IHBhdGNoLi4uCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
XwpFbWJlZGRlZC1wdi1kZXZlbCBtYWlsaW5nIGxpc3QKRW1iZWRkZWQtcHYtZGV2ZWxAbGlzdHMu
eGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9jZ2ktYmluL21haWxt
YW4vbGlzdGluZm8vZW1iZWRkZWQtcHYtZGV2ZWw=

From embedded-pv-devel-bounces@lists.xenproject.org Thu Dec 08 15:13:08 2016
Return-path: <embedded-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 08 Dec 2016 15:13:08 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.84_2)
	(envelope-from <embedded-pv-devel-bounces@lists.xenproject.org>)
	id 1cF0Ng-0005gS-2O; Thu, 08 Dec 2016 15:13:08 +0000
Received: from mail6.bemta5.messagelabs.com ([195.245.231.135])
 by lists.xenproject.org with esmtp (Exim 4.84_2)
 (envelope-from <andr2000@gmail.com>)
 id 1cF0Ne-0005gH-MY; Thu, 08 Dec 2016 15:13:06 +0000
Received: from [85.158.139.211] by server-5.bemta-5.messagelabs.com id
 B2/DA-02084-18879485; Thu, 08 Dec 2016 15:13:05 +0000
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFmpmleJIrShJLcpLzFFi42K5GHrpkG5DhWe
 EwcXPEhYrey4yW3zfMpnJgcnj8IcrLAGMUayZeUn5FQmsGW39exkLnCvu/b3M2MBo1sXIySEk
 UCIx7/EGpi5GLg4WgaWsEu++vwVzJAQOskq8mviIEaRKQiBGYunjCewQdo3ExUf9rBDdihJfn
 01ngrCnM0lMeugJ0iws0MQo8fjJcrAGEQEliXurJkMVVUkc6fkPtoFZYBazxMV7B9lAEmwCRh
 LLb/xgAbF5BWwk1m95wtzFyAF0k4rEjzllIGFRgXCJ97MWskGUCEqcnPkErJxTwFli0vEVYPO
 ZBWwl7szdzQxhy0tsfzuHeQKj8CwkLbOQlM1CUraAkXkVo0ZxalFZapGuoaFeUlFmekZJbmJm
 jq6hgalebmpxcWJ6ak5iUrFecn7uJkZgwDMAwQ7Gle3OhxglOZiURHl3TXCPEOJLyk+pzEgsz
 ogvKs1JLT7EKMPBoSTBm1LuGSEkWJSanlqRlpkDjD2YtAQHj5IIr00ZUJq3uCAxtzgzHSJ1it
 GV49qbhU+ZOPa9BZHHZi0GkgferwCSuzrXPGUSYsnLz0uVEufVBJktANKcUZoHNxqWNi4xyko
 J8zICHSvEU5BalJtZgir/ilGcg1FJmHc5yBSezLwSuAteAR3HBHTcvBvuIMeVJCKkpBoYk2be
 yRThbq865JZ/lb1jOUPazpYVkY9yUo9tPvW8XPXNKh7eNyaVsu8MIya/X/i17987vh4f6e195
 zPENl9sONz9ISqyQP/zivnx04L/iouq7C/TO+Ho1fDsreq3g3ck2Uo7zi6Unj4j0Dj/gpE1x/
 4c+6thf5gUs+/+/OzTfOX8JP45L2Y+UmIpzkg01GIuKk4EAMFAu08WAwAA
X-Env-Sender: andr2000@gmail.com
X-Msg-Ref: server-2.tower-206.messagelabs.com!1481209978!53814994!1
X-Originating-IP: [209.85.210.194]
X-SpamReason: No, hits=0.0 required=7.0 tests=
X-StarScan-Received: 
X-StarScan-Version: 9.0.16; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 24640 invoked from network); 8 Dec 2016 15:12:58 -0000
Received: from mail-wj0-f194.google.com (HELO mail-wj0-f194.google.com)
 (209.85.210.194)
 by server-2.tower-206.messagelabs.com with AES128-GCM-SHA256 encrypted SMTP;
 8 Dec 2016 15:12:58 -0000
Received: by mail-wj0-f194.google.com with SMTP id j10so27571227wjb.3;
 Thu, 08 Dec 2016 07:13:04 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;
 h=subject:to:references:cc:from:message-id:date:user-agent
 :mime-version:in-reply-to:content-transfer-encoding;
 bh=NwEjx7KM8WJSmWLeb7e3wLL63MWCnk2PxLDLIBnv30o=;
 b=XpEgVrR7iyA/1O3P7vLZJ7de8/bddqtlSnNSc0T3LrBDH9SD1JKqif3Wn3XKqH3eqq
 xFkn8gOD5HZsCkeIVMJ5QU6If9IMqSDGeo1ROmnv04WOcD6sFfrsVMTgcohLbZCgi3Dy
 /58/iQokcNt+XZbes/qOifBkc1iFnrpX5rYLFG1bRSNAntF737nSrm3OrsNCapHyM/t5
 hWnJyWIHXJDUbqc5c71TrIV+LIxpT/6jsOiSMLJIUJjHh7GQ9fRxx+zZBCAE5UpsCIMX
 e5lhC2TxrP9TkPC8JSuxawrYW68VhOKHYyL+JzvK7wEPWexOtZmpKY4DLkuVLjv62UpV
 Z2tg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20130820;
 h=x-gm-message-state:subject:to:references:cc:from:message-id:date
 :user-agent:mime-version:in-reply-to:content-transfer-encoding;
 bh=NwEjx7KM8WJSmWLeb7e3wLL63MWCnk2PxLDLIBnv30o=;
 b=RPircWtixlCgt0f4vdGH/zVNXp2SyTJ7dycU8FeM1tzi/rZGiBg9ZLVQrLPLWPZSGv
 TyRn/fo3xLibRp/WyvXi8A4D1z7MGrEO9vV79/ZFQ/2naAkIu2mijZpAcFVrF4J65Ack
 nA8oqFzhgDyWix5E1FbMBxcnOPP8bF5/ONollMFRXp7MA1zYD3G4bQFavHyxMURg43qH
 3Jz8PQoojEhl3dVUWbbQNT+zpgQaclXKXifRAUu6WWOi+zcr9DXpiEZG4iHFB8vrBzFM
 9k9x6NG1iSBdQTEXYlUAZE2ClhPXsQLRczMwqhYF13QMBZLRSaikNLNWqe4ZZfAbUDNB
 IYFg==
X-Gm-Message-State: AKaTC01fHzS33d4K1Cv4rtHAAytZIxuLlbL2VKeDsqEWShf6WntcwLTUd3NPUi4K6jhKvA==
X-Received: by 10.194.111.102 with SMTP id ih6mr62843883wjb.214.1481209983986; 
 Thu, 08 Dec 2016 07:13:03 -0800 (PST)
Received: from [10.17.182.9] (ll-56.209.223.85.sovam.net.ua. [85.223.209.56])
 by smtp.gmail.com with ESMTPSA id
 l187sm15776166wml.6.2016.12.08.07.13.02
 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
 Thu, 08 Dec 2016 07:13:03 -0800 (PST)
To: xen-devel@lists.xenproject.org
References: <1480943129-20524-1-git-send-email-andr2000@gmail.com>
 <1480943129-20524-2-git-send-email-andr2000@gmail.com>
From: Oleksandr Andrushchenko <andr2000@gmail.com>
Message-ID: <c9758f6d-fbd8-ca07-caf5-859218318702@gmail.com>
Date: Thu, 8 Dec 2016 17:13:02 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101
 Thunderbird/45.4.0
MIME-Version: 1.0
In-Reply-To: <1480943129-20524-2-git-send-email-andr2000@gmail.com>
Cc: lars.kurth@citrix.com, iurii.konovalenko@globallogic.com,
 konrad.wilk@oracle.com, vlad.babchuk@gmail.com, ian.jackson@eu.citrix.com,
 dario.faggioli@citrix.com, tim@xen.org, julien.grall@arm.com,
 andrii.anisov@gmail.com, olekstysh@gmail.com,
 embedded-pv-devel@lists.xenproject.org, al1img@gmail.com,
 david.vrabel@citrix.com, JBeulich@suse.com,
 oleksandr.dmytryshyn@globallogic.com, joculator@gmail.com
Subject: Re: [Embedded-pv-devel] [PATCH v15] This is the ABI for the two
 halves of a para-virtualized sound driver to communicate with each to
 other.
X-BeenThere: embedded-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <embedded-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/cgi-bin/mailman/options/embedded-pv-devel>, 
 <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:embedded-pv-devel@lists.xenproject.org>
List-Help: <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/cgi-bin/mailman/listinfo/embedded-pv-devel>, 
 <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: embedded-pv-devel-bounces@lists.xenproject.org
Sender: "Embedded-pv-devel" <embedded-pv-devel-bounces@lists.xenproject.org>

SSdtIGp1c3Qgd29uZGVyaW5nIGlmIGFueWJvZHkgaGFkIGEgY2hhbmNlIHRvIGxvb2sgYXQgdGhl
IHBhdGNoLi4uCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
XwpFbWJlZGRlZC1wdi1kZXZlbCBtYWlsaW5nIGxpc3QKRW1iZWRkZWQtcHYtZGV2ZWxAbGlzdHMu
eGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9jZ2ktYmluL21haWxt
YW4vbGlzdGluZm8vZW1iZWRkZWQtcHYtZGV2ZWw=

From embedded-pv-devel-bounces@lists.xenproject.org Thu Dec 22 07:21:32 2016
Return-path: <embedded-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 22 Dec 2016 07:21:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.84_2)
	(envelope-from <embedded-pv-devel-bounces@lists.xenproject.org>)
	id 1cJxgy-0006Hu-2v; Thu, 22 Dec 2016 07:21:32 +0000
Received: from mail6.bemta6.messagelabs.com ([193.109.254.103])
 by lists.xenproject.org with esmtp (Exim 4.84_2)
 (envelope-from <andr2000@gmail.com>)
 id 1cJxgw-0006HL-Ns; Thu, 22 Dec 2016 07:21:30 +0000
Received: from [193.109.254.147] by server-4.bemta-6.messagelabs.com id
 6F/99-25093-9FE7B585; Thu, 22 Dec 2016 07:21:29 +0000
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFvrOIsWRWlGSWpSXmKPExsVyMfTSYd2fddE
 RBqu7ZS1W9lxktvi+ZTKTA5PH4Q9XWAIYo1gz85LyKxJYM6b33GMq2MBUsWFLWgPjd8YuRk4O
 IYFiiVcLPjOD2CwCS1klHq+vBbElBA6ySnycrQlhx0g8vPqdCcKulDi6+QsLRK+ixNdn04HiX
 ED2dCaJOTPmsII4wgJNjBKPnyxnB6kSEZCSWL3xHitE1RpGifbpD5lBHGaBT8wS63v7weayCR
 hJLL/xA2guBwevgI3E4WY7iJNUJfY2vWYDCYsKhEtcPWwOEuYVEJQ4OfMJ2BWcArYSU1csANv
 FDGTfmbubGcKWl9j+dg7zBEbhWUhaZiEpm4WkbAEj8ypGjeLUorLUIl1DY72kosz0jJLcxMwc
 XUMDM73c1OLixPTUnMSkYr3k/NxNjMCAZwCCHYxflgUcYpTkYFIS5dUojI4Q4kvKT6nMSCzOi
 C8qzUktPsQow8GhJMFrUwuUEyxKTU+tSMvMAcYeTFqCg0dJhDeoBijNW1yQmFucmQ6ROsVoyX
 Fs1uKnTBwH3q8Akrs61zxlEmLJy89LlRLnrQSZJwDSkFGaBzcOlh4uMcpKCfMyAh0oxFOQWpS
 bWYIq/4pRnINRSZj3DsgUnsy8Eritr4AOYgI6aGF3OMhBJYkIKakGxurI1//fq/79LeChsPqO
 96SDr4w5P8tLtUQHL7bmvPdjZ5vnqevsaVmNzD2aj991HX/PuOWYOaOe5K1P8+IuPDD/4fnkm
 G1ytvCmpCn/ZLjT3rVPybcSqSyT0o+bphn8wc3vQ0DGqR2hFb7CF1ZWWhx4X26Tpt8r/u7eCp
 M7FwMaJB/H7/11QImlOCPRUIu5qDgRAEBYIJYKAwAA
X-Env-Sender: andr2000@gmail.com
X-Msg-Ref: server-15.tower-27.messagelabs.com!1482391289!25805541!1
X-Originating-IP: [209.85.210.195]
X-SpamReason: No, hits=0.0 required=7.0 tests=
X-StarScan-Received: 
X-StarScan-Version: 9.1.1; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 11609 invoked from network); 22 Dec 2016 07:21:29 -0000
Received: from mail-wj0-f195.google.com (HELO mail-wj0-f195.google.com)
 (209.85.210.195)
 by server-15.tower-27.messagelabs.com with AES128-GCM-SHA256 encrypted SMTP;
 22 Dec 2016 07:21:29 -0000
Received: by mail-wj0-f195.google.com with SMTP id hb5so1767982wjc.2;
 Wed, 21 Dec 2016 23:21:29 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=subject:to:references:cc:from:message-id:date:user-agent
 :mime-version:in-reply-to:content-transfer-encoding;
 bh=5dXloYezrxEX2aB1Pyer5KtWy9QUzvSWkHb3YvOLHu8=;
 b=EZ/0/vlli4BYVfVGISJJZQxCieiOnn+TGFP7qHfPuxRCVdt5lwsT9gq4ilXWASdSX1
 iJzuzD5ypr/LMVXioWERlVB86dzpthTx2rYoz6pYt+9SGqf0kAG85R9HLWpClihgfKgE
 uDE9c1cAKPHSmdcXETWvh+geeO4tBBzgBi7wGD3MLlqWQ1SAT4BcC8Zt57VEWeSjsYcs
 9s14t6/JoIAYAd67pCOQtH38etZjMMVsiS4bMqhlSVfIuh8cFqHMuvxqaV2VcXgAvn4E
 ywFmWPlTGlxSs9+q+V2VdUxDWHF6P7PkwrQNuLTNEZeSeC2JR3vEqiKhkhMJN1Tw6QHj
 mb3w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:subject:to:references:cc:from:message-id:date
 :user-agent:mime-version:in-reply-to:content-transfer-encoding;
 bh=5dXloYezrxEX2aB1Pyer5KtWy9QUzvSWkHb3YvOLHu8=;
 b=K5oxXA+vEjhvPGP0vwSxHIyqbkeNcwGC5O+CgD04JfInHg9+7lD0ccMT5yCkpL7cAG
 u0ieIZ8afoblABLL8PnsegBECcHeKvOZZdIahyKWRNkyLbFCIPLwEWc83CC8lgvaM4uV
 2x8Lil1yBl7H0gpgnyjGF/JXKO4UIGPPjRFN2a50VdO0ueuqUQ/HTpPMt8b8WUhNpto6
 SOq7u5r8oNeh+sHfTFU15YC+gGCpIhYYC3kJhOLhARtvYq/gWI47XrvW+vpm8Byyd0sj
 SjyS7N+lVDZAvF/fMkycCYQZlMzLqT1Hl3EoqiLTH5gZlZdiRtQt2T4AAwvEjhR0nzph
 9LpA==
X-Gm-Message-State: AIkVDXJzHEACGbtABBGwbzNuyZCxGAUs5+IWsgL/z6yamiWhJgfz8gu2oOJeyfyybn+OWA==
X-Received: by 10.194.85.165 with SMTP id i5mr7745351wjz.147.1482391289098;
 Wed, 21 Dec 2016 23:21:29 -0800 (PST)
Received: from [10.17.182.9] (ll-54.209.223.85.sovam.net.ua. [85.223.209.54])
 by smtp.gmail.com with ESMTPSA id
 kq7sm34089907wjb.30.2016.12.21.23.21.27
 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
 Wed, 21 Dec 2016 23:21:28 -0800 (PST)
To: konrad.wilk@oracle.com
References: <1480943129-20524-1-git-send-email-andr2000@gmail.com>
 <1480943129-20524-2-git-send-email-andr2000@gmail.com>
 <c9758f6d-fbd8-ca07-caf5-859218318702@gmail.com>
From: Oleksandr Andrushchenko <andr2000@gmail.com>
Message-ID: <bedf5caa-decc-cf79-d4f7-4294f47723a2@gmail.com>
Date: Thu, 22 Dec 2016 09:21:26 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101
 Thunderbird/45.5.1
MIME-Version: 1.0
In-Reply-To: <c9758f6d-fbd8-ca07-caf5-859218318702@gmail.com>
Cc: lars.kurth@citrix.com, iurii.konovalenko@globallogic.com,
 Stefano Stabellini <sstabellini@kernel.org>, Oleksandr_Andrushchenko@epam.com,
 vlad.babchuk@gmail.com, ian.jackson@eu.citrix.com, dario.faggioli@citrix.com,
 tim@xen.org, julien.grall@arm.com, andrii.anisov@gmail.com,
 olekstysh@gmail.com, embedded-pv-devel@lists.xenproject.org, al1img@gmail.com,
 david.vrabel@citrix.com, JBeulich@suse.com, xen-devel@lists.xenproject.org,
 oleksandr.dmytryshyn@globallogic.com, joculator@gmail.com
Subject: Re: [Embedded-pv-devel] [PATCH v15] This is the ABI for the two
 halves of a para-virtualized sound driver to communicate with each to
 other.
X-BeenThere: embedded-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <embedded-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/cgi-bin/mailman/options/embedded-pv-devel>, 
 <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:embedded-pv-devel@lists.xenproject.org>
List-Help: <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/cgi-bin/mailman/listinfo/embedded-pv-devel>, 
 <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: embedded-pv-devel-bounces@lists.xenproject.org
Sender: "Embedded-pv-devel" <embedded-pv-devel-bounces@lists.xenproject.org>

SGksIEtvbnJhZCEKCkkgc2VlIG5vIGNvbW1lbnRzIGZvciBhbG1vc3QgMyB3ZWVrcyBub3csIHNv
CnByb2JhYmx5IHRoZXJlIGFyZSBubyBvYmplY3Rpb25zIGFnYWluc3QgdGhpcyBwcm90b2NvbC4K
Q2FuIHdlIHBsZWFzZSBtb3ZlIG9uIG9uIHRoaXM/CgpUaGFuayB5b3UgaW4gYWR2YW5jZSwKT2xl
a3NhbmRyCgpPbiAxMi8wOC8yMDE2IDA1OjEzIFBNLCBPbGVrc2FuZHIgQW5kcnVzaGNoZW5rbyB3
cm90ZToKPiBJJ20ganVzdCB3b25kZXJpbmcgaWYgYW55Ym9keSBoYWQgYSBjaGFuY2UgdG8gbG9v
ayBhdCB0aGUgcGF0Y2guLi4KCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fXwpFbWJlZGRlZC1wdi1kZXZlbCBtYWlsaW5nIGxpc3QKRW1iZWRkZWQtcHYtZGV2
ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9jZ2kt
YmluL21haWxtYW4vbGlzdGluZm8vZW1iZWRkZWQtcHYtZGV2ZWw=

From embedded-pv-devel-bounces@lists.xenproject.org Thu Dec 22 07:21:32 2016
Return-path: <embedded-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 22 Dec 2016 07:21:32 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.84_2)
	(envelope-from <embedded-pv-devel-bounces@lists.xenproject.org>)
	id 1cJxgy-0006Hu-2v; Thu, 22 Dec 2016 07:21:32 +0000
Received: from mail6.bemta6.messagelabs.com ([193.109.254.103])
 by lists.xenproject.org with esmtp (Exim 4.84_2)
 (envelope-from <andr2000@gmail.com>)
 id 1cJxgw-0006HL-Ns; Thu, 22 Dec 2016 07:21:30 +0000
Received: from [193.109.254.147] by server-4.bemta-6.messagelabs.com id
 6F/99-25093-9FE7B585; Thu, 22 Dec 2016 07:21:29 +0000
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFvrOIsWRWlGSWpSXmKPExsVyMfTSYd2fddE
 RBqu7ZS1W9lxktvi+ZTKTA5PH4Q9XWAIYo1gz85LyKxJYM6b33GMq2MBUsWFLWgPjd8YuRk4O
 IYFiiVcLPjOD2CwCS1klHq+vBbElBA6ySnycrQlhx0g8vPqdCcKulDi6+QsLRK+ixNdn04HiX
 ED2dCaJOTPmsII4wgJNjBKPnyxnB6kSEZCSWL3xHitE1RpGifbpD5lBHGaBT8wS63v7weayCR
 hJLL/xA2guBwevgI3E4WY7iJNUJfY2vWYDCYsKhEtcPWwOEuYVEJQ4OfMJ2BWcArYSU1csANv
 FDGTfmbubGcKWl9j+dg7zBEbhWUhaZiEpm4WkbAEj8ypGjeLUorLUIl1DY72kosz0jJLcxMwc
 XUMDM73c1OLixPTUnMSkYr3k/NxNjMCAZwCCHYxflgUcYpTkYFIS5dUojI4Q4kvKT6nMSCzOi
 C8qzUktPsQow8GhJMFrUwuUEyxKTU+tSMvMAcYeTFqCg0dJhDeoBijNW1yQmFucmQ6ROsVoyX
 Fs1uKnTBwH3q8Akrs61zxlEmLJy89LlRLnrQSZJwDSkFGaBzcOlh4uMcpKCfMyAh0oxFOQWpS
 bWYIq/4pRnINRSZj3DsgUnsy8Eritr4AOYgI6aGF3OMhBJYkIKakGxurI1//fq/79LeChsPqO
 96SDr4w5P8tLtUQHL7bmvPdjZ5vnqevsaVmNzD2aj991HX/PuOWYOaOe5K1P8+IuPDD/4fnkm
 G1ytvCmpCn/ZLjT3rVPybcSqSyT0o+bphn8wc3vQ0DGqR2hFb7CF1ZWWhx4X26Tpt8r/u7eCp
 M7FwMaJB/H7/11QImlOCPRUIu5qDgRAEBYIJYKAwAA
X-Env-Sender: andr2000@gmail.com
X-Msg-Ref: server-15.tower-27.messagelabs.com!1482391289!25805541!1
X-Originating-IP: [209.85.210.195]
X-SpamReason: No, hits=0.0 required=7.0 tests=
X-StarScan-Received: 
X-StarScan-Version: 9.1.1; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 11609 invoked from network); 22 Dec 2016 07:21:29 -0000
Received: from mail-wj0-f195.google.com (HELO mail-wj0-f195.google.com)
 (209.85.210.195)
 by server-15.tower-27.messagelabs.com with AES128-GCM-SHA256 encrypted SMTP;
 22 Dec 2016 07:21:29 -0000
Received: by mail-wj0-f195.google.com with SMTP id hb5so1767982wjc.2;
 Wed, 21 Dec 2016 23:21:29 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=subject:to:references:cc:from:message-id:date:user-agent
 :mime-version:in-reply-to:content-transfer-encoding;
 bh=5dXloYezrxEX2aB1Pyer5KtWy9QUzvSWkHb3YvOLHu8=;
 b=EZ/0/vlli4BYVfVGISJJZQxCieiOnn+TGFP7qHfPuxRCVdt5lwsT9gq4ilXWASdSX1
 iJzuzD5ypr/LMVXioWERlVB86dzpthTx2rYoz6pYt+9SGqf0kAG85R9HLWpClihgfKgE
 uDE9c1cAKPHSmdcXETWvh+geeO4tBBzgBi7wGD3MLlqWQ1SAT4BcC8Zt57VEWeSjsYcs
 9s14t6/JoIAYAd67pCOQtH38etZjMMVsiS4bMqhlSVfIuh8cFqHMuvxqaV2VcXgAvn4E
 ywFmWPlTGlxSs9+q+V2VdUxDWHF6P7PkwrQNuLTNEZeSeC2JR3vEqiKhkhMJN1Tw6QHj
 mb3w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:subject:to:references:cc:from:message-id:date
 :user-agent:mime-version:in-reply-to:content-transfer-encoding;
 bh=5dXloYezrxEX2aB1Pyer5KtWy9QUzvSWkHb3YvOLHu8=;
 b=K5oxXA+vEjhvPGP0vwSxHIyqbkeNcwGC5O+CgD04JfInHg9+7lD0ccMT5yCkpL7cAG
 u0ieIZ8afoblABLL8PnsegBECcHeKvOZZdIahyKWRNkyLbFCIPLwEWc83CC8lgvaM4uV
 2x8Lil1yBl7H0gpgnyjGF/JXKO4UIGPPjRFN2a50VdO0ueuqUQ/HTpPMt8b8WUhNpto6
 SOq7u5r8oNeh+sHfTFU15YC+gGCpIhYYC3kJhOLhARtvYq/gWI47XrvW+vpm8Byyd0sj
 SjyS7N+lVDZAvF/fMkycCYQZlMzLqT1Hl3EoqiLTH5gZlZdiRtQt2T4AAwvEjhR0nzph
 9LpA==
X-Gm-Message-State: AIkVDXJzHEACGbtABBGwbzNuyZCxGAUs5+IWsgL/z6yamiWhJgfz8gu2oOJeyfyybn+OWA==
X-Received: by 10.194.85.165 with SMTP id i5mr7745351wjz.147.1482391289098;
 Wed, 21 Dec 2016 23:21:29 -0800 (PST)
Received: from [10.17.182.9] (ll-54.209.223.85.sovam.net.ua. [85.223.209.54])
 by smtp.gmail.com with ESMTPSA id
 kq7sm34089907wjb.30.2016.12.21.23.21.27
 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
 Wed, 21 Dec 2016 23:21:28 -0800 (PST)
To: konrad.wilk@oracle.com
References: <1480943129-20524-1-git-send-email-andr2000@gmail.com>
 <1480943129-20524-2-git-send-email-andr2000@gmail.com>
 <c9758f6d-fbd8-ca07-caf5-859218318702@gmail.com>
From: Oleksandr Andrushchenko <andr2000@gmail.com>
Message-ID: <bedf5caa-decc-cf79-d4f7-4294f47723a2@gmail.com>
Date: Thu, 22 Dec 2016 09:21:26 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101
 Thunderbird/45.5.1
MIME-Version: 1.0
In-Reply-To: <c9758f6d-fbd8-ca07-caf5-859218318702@gmail.com>
Cc: lars.kurth@citrix.com, iurii.konovalenko@globallogic.com,
 Stefano Stabellini <sstabellini@kernel.org>, Oleksandr_Andrushchenko@epam.com,
 vlad.babchuk@gmail.com, ian.jackson@eu.citrix.com, dario.faggioli@citrix.com,
 tim@xen.org, julien.grall@arm.com, andrii.anisov@gmail.com,
 olekstysh@gmail.com, embedded-pv-devel@lists.xenproject.org, al1img@gmail.com,
 david.vrabel@citrix.com, JBeulich@suse.com, xen-devel@lists.xenproject.org,
 oleksandr.dmytryshyn@globallogic.com, joculator@gmail.com
Subject: Re: [Embedded-pv-devel] [PATCH v15] This is the ABI for the two
 halves of a para-virtualized sound driver to communicate with each to
 other.
X-BeenThere: embedded-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <embedded-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/cgi-bin/mailman/options/embedded-pv-devel>, 
 <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:embedded-pv-devel@lists.xenproject.org>
List-Help: <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/cgi-bin/mailman/listinfo/embedded-pv-devel>, 
 <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=subscribe>
Content-Transfer-Encoding: base64
Content-Type: text/plain; charset="utf-8"; Format="flowed"
Errors-To: embedded-pv-devel-bounces@lists.xenproject.org
Sender: "Embedded-pv-devel" <embedded-pv-devel-bounces@lists.xenproject.org>

SGksIEtvbnJhZCEKCkkgc2VlIG5vIGNvbW1lbnRzIGZvciBhbG1vc3QgMyB3ZWVrcyBub3csIHNv
CnByb2JhYmx5IHRoZXJlIGFyZSBubyBvYmplY3Rpb25zIGFnYWluc3QgdGhpcyBwcm90b2NvbC4K
Q2FuIHdlIHBsZWFzZSBtb3ZlIG9uIG9uIHRoaXM/CgpUaGFuayB5b3UgaW4gYWR2YW5jZSwKT2xl
a3NhbmRyCgpPbiAxMi8wOC8yMDE2IDA1OjEzIFBNLCBPbGVrc2FuZHIgQW5kcnVzaGNoZW5rbyB3
cm90ZToKPiBJJ20ganVzdCB3b25kZXJpbmcgaWYgYW55Ym9keSBoYWQgYSBjaGFuY2UgdG8gbG9v
ayBhdCB0aGUgcGF0Y2guLi4KCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fXwpFbWJlZGRlZC1wdi1kZXZlbCBtYWlsaW5nIGxpc3QKRW1iZWRkZWQtcHYtZGV2
ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9yZy9jZ2kt
YmluL21haWxtYW4vbGlzdGluZm8vZW1iZWRkZWQtcHYtZGV2ZWw=

From embedded-pv-devel-bounces@lists.xenproject.org Thu Dec 22 08:13:00 2016
Return-path: <embedded-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 22 Dec 2016 08:13:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.84_2)
	(envelope-from <embedded-pv-devel-bounces@lists.xenproject.org>)
	id 1cJyUm-0003Uz-7c; Thu, 22 Dec 2016 08:13:00 +0000
Received: from mail6.bemta5.messagelabs.com ([195.245.231.135])
 by lists.xenproject.org with esmtp (Exim 4.84_2)
 (envelope-from <andr2000@gmail.com>)
 id 1cJyUk-0003Uo-9p; Thu, 22 Dec 2016 08:12:58 +0000
Received: from [85.158.139.211] by server-12.bemta-5.messagelabs.com id
 8C/C6-05987-90B8B585; Thu, 22 Dec 2016 08:12:57 +0000
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFprEIsWRWlGSWpSXmKPExsXiVRvkpMvRHR1
 hcP8yk8XKnovMFt+3TGZyYPI4/OEKSwBjFGtmXlJ+RQJrxvK+tSwFy1grVhxZy97AeJqli5GT
 Q0igUOLXq+usXYxcHCwCl1gkGh5uAnMkBN6xSFzftA2oigPIiZH4fMIcwqySeDOJGaJXUeLrs
 +lMIOVCAiuZJCZ82go2lE3ASGL5jR9gtoiAksS9VZPBipgF3jNJ3LnWzwiSEBbwlHh4Yx0biM
 0ioCrx9Nt5dhCbV8BJYuPHi2AbJATkJG6e62SewMi3gJFhFaNGcWpRWWqRrpGZXlJRZnpGSW5
 iZo6uoYGpXm5qcXFiempOYlKxXnJ+7iZGYMjUMzAw7mC8PdnvEKMkB5OSKK9GYXSEEF9Sfkpl
 RmJxRnxRaU5q8SFGGQ4OJQneD51AOcGi1PTUirTMHGDwwqQlOHiURCDSvMUFibnFmekQqVOMx
 hwH3q94ysSxo3PNUyYhlrz8vFQpcd5dIKUCIKUZpXlwg2BRdYlRVkqYl5GBgUGIpyC1KDezBF
 X+FaM4B6OSMO98kCk8mXklcPteAZ3CBHSKbTPYKSWJCCmpBkbvnWUyn/VEixf8cVrlc2xfls/
 sCPkbUl/nCv3ulFqf163Sc/A4+9VbbfqzPM7cd7jP4Juow1iqdphb9f6D28aXTzheOvnIoEyQ
 bfvB5+brt7dkhJhoOoSn/Jn7MfBP1sYjadfWPrCMNprw5NX2o+b3XV7UXOZXmdxwdO/XRUe4d
 Y6u83iwuz1AiaU4I9FQi7moOBEAOtxVU6UCAAA=
X-Env-Sender: andr2000@gmail.com
X-Msg-Ref: server-11.tower-206.messagelabs.com!1482394375!64606639!1
X-Originating-IP: [74.125.82.66]
X-SpamReason: No, hits=0.5 required=7.0 tests=BODY_RANDOM_LONG
X-StarScan-Received: 
X-StarScan-Version: 9.1.1; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 56904 invoked from network); 22 Dec 2016 08:12:56 -0000
Received: from mail-wm0-f66.google.com (HELO mail-wm0-f66.google.com)
 (74.125.82.66)
 by server-11.tower-206.messagelabs.com with AES128-GCM-SHA256 encrypted SMTP;
 22 Dec 2016 08:12:56 -0000
Received: by mail-wm0-f66.google.com with SMTP id l2so9111640wml.2;
 Thu, 22 Dec 2016 00:12:55 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=from:to:cc:subject:date:message-id;
 bh=YNbexZ61eX3QAzz5j+s9tr7nN0Uw8OwjdtSih59MYK0=;
 b=o5s+L1ztqNe4MuuyHwWoCDBHFLizvF+uPXeEv2zzcDr+mg459DRrhuLoo5lJT/cfeK
 EbA9xi8DWocoXMEFzmRiOVSq2AhK5qShJoKZfNDZthTPEXzaIhi4wFJK3YOjmoUDx5gf
 VhDDuNwgyDnIHUVVDjdY2Ur28/VW7N4GvxSdsJNTq1SCyOGMeeGzxCOcsOUmm6ioC/jm
 IqdsgL8SCXT+nGVQ0np9oYEW0sA26eYkrZBtDLwIpLmMEHkrcL4I8BNg8bY6jnqK4/Au
 maT+dfK7VhWDm76XHe67IiAPTAgpyC9uWt9DP4WvlaQMH+GDQW/XmclhVlr0rt+c9DVs
 q0fg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:from:to:cc:subject:date:message-id;
 bh=YNbexZ61eX3QAzz5j+s9tr7nN0Uw8OwjdtSih59MYK0=;
 b=cFvQcFNSyObd+2CzB988xB6BHlm8bRXj57iOAuDbcQlBpSTD/oUL618VvfcItGIR+H
 WbRQmN9d/OybUpJtWvAkshz5dQ0CSQ/5T0WVGNID085wxUc0yrmwryYxpzW5H/Re6DWf
 Esyc1KImc6QVPdusxQ8vO+Jm57aZAAPKmjME4Piqc4Z5kp+KNw8F48EdeYcuq4Ddywvr
 rN4h3MmgCh/R/vkHhIuSwk/pJdr0s9QpZUQ2fIqPyDN7rkoe7TIPJdZzwa7wjOZfJxoN
 DaKw7nmpXNwTjfdk0ywpSK/Mkc/XGEPrj/oNK4GV1dI/BnEXLQbvvqThnKOFrBzW1QSz
 1Tkw==
X-Gm-Message-State: AIkVDXI4c5QXn7V+LhXzHCs9OQQKio7pfBkaKoHRqSM/yUN5k2u4DvrRSxgjr+jygdzsXg==
X-Received: by 10.28.68.195 with SMTP id r186mr8031691wma.105.1482394375632;
 Thu, 22 Dec 2016 00:12:55 -0800 (PST)
Received: from a2k-HP-ProDesk-600-G2-SFF.kyiv.epam.com
 (ll-74.141.223.85.sovam.net.ua. [85.223.141.74])
 by smtp.gmail.com with ESMTPSA id o3sm34304946wjx.39.2016.12.22.00.12.53
 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128);
 Thu, 22 Dec 2016 00:12:54 -0800 (PST)
From: Oleksandr Andrushchenko <andr2000@gmail.com>
To: xen-devel@lists.xenproject.org
Date: Thu, 22 Dec 2016 10:12:47 +0200
Message-Id: <1482394368-19391-1-git-send-email-andr2000@gmail.com>
X-Mailer: git-send-email 2.7.4
Cc: embedded-pv-devel@lists.xenproject.org, lars.kurth@citrix.com,
 sstabellini@kernel.org, konrad.wilk@oracle.com, vlad.babchuk@gmail.com,
 ian.jackson@eu.citrix.com, dario.faggioli@citrix.com, tim@xen.org,
 andrii.anisov@gmail.com, olekstysh@gmail.com, andr2000@gmail.com,
 al1img@gmail.com, david.vrabel@citrix.com, JBeulich@suse.com,
 joculator@gmail.com
Subject: [Embedded-pv-devel] [Xen-devel] [PATCH v1] displif: add ABI for
	para-virtual display
X-BeenThere: embedded-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <embedded-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/cgi-bin/mailman/options/embedded-pv-devel>, 
 <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:embedded-pv-devel@lists.xenproject.org>
List-Help: <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/cgi-bin/mailman/listinfo/embedded-pv-devel>, 
 <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: embedded-pv-devel-bounces@lists.xenproject.org
Sender: "Embedded-pv-devel" <embedded-pv-devel-bounces@lists.xenproject.org>

RnJvbTogT2xla3NhbmRyIEFuZHJ1c2hjaGVua28gPE9sZWtzYW5kcl9BbmRydXNoY2hlbmtvQGVw
YW0uY29tPgoKVGhpcyBwcm90b2NvbCBhaW1zIHRvIHByb3ZpZGUgYSB1bmlmaWVkIHByb3RvY29s
IHdoaWNoIGZpdHMgbW9yZQpzb3BoaXN0aWNhdGVkIHVzZS1jYXNlcyB0aGFuIGEgZnJhbWVidWZm
ZXIgZGV2aWNlIGNhbiBoYW5kbGUuIEF0IHRoZQptb21lbnQgYmFzaWMgZnVuY3Rpb25hbGl0eSBp
cyBzdXBwb3J0ZWQgd2l0aCB0aGUgaW50ZW50aW9uIHRvIGV4dGVuZDoKIG8gbXVsdGlwbGUgZHlu
YW1pY2FsbHkgYWxsb2NhdGVkL2Rlc3Ryb3llZCBmcmFtZWJ1ZmZlcnMKIG8gYnVmZmVycyBvZiBh
cmJpdHJhcnkgc2l6ZXMKIG8gYmV0dGVyIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyBpbmNsdWRpbmcg
bXVsdGlwbGUgZGlzcGxheSBzdXBwb3J0CgpPbGVrc2FuZHIgQW5kcnVzaGNoZW5rbyAoMSk6CiAg
ZGlzcGxpZjogYWRkIEFCSSBmb3IgcGFyYS12aXJ0dWFsIGRpc3BsYXkKCiB4ZW4vaW5jbHVkZS9w
dWJsaWMvaW8vZGlzcGxpZi5oIHwgNzMwICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysKIDEgZmlsZSBjaGFuZ2VkLCA3MzAgaW5zZXJ0aW9ucygrKQogY3JlYXRlIG1vZGUg
MTAwNjQ0IHhlbi9pbmNsdWRlL3B1YmxpYy9pby9kaXNwbGlmLmgKCi0tIAoyLjcuNAoKCl9fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkVtYmVkZGVkLXB2LWRl
dmVsIG1haWxpbmcgbGlzdApFbWJlZGRlZC1wdi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpo
dHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL2NnaS1iaW4vbWFpbG1hbi9saXN0aW5mby9lbWJl
ZGRlZC1wdi1kZXZlbA==

From embedded-pv-devel-bounces@lists.xenproject.org Thu Dec 22 08:13:00 2016
Return-path: <embedded-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 22 Dec 2016 08:13:00 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.84_2)
	(envelope-from <embedded-pv-devel-bounces@lists.xenproject.org>)
	id 1cJyUm-0003Uz-7c; Thu, 22 Dec 2016 08:13:00 +0000
Received: from mail6.bemta5.messagelabs.com ([195.245.231.135])
 by lists.xenproject.org with esmtp (Exim 4.84_2)
 (envelope-from <andr2000@gmail.com>)
 id 1cJyUk-0003Uo-9p; Thu, 22 Dec 2016 08:12:58 +0000
Received: from [85.158.139.211] by server-12.bemta-5.messagelabs.com id
 8C/C6-05987-90B8B585; Thu, 22 Dec 2016 08:12:57 +0000
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFprEIsWRWlGSWpSXmKPExsXiVRvkpMvRHR1
 hcP8yk8XKnovMFt+3TGZyYPI4/OEKSwBjFGtmXlJ+RQJrxvK+tSwFy1grVhxZy97AeJqli5GT
 Q0igUOLXq+usXYxcHCwCl1gkGh5uAnMkBN6xSFzftA2oigPIiZH4fMIcwqySeDOJGaJXUeLrs
 +lMIOVCAiuZJCZ82go2lE3ASGL5jR9gtoiAksS9VZPBipgF3jNJ3LnWzwiSEBbwlHh4Yx0biM
 0ioCrx9Nt5dhCbV8BJYuPHi2AbJATkJG6e62SewMi3gJFhFaNGcWpRWWqRrpGZXlJRZnpGSW5
 iZo6uoYGpXm5qcXFiempOYlKxXnJ+7iZGYMjUMzAw7mC8PdnvEKMkB5OSKK9GYXSEEF9Sfkpl
 RmJxRnxRaU5q8SFGGQ4OJQneD51AOcGi1PTUirTMHGDwwqQlOHiURCDSvMUFibnFmekQqVOMx
 hwH3q94ysSxo3PNUyYhlrz8vFQpcd5dIKUCIKUZpXlwg2BRdYlRVkqYl5GBgUGIpyC1KDezBF
 X+FaM4B6OSMO98kCk8mXklcPteAZ3CBHSKbTPYKSWJCCmpBkbvnWUyn/VEixf8cVrlc2xfls/
 sCPkbUl/nCv3ulFqf163Sc/A4+9VbbfqzPM7cd7jP4Juow1iqdphb9f6D28aXTzheOvnIoEyQ
 bfvB5+brt7dkhJhoOoSn/Jn7MfBP1sYjadfWPrCMNprw5NX2o+b3XV7UXOZXmdxwdO/XRUe4d
 Y6u83iwuz1AiaU4I9FQi7moOBEAOtxVU6UCAAA=
X-Env-Sender: andr2000@gmail.com
X-Msg-Ref: server-11.tower-206.messagelabs.com!1482394375!64606639!1
X-Originating-IP: [74.125.82.66]
X-SpamReason: No, hits=0.5 required=7.0 tests=BODY_RANDOM_LONG
X-StarScan-Received: 
X-StarScan-Version: 9.1.1; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 56904 invoked from network); 22 Dec 2016 08:12:56 -0000
Received: from mail-wm0-f66.google.com (HELO mail-wm0-f66.google.com)
 (74.125.82.66)
 by server-11.tower-206.messagelabs.com with AES128-GCM-SHA256 encrypted SMTP;
 22 Dec 2016 08:12:56 -0000
Received: by mail-wm0-f66.google.com with SMTP id l2so9111640wml.2;
 Thu, 22 Dec 2016 00:12:55 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=from:to:cc:subject:date:message-id;
 bh=YNbexZ61eX3QAzz5j+s9tr7nN0Uw8OwjdtSih59MYK0=;
 b=o5s+L1ztqNe4MuuyHwWoCDBHFLizvF+uPXeEv2zzcDr+mg459DRrhuLoo5lJT/cfeK
 EbA9xi8DWocoXMEFzmRiOVSq2AhK5qShJoKZfNDZthTPEXzaIhi4wFJK3YOjmoUDx5gf
 VhDDuNwgyDnIHUVVDjdY2Ur28/VW7N4GvxSdsJNTq1SCyOGMeeGzxCOcsOUmm6ioC/jm
 IqdsgL8SCXT+nGVQ0np9oYEW0sA26eYkrZBtDLwIpLmMEHkrcL4I8BNg8bY6jnqK4/Au
 maT+dfK7VhWDm76XHe67IiAPTAgpyC9uWt9DP4WvlaQMH+GDQW/XmclhVlr0rt+c9DVs
 q0fg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:from:to:cc:subject:date:message-id;
 bh=YNbexZ61eX3QAzz5j+s9tr7nN0Uw8OwjdtSih59MYK0=;
 b=cFvQcFNSyObd+2CzB988xB6BHlm8bRXj57iOAuDbcQlBpSTD/oUL618VvfcItGIR+H
 WbRQmN9d/OybUpJtWvAkshz5dQ0CSQ/5T0WVGNID085wxUc0yrmwryYxpzW5H/Re6DWf
 Esyc1KImc6QVPdusxQ8vO+Jm57aZAAPKmjME4Piqc4Z5kp+KNw8F48EdeYcuq4Ddywvr
 rN4h3MmgCh/R/vkHhIuSwk/pJdr0s9QpZUQ2fIqPyDN7rkoe7TIPJdZzwa7wjOZfJxoN
 DaKw7nmpXNwTjfdk0ywpSK/Mkc/XGEPrj/oNK4GV1dI/BnEXLQbvvqThnKOFrBzW1QSz
 1Tkw==
X-Gm-Message-State: AIkVDXI4c5QXn7V+LhXzHCs9OQQKio7pfBkaKoHRqSM/yUN5k2u4DvrRSxgjr+jygdzsXg==
X-Received: by 10.28.68.195 with SMTP id r186mr8031691wma.105.1482394375632;
 Thu, 22 Dec 2016 00:12:55 -0800 (PST)
Received: from a2k-HP-ProDesk-600-G2-SFF.kyiv.epam.com
 (ll-74.141.223.85.sovam.net.ua. [85.223.141.74])
 by smtp.gmail.com with ESMTPSA id o3sm34304946wjx.39.2016.12.22.00.12.53
 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128);
 Thu, 22 Dec 2016 00:12:54 -0800 (PST)
From: Oleksandr Andrushchenko <andr2000@gmail.com>
To: xen-devel@lists.xenproject.org
Date: Thu, 22 Dec 2016 10:12:47 +0200
Message-Id: <1482394368-19391-1-git-send-email-andr2000@gmail.com>
X-Mailer: git-send-email 2.7.4
Cc: embedded-pv-devel@lists.xenproject.org, lars.kurth@citrix.com,
 sstabellini@kernel.org, konrad.wilk@oracle.com, vlad.babchuk@gmail.com,
 ian.jackson@eu.citrix.com, dario.faggioli@citrix.com, tim@xen.org,
 andrii.anisov@gmail.com, olekstysh@gmail.com, andr2000@gmail.com,
 al1img@gmail.com, david.vrabel@citrix.com, JBeulich@suse.com,
 joculator@gmail.com
Subject: [Embedded-pv-devel] [Xen-devel] [PATCH v1] displif: add ABI for
	para-virtual display
X-BeenThere: embedded-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <embedded-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/cgi-bin/mailman/options/embedded-pv-devel>, 
 <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:embedded-pv-devel@lists.xenproject.org>
List-Help: <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/cgi-bin/mailman/listinfo/embedded-pv-devel>, 
 <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: embedded-pv-devel-bounces@lists.xenproject.org
Sender: "Embedded-pv-devel" <embedded-pv-devel-bounces@lists.xenproject.org>

RnJvbTogT2xla3NhbmRyIEFuZHJ1c2hjaGVua28gPE9sZWtzYW5kcl9BbmRydXNoY2hlbmtvQGVw
YW0uY29tPgoKVGhpcyBwcm90b2NvbCBhaW1zIHRvIHByb3ZpZGUgYSB1bmlmaWVkIHByb3RvY29s
IHdoaWNoIGZpdHMgbW9yZQpzb3BoaXN0aWNhdGVkIHVzZS1jYXNlcyB0aGFuIGEgZnJhbWVidWZm
ZXIgZGV2aWNlIGNhbiBoYW5kbGUuIEF0IHRoZQptb21lbnQgYmFzaWMgZnVuY3Rpb25hbGl0eSBp
cyBzdXBwb3J0ZWQgd2l0aCB0aGUgaW50ZW50aW9uIHRvIGV4dGVuZDoKIG8gbXVsdGlwbGUgZHlu
YW1pY2FsbHkgYWxsb2NhdGVkL2Rlc3Ryb3llZCBmcmFtZWJ1ZmZlcnMKIG8gYnVmZmVycyBvZiBh
cmJpdHJhcnkgc2l6ZXMKIG8gYmV0dGVyIGNvbmZpZ3VyYXRpb24gb3B0aW9ucyBpbmNsdWRpbmcg
bXVsdGlwbGUgZGlzcGxheSBzdXBwb3J0CgpPbGVrc2FuZHIgQW5kcnVzaGNoZW5rbyAoMSk6CiAg
ZGlzcGxpZjogYWRkIEFCSSBmb3IgcGFyYS12aXJ0dWFsIGRpc3BsYXkKCiB4ZW4vaW5jbHVkZS9w
dWJsaWMvaW8vZGlzcGxpZi5oIHwgNzMwICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysKIDEgZmlsZSBjaGFuZ2VkLCA3MzAgaW5zZXJ0aW9ucygrKQogY3JlYXRlIG1vZGUg
MTAwNjQ0IHhlbi9pbmNsdWRlL3B1YmxpYy9pby9kaXNwbGlmLmgKCi0tIAoyLjcuNAoKCl9fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkVtYmVkZGVkLXB2LWRl
dmVsIG1haWxpbmcgbGlzdApFbWJlZGRlZC1wdi1kZXZlbEBsaXN0cy54ZW5wcm9qZWN0Lm9yZwpo
dHRwczovL2xpc3RzLnhlbnByb2plY3Qub3JnL2NnaS1iaW4vbWFpbG1hbi9saXN0aW5mby9lbWJl
ZGRlZC1wdi1kZXZlbA==

From embedded-pv-devel-bounces@lists.xenproject.org Thu Dec 22 08:13:01 2016
Return-path: <embedded-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 22 Dec 2016 08:13:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.84_2)
	(envelope-from <embedded-pv-devel-bounces@lists.xenproject.org>)
	id 1cJyUn-0003Vn-FB; Thu, 22 Dec 2016 08:13:01 +0000
Received: from mail6.bemta6.messagelabs.com ([193.109.254.103])
 by lists.xenproject.org with esmtp (Exim 4.84_2)
 (envelope-from <andr2000@gmail.com>)
 id 1cJyUm-0003Uy-2d; Thu, 22 Dec 2016 08:13:00 +0000
Received: from [193.109.254.147] by server-4.bemta-6.messagelabs.com id
 53/E6-25093-B0B8B585; Thu, 22 Dec 2016 08:12:59 +0000
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrMIsWRWlGSWpSXmKPExsVyMfTSEV2u7ug
 Ig9f3uSxW9lxktvi+ZTKTA5PH4Q9XWAIYo1gz85LyKxJYM/ZdechW8HgSU8XFeV+ZGhi/HWLs
 YuTkEBIoknj+6S5rFyMXB4vASxaJ+R9nsoAkJAT6WSV2/C2DsGMk+v/9gorXSPzeNIkFollR4
 uuz6UwgzUICK5kktkz8ygySYBMwklh+4wdYkYiAksS9VZPBipgF3jNJ3LnWD7ZaWMBT4uGNdW
 wgNouAqkTLo71MIDavgJPE9zO7GSG2yUncPNcJNpRTwFniyM19rBCbnSRWvX7GPoFRYAEjwyp
 GjeLUorLUIl0jI72kosz0jJLcxMwcXUMDM73c1OLixPTUnMSkYr3k/NxNjMBAYwCCHYxr5gce
 YpTkYFIS5dUojI4Q4kvKT6nMSCzOiC8qzUktPsQow8GhJMH7oRMoJ1iUmp5akZaZAwx5mLQEB
 4+SCK9AB1Cat7ggMbc4Mx0idYrRkuPYrMVPmTimPQORuzrXPGUSYsnLz0uVEufdBTJPAKQhoz
 QPbhwsLi8xykoJ8zICHSjEU5BalJtZgir/ilGcg1FJmHc+yBSezLwSuK2vgA5iAjrIthnsoJJ
 EhJRUA2P1hdXM6+wV5p+W6rc/Jsvt71j8rSYqVGe/K0cDx2Ib115272szLmmcEkjgqPlx9O58
 pzKep5Wzd8ybFvHdec+CyW/f5j6p3x/z+1YY+1r59S//+V45u/rln3jlZMYHPz0L93e4iWXz9
 ofPWVrLrKi94sbq+LN3fpzdvVXsfBzrlIZm0z0f42SVWIozEg21mIuKEwFaLks2xgIAAA==
X-Env-Sender: andr2000@gmail.com
X-Msg-Ref: server-8.tower-27.messagelabs.com!1482394378!68378295!1
X-Originating-IP: [209.85.210.196]
X-SpamReason: No, hits=0.5 required=7.0 tests=BODY_RANDOM_LONG
X-StarScan-Received: 
X-StarScan-Version: 9.1.1; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 40534 invoked from network); 22 Dec 2016 08:12:58 -0000
Received: from mail-wj0-f196.google.com (HELO mail-wj0-f196.google.com)
 (209.85.210.196)
 by server-8.tower-27.messagelabs.com with AES128-GCM-SHA256 encrypted SMTP;
 22 Dec 2016 08:12:58 -0000
Received: by mail-wj0-f196.google.com with SMTP id ez4so593512wjd.1;
 Thu, 22 Dec 2016 00:12:58 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=from:to:cc:subject:date:message-id:in-reply-to:references;
 bh=izVwYlIqWG7f+EVCW8a65mB1We4k9eZ0Yq5RnVyPtHs=;
 b=HE+rSeL60NPDnAtwuotKexiXqeL77hIC2lqVlJQYQMwqXsJMxlfzi/0YAyH/+u7NG9
 fBDmPiwfhNbc8qDMzxXyl8QQ/y85iL1UKnKhsjsoCHHZ0A4n/4ErFfUgqdzA4wHZJhde
 1yPnWEQ6ARKMFki8fPaLUidx7MC18MtMuxvoW466Mn2FvyEP8Krs3pWSeCCqm6Klvtcr
 aC8pAXr072gz5952VFIKJojXUsMCtarCott85wrQUsbpm9cBbwU4VxvAL6wMK2nwfawd
 bIiLV/IG4cWd4eHm8ocBbwQWnxJxNrfHbtFA9Qipar/0TPKHCjKUpH10+DkyeNL8etdP
 PDqQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references;
 bh=izVwYlIqWG7f+EVCW8a65mB1We4k9eZ0Yq5RnVyPtHs=;
 b=CSymfBctDhdQzSEfcw/hW2pp95Or+2i2OCEPIy0cYO7vUlHe+oiqBULfMvKD2uJ782
 Pv3a2e3yIOHQWV8mK3unWHa3QtCIqIHYlC6WPvA3iFDmRak88GN84XHx1D/cK5aFTPgF
 Lqo5esxmu1F5bblPW+J9nbjRcUXgKqY8Bd5qExkSXOcDwaO6SJs/1D1cmwD+YDgzhJlw
 5hicZU9WjWkBbLNUeTCzxDNbz+GVN8P6UrCtpthjCHtg5BbD+BE2dZWJkuZx1j1rhJbE
 DWjY5PBVhWzYW5j2aLLwCtY3b/mLK5q2pTd40ugOiDBVH+qN1ZkDOPDijuBUVAqyWkFB
 a4Uw==
X-Gm-Message-State: AIkVDXIK1Y6nJ0Not8NE3y68HEclU70r87L8XwV98FPY3vq47FN4L1/asJVmQnGdDWKS7A==
X-Received: by 10.194.112.170 with SMTP id ir10mr7569581wjb.190.1482394377155; 
 Thu, 22 Dec 2016 00:12:57 -0800 (PST)
Received: from a2k-HP-ProDesk-600-G2-SFF.kyiv.epam.com
 (ll-74.141.223.85.sovam.net.ua. [85.223.141.74])
 by smtp.gmail.com with ESMTPSA id o3sm34304946wjx.39.2016.12.22.00.12.55
 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128);
 Thu, 22 Dec 2016 00:12:56 -0800 (PST)
From: Oleksandr Andrushchenko <andr2000@gmail.com>
To: xen-devel@lists.xenproject.org
Date: Thu, 22 Dec 2016 10:12:48 +0200
Message-Id: <1482394368-19391-2-git-send-email-andr2000@gmail.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1482394368-19391-1-git-send-email-andr2000@gmail.com>
References: <1482394368-19391-1-git-send-email-andr2000@gmail.com>
Cc: embedded-pv-devel@lists.xenproject.org, lars.kurth@citrix.com,
 sstabellini@kernel.org, konrad.wilk@oracle.com, vlad.babchuk@gmail.com,
 ian.jackson@eu.citrix.com, dario.faggioli@citrix.com, tim@xen.org,
 andrii.anisov@gmail.com, olekstysh@gmail.com, andr2000@gmail.com,
 al1img@gmail.com, david.vrabel@citrix.com, JBeulich@suse.com,
 joculator@gmail.com
Subject: [Embedded-pv-devel] [Xen-devel] [PATCH v1] displif: add ABI for
	para-virtual display
X-BeenThere: embedded-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <embedded-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/cgi-bin/mailman/options/embedded-pv-devel>, 
 <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:embedded-pv-devel@lists.xenproject.org>
List-Help: <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/cgi-bin/mailman/listinfo/embedded-pv-devel>, 
 <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: embedded-pv-devel-bounces@lists.xenproject.org
Sender: "Embedded-pv-devel" <embedded-pv-devel-bounces@lists.xenproject.org>

RnJvbTogT2xla3NhbmRyIEFuZHJ1c2hjaGVua28gPE9sZWtzYW5kcl9BbmRydXNoY2hlbmtvQGVw
YW0uY29tPgoKVGhpcyBpcyB0aGUgQUJJIGZvciB0aGUgdHdvIGhhbHZlcyBvZiBhIHBhcmEtdmly
dHVhbGl6ZWQKZGlzcGxheSBkcml2ZXIuCgpDaGFuZ2VzIHNpbmNlIGluaXRpYWw6CiAqIERSTSBj
aGFuZ2VkIHRvIERJU1BMLCBwcm90b2NvbCBtYWRlIGdlbmVyaWMKICogbWFqb3IgcmUtd29yayBh
ZGRyZXNzaW5nIGlzc3VlcyByYWlzZWQgZm9yIHNuZGlmCgpTaWduZWQtb2ZmLWJ5OiBPbGVrc2Fu
ZHIgQW5kcnVzaGNoZW5rbyA8T2xla3NhbmRyX0FuZHJ1c2hjaGVua29AZXBhbS5jb20+ClNpZ25l
ZC1vZmYtYnk6IE9sZWtzYW5kciBHcnl0c292IDxPbGVrc2FuZHJfR3J5dHNvdkBlcGFtLmNvbT4K
LS0tCiB4ZW4vaW5jbHVkZS9wdWJsaWMvaW8vZGlzcGxpZi5oIHwgNzMwICsrKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKysrKysKIDEgZmlsZSBjaGFuZ2VkLCA3MzAgaW5zZXJ0aW9u
cygrKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHhlbi9pbmNsdWRlL3B1YmxpYy9pby9kaXNwbGlmLmgK
CmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS9wdWJsaWMvaW8vZGlzcGxpZi5oIGIveGVuL2luY2x1
ZGUvcHVibGljL2lvL2Rpc3BsaWYuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li5lYTRlNDJiCi0tLSAvZGV2L251bGwKKysrIGIveGVuL2luY2x1ZGUvcHVibGljL2lvL2Rpc3Bs
aWYuaApAQCAtMCwwICsxLDczMCBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogZGlzcGxp
Zi5oCisgKgorICogVW5pZmllZCBkaXNwbGF5IGRldmljZSBJL08gaW50ZXJmYWNlIGZvciBYZW4g
Z3Vlc3QgT1Nlcy4KKyAqCisgKiBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9m
IGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5CisgKiBvZiB0aGlzIHNvZnR3
YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSAiU29mdHdhcmUiKSwg
dG8KKyAqIGRlYWwgaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGlu
ZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlCisgKiByaWdodHMgdG8gdXNlLCBjb3B5LCBtb2RpZnks
IG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3IKKyAqIHNlbGwg
Y29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhl
IFNvZnR3YXJlIGlzCisgKiBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zOgorICoKKyAqIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0
aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluCisgKiBhbGwgY29waWVz
IG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4KKyAqCisgKiBUSEUgU09G
VFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwg
RVhQUkVTUyBPUgorICogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCisgKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKKyAq
IEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERB
TUFHRVMgT1IgT1RIRVIKKyAqIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09O
VFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HCisgKiBGUk9NLCBPVVQgT0YgT1IgSU4g
Q09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSCisgKiBERUFM
SU5HUyBJTiBUSEUgU09GVFdBUkUuCisgKgorICogQ29weXJpZ2h0IChDKSAyMDE2IEVQQU0gU3lz
dGVtcyBJbmMuCisgKgorICogQXV0aG9yczogT2xla3NhbmRyIEFuZHJ1c2hjaGVua28gPE9sZWtz
YW5kcl9BbmRydXNoY2hlbmtvQGVwYW0uY29tPgorICogICAgICAgICAgT2xla3NhbmRyIEdyeXRz
b3YgPE9sZWtzYW5kcl9Hcnl0c292QGVwYW0uY29tPgorICovCisKKyNpZm5kZWYgX19YRU5fUFVC
TElDX0lPX0RJU1BMSUZfSF9fCisjZGVmaW5lIF9fWEVOX1BVQkxJQ19JT19ESVNQTElGX0hfXwor
CisjaW5jbHVkZSAicmluZy5oIgorI2luY2x1ZGUgIi4uL2dyYW50X3RhYmxlLmgiCisKKy8qKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioKKyAqIE1haW4gZmVhdHVyZXMgcHJvdmlkZWQgYnkgdGhlIHByb3Rv
Y29sCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiBUaGlzIHByb3RvY29sIGFpbXMgdG8gcHJv
dmlkZSBhIHVuaWZpZWQgcHJvdG9jb2wgd2hpY2ggZml0cyBtb3JlCisgKiBzb3BoaXN0aWNhdGVk
IHVzZS1jYXNlcyB0aGFuIGEgZnJhbWVidWZmZXIgZGV2aWNlIGNhbiBoYW5kbGUuIEF0IHRoZQor
ICogbW9tZW50IGJhc2ljIGZ1bmN0aW9uYWxpdHkgaXMgc3VwcG9ydGVkIHdpdGggdGhlIGludGVu
dGlvbiB0byBleHRlbmQ6CisgKiBvIG11bHRpcGxlIGR5bmFtaWNhbGx5IGFsbG9jYXRlZC9kZXN0
cm95ZWQgZnJhbWVidWZmZXJzCisgKiBvIGJ1ZmZlcnMgb2YgYXJiaXRyYXJ5IHNpemVzCisgKiBv
IGJldHRlciBjb25maWd1cmF0aW9uIG9wdGlvbnMgaW5jbHVkaW5nIG11bHRpcGxlIGRpc3BsYXkg
c3VwcG9ydAorICoKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIERpcmVjdGlvbiBvZiBpbXBy
b3ZlbWVudHMKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIG8gYWxsb3cgZGlzcGxheS9jb25u
ZWN0b3IgY2xvbmluZworICogbyBhbGxvdyBhbGxvY2F0aW5nIG9iamVjdHMgb3RoZXIgdGhhbiBm
cmFtYmVmZmVycworICogbyBhZGQgcGxhbmVzL292ZXJsYXlzIHN1cHBvcnQKKyAqIG8gc3VwcG9y
dCBzY2FsaW5nCisgKiBvIHN1cHBvcnQgcm90YXRpb24KKyAqLworCisvKgorICogRnJvbnQtPmJh
Y2sgbm90aWZpY2F0aW9uczogV2hlbiBlbnF1ZXVpbmcgYSBuZXcgcmVxdWVzdCwgc2VuZGluZyBh
CisgKiBub3RpZmljYXRpb24gY2FuIGJlIG1hZGUgY29uZGl0aW9uYWwgb24gcmVxX2V2ZW50IChp
LmUuLCB0aGUgZ2VuZXJpYworICogaG9sZC1vZmYgbWVjaGFuaXNtIHByb3ZpZGVkIGJ5IHRoZSBy
aW5nIG1hY3JvcykuIEJhY2tlbmRzIG11c3Qgc2V0CisgKiByZXFfZXZlbnQgYXBwcm9wcmlhdGVs
eSAoZS5nLiwgdXNpbmcgUklOR19GSU5BTF9DSEVDS19GT1JfUkVRVUVTVFMoKSkuCisgKgorICog
QmFjay0+ZnJvbnQgbm90aWZpY2F0aW9uczogV2hlbiBlbnF1ZXVpbmcgYSBuZXcgcmVzcG9uc2Us
IHNlbmRpbmcgYQorICogbm90aWZpY2F0aW9uIGNhbiBiZSBtYWRlIGNvbmRpdGlvbmFsIG9uIHJz
cF9ldmVudCAoaS5lLiwgdGhlIGdlbmVyaWMKKyAqIGhvbGQtb2ZmIG1lY2hhbmlzbSBwcm92aWRl
ZCBieSB0aGUgcmluZyBtYWNyb3MpLiBGcm9udGVuZHMgbXVzdCBzZXQKKyAqIHJzcF9ldmVudCBh
cHByb3ByaWF0ZWx5IChlLmcuLCB1c2luZyBSSU5HX0ZJTkFMX0NIRUNLX0ZPUl9SRVNQT05TRVMo
KSkuCisgKi8KKworLyoKKyAqIEZlYXR1cmUgYW5kIFBhcmFtZXRlciBOZWdvdGlhdGlvbgorICog
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisgKiBUaGUgdHdvIGhhbHZlcyBvZiBh
IHBhcmEtdmlydHVhbCBkaXNwbGF5IGRyaXZlciB1dGlsaXplIG5vZGVzIHdpdGhpbiB0aGUKKyAq
IFhlblN0b3JlIHRvIGNvbW11bmljYXRlIGNhcGFiaWxpdGllcyBhbmQgdG8gbmVnb3RpYXRlIG9w
ZXJhdGluZyBwYXJhbWV0ZXJzLgorICogVGhpcyBzZWN0aW9uIGVudW1lcmF0ZXMgdGhlc2Ugbm9k
ZXMgd2hpY2ggcmVzaWRlIGluIHRoZSByZXNwZWN0aXZlIGZyb250IGFuZAorICogYmFja2VuZCBw
b3J0aW9ucyBvZiB0aGUgWGVuU3RvcmUsIGZvbGxvd2luZyB0aGUgWGVuQnVzIGNvbnZlbnRpb24u
CisgKgorICogQWxsIGRhdGEgaW4gdGhlIFhlblN0b3JlIGlzIHN0b3JlZCBhcyBzdHJpbmdzLiAg
Tm9kZXMgc3BlY2lmeWluZyBudW1lcmljCisgKiB2YWx1ZXMgYXJlIGVuY29kZWQgaW4gZGVjaW1h
bC4gIEludGVnZXIgdmFsdWUgcmFuZ2VzIGxpc3RlZCBiZWxvdyBhcmUKKyAqIGV4cHJlc3NlZCBh
cyBmaXhlZCBzaXplZCBpbnRlZ2VyIHR5cGVzIGNhcGFibGUgb2Ygc3RvcmluZyB0aGUgY29udmVy
c2lvbgorICogb2YgYSBwcm9wZXJseSBmb3JtYXRlZCBub2RlIHN0cmluZywgd2l0aG91dCBsb3Nz
IG9mIGluZm9ybWF0aW9uLgorICoKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgQmFja2VuZCBYZW5CdXMgTm9kZXMKKyAqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKgorICoKKyAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gQWRkcmVzc2luZyAt
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAqCisgKiBJbmRpY2VzIHVzZWQgdG8g
YWRkcmVzcyBmcm9udGVuZHMsIGRyaXZlciBpbnN0YW5jZXMsCisgKiBkZXZpY2VzIGFuZCBjb25u
ZWN0b3JzLgorICoKKyAqIGZyb250ZW5kX2lkCisgKiAgICAgIFZhbHVlczogICAgICAgICA8dWlu
dD4KKyAqCisgKiAgICAgIERvbWFpbiBJRCBvZiB0aGUgZGlzcGxheSBmcm9udGVuZC4KKyAqCisg
KiBkcnZfaWR4CisgKiAgICAgIFZhbHVlczogICAgICAgICA8dWludD4KKyAqCisgKiAgICAgIFpl
cm8gYmFzZWQgY29udGlndW91cyBpbmRleCBvZiB0aGUgdmlydHVhbGl6ZWQgZGlzcGxheSBkcml2
ZXIKKyAqICAgICAgaW5zdGFuY2UgaW4gdGhpcyBkb21haW4uIE11bHRpcGxlIFBWIGRyaXZlcnMg
YXJlIGFsbG93ZWQgaW4gdGhlIGRvbWFpbgorICogICAgICBhdCB0aGUgc2FtZSB0aW1lLgorICoK
KyAqIGNvbm5faWQKKyAqICAgICAgVmFsdWVzOiAgICAgICAgIDx1aW50PgorICoKKyAqICAgICAg
WmVybyBiYXNlZCBjb250aWd1b3VzIGluZGV4IG9mIHRoZSBjb25uZWN0b3Igd2l0aGluIHRoZSBj
YXJkLgorICoKKyAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIERyaXZlciBzZXR0aW5n
cyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgKiBmZWF0dXJlcworICogICAgICBW
YWx1ZXM6ICAgICAgICAgPGxpc3Qgb2Ygc3RyaW5ncz4KKyAqCisgKiAgICAgIFhFTkRJU1BMX0xJ
U1RfU0VQQVJBVE9SIHNlcGFyYXRlZCBsaXN0IG9mIGZlYXR1cmVzIHRoYXQgZnJvbnRlbmQKKyAq
ICAgICAgZHJpdmVyIGlzIHJlcXVlc3RlZCB0byBzdXBwb3J0LiBUaGVzZSBhcmUgbm90IG1hbmRh
dG9yeSBhbmQgbWF5IG5vdAorICogICAgICBiZSBpbXBsZW1lbnRlZCBieSB0aGUgZnJvbnRlbmQ6
CisgKgorICogICAgICBiZV9hbGxvYworICogICAgICAgICAgICAgQmFja2VuZCBjYW4gYmUgYSBi
dWZmZXIgcHJvdmlkZXIvYWxsb2NhdG9yIGR1cmluZworICogICAgICAgICAgICAgWEVORElTUExf
T1BfREJVRl9DUkVBVEUgb3BlcmF0aW9uIChzZWUgYmVsb3cgZm9yIG5lZ290aWF0aW9uKS4KKyAq
CisgKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIENvbm5lY3RvciBzZXR0aW5ncyAtLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICogcmVzb2x1dGlvbgorICogICAgICBWYWx1ZXM6
ICAgICAgICAgPHdpZHRoPng8aGVpZ2h0PgorICoKKyAqICAgICAgV2lkdGggYW5kIGhlaWdodCBm
b3IgdGhlIGNvbm5lY3RvciBpbiBwaXhlbHMgc2VwYXJhdGVkIGJ5CisgKiAgICAgIFhFTkRJU1BM
X1JFU09MVVRJT05fU0VQQVJBVE9SLiBGb3IgZXhhbXBsZSwKKyAqICAgICAgdmRpc3BsLzAvY29u
bmVjdG9yLzAvcmVzb2x1dGlvbiA9ICI4MDB4NjAwIgorICoKKyAqCisgKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZyb250ZW5kIFhlbkJ1cyBOb2Rl
cworICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqCisgKgorICotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBS
ZXF1ZXN0IFRyYW5zcG9ydCBQYXJhbWV0ZXJzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgKgor
ICogVGhlc2UgYXJlIHBlciBjb25uZWN0b3IuCisgKgorICogY3RybC1jaGFubmVsCisgKiAgICAg
IFZhbHVlczogICAgICAgICA8dWludD4KKyAqCisgKiAgICAgIFRoZSBpZGVudGlmaWVyIG9mIHRo
ZSBYZW4gY29ubmVjdG9yJ3MgY29udHJvbCBldmVudCBjaGFubmVsCisgKiAgICAgIHVzZWQgdG8g
c2lnbmFsIGFjdGl2aXR5IGluIHRoZSByaW5nIGJ1ZmZlci4KKyAqCisgKiBjdHJsLXJpbmctcmVm
CisgKiAgICAgIFZhbHVlczogICAgICAgICA8dWludD4KKyAqCisgKiAgICAgIFRoZSBYZW4gZ3Jh
bnQgcmVmZXJlbmNlIGdyYW50aW5nIHBlcm1pc3Npb24gZm9yIHRoZSBiYWNrZW5kIHRvIG1hcAor
ICogICAgICBhIHNvbGUgcGFnZSBpbiBhIHNpbmdsZSBwYWdlIHNpemVkIGNvbm5lY3RvcidzIGNv
bnRyb2wgcmluZyBidWZmZXIuCisgKgorICogZXZlbnQtY2hhbm5lbAorICogICAgICBWYWx1ZXM6
ICAgICAgICAgPHVpbnQ+CisgKgorICogICAgICBUaGUgaWRlbnRpZmllciBvZiB0aGUgWGVuIGNv
bm5lY3RvcidzIGV2ZW50IGNoYW5uZWwKKyAqICAgICAgdXNlZCB0byBzaWduYWwgYWN0aXZpdHkg
aW4gdGhlIHJpbmcgYnVmZmVyLgorICoKKyAqIGV2ZW50LXJpbmctcmVmCisgKiAgICAgIFZhbHVl
czogICAgICAgICA8dWludD4KKyAqCisgKiAgICAgIFRoZSBYZW4gZ3JhbnQgcmVmZXJlbmNlIGdy
YW50aW5nIHBlcm1pc3Npb24gZm9yIHRoZSBiYWNrZW5kIHRvIG1hcAorICogICAgICBhIHNvbGUg
cGFnZSBpbiBhIHNpbmdsZSBwYWdlIHNpemVkIGNvbm5lY3RvcidzIGV2ZW50IHJpbmcgYnVmZmVy
LgorICovCisKKy8qCisgKiBTVEFURSBESUFHUkFNUworICoKKyAqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KgorICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0YXJ0dXAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqCisgKiBU
b29sIHN0YWNrIGNyZWF0ZXMgZnJvbnQgYW5kIGJhY2sgc3RhdGUgbm9kZXMgd2l0aCBpbml0aWFs
IHN0YXRlCisgKiBYZW5idXNTdGF0ZUluaXRpYWxpc2luZy4KKyAqIFRvb2wgc3RhY2sgY3JlYXRl
cyBhbmQgc2V0cyB1cCBmcm9udGVuZCBkaXNwbGF5IGNvbmZpZ3VyYXRpb24KKyAqIG5vZGVzIHBl
ciBkb21haW4uCisgKgorICogRnJvbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJh
Y2sKKyAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAgICA9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09CisgKiBYZW5idXNTdGF0ZUluaXRpYWxpc2luZyAgICAg
ICAgICAgICAgWGVuYnVzU3RhdGVJbml0aWFsaXNpbmcKKyAqICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgbyBRdWVyeSBiYWNrZW5kIGRldmljZSBpZGVudGlmaWNhdGlvbgor
ICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEuCisgKiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG8gT3BlbiBhbmQgdmFsaWRhdGUgYmFj
a2VuZCBkZXZpY2UuCisgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgfAorICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBWCisgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgWGVuYnVzU3RhdGVJbml0V2FpdAorICoKKyAqIG8gUXVlcnkgZnJvbnRlbmQgY29uZmlndXJh
dGlvbgorICogbyBBbGxvY2F0ZSBhbmQgaW5pdGlhbGl6ZQorICogICBldmVudCBjaGFubmVscyBh
bmQgYnVmZmVycworICogbyBQdWJsaXNoIHRyYW5zcG9ydCBwYXJhbWV0ZXJzCisgKiAgIHRoYXQg
d2lsbCBiZSBpbiBlZmZlY3QgZHVyaW5nCisgKiAgIHRoaXMgY29ubmVjdGlvbi4KKyAqICAgICAg
ICAgICAgICB8CisgKiAgICAgICAgICAgICAgfAorICogICAgICAgICAgICAgIFYKKyAqIFhlbmJ1
c1N0YXRlSW5pdGlhbGlzZWQKKyAqCisgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIG8gUXVlcnkgZnJvbnRlbmQgdHJhbnNwb3J0IHBhcmFtZXRlcnMuCisgKiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG8gQ29ubmVjdCB0byB0aGUgZXZlbnQgY2hh
bm5lbHMuCisgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHwKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgfAorICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBWCisgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWGVu
YnVzU3RhdGVDb25uZWN0ZWQKKyAqCisgKiAgbyBDcmVhdGUgYW5kIGluaXRpYWxpemUgT1MKKyAq
ICB2aXJ0dWFsIERJU1BMIGFzIHBlciBjb25maWd1cmF0aW9uLgorICogICAgICAgICAgICAgIHwK
KyAqICAgICAgICAgICAgICB8CisgKiAgICAgICAgICAgICAgVgorICogWGVuYnVzU3RhdGVDb25u
ZWN0ZWQKKyAqCisgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWGVuYnVz
U3RhdGVVbmtub3duCisgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWGVu
YnVzU3RhdGVDbG9zZWQKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBY
ZW5idXNTdGF0ZUNsb3NpbmcKKyAqIG8gUmVtb3ZlIHZpcnR1YWwgZGlzcGxheSBkZXZpY2UKKyAq
IG8gUmVtb3ZlIGV2ZW50IGNoYW5uZWxzCisgKiAgICAgICAgICAgICAgfAorICogICAgICAgICAg
ICAgIHwKKyAqICAgICAgICAgICAgICBWCisgKiBYZW5idXNTdGF0ZUNsb3NlZAorICoKKyAqLwor
CisvKgorICogUkVRVUVTVCBDT0RFUy4KKyAqLworI2RlZmluZSBYRU5ESVNQTF9PUF9EQlVGX0NS
RUFURSAgICAgICAgICAgMAorI2RlZmluZSBYRU5ESVNQTF9PUF9EQlVGX0RFU1RST1kgICAgICAg
ICAgMQorI2RlZmluZSBYRU5ESVNQTF9PUF9GQl9BVFRBQ0ggICAgICAgICAgICAgMgorI2RlZmlu
ZSBYRU5ESVNQTF9PUF9GQl9ERVRBQ0ggICAgICAgICAgICAgMworI2RlZmluZSBYRU5ESVNQTF9P
UF9TRVRfQ09ORklHICAgICAgICAgICAgNAorI2RlZmluZSBYRU5ESVNQTF9PUF9QR19GTElQICAg
ICAgICAgICAgICAgNQorCisvKgorICogRVZFTlQgQ09ERVMuCisgKi8KKyNkZWZpbmUgWEVORElT
UExfRVZUX1BHX0ZMSVAgICAgICAgICAgICAgIDAKKworLyoKKyAqIFhFTlNUT1JFIEZJRUxEIEFO
RCBQQVRIIE5BTUUgU1RSSU5HUywgSEVMUEVSUy4KKyAqLworI2RlZmluZSBYRU5ESVNQTF9EUklW
RVJfTkFNRSAgICAgICAgICAgICAgInZkaXNwbCIKKworI2RlZmluZSBYRU5ESVNQTF9MSVNUX1NF
UEFSQVRPUiAgICAgICAgICAgIjsiCisjZGVmaW5lIFhFTkRJU1BMX1JFU09MVVRJT05fU0VQQVJB
VE9SICAgICAieCIKKy8qIEZpZWxkIG5hbWVzICovCisjZGVmaW5lIFhFTkRJU1BMX0ZJRUxEX0ZF
QVRVUkVTICAgICAgICAgICAiZmVhdHVyZXMiCisjZGVmaW5lIFhFTkRJU1BMX0ZJRUxEX0NUUkxf
UklOR19SRUYgICAgICAiY3RybC1yaW5nLXJlZiIKKyNkZWZpbmUgWEVORElTUExfRklFTERfQ1RS
TF9DSEFOTkVMICAgICAgICJjdHJsLWNoYW5uZWwiCisjZGVmaW5lIFhFTkRJU1BMX0ZJRUxEX0VW
VF9SSU5HX1JFRiAgICAgICAiZXZlbnQtcmluZy1yZWYiCisjZGVmaW5lIFhFTkRJU1BMX0ZJRUxE
X0VWVF9DSEFOTkVMICAgICAgICAiZXZlbnQtY2hhbm5lbCIKKyNkZWZpbmUgWEVORElTUExfRklF
TERfUkVTT0xVVElPTiAgICAgICAgICJyZXNvbHV0aW9uIgorCisjZGVmaW5lIFhFTkRJU1BMX0ZF
QVRVUkVfQkVfQUxMT0MgICAgICAgICAgImJlX2FsbG9jIgorCisvKgorICogU1RBVFVTIFJFVFVS
TiBDT0RFUy4KKyAqLworLyogT3BlcmF0aW9uIHBhcmFtZXRlcnMgYXJlIGludmFsaWQgKi8KKyNk
ZWZpbmUgWEVORElTUExfUlNQX0lOVkFMICAgICAgICAgICAgICAgICgtNCkKKy8qIE9wZXJhdGlv
biBjYW5ub3QgYmUgY29tcGxldGVkIGJlY2F1c2Ugb2YgbWVtb3J5IGNvbnN0cmFpbnRzICovCisj
ZGVmaW5lIFhFTkRJU1BMX1JTUF9OT01FTSAgICAgICAgICAgICAgICAoLTMpCisvKiBPcGVyYXRp
b24gaXMgbm90IHN1cHBvcnRlZCAqLworI2RlZmluZSBYRU5ESVNQTF9SU1BfTk9UU1VQUCAgICAg
ICAgICAgICAgKC0yKQorLyogT3BlcmF0aW9uIGZhaWxlZCBmb3Igc29tZSB1bnNwZWNpZmllZCBy
ZWFzb24gKGUuIGcuIC1FSU8pICovCisjZGVmaW5lIFhFTkRJU1BMX1JTUF9FUlJPUiAgICAgICAg
ICAgICAgICAoLTEpCisvKiBPcGVyYXRpb24gY29tcGxldGVkIHN1Y2Nlc3NmdWxseSAqLworI2Rl
ZmluZSBYRU5ESVNQTF9SU1BfT0tBWSAgICAgICAgICAgICAgICAgMAorCisvKiBQYXRoIGVudHJp
ZXMgKi8KKyNkZWZpbmUgWEVORElTUExfUEFUSF9DT05ORUNUT1IgICAgICAgICAgICJjb25uZWN0
b3IiCisKKy8qCisgKiBBc3N1bXB0aW9uczoKKyAqICAgbyB1c2FnZSBvZiBncmFudCByZWZlcmVu
Y2UgMCBhcyBpbnZhbGlkIGdyYW50IHJlZmVyZW5jZToKKyAqICAgICBncmFudCByZWZlcmVuY2Ug
MCBpcyB2YWxpZCwgYnV0IG5ldmVyIGV4cG9zZWQgdG8gYSBQViBkcml2ZXIsCisgKiAgICAgYmVj
YXVzZSBvZiB0aGUgZmFjdCBpdCBpcyBhbHJlYWR5IGluIHVzZS9yZXNlcnZlZCBieSB0aGUgUFYg
Y29uc29sZS4KKyAqICAgbyBhbGwgcmVmZXJlbmNlcyBpbiB0aGlzIGRvY3VtZW50IHRvIHBhZ2Ug
c2l6ZXMgbXVzdCBiZSB0cmVhdGVkCisgKiAgICAgYXMgcGFnZXMgb2Ygc2l6ZSBYRU5fUEFHRV9T
SVpFIChYQ19QQUdFX1NJWkUpIHVubGVzcyAgb3RoZXJ3aXNlIG5vdGVkLgorICoKKyAqIERlc2Ny
aXB0aW9uIG9mIHRoZSBwcm90b2NvbCBiZXR3ZWVuIGZyb250ZW5kIGFuZCBiYWNrZW5kIGRyaXZl
ci4KKyAqCisgKiBUaGUgdHdvIGhhbHZlcyBvZiBhIFBhcmEtdmlydHVhbCBkaXNwbGF5IGRyaXZl
ciBjb21tdW5pY2F0ZSB3aXRoCisgKiBlYWNoIG90aGVyIHVzaW5nIGEgc2hhcmVkIHBhZ2UgYW5k
IGFuIGV2ZW50IGNoYW5uZWwuCisgKiBTaGFyZWQgcGFnZSBjb250YWlucyBhIHJpbmcgd2l0aCBy
ZXF1ZXN0L3Jlc3BvbnNlIHBhY2tldHMuCisgKgorICogQWxsIHJlc2VydmVkIGZpZWxkcyBpbiB0
aGUgc3RydWN0dXJlcyBiZWxvdyBtdXN0IGJlIDAuCisgKiBEaXNwbGF5IGJ1ZmZlcnMncyBjb29r
aWUgb2YgdmFsdWUgMCB0cmVhdGVkIGFzIGludmFsaWQuCisgKiBGcmFtZWJ1ZmZlcidzIGNvb2tp
ZSBvZiB2YWx1ZSAwIHRyZWF0ZWQgYXMgaW52YWxpZC4KKyAqCisgKiBBbGwgcmVxdWVzdHMvcmVz
cG9uc2VzLCB3aGljaCBhcmUgbm90IGNvbm5lY3RvciBzcGVjaWZpYywgbXVzdCBiZSBzZW50IG92
ZXIKKyAqIGNvbnRyb2wgcmluZyBvZiB0aGUgY29ubmVjdG9yIHdpdGggaW5kZXggMC4KKyAqCisg
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZyb250
ZW5kIHRvIGJhY2tlbmQgcmVxdWVzdHMKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoKKyAqIEFs
bCByZXF1ZXN0IHBhY2tldHMgaGF2ZSB0aGUgc2FtZSBsZW5ndGggKDY0IG9jdGV0cykKKyAqIEFs
bCByZXF1ZXN0IHBhY2tldHMgaGF2ZSBjb21tb24gaGVhZGVyOgorICogICAgICAgICAgMCAgICAg
ICAgICAgICAgICAgMSAgICAgICAgICAgICAgICAgIDIgICAgICAgICAgICAgICAgMyAgICAgICAg
b2N0ZXQKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t
LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgIGlkICAgICAg
ICAgICAgICAgIHwgICAgb3BlcmF0aW9uICAgIHwgICAgcmVzZXJ2ZWQgICAgIHwKKyAqICstLS0t
LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t
LS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSst
LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAq
IGlkIC0gdWludDE2X3QsIHByaXZhdGUgZ3Vlc3QgdmFsdWUsIGVjaG9lZCBpbiByZXNwb25zZQor
ICogb3BlcmF0aW9uIC0gdWludDhfdCwgb3BlcmF0aW9uIGNvZGUKKyAqCisgKgorICogUmVxdWVz
dCBkYnVmIGNyZWF0aW9uIC0gcmVxdWVzdCBjcmVhdGlvbiBvZiBhIGRpc3BsYXkgYnVmZmVyLgor
ICogICAgICAgICAgMCAgICAgICAgICAgICAgICAgMSAgICAgICAgICAgICAgICAgIDIgICAgICAg
ICAgICAgICAgMyAgICAgICAgb2N0ZXQKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t
LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAg
ICAgICAgICAgIGlkICAgICAgICAgICAgICAgIHwgX09QX0RCVUZfQ1JFQVRFIHwgICAgIHJlc2Vy
dmVkICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t
LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgcmVzZXJ2ZWQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICst
LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0t
LS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgZGJ1Zl9jb29raWUg
bG93IDMyLWJpdCAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0t
LSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsK
KyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgZGJ1Zl9jb29raWUgaGlnaCAzMi1iaXQgICAg
ICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t
LS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB3aWR0aCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t
LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBoZWlnaHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0t
LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t
LS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnBwICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSst
LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAq
IHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnVmZmVyX3N6ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t
LSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBmbGFncyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t
LS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgZ3Jl
Zl9kaXJlY3Rvcnlfc3RhcnQgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0t
LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t
LS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0t
LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwv
XC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9c
L1wvXC9cL1wvXC9cL3wKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSst
LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgcmVzZXJ2ZWQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwK
KyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t
LSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqCisgKiBNdXN0IGJlIHNlbnQgb3ZlciBjb250cm9sIHJp
bmcgb2YgdGhlIGNvbm5lY3RvciB3aXRoIGluZGV4IDAuCisgKgorICogZGJ1Zl9jb29raWUgLSB1
aW50NjRfdCwgdW5pcXVlIHRvIGd1ZXN0IGRvbWFpbiB2YWx1ZSB1c2VkIGJ5IHRoZSBiYWNrZW5k
CisgKiAgIHRvIG1hcCByZW1vdGUgZGlzcGxheSBidWZmZXIgdG8gbG9jYWwgaW4gcmVxdWVzdHMK
KyAqIHdpZHRoIC0gdWludDMyX3QsIHdpZHRoIGluIHBpeGVscworICogaGVpZ2h0IC0gdWludDMy
X3QsIGhlaWdodCBpbiBwaXhlbHMKKyAqIGJwcCAtIHVpbnQzMl90LCBiaXRzIHBlciBwaXhlbAor
ICogYnVmZmVyX3N6IC0gdWludDMyX3QsIGJ1ZmZlciBzaXplIHRvIGJlIGFsbG9jYXRlZCBpbiBv
Y3RldHMKKyAqIGZsYWdzIC0gdWludDMyX3QsIGZsYWdzIG9mIHRoZSBvcGVyYXRpb24KKyAqICAg
byBYRU5ESVNQTF9EQlVGX0ZMR19SRVFfQUxMT0MgLSBpZiBzZXQsIHRoZW4gYmFja2VuZCBpcyBy
ZXF1ZXN0ZWQKKyAqICAgICB0byBhbGxvY2F0ZSB0aGUgYnVmZmVyIHdpdGggdGhlIHBhcmFtZXRl
cnMgcHJvdmlkZWQgaW4gdGhpcyByZXF1ZXN0LgorICogICAgIFBhZ2UgZGlyZWN0b3J5IGlzIGhh
bmRsZWQgYXMgZm9sbG93czoKKyAqICAgICAgIEZyb250ZW5kIG9uIHJlcXVlc3Q6CisgKiAgICAg
ICAgIG8gYWxsb2NhdGVzIHBhZ2VzIGZvciB0aGUgZGlyZWN0b3J5CisgKiAgICAgICAgIG8gZ3Jh
bnRzIHBlcm1pc3Npb25zIGZvciB0aGUgcGFnZXMgb2YgdGhlIGRpcmVjdG9yeQorICogICAgICAg
ICBvIHNldHMgZ3JlZl9kaXJfbmV4dF9wYWdlIGZpZWxkcworICogICAgICAgQmFja2VuZCBvbiBy
ZXNwb25zZToKKyAqICAgICAgICAgbyBncmFudHMgcGVybWlzc2lvbnMgZm9yIHRoZSBwYWdlcyBv
ZiB0aGUgYnVmZmVyIGFsbG9jYXRlZAorICogICAgICAgICBvIGZpbGxzIGluIHBhZ2UgZGlyZWN0
b3J5IHdpdGggZ3JhbnQgcmVmZXJlbmNlcworICogZ3JlZl9kaXJlY3Rvcnlfc3RhcnQgLSBncmFu
dF9yZWZfdCwgYSByZWZlcmVuY2UgdG8gdGhlIGZpcnN0IHNoYXJlZCBwYWdlCisgKiAgIGRlc2Ny
aWJpbmcgc2hhcmVkIGJ1ZmZlciByZWZlcmVuY2VzLiBBdCBsZWFzdCBvbmUgcGFnZSBleGlzdHMu
IElmIHNoYXJlZAorICogICBidWZmZXIgc2l6ZSBleGNlZWRzIHdoYXQgY2FuIGJlIGFkZHJlc3Nl
ZCBieSB0aGlzIHNpbmdsZSBwYWdlLCB0aGVuCisgKiAgIHJlZmVyZW5jZSB0byB0aGUgbmV4dCBw
YWdlIG11c3QgYmUgc3VwcGxpZWQgKHNlZSBncmVmX2Rpcl9uZXh0X3BhZ2UgYmVsb3cpCisgKi8K
KworI2RlZmluZSBYRU5ESVNQTF9EQlVGX0ZMR19SRVFfQUxMT0MgICAgICAgMHgwMDAxCisKK3N0
cnVjdCB4ZW5kaXNwbF9kYnVmX2NyZWF0ZV9yZXEgeworICAgIHVpbnQ2NF90IGRidWZfY29va2ll
OworICAgIHVpbnQzMl90IHdpZHRoOworICAgIHVpbnQzMl90IGhlaWdodDsKKyAgICB1aW50MzJf
dCBicHA7CisgICAgdWludDMyX3QgYnVmZmVyX3N6OworICAgIHVpbnQzMl90IGZsYWdzOworICAg
IGdyYW50X3JlZl90IGdyZWZfZGlyZWN0b3J5X3N0YXJ0OworfTsKKworLyoKKyAqIFNoYXJlZCBw
YWdlIGZvciBYRU5ESVNQTF9PUF9EQlVGX0NSRUFURSBidWZmZXIgZGVzY3JpcHRvciAoZ3JlZl9k
aXJlY3RvcnkgaW4KKyAqICAgdGhlIHJlcXVlc3QpIGVtcGxveXMgYSBsaXN0IG9mIHBhZ2VzLCBk
ZXNjcmliaW5nIGFsbCBwYWdlcyBvZiB0aGUgc2hhcmVkCisgKiAgIGRhdGEgYnVmZmVyOgorICog
ICAgICAgICAgMCAgICAgICAgICAgICAgICAgMSAgICAgICAgICAgICAgICAgIDIgICAgICAgICAg
ICAgICAgMyAgICAgICAgb2N0ZXQKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t
LS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAg
ICAgICAgICAgICAgICAgIGdyZWZfZGlyX25leHRfcGFnZSAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t
LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGdyZWZbMF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0t
LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t
LS0tLS0tLS0tLSsKKyAqIHwvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9c
L1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL3wKKyAqICstLS0tLS0tLS0tLS0tLS0tLSst
LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAq
IHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdyZWZbaV0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t
LSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwvXC9cL1wvXC9cL1wv
XC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9c
L3wKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t
LS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGdyZWZbTi0xXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0t
LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t
LS0tLS0tLSsKKyAqCisgKiBncmVmX2Rpcl9uZXh0X3BhZ2UgLSBncmFudF9yZWZfdCwgcmVmZXJl
bmNlIHRvIHRoZSBuZXh0IHBhZ2UgZGVzY3JpYmluZworICogICBwYWdlIGRpcmVjdG9yeS4gTXVz
dCBiZSAwIGlmIG5vIG1vcmUgcGFnZXMgaW4gdGhlIGxpc3QuCisgKiBncmVmW2ldIC0gZ3JhbnRf
cmVmX3QsIHJlZmVyZW5jZSB0byBhIHNoYXJlZCBwYWdlIG9mIHRoZSBkaXNwbGF5IGJ1ZmZlcgor
ICogICBhbGxvY2F0ZWQgYXQgWEVORElTUExfT1BfREJVRl9DUkVBVEUKKyAqCisgKiBOdW1iZXIg
b2YgZ3JhbnRfcmVmX3QgZW50cmllcyBpbiB0aGUgd2hvbGUgcGFnZSBkaXJlY3RvcnkgaXMgbm90
CisgKiBwYXNzZWQsIGJ1dCBpbnN0ZWFkIGNhbiBiZSBjYWxjdWxhdGVkIGFzOgorICogICBudW1f
Z3JlZnNfdG90YWwgPSAoWEVORElTUExfT1BfREJVRl9DUkVBVEUuYnVmZmVyX3N6ICsgWEVOX1BB
R0VfU0laRSAtIDEpIC8KKyAqICAgICAgIFhFTl9QQUdFX1NJWkUKKyAqLworCitzdHJ1Y3QgeGVu
ZGlzcGxfcGFnZV9kaXJlY3RvcnkgeworICAgIGdyYW50X3JlZl90IGdyZWZfZGlyX25leHRfcGFn
ZTsKKyAgICBncmFudF9yZWZfdCBncmVmWzFdOyAvKiBWYXJpYWJsZSBsZW5ndGggKi8KK307CisK
Ky8qCisgKiBSZXF1ZXN0IGRidWYgZGVzdHJ1Y3Rpb24gLSBkZXN0cm95IGEgcHJldmlvdXNseSBh
bGxvY2F0ZWQgZGlzcGxheSBidWZmZXI6CisgKiAgICAgICAgICAwICAgICAgICAgICAgICAgICAx
ICAgICAgICAgICAgICAgICAgMiAgICAgICAgICAgICAgICAzICAgICAgICBvY3RldAorICogKy0t
LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t
LS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgaWQgICAgICAgICAgICAgICAgfCBf
T1BfREJVRl9ERVNUUk9ZfCAgICAgcmVzZXJ2ZWQgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0t
Ky0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKwor
ICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t
LS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAg
ICAgICAgICAgICAgICBkYnVmX2Nvb2tpZSBsb3cgMzItYml0ICAgICAgICAgICAgICAgICAgICAg
ICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t
LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICBk
YnVmX2Nvb2tpZSBoaWdoIDMyLWJpdCAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0t
LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t
LS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0t
LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICog
fC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9c
L1wvXC9cL1wvXC9cL1wvfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t
Ky0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICByZXNlcnZlZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
fAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t
LS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICoKKyAqIE11c3QgYmUgc2VudCBvdmVyIGNvbnRyb2wg
cmluZyBvZiB0aGUgY29ubmVjdG9yIHdpdGggaW5kZXggMC4KKyAqCisgKiBkYnVmX2Nvb2tpZSAt
IHVpbnQ2NF90LCB1bmlxdWUgdG8gZ3Vlc3QgZG9tYWluIHZhbHVlIHVzZWQgYnkgdGhlIGJhY2tl
bmQKKyAqICAgdG8gbWFwIHJlbW90ZSBkaXNwbGF5IGJ1ZmZlciB0byBsb2NhbCBpbiByZXF1ZXN0
cworICovCisKK3N0cnVjdCB4ZW5kaXNwbF9kYnVmX2Rlc3Ryb3lfcmVxIHsKKyAgICB1aW50NjRf
dCBkYnVmX2Nvb2tpZTsKK307CisKKy8qCisgKiBSZXF1ZXN0IGZyYW1lYnVmZmVyIGF0dGFjaG1l
bnQgLSByZXF1ZXN0IGF0dGFjaG1lbnQgb2YgYSBmcmFtZWJ1ZmZlciB0bworICogICBwcmV2aW91
c2x5IGNyZWF0ZWQgZGlzcGxheSBidWZmZXIuCisgKiAgICAgICAgICAwICAgICAgICAgICAgICAg
ICAxICAgICAgICAgICAgICAgICAgMiAgICAgICAgICAgICAgICAzICAgICAgICBvY3RldAorICog
Ky0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0t
LS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgaWQgICAgICAgICAgICAgICAg
fCBfT1BfRkJfQVRUQUNIICAgfCAgICAgcmVzZXJ2ZWQgICAgfAorICogKy0tLS0tLS0tLS0tLS0t
LS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t
KworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t
LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAg
ICAgICAgICAgICAgICAgICBkYnVmX2Nvb2tpZSBsb3cgMzItYml0ICAgICAgICAgICAgICAgICAg
ICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t
LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAg
ICBkYnVmX2Nvb2tpZSBoaWdoIDMyLWJpdCAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0t
LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t
LS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgZmJfY29va2llIGxv
dyAzMi1iaXQgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0t
Ky0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKwor
ICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgZmJfY29va2llIGhpZ2ggMzItYml0ICAgICAg
ICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t
LS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHdpZHRoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t
LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGhlaWdodCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0t
LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t
LS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBpeGVsX2Zvcm1h
dCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0t
LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICog
fCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t
Ky0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfC9cL1wvXC9cL1wvXC9c
L1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wv
fAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t
LS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICByZXNlcnZlZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0t
LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t
LS0tLS0tKworICoKKyAqIE11c3QgYmUgc2VudCBvdmVyIGNvbnRyb2wgcmluZyBvZiB0aGUgY29u
bmVjdG9yIHdpdGggaW5kZXggMC4KKyAqCisgKiBkYnVmX2Nvb2tpZSAtIHVpbnQ2NF90LCB1bmlx
dWUgdG8gZ3Vlc3QgZG9tYWluIHZhbHVlIHVzZWQgYnkgdGhlIGJhY2tlbmQKKyAqICAgdG8gbWFw
IHJlbW90ZSBkaXNwbGF5IGJ1ZmZlciB0byBsb2NhbCBpbiByZXF1ZXN0cworICogZmJfY29va2ll
IC0gdWludDY0X3QsIHVuaXF1ZSB0byBndWVzdCBkb21haW4gdmFsdWUgdXNlZCBieSB0aGUgYmFj
a2VuZAorICogICB0byBtYXAgcmVtb3RlIGZyYW1lYnVmZmVyIHRvIGxvY2FsIGluIHJlcXVlc3Rz
CisgKiB3aWR0aCAtIHVpbnQzMl90LCB3aWR0aCBpbiBwaXhlbHMKKyAqIGhlaWdodCAtIHVpbnQz
Ml90LCBoZWlnaHQgaW4gcGl4ZWxzCisgKiBwaXhlbF9mb3JtYXQgLSB1aW50MzJfdCwgcGl4ZWwg
Zm9ybWF0IG9mIHRoZSBmcmFtZWJ1ZmZlciwgRk9VUkNDIGNvZGUKKyAqLworCitzdHJ1Y3QgeGVu
ZGlzcGxfZmJfYXR0YWNoX3JlcSB7CisgICAgdWludDY0X3QgZGJ1Zl9jb29raWU7CisgICAgdWlu
dDY0X3QgZmJfY29va2llOworICAgIHVpbnQzMl90IHdpZHRoOworICAgIHVpbnQzMl90IGhlaWdo
dDsKKyAgICB1aW50MzJfdCBwaXhlbF9mb3JtYXQ7Cit9OworCisvKgorICogUmVxdWVzdCBmcmFt
ZWJ1ZmZlciBkZXRhY2ggLSBkZXRhY2ggYSBwcmV2aW91c2x5CisgKiAgIGF0dGFjaGVkIGZyYW1l
YnVmZmVyIGZyb20gdGhlIGRpc3BsYXkgYnVmZmVyIGluIHJlcXVlc3Q6CisgKiAgICAgICAgICAw
ICAgICAgICAgICAgICAgICAxICAgICAgICAgICAgICAgICAgMiAgICAgICAgICAgICAgICAzICAg
ICAgICBvY3RldAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t
LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgaWQg
ICAgICAgICAgICAgICAgfCAgX09QX0ZCX0RFVEFDSCAgfCAgICAgcmVzZXJ2ZWQgICAgfAorICog
Ky0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0t
LS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNl
cnZlZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0t
LS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t
KworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgZmJfY29va2llIGxvdyAzMi1iaXQgICAg
ICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t
LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAg
ICAgICAgICAgICAgICAgICAgZmJfY29va2llIGhpZ2ggMzItYml0ICAgICAgICAgICAgICAgICAg
ICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t
LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICByZXNlcnZlZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0t
LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t
LS0tLS0tLS0tLS0tKworICogfC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9c
L1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvfAorICogKy0tLS0tLS0tLS0tLS0tLS0t
Ky0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKwor
ICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t
LS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICoKKyAqIE11c3QgYmUg
c2VudCBvdmVyIGNvbnRyb2wgcmluZyBvZiB0aGUgY29ubmVjdG9yIHdpdGggaW5kZXggMC4KKyAq
CisgKiBmYl9jb29raWUgLSB1aW50NjRfdCwgdW5pcXVlIHRvIGd1ZXN0IGRvbWFpbiB2YWx1ZSB1
c2VkIGJ5IHRoZSBiYWNrZW5kCisgKiAgIHRvIG1hcCByZW1vdGUgZnJhbWVidWZmZXIgdG8gbG9j
YWwgaW4gcmVxdWVzdHMKKyAqLworCitzdHJ1Y3QgeGVuZGlzcGxfZmJfZGV0YWNoX3JlcSB7Cisg
ICAgdWludDY0X3QgZmJfY29va2llOworfTsKKworLyoKKyAqIFJlcXVlc3QgY29uZmlndXJhdGlv
biBzZXQvcmVzZXQgLSByZXF1ZXN0IHRvIHNldCBvciByZXNldAorICogICB0aGUgY29uZmlndXJh
dGlvbi9tb2RlIG9mIHRoZSBkaXNwbGF5OgorICogICAgICAgICAgMCAgICAgICAgICAgICAgICAg
MSAgICAgICAgICAgICAgICAgIDIgICAgICAgICAgICAgICAgMyAgICAgICAgb2N0ZXQKKyAqICst
LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0t
LS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgIGlkICAgICAgICAgICAgICAgIHwg
X09QX1NFVF9DT05GSUcgIHwgICAgIHJlc2VydmVkICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0t
LSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsK
KyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t
LS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAg
ICAgICAgICAgICAgICAgIGZiX2Nvb2tpZSBsb3cgMzItYml0ICAgICAgICAgICAgICAgICAgICAg
ICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t
LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAg
IGZiX2Nvb2tpZSBoaWdoIDMyLWJpdCAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0t
LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t
LS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHggICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSst
LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAq
IHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHkgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t
LSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB3aWR0aCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t
LS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBoZWlnaHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0t
LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t
LS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnBwICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0t
LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSst
LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwvXC9cL1wvXC9cL1wvXC9c
L1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL3wK
KyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t
LSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
cmVzZXJ2ZWQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0t
LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t
LS0tLSsKKyAqCisgKiBQYXNzIGFsbCB6ZXJvcyB0byByZXNldCwgb3RoZXJ3aXNlIGNvbW1hbmQg
aXMgdHJlYXRlZCBhcworICogY29uZmlndXJhdGlvbiBzZXQuCisgKiBJZiB0aGlzIGlzIGEgc2V0
IGNvbmZpZ3VyYXRpb24gcmVxdWVzdCB0aGVuIGZyYW1lYnVmZmVyJ3MgY29va2llIHRlbGxzCisg
KiB0aGUgZGlzcGxheSB3aGljaCBmcmFtZWJ1ZmZlci9kYnVmIG11c3QgYmUgc2hvd24gd2hpbGUg
ZW5hYmxpbmcgZGlzcGxheQorICogKGFwcGx5aW5nIGNvbmZpZ3VyYXRpb24pLgorICoKKyAqIGZi
X2Nvb2tpZSAtIHVpbnQ2NF90LCB1bmlxdWUgdG8gZ3Vlc3QgZG9tYWluIHZhbHVlIHVzZWQgYnkg
dGhlIGJhY2tlbmQKKyAqICAgdG8gbWFwIHJlbW90ZSBmcmFtZWJ1ZmZlciB0byBsb2NhbCBpbiBy
ZXF1ZXN0cworICogeCAtIHVpbnQzMl90LCBzdGFydGluZyBwb3NpdGlvbiBpbiBwaXhlbHMgYnkg
WCBheGlzCisgKiB5IC0gdWludDMyX3QsIHN0YXJ0aW5nIHBvc2l0aW9uIGluIHBpeGVscyBieSBZ
IGF4aXMKKyAqIHdpZHRoIC0gdWludDMyX3QsIHdpZHRoIGluIHBpeGVscworICogaGVpZ2h0IC0g
dWludDMyX3QsIGhlaWdodCBpbiBwaXhlbHMKKyAqIGJwcCAtIHVpbnQzMl90LCBiaXRzIHBlciBw
aXhlbAorICovCisKK3N0cnVjdCB4ZW5kaXNwbF9zZXRfY29uZmlnX3JlcSB7CisgICAgdWludDY0
X3QgZmJfY29va2llOworICAgIHVpbnQzMl90IHg7CisgICAgdWludDMyX3QgeTsKKyAgICB1aW50
MzJfdCB3aWR0aDsKKyAgICB1aW50MzJfdCBoZWlnaHQ7CisgICAgdWludDMyX3QgYnBwOworfTsK
KworLyoKKyAqIFJlcXVlc3QgcGFnZSBmbGlwIC0gcmVxdWVzdCB0byBmbGlwIGEgcGFnZSBpZGVu
dGlmaWVkIGJ5IHRoZSBmcmFtZWJ1ZmZlcgorICogICBjb29raWU6CisgKiAgICAgICAgICAwICAg
ICAgICAgICAgICAgICAxICAgICAgICAgICAgICAgICAgMiAgICAgICAgICAgICAgICAzICAgICAg
ICBvY3RldAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t
LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgaWQgICAg
ICAgICAgICAgICAgfCBfT1BfUEdfRkxJUCAgICAgfCAgICAgcmVzZXJ2ZWQgICAgfAorICogKy0t
LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t
LS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZl
ZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0t
Ky0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKwor
ICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgZmJfY29va2llIGxvdyAzMi1iaXQgICAgICAg
ICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t
LS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAg
ICAgICAgICAgICAgICAgZmJfY29va2llIGhpZ2ggMzItYml0ICAgICAgICAgICAgICAgICAgICAg
ICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t
LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICByZXNlcnZlZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0t
LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t
LS0tLS0tLS0tKworICogfC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wv
XC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0t
LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICog
fCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t
Ky0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICoKKyAqIGZiX2Nvb2tpZSAt
IHVpbnQ2NF90LCB1bmlxdWUgdG8gZ3Vlc3QgZG9tYWluIHZhbHVlIHVzZWQgYnkgdGhlIGJhY2tl
bmQKKyAqICAgdG8gbWFwIHJlbW90ZSBmcmFtZWJ1ZmZlciB0byBsb2NhbCBpbiByZXF1ZXN0cwor
ICovCisKK3N0cnVjdCB4ZW5kaXNwbF9wYWdlX2ZsaXBfcmVxIHsKKyAgICB1aW50NjRfdCBmYl9j
b29raWU7Cit9OworCisvKgorICogQWxsIHJlc3BvbnNlIHBhY2tldHMgaGF2ZSB0aGUgc2FtZSBs
ZW5ndGggKDY0IG9jdGV0cykKKyAqCisgKiBSZXNwb25zZSBmb3IgYWxsIHJlcXVlc3RzOgorICog
ICAgICAgICAgMCAgICAgICAgICAgICAgICAgMSAgICAgICAgICAgICAgICAgIDIgICAgICAgICAg
ICAgICAgMyAgICAgICAgb2N0ZXQKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t
LS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAg
ICAgICAgIGlkICAgICAgICAgICAgICAgIHwgICAgICBzdGF0dXMgICAgIHwgICAgcmVzZXJ2ZWQg
ICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t
LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgcmVzZXJ2ZWQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0t
LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t
LS0tLS0tLS0tLSsKKyAqIHwvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9c
L1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL3wKKyAqICstLS0tLS0tLS0tLS0tLS0tLSst
LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAq
IHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t
LSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqCisgKiBpZCAtIHVpbnQx
Nl90LCBwcml2YXRlIGd1ZXN0IHZhbHVlLCBlY2hvZWQgZnJvbSByZXF1ZXN0CisgKiBzdGF0dXMg
LSBpbnQ4X3QsIHJlc3BvbnNlIHN0YXR1cworICovCisKKy8qKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgor
ICogICAgICAgICAgICAgICAgICAgICAgICAgICAgQmFja2VuZCB0byBmcm9udGVuZCBldmVudHMK
KyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKgorICoKKyAqIEFsbCBldmVudCBwYWNrZXRzIGhhdmUgdGhl
IHNhbWUgbGVuZ3RoICg2NCBvY3RldHMpCisgKiBFdmVudHMgYXJlIHNlbnQgdmlhIGEgc2hhcmVk
IHBhZ2UgYWxsb2NhdGVkIGJ5IHRoZSBmcm9udCBhbmQgcHJvcGFnYXRlZCBieQorICogICBldmVu
dC1jaGFubmVsL2V2ZW50LXJpbmctcmVmIFhlblN0b3JlIGVudHJpZXMKKyAqCisgKiBBbGwgZXZl
bnQgcGFja2V0cyBoYXZlIGNvbW1vbiBoZWFkZXI6CisgKgorICogICAgICAgICAgMCAgICAgICAg
ICAgICAgICAgMSAgICAgICAgICAgICAgICAgIDIgICAgICAgICAgICAgICAgMyAgICAgICAgb2N0
ZXQKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t
LS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgIGlkICAgICAgICAg
ICAgICAgIHwgICAgICB0eXBlICAgICAgIHwgICAgIHJlc2VydmVkICAgIHwKKyAqICstLS0tLS0t
LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t
LS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0t
LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqCisg
KiBpZCAtIHVpbnQxNl90LCBldmVudCBpZCwgbWF5IGJlIHVzZWQgYnkgZnJvbnQKKyAqIHR5cGUg
LSB1aW50OF90LCB0eXBlIG9mIHRoZSBldmVudAorICoKKyAqCisgKiBQYWdlIGZsaXAgY29tcGxl
dGUgZXZlbnQgLSBldmVudCBmcm9tIGJhY2sgdG8gZnJvbnQgb24gcGFnZSBmbGlwIGNvbXBsZXRl
ZDoKKyAqICAgICAgICAgIDAgICAgICAgICAgICAgICAgIDEgICAgICAgICAgICAgICAgICAyICAg
ICAgICAgICAgICAgIDMgICAgICAgIG9jdGV0CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t
LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAg
ICAgICAgICAgICAgICBpZCAgICAgICAgICAgICAgICB8ICAgX0VWVF9QR19GTElQICB8ICAgICBy
ZXNlcnZlZCAgICB8CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0t
LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHJlc2VydmVkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cisg
KiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0r
LS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAgICAgICAgICAgICAgICAgICBmYl9jb29r
aWUgbG93IDMyLWJpdCAgICAgICAgICAgICAgICAgICAgICAgICB8CisgKiArLS0tLS0tLS0tLS0t
LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t
LS0rCisgKiB8ICAgICAgICAgICAgICAgICAgICAgICAgICBmYl9jb29raWUgaGlnaCAzMi1iaXQg
ICAgICAgICAgICAgICAgICAgICAgICB8CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t
LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHJlc2VydmVkICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t
LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8L1wvXC9cL1wvXC9cL1wvXC9cL1wv
XC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC98CisgKiAr
LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0t
LS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc2Vy
dmVkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgKiArLS0tLS0tLS0tLS0tLS0t
LS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0r
CisgKgorICogZmJfY29va2llIC0gdWludDY0X3QsIHVuaXF1ZSB0byBndWVzdCBkb21haW4gdmFs
dWUgdXNlZCBieSB0aGUgYmFja2VuZAorICogICB0byBtYXAgcmVtb3RlIGZyYW1lYnVmZmVyIHRv
IGxvY2FsIGluIHJlcXVlc3RzCisgKgorICovCisKK3N0cnVjdCB4ZW5kaXNwbF9wZ19mbGlwX2V2
dCB7CisgICAgdWludDY0X3QgZmJfY29va2llOworfTsKKworc3RydWN0IHhlbmRpc3BsX3JlcSB7
CisgICAgdWludDE2X3QgaWQ7CisgICAgdWludDhfdCBvcGVyYXRpb247CisgICAgdWludDhfdCBy
ZXNlcnZlZFs1XTsKKyAgICB1bmlvbiB7CisgICAgICAgIHN0cnVjdCB4ZW5kaXNwbF9kYnVmX2Ny
ZWF0ZV9yZXEgZGJ1Zl9jcmVhdGU7CisgICAgICAgIHN0cnVjdCB4ZW5kaXNwbF9kYnVmX2Rlc3Ry
b3lfcmVxIGRidWZfZGVzdHJveTsKKyAgICAgICAgc3RydWN0IHhlbmRpc3BsX2ZiX2F0dGFjaF9y
ZXEgZmJfYXR0YWNoOworICAgICAgICBzdHJ1Y3QgeGVuZGlzcGxfZmJfZGV0YWNoX3JlcSBmYl9k
ZXRhY2g7CisgICAgICAgIHN0cnVjdCB4ZW5kaXNwbF9zZXRfY29uZmlnX3JlcSBzZXRfY29uZmln
OworICAgICAgICBzdHJ1Y3QgeGVuZGlzcGxfcGFnZV9mbGlwX3JlcSBwZ19mbGlwOworICAgICAg
ICB1aW50OF90IHJlc2VydmVkWzU2XTsKKyAgICB9IG9wOworfTsKKworc3RydWN0IHhlbmRpc3Bs
X3Jlc3AgeworICAgIHVpbnQxNl90IGlkOworICAgIHVpbnQ4X3Qgb3BlcmF0aW9uOworICAgIGlu
dDhfdCBzdGF0dXM7CisgICAgdWludDhfdCByZXNlcnZlZFs2MF07Cit9OworCitzdHJ1Y3QgeGVu
ZGlzcGxfZXZ0IHsKKyAgICB1aW50MTZfdCBpZDsKKyAgICB1aW50OF90IHR5cGU7CisgICAgdWlu
dDhfdCByZXNlcnZlZFs1XTsKKyAgICB1bmlvbiB7CisgICAgICAgIHN0cnVjdCB4ZW5kaXNwbF9w
Z19mbGlwX2V2dCBwZ19mbGlwOworICAgICAgICB1aW50OF90IHJlc2VydmVkWzU2XTsKKyAgICB9
IG9wOworfTsKKworREVGSU5FX1JJTkdfVFlQRVMoeGVuX2Rpc3BsaWYsIHN0cnVjdCB4ZW5kaXNw
bF9yZXEsIHN0cnVjdCB4ZW5kaXNwbF9yZXNwKTsKKworLyoqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgor
ICogQmFjayB0byBmcm9udCBldmVudHMKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIEluIG9y
ZGVyIHRvIGRlbGl2ZXIgYXN5bmNocm9ub3VzIGV2ZW50cyBmcm9tIGJhY2sgdG8gZnJvbnQgYSBz
aGFyZWQgcGFnZSBpcworICogYWxsb2NhdGVkIGJ5IGZyb250IGFuZCBpdHMgZ3JlZnMgcHJvcGFn
YXRlZCB0byBiYWNrIHZpYSBYZW5TdG9yZSBlbnRyaWVzCisgKiAoZXZlbnQtWFhYKS4KKyAqIFRo
aXMgcGFnZSBoYXMgYSBjb21tb24gaGVhZGVyIHVzZWQgYnkgYm90aCBmcm9udCBhbmQgYmFjayB0
byBzeW5jaHJvbml6ZQorICogYWNjZXNzIGFuZCBjb250cm9sIGV2ZW50J3MgcmluZyBidWZmZXIs
IHdoaWxlIGJhY2sgYmVpbmcgYSBwcm9kdWNlciBvZiB0aGUKKyAqIGV2ZW50cyBhbmQgZnJvbnQg
YmVpbmcgYSBjb25zdW1lci4gVGhlIHJlc3Qgb2YgdGhlIHBhZ2UgYWZ0ZXIgdGhlIGhlYWRlcgor
ICogaXMgdXNlZCBmb3IgZXZlbnQgcGFja2V0cy4KKyAqCisgKiBVcG9uIHJlY2VwdGlvbiBvZiBh
biBldmVudChzKSBmcm9udCBtYXkgY29uZmlybSBpdHMgcmVjZXB0aW9uCisgKiBmb3IgZWl0aGVy
IGVhY2ggZXZlbnQsIGdyb3VwIG9mIGV2ZW50cyBvciBub25lLgorICovCisKK3N0cnVjdCB4ZW5k
aXNwbF9ldmVudF9wYWdlIHsKKyAgICB1aW50MzJfdCBpbl9jb25zOworICAgIHVpbnQzMl90IGlu
X3Byb2Q7CisgICAgdWludDhfdCByZXNlcnZlZFs2MF07Cit9OworCisjZGVmaW5lIFhFTkRJU1BM
X0VWRU5UX1BBR0VfU0laRSA0MDk2CisjZGVmaW5lIFhFTkRJU1BMX0lOX1JJTkdfT0ZGUyAoc2l6
ZW9mKHN0cnVjdCB4ZW5kaXNwbF9ldmVudF9wYWdlKSkKKyNkZWZpbmUgWEVORElTUExfSU5fUklO
R19TSVpFIChYRU5ESVNQTF9FVkVOVF9QQUdFX1NJWkUgLSBYRU5ESVNQTF9JTl9SSU5HX09GRlMp
CisjZGVmaW5lIFhFTkRJU1BMX0lOX1JJTkdfTEVOIChYRU5ESVNQTF9JTl9SSU5HX1NJWkUgLyBz
aXplb2Yoc3RydWN0IHhlbmRpc3BsX2V2dCkpCisjZGVmaW5lIFhFTkRJU1BMX0lOX1JJTkcocGFn
ZSkgXAorCSgoc3RydWN0IHhlbmRpc3BsX2V2dCAqKSgoY2hhciAqKShwYWdlKSArIFhFTkRJU1BM
X0lOX1JJTkdfT0ZGUykpCisjZGVmaW5lIFhFTkRJU1BMX0lOX1JJTkdfUkVGKHBhZ2UsIGlkeCkg
XAorCShYRU5ESVNQTF9JTl9SSU5HKChwYWdlKSlbKGlkeCkgJSBYRU5ESVNQTF9JTl9SSU5HX0xF
Tl0pCisKKyNlbmRpZiAvKiBfX1hFTl9QVUJMSUNfSU9fRElTUExJRl9IX18gKi8KLS0gCjIuNy40
CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KRW1iZWRk
ZWQtcHYtZGV2ZWwgbWFpbGluZyBsaXN0CkVtYmVkZGVkLXB2LWRldmVsQGxpc3RzLnhlbnByb2pl
Y3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvY2dpLWJpbi9tYWlsbWFuL2xpc3Rp
bmZvL2VtYmVkZGVkLXB2LWRldmVs

From embedded-pv-devel-bounces@lists.xenproject.org Thu Dec 22 08:13:01 2016
Return-path: <embedded-pv-devel-bounces@lists.xenproject.org>
Envelope-to: archives@lists.xenproject.org
Delivery-date: Thu, 22 Dec 2016 08:13:01 +0000
Received: from localhost ([127.0.0.1] helo=lists.xenproject.org)
	by lists.xenproject.org with esmtp (Exim 4.84_2)
	(envelope-from <embedded-pv-devel-bounces@lists.xenproject.org>)
	id 1cJyUn-0003Vn-FB; Thu, 22 Dec 2016 08:13:01 +0000
Received: from mail6.bemta6.messagelabs.com ([193.109.254.103])
 by lists.xenproject.org with esmtp (Exim 4.84_2)
 (envelope-from <andr2000@gmail.com>)
 id 1cJyUm-0003Uy-2d; Thu, 22 Dec 2016 08:13:00 +0000
Received: from [193.109.254.147] by server-4.bemta-6.messagelabs.com id
 53/E6-25093-B0B8B585; Thu, 22 Dec 2016 08:12:59 +0000
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrMIsWRWlGSWpSXmKPExsVyMfTSEV2u7ug
 Ig9f3uSxW9lxktvi+ZTKTA5PH4Q9XWAIYo1gz85LyKxJYM/ZdechW8HgSU8XFeV+ZGhi/HWLs
 YuTkEBIoknj+6S5rFyMXB4vASxaJ+R9nsoAkJAT6WSV2/C2DsGMk+v/9gorXSPzeNIkFollR4
 uuz6UwgzUICK5kktkz8ygySYBMwklh+4wdYkYiAksS9VZPBipgF3jNJ3LnWD7ZaWMBT4uGNdW
 wgNouAqkTLo71MIDavgJPE9zO7GSG2yUncPNcJNpRTwFniyM19rBCbnSRWvX7GPoFRYAEjwyp
 GjeLUorLUIl0jI72kosz0jJLcxMwcXUMDM73c1OLixPTUnMSkYr3k/NxNjMBAYwCCHYxr5gce
 YpTkYFIS5dUojI4Q4kvKT6nMSCzOiC8qzUktPsQow8GhJMH7oRMoJ1iUmp5akZaZAwx5mLQEB
 4+SCK9AB1Cat7ggMbc4Mx0idYrRkuPYrMVPmTimPQORuzrXPGUSYsnLz0uVEufdBTJPAKQhoz
 QPbhwsLi8xykoJ8zICHSjEU5BalJtZgir/ilGcg1FJmHc+yBSezLwSuK2vgA5iAjrIthnsoJJ
 EhJRUA2P1hdXM6+wV5p+W6rc/Jsvt71j8rSYqVGe/K0cDx2Ib115272szLmmcEkjgqPlx9O58
 pzKep5Wzd8ybFvHdec+CyW/f5j6p3x/z+1YY+1r59S//+V45u/rln3jlZMYHPz0L93e4iWXz9
 ofPWVrLrKi94sbq+LN3fpzdvVXsfBzrlIZm0z0f42SVWIozEg21mIuKEwFaLks2xgIAAA==
X-Env-Sender: andr2000@gmail.com
X-Msg-Ref: server-8.tower-27.messagelabs.com!1482394378!68378295!1
X-Originating-IP: [209.85.210.196]
X-SpamReason: No, hits=0.5 required=7.0 tests=BODY_RANDOM_LONG
X-StarScan-Received: 
X-StarScan-Version: 9.1.1; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 40534 invoked from network); 22 Dec 2016 08:12:58 -0000
Received: from mail-wj0-f196.google.com (HELO mail-wj0-f196.google.com)
 (209.85.210.196)
 by server-8.tower-27.messagelabs.com with AES128-GCM-SHA256 encrypted SMTP;
 22 Dec 2016 08:12:58 -0000
Received: by mail-wj0-f196.google.com with SMTP id ez4so593512wjd.1;
 Thu, 22 Dec 2016 00:12:58 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025;
 h=from:to:cc:subject:date:message-id:in-reply-to:references;
 bh=izVwYlIqWG7f+EVCW8a65mB1We4k9eZ0Yq5RnVyPtHs=;
 b=HE+rSeL60NPDnAtwuotKexiXqeL77hIC2lqVlJQYQMwqXsJMxlfzi/0YAyH/+u7NG9
 fBDmPiwfhNbc8qDMzxXyl8QQ/y85iL1UKnKhsjsoCHHZ0A4n/4ErFfUgqdzA4wHZJhde
 1yPnWEQ6ARKMFki8fPaLUidx7MC18MtMuxvoW466Mn2FvyEP8Krs3pWSeCCqm6Klvtcr
 aC8pAXr072gz5952VFIKJojXUsMCtarCott85wrQUsbpm9cBbwU4VxvAL6wMK2nwfawd
 bIiLV/IG4cWd4eHm8ocBbwQWnxJxNrfHbtFA9Qipar/0TPKHCjKUpH10+DkyeNL8etdP
 PDqQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to
 :references;
 bh=izVwYlIqWG7f+EVCW8a65mB1We4k9eZ0Yq5RnVyPtHs=;
 b=CSymfBctDhdQzSEfcw/hW2pp95Or+2i2OCEPIy0cYO7vUlHe+oiqBULfMvKD2uJ782
 Pv3a2e3yIOHQWV8mK3unWHa3QtCIqIHYlC6WPvA3iFDmRak88GN84XHx1D/cK5aFTPgF
 Lqo5esxmu1F5bblPW+J9nbjRcUXgKqY8Bd5qExkSXOcDwaO6SJs/1D1cmwD+YDgzhJlw
 5hicZU9WjWkBbLNUeTCzxDNbz+GVN8P6UrCtpthjCHtg5BbD+BE2dZWJkuZx1j1rhJbE
 DWjY5PBVhWzYW5j2aLLwCtY3b/mLK5q2pTd40ugOiDBVH+qN1ZkDOPDijuBUVAqyWkFB
 a4Uw==
X-Gm-Message-State: AIkVDXIK1Y6nJ0Not8NE3y68HEclU70r87L8XwV98FPY3vq47FN4L1/asJVmQnGdDWKS7A==
X-Received: by 10.194.112.170 with SMTP id ir10mr7569581wjb.190.1482394377155; 
 Thu, 22 Dec 2016 00:12:57 -0800 (PST)
Received: from a2k-HP-ProDesk-600-G2-SFF.kyiv.epam.com
 (ll-74.141.223.85.sovam.net.ua. [85.223.141.74])
 by smtp.gmail.com with ESMTPSA id o3sm34304946wjx.39.2016.12.22.00.12.55
 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128);
 Thu, 22 Dec 2016 00:12:56 -0800 (PST)
From: Oleksandr Andrushchenko <andr2000@gmail.com>
To: xen-devel@lists.xenproject.org
Date: Thu, 22 Dec 2016 10:12:48 +0200
Message-Id: <1482394368-19391-2-git-send-email-andr2000@gmail.com>
X-Mailer: git-send-email 2.7.4
In-Reply-To: <1482394368-19391-1-git-send-email-andr2000@gmail.com>
References: <1482394368-19391-1-git-send-email-andr2000@gmail.com>
Cc: embedded-pv-devel@lists.xenproject.org, lars.kurth@citrix.com,
 sstabellini@kernel.org, konrad.wilk@oracle.com, vlad.babchuk@gmail.com,
 ian.jackson@eu.citrix.com, dario.faggioli@citrix.com, tim@xen.org,
 andrii.anisov@gmail.com, olekstysh@gmail.com, andr2000@gmail.com,
 al1img@gmail.com, david.vrabel@citrix.com, JBeulich@suse.com,
 joculator@gmail.com
Subject: [Embedded-pv-devel] [Xen-devel] [PATCH v1] displif: add ABI for
	para-virtual display
X-BeenThere: embedded-pv-devel@lists.xenproject.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <embedded-pv-devel.lists.xenproject.org>
List-Unsubscribe: <https://lists.xenproject.org/cgi-bin/mailman/options/embedded-pv-devel>, 
 <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=unsubscribe>
List-Post: <mailto:embedded-pv-devel@lists.xenproject.org>
List-Help: <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=help>
List-Subscribe: <https://lists.xenproject.org/cgi-bin/mailman/listinfo/embedded-pv-devel>, 
 <mailto:embedded-pv-devel-request@lists.xenproject.org?subject=subscribe>
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
Errors-To: embedded-pv-devel-bounces@lists.xenproject.org
Sender: "Embedded-pv-devel" <embedded-pv-devel-bounces@lists.xenproject.org>

RnJvbTogT2xla3NhbmRyIEFuZHJ1c2hjaGVua28gPE9sZWtzYW5kcl9BbmRydXNoY2hlbmtvQGVw
YW0uY29tPgoKVGhpcyBpcyB0aGUgQUJJIGZvciB0aGUgdHdvIGhhbHZlcyBvZiBhIHBhcmEtdmly
dHVhbGl6ZWQKZGlzcGxheSBkcml2ZXIuCgpDaGFuZ2VzIHNpbmNlIGluaXRpYWw6CiAqIERSTSBj
aGFuZ2VkIHRvIERJU1BMLCBwcm90b2NvbCBtYWRlIGdlbmVyaWMKICogbWFqb3IgcmUtd29yayBh
ZGRyZXNzaW5nIGlzc3VlcyByYWlzZWQgZm9yIHNuZGlmCgpTaWduZWQtb2ZmLWJ5OiBPbGVrc2Fu
ZHIgQW5kcnVzaGNoZW5rbyA8T2xla3NhbmRyX0FuZHJ1c2hjaGVua29AZXBhbS5jb20+ClNpZ25l
ZC1vZmYtYnk6IE9sZWtzYW5kciBHcnl0c292IDxPbGVrc2FuZHJfR3J5dHNvdkBlcGFtLmNvbT4K
LS0tCiB4ZW4vaW5jbHVkZS9wdWJsaWMvaW8vZGlzcGxpZi5oIHwgNzMwICsrKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKysrKysKIDEgZmlsZSBjaGFuZ2VkLCA3MzAgaW5zZXJ0aW9u
cygrKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHhlbi9pbmNsdWRlL3B1YmxpYy9pby9kaXNwbGlmLmgK
CmRpZmYgLS1naXQgYS94ZW4vaW5jbHVkZS9wdWJsaWMvaW8vZGlzcGxpZi5oIGIveGVuL2luY2x1
ZGUvcHVibGljL2lvL2Rpc3BsaWYuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
Li5lYTRlNDJiCi0tLSAvZGV2L251bGwKKysrIGIveGVuL2luY2x1ZGUvcHVibGljL2lvL2Rpc3Bs
aWYuaApAQCAtMCwwICsxLDczMCBAQAorLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogZGlzcGxp
Zi5oCisgKgorICogVW5pZmllZCBkaXNwbGF5IGRldmljZSBJL08gaW50ZXJmYWNlIGZvciBYZW4g
Z3Vlc3QgT1Nlcy4KKyAqCisgKiBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9m
IGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5CisgKiBvZiB0aGlzIHNvZnR3
YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSAiU29mdHdhcmUiKSwg
dG8KKyAqIGRlYWwgaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGlu
ZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlCisgKiByaWdodHMgdG8gdXNlLCBjb3B5LCBtb2RpZnks
IG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3IKKyAqIHNlbGwg
Y29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhl
IFNvZnR3YXJlIGlzCisgKiBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zOgorICoKKyAqIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0
aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluCisgKiBhbGwgY29waWVz
IG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS4KKyAqCisgKiBUSEUgU09G
VFdBUkUgSVMgUFJPVklERUQgIkFTIElTIiwgV0lUSE9VVCBXQVJSQU5UWSBPRiBBTlkgS0lORCwg
RVhQUkVTUyBPUgorICogSU1QTElFRCwgSU5DTFVESU5HIEJVVCBOT1QgTElNSVRFRCBUTyBUSEUg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFksCisgKiBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIgUFVSUE9TRSBBTkQgTk9OSU5GUklOR0VNRU5ULiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUKKyAq
IEFVVEhPUlMgT1IgQ09QWVJJR0hUIEhPTERFUlMgQkUgTElBQkxFIEZPUiBBTlkgQ0xBSU0sIERB
TUFHRVMgT1IgT1RIRVIKKyAqIExJQUJJTElUWSwgV0hFVEhFUiBJTiBBTiBBQ1RJT04gT0YgQ09O
VFJBQ1QsIFRPUlQgT1IgT1RIRVJXSVNFLCBBUklTSU5HCisgKiBGUk9NLCBPVVQgT0YgT1IgSU4g
Q09OTkVDVElPTiBXSVRIIFRIRSBTT0ZUV0FSRSBPUiBUSEUgVVNFIE9SIE9USEVSCisgKiBERUFM
SU5HUyBJTiBUSEUgU09GVFdBUkUuCisgKgorICogQ29weXJpZ2h0IChDKSAyMDE2IEVQQU0gU3lz
dGVtcyBJbmMuCisgKgorICogQXV0aG9yczogT2xla3NhbmRyIEFuZHJ1c2hjaGVua28gPE9sZWtz
YW5kcl9BbmRydXNoY2hlbmtvQGVwYW0uY29tPgorICogICAgICAgICAgT2xla3NhbmRyIEdyeXRz
b3YgPE9sZWtzYW5kcl9Hcnl0c292QGVwYW0uY29tPgorICovCisKKyNpZm5kZWYgX19YRU5fUFVC
TElDX0lPX0RJU1BMSUZfSF9fCisjZGVmaW5lIF9fWEVOX1BVQkxJQ19JT19ESVNQTElGX0hfXwor
CisjaW5jbHVkZSAicmluZy5oIgorI2luY2x1ZGUgIi4uL2dyYW50X3RhYmxlLmgiCisKKy8qKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioKKyAqIE1haW4gZmVhdHVyZXMgcHJvdmlkZWQgYnkgdGhlIHByb3Rv
Y29sCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqCisgKiBUaGlzIHByb3RvY29sIGFpbXMgdG8gcHJv
dmlkZSBhIHVuaWZpZWQgcHJvdG9jb2wgd2hpY2ggZml0cyBtb3JlCisgKiBzb3BoaXN0aWNhdGVk
IHVzZS1jYXNlcyB0aGFuIGEgZnJhbWVidWZmZXIgZGV2aWNlIGNhbiBoYW5kbGUuIEF0IHRoZQor
ICogbW9tZW50IGJhc2ljIGZ1bmN0aW9uYWxpdHkgaXMgc3VwcG9ydGVkIHdpdGggdGhlIGludGVu
dGlvbiB0byBleHRlbmQ6CisgKiBvIG11bHRpcGxlIGR5bmFtaWNhbGx5IGFsbG9jYXRlZC9kZXN0
cm95ZWQgZnJhbWVidWZmZXJzCisgKiBvIGJ1ZmZlcnMgb2YgYXJiaXRyYXJ5IHNpemVzCisgKiBv
IGJldHRlciBjb25maWd1cmF0aW9uIG9wdGlvbnMgaW5jbHVkaW5nIG11bHRpcGxlIGRpc3BsYXkg
c3VwcG9ydAorICoKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIERpcmVjdGlvbiBvZiBpbXBy
b3ZlbWVudHMKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIG8gYWxsb3cgZGlzcGxheS9jb25u
ZWN0b3IgY2xvbmluZworICogbyBhbGxvdyBhbGxvY2F0aW5nIG9iamVjdHMgb3RoZXIgdGhhbiBm
cmFtYmVmZmVycworICogbyBhZGQgcGxhbmVzL292ZXJsYXlzIHN1cHBvcnQKKyAqIG8gc3VwcG9y
dCBzY2FsaW5nCisgKiBvIHN1cHBvcnQgcm90YXRpb24KKyAqLworCisvKgorICogRnJvbnQtPmJh
Y2sgbm90aWZpY2F0aW9uczogV2hlbiBlbnF1ZXVpbmcgYSBuZXcgcmVxdWVzdCwgc2VuZGluZyBh
CisgKiBub3RpZmljYXRpb24gY2FuIGJlIG1hZGUgY29uZGl0aW9uYWwgb24gcmVxX2V2ZW50IChp
LmUuLCB0aGUgZ2VuZXJpYworICogaG9sZC1vZmYgbWVjaGFuaXNtIHByb3ZpZGVkIGJ5IHRoZSBy
aW5nIG1hY3JvcykuIEJhY2tlbmRzIG11c3Qgc2V0CisgKiByZXFfZXZlbnQgYXBwcm9wcmlhdGVs
eSAoZS5nLiwgdXNpbmcgUklOR19GSU5BTF9DSEVDS19GT1JfUkVRVUVTVFMoKSkuCisgKgorICog
QmFjay0+ZnJvbnQgbm90aWZpY2F0aW9uczogV2hlbiBlbnF1ZXVpbmcgYSBuZXcgcmVzcG9uc2Us
IHNlbmRpbmcgYQorICogbm90aWZpY2F0aW9uIGNhbiBiZSBtYWRlIGNvbmRpdGlvbmFsIG9uIHJz
cF9ldmVudCAoaS5lLiwgdGhlIGdlbmVyaWMKKyAqIGhvbGQtb2ZmIG1lY2hhbmlzbSBwcm92aWRl
ZCBieSB0aGUgcmluZyBtYWNyb3MpLiBGcm9udGVuZHMgbXVzdCBzZXQKKyAqIHJzcF9ldmVudCBh
cHByb3ByaWF0ZWx5IChlLmcuLCB1c2luZyBSSU5HX0ZJTkFMX0NIRUNLX0ZPUl9SRVNQT05TRVMo
KSkuCisgKi8KKworLyoKKyAqIEZlYXR1cmUgYW5kIFBhcmFtZXRlciBOZWdvdGlhdGlvbgorICog
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisgKiBUaGUgdHdvIGhhbHZlcyBvZiBh
IHBhcmEtdmlydHVhbCBkaXNwbGF5IGRyaXZlciB1dGlsaXplIG5vZGVzIHdpdGhpbiB0aGUKKyAq
IFhlblN0b3JlIHRvIGNvbW11bmljYXRlIGNhcGFiaWxpdGllcyBhbmQgdG8gbmVnb3RpYXRlIG9w
ZXJhdGluZyBwYXJhbWV0ZXJzLgorICogVGhpcyBzZWN0aW9uIGVudW1lcmF0ZXMgdGhlc2Ugbm9k
ZXMgd2hpY2ggcmVzaWRlIGluIHRoZSByZXNwZWN0aXZlIGZyb250IGFuZAorICogYmFja2VuZCBw
b3J0aW9ucyBvZiB0aGUgWGVuU3RvcmUsIGZvbGxvd2luZyB0aGUgWGVuQnVzIGNvbnZlbnRpb24u
CisgKgorICogQWxsIGRhdGEgaW4gdGhlIFhlblN0b3JlIGlzIHN0b3JlZCBhcyBzdHJpbmdzLiAg
Tm9kZXMgc3BlY2lmeWluZyBudW1lcmljCisgKiB2YWx1ZXMgYXJlIGVuY29kZWQgaW4gZGVjaW1h
bC4gIEludGVnZXIgdmFsdWUgcmFuZ2VzIGxpc3RlZCBiZWxvdyBhcmUKKyAqIGV4cHJlc3NlZCBh
cyBmaXhlZCBzaXplZCBpbnRlZ2VyIHR5cGVzIGNhcGFibGUgb2Ygc3RvcmluZyB0aGUgY29udmVy
c2lvbgorICogb2YgYSBwcm9wZXJseSBmb3JtYXRlZCBub2RlIHN0cmluZywgd2l0aG91dCBsb3Nz
IG9mIGluZm9ybWF0aW9uLgorICoKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICogICAgICAgICAg
ICAgICAgICAgICAgICAgICAgQmFja2VuZCBYZW5CdXMgTm9kZXMKKyAqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKgorICoKKyAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gQWRkcmVzc2luZyAt
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KKyAqCisgKiBJbmRpY2VzIHVzZWQgdG8g
YWRkcmVzcyBmcm9udGVuZHMsIGRyaXZlciBpbnN0YW5jZXMsCisgKiBkZXZpY2VzIGFuZCBjb25u
ZWN0b3JzLgorICoKKyAqIGZyb250ZW5kX2lkCisgKiAgICAgIFZhbHVlczogICAgICAgICA8dWlu
dD4KKyAqCisgKiAgICAgIERvbWFpbiBJRCBvZiB0aGUgZGlzcGxheSBmcm9udGVuZC4KKyAqCisg
KiBkcnZfaWR4CisgKiAgICAgIFZhbHVlczogICAgICAgICA8dWludD4KKyAqCisgKiAgICAgIFpl
cm8gYmFzZWQgY29udGlndW91cyBpbmRleCBvZiB0aGUgdmlydHVhbGl6ZWQgZGlzcGxheSBkcml2
ZXIKKyAqICAgICAgaW5zdGFuY2UgaW4gdGhpcyBkb21haW4uIE11bHRpcGxlIFBWIGRyaXZlcnMg
YXJlIGFsbG93ZWQgaW4gdGhlIGRvbWFpbgorICogICAgICBhdCB0aGUgc2FtZSB0aW1lLgorICoK
KyAqIGNvbm5faWQKKyAqICAgICAgVmFsdWVzOiAgICAgICAgIDx1aW50PgorICoKKyAqICAgICAg
WmVybyBiYXNlZCBjb250aWd1b3VzIGluZGV4IG9mIHRoZSBjb25uZWN0b3Igd2l0aGluIHRoZSBj
YXJkLgorICoKKyAqLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIERyaXZlciBzZXR0aW5n
cyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgKiBmZWF0dXJlcworICogICAgICBW
YWx1ZXM6ICAgICAgICAgPGxpc3Qgb2Ygc3RyaW5ncz4KKyAqCisgKiAgICAgIFhFTkRJU1BMX0xJ
U1RfU0VQQVJBVE9SIHNlcGFyYXRlZCBsaXN0IG9mIGZlYXR1cmVzIHRoYXQgZnJvbnRlbmQKKyAq
ICAgICAgZHJpdmVyIGlzIHJlcXVlc3RlZCB0byBzdXBwb3J0LiBUaGVzZSBhcmUgbm90IG1hbmRh
dG9yeSBhbmQgbWF5IG5vdAorICogICAgICBiZSBpbXBsZW1lbnRlZCBieSB0aGUgZnJvbnRlbmQ6
CisgKgorICogICAgICBiZV9hbGxvYworICogICAgICAgICAgICAgQmFja2VuZCBjYW4gYmUgYSBi
dWZmZXIgcHJvdmlkZXIvYWxsb2NhdG9yIGR1cmluZworICogICAgICAgICAgICAgWEVORElTUExf
T1BfREJVRl9DUkVBVEUgb3BlcmF0aW9uIChzZWUgYmVsb3cgZm9yIG5lZ290aWF0aW9uKS4KKyAq
CisgKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIENvbm5lY3RvciBzZXR0aW5ncyAtLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICogcmVzb2x1dGlvbgorICogICAgICBWYWx1ZXM6
ICAgICAgICAgPHdpZHRoPng8aGVpZ2h0PgorICoKKyAqICAgICAgV2lkdGggYW5kIGhlaWdodCBm
b3IgdGhlIGNvbm5lY3RvciBpbiBwaXhlbHMgc2VwYXJhdGVkIGJ5CisgKiAgICAgIFhFTkRJU1BM
X1JFU09MVVRJT05fU0VQQVJBVE9SLiBGb3IgZXhhbXBsZSwKKyAqICAgICAgdmRpc3BsLzAvY29u
bmVjdG9yLzAvcmVzb2x1dGlvbiA9ICI4MDB4NjAwIgorICoKKyAqCisgKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZyb250ZW5kIFhlbkJ1cyBOb2Rl
cworICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqCisgKgorICotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSBS
ZXF1ZXN0IFRyYW5zcG9ydCBQYXJhbWV0ZXJzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisgKgor
ICogVGhlc2UgYXJlIHBlciBjb25uZWN0b3IuCisgKgorICogY3RybC1jaGFubmVsCisgKiAgICAg
IFZhbHVlczogICAgICAgICA8dWludD4KKyAqCisgKiAgICAgIFRoZSBpZGVudGlmaWVyIG9mIHRo
ZSBYZW4gY29ubmVjdG9yJ3MgY29udHJvbCBldmVudCBjaGFubmVsCisgKiAgICAgIHVzZWQgdG8g
c2lnbmFsIGFjdGl2aXR5IGluIHRoZSByaW5nIGJ1ZmZlci4KKyAqCisgKiBjdHJsLXJpbmctcmVm
CisgKiAgICAgIFZhbHVlczogICAgICAgICA8dWludD4KKyAqCisgKiAgICAgIFRoZSBYZW4gZ3Jh
bnQgcmVmZXJlbmNlIGdyYW50aW5nIHBlcm1pc3Npb24gZm9yIHRoZSBiYWNrZW5kIHRvIG1hcAor
ICogICAgICBhIHNvbGUgcGFnZSBpbiBhIHNpbmdsZSBwYWdlIHNpemVkIGNvbm5lY3RvcidzIGNv
bnRyb2wgcmluZyBidWZmZXIuCisgKgorICogZXZlbnQtY2hhbm5lbAorICogICAgICBWYWx1ZXM6
ICAgICAgICAgPHVpbnQ+CisgKgorICogICAgICBUaGUgaWRlbnRpZmllciBvZiB0aGUgWGVuIGNv
bm5lY3RvcidzIGV2ZW50IGNoYW5uZWwKKyAqICAgICAgdXNlZCB0byBzaWduYWwgYWN0aXZpdHkg
aW4gdGhlIHJpbmcgYnVmZmVyLgorICoKKyAqIGV2ZW50LXJpbmctcmVmCisgKiAgICAgIFZhbHVl
czogICAgICAgICA8dWludD4KKyAqCisgKiAgICAgIFRoZSBYZW4gZ3JhbnQgcmVmZXJlbmNlIGdy
YW50aW5nIHBlcm1pc3Npb24gZm9yIHRoZSBiYWNrZW5kIHRvIG1hcAorICogICAgICBhIHNvbGUg
cGFnZSBpbiBhIHNpbmdsZSBwYWdlIHNpemVkIGNvbm5lY3RvcidzIGV2ZW50IHJpbmcgYnVmZmVy
LgorICovCisKKy8qCisgKiBTVEFURSBESUFHUkFNUworICoKKyAqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KgorICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFN0YXJ0dXAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAqCisgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqCisgKiBU
b29sIHN0YWNrIGNyZWF0ZXMgZnJvbnQgYW5kIGJhY2sgc3RhdGUgbm9kZXMgd2l0aCBpbml0aWFs
IHN0YXRlCisgKiBYZW5idXNTdGF0ZUluaXRpYWxpc2luZy4KKyAqIFRvb2wgc3RhY2sgY3JlYXRl
cyBhbmQgc2V0cyB1cCBmcm9udGVuZCBkaXNwbGF5IGNvbmZpZ3VyYXRpb24KKyAqIG5vZGVzIHBl
ciBkb21haW4uCisgKgorICogRnJvbnQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEJh
Y2sKKyAqID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAgICA9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09CisgKiBYZW5idXNTdGF0ZUluaXRpYWxpc2luZyAgICAg
ICAgICAgICAgWGVuYnVzU3RhdGVJbml0aWFsaXNpbmcKKyAqICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgbyBRdWVyeSBiYWNrZW5kIGRldmljZSBpZGVudGlmaWNhdGlvbgor
ICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEuCisgKiAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG8gT3BlbiBhbmQgdmFsaWRhdGUgYmFj
a2VuZCBkZXZpY2UuCisgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgfAorICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBWCisgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgWGVuYnVzU3RhdGVJbml0V2FpdAorICoKKyAqIG8gUXVlcnkgZnJvbnRlbmQgY29uZmlndXJh
dGlvbgorICogbyBBbGxvY2F0ZSBhbmQgaW5pdGlhbGl6ZQorICogICBldmVudCBjaGFubmVscyBh
bmQgYnVmZmVycworICogbyBQdWJsaXNoIHRyYW5zcG9ydCBwYXJhbWV0ZXJzCisgKiAgIHRoYXQg
d2lsbCBiZSBpbiBlZmZlY3QgZHVyaW5nCisgKiAgIHRoaXMgY29ubmVjdGlvbi4KKyAqICAgICAg
ICAgICAgICB8CisgKiAgICAgICAgICAgICAgfAorICogICAgICAgICAgICAgIFYKKyAqIFhlbmJ1
c1N0YXRlSW5pdGlhbGlzZWQKKyAqCisgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIG8gUXVlcnkgZnJvbnRlbmQgdHJhbnNwb3J0IHBhcmFtZXRlcnMuCisgKiAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG8gQ29ubmVjdCB0byB0aGUgZXZlbnQgY2hh
bm5lbHMuCisgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHwKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgfAorICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICBWCisgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWGVu
YnVzU3RhdGVDb25uZWN0ZWQKKyAqCisgKiAgbyBDcmVhdGUgYW5kIGluaXRpYWxpemUgT1MKKyAq
ICB2aXJ0dWFsIERJU1BMIGFzIHBlciBjb25maWd1cmF0aW9uLgorICogICAgICAgICAgICAgIHwK
KyAqICAgICAgICAgICAgICB8CisgKiAgICAgICAgICAgICAgVgorICogWGVuYnVzU3RhdGVDb25u
ZWN0ZWQKKyAqCisgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWGVuYnVz
U3RhdGVVbmtub3duCisgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgWGVu
YnVzU3RhdGVDbG9zZWQKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBY
ZW5idXNTdGF0ZUNsb3NpbmcKKyAqIG8gUmVtb3ZlIHZpcnR1YWwgZGlzcGxheSBkZXZpY2UKKyAq
IG8gUmVtb3ZlIGV2ZW50IGNoYW5uZWxzCisgKiAgICAgICAgICAgICAgfAorICogICAgICAgICAg
ICAgIHwKKyAqICAgICAgICAgICAgICBWCisgKiBYZW5idXNTdGF0ZUNsb3NlZAorICoKKyAqLwor
CisvKgorICogUkVRVUVTVCBDT0RFUy4KKyAqLworI2RlZmluZSBYRU5ESVNQTF9PUF9EQlVGX0NS
RUFURSAgICAgICAgICAgMAorI2RlZmluZSBYRU5ESVNQTF9PUF9EQlVGX0RFU1RST1kgICAgICAg
ICAgMQorI2RlZmluZSBYRU5ESVNQTF9PUF9GQl9BVFRBQ0ggICAgICAgICAgICAgMgorI2RlZmlu
ZSBYRU5ESVNQTF9PUF9GQl9ERVRBQ0ggICAgICAgICAgICAgMworI2RlZmluZSBYRU5ESVNQTF9P
UF9TRVRfQ09ORklHICAgICAgICAgICAgNAorI2RlZmluZSBYRU5ESVNQTF9PUF9QR19GTElQICAg
ICAgICAgICAgICAgNQorCisvKgorICogRVZFTlQgQ09ERVMuCisgKi8KKyNkZWZpbmUgWEVORElT
UExfRVZUX1BHX0ZMSVAgICAgICAgICAgICAgIDAKKworLyoKKyAqIFhFTlNUT1JFIEZJRUxEIEFO
RCBQQVRIIE5BTUUgU1RSSU5HUywgSEVMUEVSUy4KKyAqLworI2RlZmluZSBYRU5ESVNQTF9EUklW
RVJfTkFNRSAgICAgICAgICAgICAgInZkaXNwbCIKKworI2RlZmluZSBYRU5ESVNQTF9MSVNUX1NF
UEFSQVRPUiAgICAgICAgICAgIjsiCisjZGVmaW5lIFhFTkRJU1BMX1JFU09MVVRJT05fU0VQQVJB
VE9SICAgICAieCIKKy8qIEZpZWxkIG5hbWVzICovCisjZGVmaW5lIFhFTkRJU1BMX0ZJRUxEX0ZF
QVRVUkVTICAgICAgICAgICAiZmVhdHVyZXMiCisjZGVmaW5lIFhFTkRJU1BMX0ZJRUxEX0NUUkxf
UklOR19SRUYgICAgICAiY3RybC1yaW5nLXJlZiIKKyNkZWZpbmUgWEVORElTUExfRklFTERfQ1RS
TF9DSEFOTkVMICAgICAgICJjdHJsLWNoYW5uZWwiCisjZGVmaW5lIFhFTkRJU1BMX0ZJRUxEX0VW
VF9SSU5HX1JFRiAgICAgICAiZXZlbnQtcmluZy1yZWYiCisjZGVmaW5lIFhFTkRJU1BMX0ZJRUxE
X0VWVF9DSEFOTkVMICAgICAgICAiZXZlbnQtY2hhbm5lbCIKKyNkZWZpbmUgWEVORElTUExfRklF
TERfUkVTT0xVVElPTiAgICAgICAgICJyZXNvbHV0aW9uIgorCisjZGVmaW5lIFhFTkRJU1BMX0ZF
QVRVUkVfQkVfQUxMT0MgICAgICAgICAgImJlX2FsbG9jIgorCisvKgorICogU1RBVFVTIFJFVFVS
TiBDT0RFUy4KKyAqLworLyogT3BlcmF0aW9uIHBhcmFtZXRlcnMgYXJlIGludmFsaWQgKi8KKyNk
ZWZpbmUgWEVORElTUExfUlNQX0lOVkFMICAgICAgICAgICAgICAgICgtNCkKKy8qIE9wZXJhdGlv
biBjYW5ub3QgYmUgY29tcGxldGVkIGJlY2F1c2Ugb2YgbWVtb3J5IGNvbnN0cmFpbnRzICovCisj
ZGVmaW5lIFhFTkRJU1BMX1JTUF9OT01FTSAgICAgICAgICAgICAgICAoLTMpCisvKiBPcGVyYXRp
b24gaXMgbm90IHN1cHBvcnRlZCAqLworI2RlZmluZSBYRU5ESVNQTF9SU1BfTk9UU1VQUCAgICAg
ICAgICAgICAgKC0yKQorLyogT3BlcmF0aW9uIGZhaWxlZCBmb3Igc29tZSB1bnNwZWNpZmllZCBy
ZWFzb24gKGUuIGcuIC1FSU8pICovCisjZGVmaW5lIFhFTkRJU1BMX1JTUF9FUlJPUiAgICAgICAg
ICAgICAgICAoLTEpCisvKiBPcGVyYXRpb24gY29tcGxldGVkIHN1Y2Nlc3NmdWxseSAqLworI2Rl
ZmluZSBYRU5ESVNQTF9SU1BfT0tBWSAgICAgICAgICAgICAgICAgMAorCisvKiBQYXRoIGVudHJp
ZXMgKi8KKyNkZWZpbmUgWEVORElTUExfUEFUSF9DT05ORUNUT1IgICAgICAgICAgICJjb25uZWN0
b3IiCisKKy8qCisgKiBBc3N1bXB0aW9uczoKKyAqICAgbyB1c2FnZSBvZiBncmFudCByZWZlcmVu
Y2UgMCBhcyBpbnZhbGlkIGdyYW50IHJlZmVyZW5jZToKKyAqICAgICBncmFudCByZWZlcmVuY2Ug
MCBpcyB2YWxpZCwgYnV0IG5ldmVyIGV4cG9zZWQgdG8gYSBQViBkcml2ZXIsCisgKiAgICAgYmVj
YXVzZSBvZiB0aGUgZmFjdCBpdCBpcyBhbHJlYWR5IGluIHVzZS9yZXNlcnZlZCBieSB0aGUgUFYg
Y29uc29sZS4KKyAqICAgbyBhbGwgcmVmZXJlbmNlcyBpbiB0aGlzIGRvY3VtZW50IHRvIHBhZ2Ug
c2l6ZXMgbXVzdCBiZSB0cmVhdGVkCisgKiAgICAgYXMgcGFnZXMgb2Ygc2l6ZSBYRU5fUEFHRV9T
SVpFIChYQ19QQUdFX1NJWkUpIHVubGVzcyAgb3RoZXJ3aXNlIG5vdGVkLgorICoKKyAqIERlc2Ny
aXB0aW9uIG9mIHRoZSBwcm90b2NvbCBiZXR3ZWVuIGZyb250ZW5kIGFuZCBiYWNrZW5kIGRyaXZl
ci4KKyAqCisgKiBUaGUgdHdvIGhhbHZlcyBvZiBhIFBhcmEtdmlydHVhbCBkaXNwbGF5IGRyaXZl
ciBjb21tdW5pY2F0ZSB3aXRoCisgKiBlYWNoIG90aGVyIHVzaW5nIGEgc2hhcmVkIHBhZ2UgYW5k
IGFuIGV2ZW50IGNoYW5uZWwuCisgKiBTaGFyZWQgcGFnZSBjb250YWlucyBhIHJpbmcgd2l0aCBy
ZXF1ZXN0L3Jlc3BvbnNlIHBhY2tldHMuCisgKgorICogQWxsIHJlc2VydmVkIGZpZWxkcyBpbiB0
aGUgc3RydWN0dXJlcyBiZWxvdyBtdXN0IGJlIDAuCisgKiBEaXNwbGF5IGJ1ZmZlcnMncyBjb29r
aWUgb2YgdmFsdWUgMCB0cmVhdGVkIGFzIGludmFsaWQuCisgKiBGcmFtZWJ1ZmZlcidzIGNvb2tp
ZSBvZiB2YWx1ZSAwIHRyZWF0ZWQgYXMgaW52YWxpZC4KKyAqCisgKiBBbGwgcmVxdWVzdHMvcmVz
cG9uc2VzLCB3aGljaCBhcmUgbm90IGNvbm5lY3RvciBzcGVjaWZpYywgbXVzdCBiZSBzZW50IG92
ZXIKKyAqIGNvbnRyb2wgcmluZyBvZiB0aGUgY29ubmVjdG9yIHdpdGggaW5kZXggMC4KKyAqCisg
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioKKyAqICAgICAgICAgICAgICAgICAgICAgICAgICAgIEZyb250
ZW5kIHRvIGJhY2tlbmQgcmVxdWVzdHMKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgorICoKKyAqIEFs
bCByZXF1ZXN0IHBhY2tldHMgaGF2ZSB0aGUgc2FtZSBsZW5ndGggKDY0IG9jdGV0cykKKyAqIEFs
bCByZXF1ZXN0IHBhY2tldHMgaGF2ZSBjb21tb24gaGVhZGVyOgorICogICAgICAgICAgMCAgICAg
ICAgICAgICAgICAgMSAgICAgICAgICAgICAgICAgIDIgICAgICAgICAgICAgICAgMyAgICAgICAg
b2N0ZXQKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t
LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgIGlkICAgICAg
ICAgICAgICAgIHwgICAgb3BlcmF0aW9uICAgIHwgICAgcmVzZXJ2ZWQgICAgIHwKKyAqICstLS0t
LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t
LS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSst
LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAq
IGlkIC0gdWludDE2X3QsIHByaXZhdGUgZ3Vlc3QgdmFsdWUsIGVjaG9lZCBpbiByZXNwb25zZQor
ICogb3BlcmF0aW9uIC0gdWludDhfdCwgb3BlcmF0aW9uIGNvZGUKKyAqCisgKgorICogUmVxdWVz
dCBkYnVmIGNyZWF0aW9uIC0gcmVxdWVzdCBjcmVhdGlvbiBvZiBhIGRpc3BsYXkgYnVmZmVyLgor
ICogICAgICAgICAgMCAgICAgICAgICAgICAgICAgMSAgICAgICAgICAgICAgICAgIDIgICAgICAg
ICAgICAgICAgMyAgICAgICAgb2N0ZXQKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t
LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAg
ICAgICAgICAgIGlkICAgICAgICAgICAgICAgIHwgX09QX0RCVUZfQ1JFQVRFIHwgICAgIHJlc2Vy
dmVkICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t
LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgcmVzZXJ2ZWQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICst
LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0t
LS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgZGJ1Zl9jb29raWUg
bG93IDMyLWJpdCAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0t
LSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsK
KyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgZGJ1Zl9jb29raWUgaGlnaCAzMi1iaXQgICAg
ICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t
LS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB3aWR0aCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t
LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICBoZWlnaHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0t
LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t
LS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnBwICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSst
LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAq
IHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnVmZmVyX3N6ICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t
LSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBmbGFncyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t
LS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgZ3Jl
Zl9kaXJlY3Rvcnlfc3RhcnQgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0t
LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t
LS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0t
LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwv
XC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9c
L1wvXC9cL1wvXC9cL3wKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSst
LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgcmVzZXJ2ZWQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwK
KyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t
LSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqCisgKiBNdXN0IGJlIHNlbnQgb3ZlciBjb250cm9sIHJp
bmcgb2YgdGhlIGNvbm5lY3RvciB3aXRoIGluZGV4IDAuCisgKgorICogZGJ1Zl9jb29raWUgLSB1
aW50NjRfdCwgdW5pcXVlIHRvIGd1ZXN0IGRvbWFpbiB2YWx1ZSB1c2VkIGJ5IHRoZSBiYWNrZW5k
CisgKiAgIHRvIG1hcCByZW1vdGUgZGlzcGxheSBidWZmZXIgdG8gbG9jYWwgaW4gcmVxdWVzdHMK
KyAqIHdpZHRoIC0gdWludDMyX3QsIHdpZHRoIGluIHBpeGVscworICogaGVpZ2h0IC0gdWludDMy
X3QsIGhlaWdodCBpbiBwaXhlbHMKKyAqIGJwcCAtIHVpbnQzMl90LCBiaXRzIHBlciBwaXhlbAor
ICogYnVmZmVyX3N6IC0gdWludDMyX3QsIGJ1ZmZlciBzaXplIHRvIGJlIGFsbG9jYXRlZCBpbiBv
Y3RldHMKKyAqIGZsYWdzIC0gdWludDMyX3QsIGZsYWdzIG9mIHRoZSBvcGVyYXRpb24KKyAqICAg
byBYRU5ESVNQTF9EQlVGX0ZMR19SRVFfQUxMT0MgLSBpZiBzZXQsIHRoZW4gYmFja2VuZCBpcyBy
ZXF1ZXN0ZWQKKyAqICAgICB0byBhbGxvY2F0ZSB0aGUgYnVmZmVyIHdpdGggdGhlIHBhcmFtZXRl
cnMgcHJvdmlkZWQgaW4gdGhpcyByZXF1ZXN0LgorICogICAgIFBhZ2UgZGlyZWN0b3J5IGlzIGhh
bmRsZWQgYXMgZm9sbG93czoKKyAqICAgICAgIEZyb250ZW5kIG9uIHJlcXVlc3Q6CisgKiAgICAg
ICAgIG8gYWxsb2NhdGVzIHBhZ2VzIGZvciB0aGUgZGlyZWN0b3J5CisgKiAgICAgICAgIG8gZ3Jh
bnRzIHBlcm1pc3Npb25zIGZvciB0aGUgcGFnZXMgb2YgdGhlIGRpcmVjdG9yeQorICogICAgICAg
ICBvIHNldHMgZ3JlZl9kaXJfbmV4dF9wYWdlIGZpZWxkcworICogICAgICAgQmFja2VuZCBvbiBy
ZXNwb25zZToKKyAqICAgICAgICAgbyBncmFudHMgcGVybWlzc2lvbnMgZm9yIHRoZSBwYWdlcyBv
ZiB0aGUgYnVmZmVyIGFsbG9jYXRlZAorICogICAgICAgICBvIGZpbGxzIGluIHBhZ2UgZGlyZWN0
b3J5IHdpdGggZ3JhbnQgcmVmZXJlbmNlcworICogZ3JlZl9kaXJlY3Rvcnlfc3RhcnQgLSBncmFu
dF9yZWZfdCwgYSByZWZlcmVuY2UgdG8gdGhlIGZpcnN0IHNoYXJlZCBwYWdlCisgKiAgIGRlc2Ny
aWJpbmcgc2hhcmVkIGJ1ZmZlciByZWZlcmVuY2VzLiBBdCBsZWFzdCBvbmUgcGFnZSBleGlzdHMu
IElmIHNoYXJlZAorICogICBidWZmZXIgc2l6ZSBleGNlZWRzIHdoYXQgY2FuIGJlIGFkZHJlc3Nl
ZCBieSB0aGlzIHNpbmdsZSBwYWdlLCB0aGVuCisgKiAgIHJlZmVyZW5jZSB0byB0aGUgbmV4dCBw
YWdlIG11c3QgYmUgc3VwcGxpZWQgKHNlZSBncmVmX2Rpcl9uZXh0X3BhZ2UgYmVsb3cpCisgKi8K
KworI2RlZmluZSBYRU5ESVNQTF9EQlVGX0ZMR19SRVFfQUxMT0MgICAgICAgMHgwMDAxCisKK3N0
cnVjdCB4ZW5kaXNwbF9kYnVmX2NyZWF0ZV9yZXEgeworICAgIHVpbnQ2NF90IGRidWZfY29va2ll
OworICAgIHVpbnQzMl90IHdpZHRoOworICAgIHVpbnQzMl90IGhlaWdodDsKKyAgICB1aW50MzJf
dCBicHA7CisgICAgdWludDMyX3QgYnVmZmVyX3N6OworICAgIHVpbnQzMl90IGZsYWdzOworICAg
IGdyYW50X3JlZl90IGdyZWZfZGlyZWN0b3J5X3N0YXJ0OworfTsKKworLyoKKyAqIFNoYXJlZCBw
YWdlIGZvciBYRU5ESVNQTF9PUF9EQlVGX0NSRUFURSBidWZmZXIgZGVzY3JpcHRvciAoZ3JlZl9k
aXJlY3RvcnkgaW4KKyAqICAgdGhlIHJlcXVlc3QpIGVtcGxveXMgYSBsaXN0IG9mIHBhZ2VzLCBk
ZXNjcmliaW5nIGFsbCBwYWdlcyBvZiB0aGUgc2hhcmVkCisgKiAgIGRhdGEgYnVmZmVyOgorICog
ICAgICAgICAgMCAgICAgICAgICAgICAgICAgMSAgICAgICAgICAgICAgICAgIDIgICAgICAgICAg
ICAgICAgMyAgICAgICAgb2N0ZXQKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t
LS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAg
ICAgICAgICAgICAgICAgIGdyZWZfZGlyX25leHRfcGFnZSAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t
LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGdyZWZbMF0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0t
LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t
LS0tLS0tLS0tLSsKKyAqIHwvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9c
L1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL3wKKyAqICstLS0tLS0tLS0tLS0tLS0tLSst
LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAq
IHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdyZWZbaV0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t
LSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwvXC9cL1wvXC9cL1wv
XC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9c
L3wKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t
LS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGdyZWZbTi0xXSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0t
LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t
LS0tLS0tLSsKKyAqCisgKiBncmVmX2Rpcl9uZXh0X3BhZ2UgLSBncmFudF9yZWZfdCwgcmVmZXJl
bmNlIHRvIHRoZSBuZXh0IHBhZ2UgZGVzY3JpYmluZworICogICBwYWdlIGRpcmVjdG9yeS4gTXVz
dCBiZSAwIGlmIG5vIG1vcmUgcGFnZXMgaW4gdGhlIGxpc3QuCisgKiBncmVmW2ldIC0gZ3JhbnRf
cmVmX3QsIHJlZmVyZW5jZSB0byBhIHNoYXJlZCBwYWdlIG9mIHRoZSBkaXNwbGF5IGJ1ZmZlcgor
ICogICBhbGxvY2F0ZWQgYXQgWEVORElTUExfT1BfREJVRl9DUkVBVEUKKyAqCisgKiBOdW1iZXIg
b2YgZ3JhbnRfcmVmX3QgZW50cmllcyBpbiB0aGUgd2hvbGUgcGFnZSBkaXJlY3RvcnkgaXMgbm90
CisgKiBwYXNzZWQsIGJ1dCBpbnN0ZWFkIGNhbiBiZSBjYWxjdWxhdGVkIGFzOgorICogICBudW1f
Z3JlZnNfdG90YWwgPSAoWEVORElTUExfT1BfREJVRl9DUkVBVEUuYnVmZmVyX3N6ICsgWEVOX1BB
R0VfU0laRSAtIDEpIC8KKyAqICAgICAgIFhFTl9QQUdFX1NJWkUKKyAqLworCitzdHJ1Y3QgeGVu
ZGlzcGxfcGFnZV9kaXJlY3RvcnkgeworICAgIGdyYW50X3JlZl90IGdyZWZfZGlyX25leHRfcGFn
ZTsKKyAgICBncmFudF9yZWZfdCBncmVmWzFdOyAvKiBWYXJpYWJsZSBsZW5ndGggKi8KK307CisK
Ky8qCisgKiBSZXF1ZXN0IGRidWYgZGVzdHJ1Y3Rpb24gLSBkZXN0cm95IGEgcHJldmlvdXNseSBh
bGxvY2F0ZWQgZGlzcGxheSBidWZmZXI6CisgKiAgICAgICAgICAwICAgICAgICAgICAgICAgICAx
ICAgICAgICAgICAgICAgICAgMiAgICAgICAgICAgICAgICAzICAgICAgICBvY3RldAorICogKy0t
LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t
LS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgaWQgICAgICAgICAgICAgICAgfCBf
T1BfREJVRl9ERVNUUk9ZfCAgICAgcmVzZXJ2ZWQgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0t
Ky0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKwor
ICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t
LS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAg
ICAgICAgICAgICAgICBkYnVmX2Nvb2tpZSBsb3cgMzItYml0ICAgICAgICAgICAgICAgICAgICAg
ICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t
LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICBk
YnVmX2Nvb2tpZSBoaWdoIDMyLWJpdCAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0t
LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t
LS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0t
LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICog
fC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9c
L1wvXC9cL1wvXC9cL1wvfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t
Ky0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICByZXNlcnZlZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
fAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t
LS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICoKKyAqIE11c3QgYmUgc2VudCBvdmVyIGNvbnRyb2wg
cmluZyBvZiB0aGUgY29ubmVjdG9yIHdpdGggaW5kZXggMC4KKyAqCisgKiBkYnVmX2Nvb2tpZSAt
IHVpbnQ2NF90LCB1bmlxdWUgdG8gZ3Vlc3QgZG9tYWluIHZhbHVlIHVzZWQgYnkgdGhlIGJhY2tl
bmQKKyAqICAgdG8gbWFwIHJlbW90ZSBkaXNwbGF5IGJ1ZmZlciB0byBsb2NhbCBpbiByZXF1ZXN0
cworICovCisKK3N0cnVjdCB4ZW5kaXNwbF9kYnVmX2Rlc3Ryb3lfcmVxIHsKKyAgICB1aW50NjRf
dCBkYnVmX2Nvb2tpZTsKK307CisKKy8qCisgKiBSZXF1ZXN0IGZyYW1lYnVmZmVyIGF0dGFjaG1l
bnQgLSByZXF1ZXN0IGF0dGFjaG1lbnQgb2YgYSBmcmFtZWJ1ZmZlciB0bworICogICBwcmV2aW91
c2x5IGNyZWF0ZWQgZGlzcGxheSBidWZmZXIuCisgKiAgICAgICAgICAwICAgICAgICAgICAgICAg
ICAxICAgICAgICAgICAgICAgICAgMiAgICAgICAgICAgICAgICAzICAgICAgICBvY3RldAorICog
Ky0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0t
LS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgaWQgICAgICAgICAgICAgICAg
fCBfT1BfRkJfQVRUQUNIICAgfCAgICAgcmVzZXJ2ZWQgICAgfAorICogKy0tLS0tLS0tLS0tLS0t
LS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t
KworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t
LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAg
ICAgICAgICAgICAgICAgICBkYnVmX2Nvb2tpZSBsb3cgMzItYml0ICAgICAgICAgICAgICAgICAg
ICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t
LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAg
ICBkYnVmX2Nvb2tpZSBoaWdoIDMyLWJpdCAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0t
LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t
LS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgZmJfY29va2llIGxv
dyAzMi1iaXQgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0t
Ky0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKwor
ICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgZmJfY29va2llIGhpZ2ggMzItYml0ICAgICAg
ICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t
LS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIHdpZHRoICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t
LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIGhlaWdodCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0t
LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t
LS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBpeGVsX2Zvcm1h
dCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0t
LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICog
fCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t
Ky0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfC9cL1wvXC9cL1wvXC9c
L1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wv
fAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t
LS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICByZXNlcnZlZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0t
LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t
LS0tLS0tKworICoKKyAqIE11c3QgYmUgc2VudCBvdmVyIGNvbnRyb2wgcmluZyBvZiB0aGUgY29u
bmVjdG9yIHdpdGggaW5kZXggMC4KKyAqCisgKiBkYnVmX2Nvb2tpZSAtIHVpbnQ2NF90LCB1bmlx
dWUgdG8gZ3Vlc3QgZG9tYWluIHZhbHVlIHVzZWQgYnkgdGhlIGJhY2tlbmQKKyAqICAgdG8gbWFw
IHJlbW90ZSBkaXNwbGF5IGJ1ZmZlciB0byBsb2NhbCBpbiByZXF1ZXN0cworICogZmJfY29va2ll
IC0gdWludDY0X3QsIHVuaXF1ZSB0byBndWVzdCBkb21haW4gdmFsdWUgdXNlZCBieSB0aGUgYmFj
a2VuZAorICogICB0byBtYXAgcmVtb3RlIGZyYW1lYnVmZmVyIHRvIGxvY2FsIGluIHJlcXVlc3Rz
CisgKiB3aWR0aCAtIHVpbnQzMl90LCB3aWR0aCBpbiBwaXhlbHMKKyAqIGhlaWdodCAtIHVpbnQz
Ml90LCBoZWlnaHQgaW4gcGl4ZWxzCisgKiBwaXhlbF9mb3JtYXQgLSB1aW50MzJfdCwgcGl4ZWwg
Zm9ybWF0IG9mIHRoZSBmcmFtZWJ1ZmZlciwgRk9VUkNDIGNvZGUKKyAqLworCitzdHJ1Y3QgeGVu
ZGlzcGxfZmJfYXR0YWNoX3JlcSB7CisgICAgdWludDY0X3QgZGJ1Zl9jb29raWU7CisgICAgdWlu
dDY0X3QgZmJfY29va2llOworICAgIHVpbnQzMl90IHdpZHRoOworICAgIHVpbnQzMl90IGhlaWdo
dDsKKyAgICB1aW50MzJfdCBwaXhlbF9mb3JtYXQ7Cit9OworCisvKgorICogUmVxdWVzdCBmcmFt
ZWJ1ZmZlciBkZXRhY2ggLSBkZXRhY2ggYSBwcmV2aW91c2x5CisgKiAgIGF0dGFjaGVkIGZyYW1l
YnVmZmVyIGZyb20gdGhlIGRpc3BsYXkgYnVmZmVyIGluIHJlcXVlc3Q6CisgKiAgICAgICAgICAw
ICAgICAgICAgICAgICAgICAxICAgICAgICAgICAgICAgICAgMiAgICAgICAgICAgICAgICAzICAg
ICAgICBvY3RldAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t
LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgaWQg
ICAgICAgICAgICAgICAgfCAgX09QX0ZCX0RFVEFDSCAgfCAgICAgcmVzZXJ2ZWQgICAgfAorICog
Ky0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0t
LS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNl
cnZlZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0t
LS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t
KworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgZmJfY29va2llIGxvdyAzMi1iaXQgICAg
ICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t
LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAg
ICAgICAgICAgICAgICAgICAgZmJfY29va2llIGhpZ2ggMzItYml0ICAgICAgICAgICAgICAgICAg
ICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t
LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICByZXNlcnZlZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0t
LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t
LS0tLS0tLS0tLS0tKworICogfC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9c
L1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvfAorICogKy0tLS0tLS0tLS0tLS0tLS0t
Ky0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKwor
ICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t
LS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICoKKyAqIE11c3QgYmUg
c2VudCBvdmVyIGNvbnRyb2wgcmluZyBvZiB0aGUgY29ubmVjdG9yIHdpdGggaW5kZXggMC4KKyAq
CisgKiBmYl9jb29raWUgLSB1aW50NjRfdCwgdW5pcXVlIHRvIGd1ZXN0IGRvbWFpbiB2YWx1ZSB1
c2VkIGJ5IHRoZSBiYWNrZW5kCisgKiAgIHRvIG1hcCByZW1vdGUgZnJhbWVidWZmZXIgdG8gbG9j
YWwgaW4gcmVxdWVzdHMKKyAqLworCitzdHJ1Y3QgeGVuZGlzcGxfZmJfZGV0YWNoX3JlcSB7Cisg
ICAgdWludDY0X3QgZmJfY29va2llOworfTsKKworLyoKKyAqIFJlcXVlc3QgY29uZmlndXJhdGlv
biBzZXQvcmVzZXQgLSByZXF1ZXN0IHRvIHNldCBvciByZXNldAorICogICB0aGUgY29uZmlndXJh
dGlvbi9tb2RlIG9mIHRoZSBkaXNwbGF5OgorICogICAgICAgICAgMCAgICAgICAgICAgICAgICAg
MSAgICAgICAgICAgICAgICAgIDIgICAgICAgICAgICAgICAgMyAgICAgICAgb2N0ZXQKKyAqICst
LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0t
LS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgIGlkICAgICAgICAgICAgICAgIHwg
X09QX1NFVF9DT05GSUcgIHwgICAgIHJlc2VydmVkICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0t
LSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsK
KyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t
LS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAg
ICAgICAgICAgICAgICAgIGZiX2Nvb2tpZSBsb3cgMzItYml0ICAgICAgICAgICAgICAgICAgICAg
ICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t
LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAg
IGZiX2Nvb2tpZSBoaWdoIDMyLWJpdCAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0t
LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t
LS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHggICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSst
LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAq
IHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHkgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t
LSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICB3aWR0aCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t
LS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBoZWlnaHQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0t
LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t
LS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYnBwICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0t
LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSst
LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwvXC9cL1wvXC9cL1wvXC9c
L1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL3wK
KyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t
LSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
cmVzZXJ2ZWQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0t
LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t
LS0tLSsKKyAqCisgKiBQYXNzIGFsbCB6ZXJvcyB0byByZXNldCwgb3RoZXJ3aXNlIGNvbW1hbmQg
aXMgdHJlYXRlZCBhcworICogY29uZmlndXJhdGlvbiBzZXQuCisgKiBJZiB0aGlzIGlzIGEgc2V0
IGNvbmZpZ3VyYXRpb24gcmVxdWVzdCB0aGVuIGZyYW1lYnVmZmVyJ3MgY29va2llIHRlbGxzCisg
KiB0aGUgZGlzcGxheSB3aGljaCBmcmFtZWJ1ZmZlci9kYnVmIG11c3QgYmUgc2hvd24gd2hpbGUg
ZW5hYmxpbmcgZGlzcGxheQorICogKGFwcGx5aW5nIGNvbmZpZ3VyYXRpb24pLgorICoKKyAqIGZi
X2Nvb2tpZSAtIHVpbnQ2NF90LCB1bmlxdWUgdG8gZ3Vlc3QgZG9tYWluIHZhbHVlIHVzZWQgYnkg
dGhlIGJhY2tlbmQKKyAqICAgdG8gbWFwIHJlbW90ZSBmcmFtZWJ1ZmZlciB0byBsb2NhbCBpbiBy
ZXF1ZXN0cworICogeCAtIHVpbnQzMl90LCBzdGFydGluZyBwb3NpdGlvbiBpbiBwaXhlbHMgYnkg
WCBheGlzCisgKiB5IC0gdWludDMyX3QsIHN0YXJ0aW5nIHBvc2l0aW9uIGluIHBpeGVscyBieSBZ
IGF4aXMKKyAqIHdpZHRoIC0gdWludDMyX3QsIHdpZHRoIGluIHBpeGVscworICogaGVpZ2h0IC0g
dWludDMyX3QsIGhlaWdodCBpbiBwaXhlbHMKKyAqIGJwcCAtIHVpbnQzMl90LCBiaXRzIHBlciBw
aXhlbAorICovCisKK3N0cnVjdCB4ZW5kaXNwbF9zZXRfY29uZmlnX3JlcSB7CisgICAgdWludDY0
X3QgZmJfY29va2llOworICAgIHVpbnQzMl90IHg7CisgICAgdWludDMyX3QgeTsKKyAgICB1aW50
MzJfdCB3aWR0aDsKKyAgICB1aW50MzJfdCBoZWlnaHQ7CisgICAgdWludDMyX3QgYnBwOworfTsK
KworLyoKKyAqIFJlcXVlc3QgcGFnZSBmbGlwIC0gcmVxdWVzdCB0byBmbGlwIGEgcGFnZSBpZGVu
dGlmaWVkIGJ5IHRoZSBmcmFtZWJ1ZmZlcgorICogICBjb29raWU6CisgKiAgICAgICAgICAwICAg
ICAgICAgICAgICAgICAxICAgICAgICAgICAgICAgICAgMiAgICAgICAgICAgICAgICAzICAgICAg
ICBvY3RldAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t
LS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgaWQgICAg
ICAgICAgICAgICAgfCBfT1BfUEdfRkxJUCAgICAgfCAgICAgcmVzZXJ2ZWQgICAgfAorICogKy0t
LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0t
LS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZl
ZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0t
Ky0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKwor
ICogfCAgICAgICAgICAgICAgICAgICAgICAgICAgZmJfY29va2llIGxvdyAzMi1iaXQgICAgICAg
ICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0t
LS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAg
ICAgICAgICAgICAgICAgZmJfY29va2llIGhpZ2ggMzItYml0ICAgICAgICAgICAgICAgICAgICAg
ICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0t
LS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICogfCAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICByZXNlcnZlZCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorICogKy0tLS0t
LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0t
LS0tLS0tLS0tKworICogfC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wv
XC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0t
LS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICog
fCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXNlcnZlZCAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgfAorICogKy0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0t
Ky0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tKworICoKKyAqIGZiX2Nvb2tpZSAt
IHVpbnQ2NF90LCB1bmlxdWUgdG8gZ3Vlc3QgZG9tYWluIHZhbHVlIHVzZWQgYnkgdGhlIGJhY2tl
bmQKKyAqICAgdG8gbWFwIHJlbW90ZSBmcmFtZWJ1ZmZlciB0byBsb2NhbCBpbiByZXF1ZXN0cwor
ICovCisKK3N0cnVjdCB4ZW5kaXNwbF9wYWdlX2ZsaXBfcmVxIHsKKyAgICB1aW50NjRfdCBmYl9j
b29raWU7Cit9OworCisvKgorICogQWxsIHJlc3BvbnNlIHBhY2tldHMgaGF2ZSB0aGUgc2FtZSBs
ZW5ndGggKDY0IG9jdGV0cykKKyAqCisgKiBSZXNwb25zZSBmb3IgYWxsIHJlcXVlc3RzOgorICog
ICAgICAgICAgMCAgICAgICAgICAgICAgICAgMSAgICAgICAgICAgICAgICAgIDIgICAgICAgICAg
ICAgICAgMyAgICAgICAgb2N0ZXQKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t
LS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAg
ICAgICAgIGlkICAgICAgICAgICAgICAgIHwgICAgICBzdGF0dXMgICAgIHwgICAgcmVzZXJ2ZWQg
ICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t
LS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgcmVzZXJ2ZWQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0t
LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0t
LS0tLS0tLS0tLSsKKyAqIHwvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9c
L1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL3wKKyAqICstLS0tLS0tLS0tLS0tLS0tLSst
LS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAq
IHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0t
LSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqCisgKiBpZCAtIHVpbnQx
Nl90LCBwcml2YXRlIGd1ZXN0IHZhbHVlLCBlY2hvZWQgZnJvbSByZXF1ZXN0CisgKiBzdGF0dXMg
LSBpbnQ4X3QsIHJlc3BvbnNlIHN0YXR1cworICovCisKKy8qKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgor
ICogICAgICAgICAgICAgICAgICAgICAgICAgICAgQmFja2VuZCB0byBmcm9udGVuZCBldmVudHMK
KyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKgorICoKKyAqIEFsbCBldmVudCBwYWNrZXRzIGhhdmUgdGhl
IHNhbWUgbGVuZ3RoICg2NCBvY3RldHMpCisgKiBFdmVudHMgYXJlIHNlbnQgdmlhIGEgc2hhcmVk
IHBhZ2UgYWxsb2NhdGVkIGJ5IHRoZSBmcm9udCBhbmQgcHJvcGFnYXRlZCBieQorICogICBldmVu
dC1jaGFubmVsL2V2ZW50LXJpbmctcmVmIFhlblN0b3JlIGVudHJpZXMKKyAqCisgKiBBbGwgZXZl
bnQgcGFja2V0cyBoYXZlIGNvbW1vbiBoZWFkZXI6CisgKgorICogICAgICAgICAgMCAgICAgICAg
ICAgICAgICAgMSAgICAgICAgICAgICAgICAgIDIgICAgICAgICAgICAgICAgMyAgICAgICAgb2N0
ZXQKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0t
LS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgIGlkICAgICAgICAg
ICAgICAgIHwgICAgICB0eXBlICAgICAgIHwgICAgIHJlc2VydmVkICAgIHwKKyAqICstLS0tLS0t
LS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0t
LS0tLS0tLSsKKyAqIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVzZXJ2ZWQgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKyAqICstLS0tLS0tLS0tLS0tLS0tLSstLS0t
LS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLSsKKyAqCisg
KiBpZCAtIHVpbnQxNl90LCBldmVudCBpZCwgbWF5IGJlIHVzZWQgYnkgZnJvbnQKKyAqIHR5cGUg
LSB1aW50OF90LCB0eXBlIG9mIHRoZSBldmVudAorICoKKyAqCisgKiBQYWdlIGZsaXAgY29tcGxl
dGUgZXZlbnQgLSBldmVudCBmcm9tIGJhY2sgdG8gZnJvbnQgb24gcGFnZSBmbGlwIGNvbXBsZXRl
ZDoKKyAqICAgICAgICAgIDAgICAgICAgICAgICAgICAgIDEgICAgICAgICAgICAgICAgICAyICAg
ICAgICAgICAgICAgIDMgICAgICAgIG9jdGV0CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t
LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAg
ICAgICAgICAgICAgICBpZCAgICAgICAgICAgICAgICB8ICAgX0VWVF9QR19GTElQICB8ICAgICBy
ZXNlcnZlZCAgICB8CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0t
LS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHJlc2VydmVkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cisg
KiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0r
LS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAgICAgICAgICAgICAgICAgICBmYl9jb29r
aWUgbG93IDMyLWJpdCAgICAgICAgICAgICAgICAgICAgICAgICB8CisgKiArLS0tLS0tLS0tLS0t
LS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0t
LS0rCisgKiB8ICAgICAgICAgICAgICAgICAgICAgICAgICBmYl9jb29raWUgaGlnaCAzMi1iaXQg
ICAgICAgICAgICAgICAgICAgICAgICB8CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0t
LS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHJlc2VydmVkICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8CisgKiArLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0t
LS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rCisgKiB8L1wvXC9cL1wvXC9cL1wvXC9cL1wv
XC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC98CisgKiAr
LS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0t
LS0tLS0tLS0tLS0tLS0rCisgKiB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc2Vy
dmVkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CisgKiArLS0tLS0tLS0tLS0tLS0t
LS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0r
CisgKgorICogZmJfY29va2llIC0gdWludDY0X3QsIHVuaXF1ZSB0byBndWVzdCBkb21haW4gdmFs
dWUgdXNlZCBieSB0aGUgYmFja2VuZAorICogICB0byBtYXAgcmVtb3RlIGZyYW1lYnVmZmVyIHRv
IGxvY2FsIGluIHJlcXVlc3RzCisgKgorICovCisKK3N0cnVjdCB4ZW5kaXNwbF9wZ19mbGlwX2V2
dCB7CisgICAgdWludDY0X3QgZmJfY29va2llOworfTsKKworc3RydWN0IHhlbmRpc3BsX3JlcSB7
CisgICAgdWludDE2X3QgaWQ7CisgICAgdWludDhfdCBvcGVyYXRpb247CisgICAgdWludDhfdCBy
ZXNlcnZlZFs1XTsKKyAgICB1bmlvbiB7CisgICAgICAgIHN0cnVjdCB4ZW5kaXNwbF9kYnVmX2Ny
ZWF0ZV9yZXEgZGJ1Zl9jcmVhdGU7CisgICAgICAgIHN0cnVjdCB4ZW5kaXNwbF9kYnVmX2Rlc3Ry
b3lfcmVxIGRidWZfZGVzdHJveTsKKyAgICAgICAgc3RydWN0IHhlbmRpc3BsX2ZiX2F0dGFjaF9y
ZXEgZmJfYXR0YWNoOworICAgICAgICBzdHJ1Y3QgeGVuZGlzcGxfZmJfZGV0YWNoX3JlcSBmYl9k
ZXRhY2g7CisgICAgICAgIHN0cnVjdCB4ZW5kaXNwbF9zZXRfY29uZmlnX3JlcSBzZXRfY29uZmln
OworICAgICAgICBzdHJ1Y3QgeGVuZGlzcGxfcGFnZV9mbGlwX3JlcSBwZ19mbGlwOworICAgICAg
ICB1aW50OF90IHJlc2VydmVkWzU2XTsKKyAgICB9IG9wOworfTsKKworc3RydWN0IHhlbmRpc3Bs
X3Jlc3AgeworICAgIHVpbnQxNl90IGlkOworICAgIHVpbnQ4X3Qgb3BlcmF0aW9uOworICAgIGlu
dDhfdCBzdGF0dXM7CisgICAgdWludDhfdCByZXNlcnZlZFs2MF07Cit9OworCitzdHJ1Y3QgeGVu
ZGlzcGxfZXZ0IHsKKyAgICB1aW50MTZfdCBpZDsKKyAgICB1aW50OF90IHR5cGU7CisgICAgdWlu
dDhfdCByZXNlcnZlZFs1XTsKKyAgICB1bmlvbiB7CisgICAgICAgIHN0cnVjdCB4ZW5kaXNwbF9w
Z19mbGlwX2V2dCBwZ19mbGlwOworICAgICAgICB1aW50OF90IHJlc2VydmVkWzU2XTsKKyAgICB9
IG9wOworfTsKKworREVGSU5FX1JJTkdfVFlQRVMoeGVuX2Rpc3BsaWYsIHN0cnVjdCB4ZW5kaXNw
bF9yZXEsIHN0cnVjdCB4ZW5kaXNwbF9yZXNwKTsKKworLyoqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKgor
ICogQmFjayB0byBmcm9udCBldmVudHMKKyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioKKyAqIEluIG9y
ZGVyIHRvIGRlbGl2ZXIgYXN5bmNocm9ub3VzIGV2ZW50cyBmcm9tIGJhY2sgdG8gZnJvbnQgYSBz
aGFyZWQgcGFnZSBpcworICogYWxsb2NhdGVkIGJ5IGZyb250IGFuZCBpdHMgZ3JlZnMgcHJvcGFn
YXRlZCB0byBiYWNrIHZpYSBYZW5TdG9yZSBlbnRyaWVzCisgKiAoZXZlbnQtWFhYKS4KKyAqIFRo
aXMgcGFnZSBoYXMgYSBjb21tb24gaGVhZGVyIHVzZWQgYnkgYm90aCBmcm9udCBhbmQgYmFjayB0
byBzeW5jaHJvbml6ZQorICogYWNjZXNzIGFuZCBjb250cm9sIGV2ZW50J3MgcmluZyBidWZmZXIs
IHdoaWxlIGJhY2sgYmVpbmcgYSBwcm9kdWNlciBvZiB0aGUKKyAqIGV2ZW50cyBhbmQgZnJvbnQg
YmVpbmcgYSBjb25zdW1lci4gVGhlIHJlc3Qgb2YgdGhlIHBhZ2UgYWZ0ZXIgdGhlIGhlYWRlcgor
ICogaXMgdXNlZCBmb3IgZXZlbnQgcGFja2V0cy4KKyAqCisgKiBVcG9uIHJlY2VwdGlvbiBvZiBh
biBldmVudChzKSBmcm9udCBtYXkgY29uZmlybSBpdHMgcmVjZXB0aW9uCisgKiBmb3IgZWl0aGVy
IGVhY2ggZXZlbnQsIGdyb3VwIG9mIGV2ZW50cyBvciBub25lLgorICovCisKK3N0cnVjdCB4ZW5k
aXNwbF9ldmVudF9wYWdlIHsKKyAgICB1aW50MzJfdCBpbl9jb25zOworICAgIHVpbnQzMl90IGlu
X3Byb2Q7CisgICAgdWludDhfdCByZXNlcnZlZFs2MF07Cit9OworCisjZGVmaW5lIFhFTkRJU1BM
X0VWRU5UX1BBR0VfU0laRSA0MDk2CisjZGVmaW5lIFhFTkRJU1BMX0lOX1JJTkdfT0ZGUyAoc2l6
ZW9mKHN0cnVjdCB4ZW5kaXNwbF9ldmVudF9wYWdlKSkKKyNkZWZpbmUgWEVORElTUExfSU5fUklO
R19TSVpFIChYRU5ESVNQTF9FVkVOVF9QQUdFX1NJWkUgLSBYRU5ESVNQTF9JTl9SSU5HX09GRlMp
CisjZGVmaW5lIFhFTkRJU1BMX0lOX1JJTkdfTEVOIChYRU5ESVNQTF9JTl9SSU5HX1NJWkUgLyBz
aXplb2Yoc3RydWN0IHhlbmRpc3BsX2V2dCkpCisjZGVmaW5lIFhFTkRJU1BMX0lOX1JJTkcocGFn
ZSkgXAorCSgoc3RydWN0IHhlbmRpc3BsX2V2dCAqKSgoY2hhciAqKShwYWdlKSArIFhFTkRJU1BM
X0lOX1JJTkdfT0ZGUykpCisjZGVmaW5lIFhFTkRJU1BMX0lOX1JJTkdfUkVGKHBhZ2UsIGlkeCkg
XAorCShYRU5ESVNQTF9JTl9SSU5HKChwYWdlKSlbKGlkeCkgJSBYRU5ESVNQTF9JTl9SSU5HX0xF
Tl0pCisKKyNlbmRpZiAvKiBfX1hFTl9QVUJMSUNfSU9fRElTUExJRl9IX18gKi8KLS0gCjIuNy40
CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KRW1iZWRk
ZWQtcHYtZGV2ZWwgbWFpbGluZyBsaXN0CkVtYmVkZGVkLXB2LWRldmVsQGxpc3RzLnhlbnByb2pl
Y3Qub3JnCmh0dHBzOi8vbGlzdHMueGVucHJvamVjdC5vcmcvY2dpLWJpbi9tYWlsbWFuL2xpc3Rp
bmZvL2VtYmVkZGVkLXB2LWRldmVs

