From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 62325C88E63 for ; Sun, 13 Sep 2026 16:01:59 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists1p.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1x5mcH-0003T2-2t; Sun, 13 Sep 2026 11:59:41 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1x5mcE-0003SK-F1 for qemu-devel@nongnu.org; Sun, 13 Sep 2026 11:59:38 -0400 Received: from mx0b-0031df01.pphosted.com ([205.220.180.131]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1x5mcB-0002d4-Iu for qemu-devel@nongnu.org; Sun, 13 Sep 2026 11:59:38 -0400 Received: from pps.filterd (m0279871.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 68DE05jG2481038 for ; Sun, 13 Sep 2026 15:59:34 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= aODN3RZ7rVZvczrpoSMLz3sneOsKATdTEm2ZzOIhC+0=; b=gj+PfT81iJ+pJ0iJ sAPqnVDEF+WqmqYfeju1h80uJQqr0SOJFV6Hdf77gm1Iexb5hwho7Rv892dYjfsm wpdHxT6P2bkvFLXj7AO+7cc7SQcUcoLqpTPaYrAzsVRdO66U5LVzlul+dsHXJObF oHRQtx78gRNnwhKDOurTmt0l2wI3HcG/dGyTBxw/y6poihNWvhha8eeFVpnzxehE Uae8PKu3fXJcC7uwOm+VcjxN7j8uW5W5dC9P9Vdv7DHDVZVKKzT9mSQQZcDX7Krv c5b8kfmIRpDRMiFjRLpG3+tyMJ8ioDWyIhxWn46jNqrafhAOxycwZwUj1GKCBXRL xy94uw== Received: from mail-pj1-f69.google.com (mail-pj1-f69.google.com [209.85.216.69]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4gmy9dkm7j-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Sun, 13 Sep 2026 15:59:33 +0000 (GMT) Received: by mail-pj1-f69.google.com with SMTP id 98e67ed59e1d1-38ec0f510a9so5459883a91.2 for ; Sun, 13 Sep 2026 08:59:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1789315173; x=1789919973; darn=nongnu.org; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:from:to:cc:subject :date:message-id:reply-to:content-type; bh=aODN3RZ7rVZvczrpoSMLz3sneOsKATdTEm2ZzOIhC+0=; b=fxEs/TtdYxaFt/zs1WKjZTniChz69YsHEldsY845tT5Un5Hh3Fqzq94Vlwxg0CjRq/ LkvNNmuD8a/9lH9Ed5xAPG7ZQlCw+Iw11P/h59KXdIo3g68jggEpW4EhZVueWguIs7An ejhr+DLILKK27Wh1NSqYDRYDp1Tsa0OyjeS4nWfnjDTCBwWVS8yx6scvRT9GH2jurMy5 Hnp/eCD963XcQ9N/fMqMTxja4Jjxdc5FCEzrbdwq7Y2VggMP9lwtKUVhJCY9J5g5KYwx p9XlL7M2Gr8KSKswkYQ0LE2SaNt18jVrV8MnXxPsDkIdDDTbA83khXp4yXyRkQnzthTM b3CA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1789315173; x=1789919973; h=content-transfer-encoding:content-type:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=aODN3RZ7rVZvczrpoSMLz3sneOsKATdTEm2ZzOIhC+0=; b=oxnU43h9LAvp0tsnTmii8n/fS97BLwtptWpvHvJoz7InuxPknYkHZX2SWmH+CI8E+K 4BMQ+SOBzCESUqKoGWzCGMnxx/RalQrU/OpVnYXpJQu5RDznqcCly849xJvrTI3EB0+T iInFjzatWbUiBHFfVUU+jhDQJ9Bfq8dfKKChX5kGxT+tyaPGzevZ3HGhqWnE3xHqy9WN X8JgNT3ta0G9SgtszKPGJSIl+nYcvX5nwBL5vER4DspEgfHygWX1BSOWxBnqXa5gi0f4 YVLM/ECARBIYbv9hrKt9sGFIIyYDkyL6P+F7pooJMNihibwDa6DlS1zPexR9wpP0X1AL Ijnw== X-Gm-Message-State: AFuF++k0PbiSCzx80D0hzwyXDJAxi0yS+6zzgdZusKCTg9wEhuLizuGP 6MAAa63wLu7JIqGgaTUMFNnEzU09Y8mpbedVqJ+pa3z8DQUpwWWPu0EQ9je/1/9TS+u1p2azdb+ bJcOZpyC9Cm8KAPCcGVU21EY4HVp2SWsGIqLx712UqNhBwF0u5PXJkqGKC05q/MgJkA== X-Gm-Gg: AYBFou3SwNXJst8booLxbpUv9GUziblzEpYZw33WqFRueWLzwfAVg+a5HMvinsbNyaD CCTHouyO70m0LZx3WDf41ngYmzy/Y4exSI5gjtJ7eNdcRw8O2IXbEXR6yBArIkiNwOt0n4g71j6 pqSPP4FQvOpPdbRDSZRXVRN6WYjVChgkm00LeeTxLKb/QTYlmG5RdFv3f44CJPtDTl/hwaBS3GJ pVDH/5foalJCauzNec4mgkJyVLpvVX5K2BiggG2ZphU42/RmsJSO+7VTp4/2xW7e2jNYEjLgGJt 4nVGUqroadwavhqtLc578ZmpksAbKsVg5T7ig0q8S8rlwVlyXiKqt08/XnDdwbK5bjEr7nlnlTo Hz7Jj9NXZdY6iDV28UVtIqWImPYNjB4stl6ikDm+0KOCSiCLT X-Received: by 2002:a17:90b:5388:b0:38e:4f41:83df with SMTP id 98e67ed59e1d1-39d9c0ac792mr23474610a91.15.1789315171767; Sun, 13 Sep 2026 08:59:31 -0700 (PDT) X-Received: by 2002:a17:90b:5388:b0:38e:4f41:83df with SMTP id 98e67ed59e1d1-39d9c0ac792mr23474567a91.15.1789315171306; Sun, 13 Sep 2026 08:59:31 -0700 (PDT) Received: from hu-bcain-lv.qualcomm.com (Global_NAT1.qualcomm.com. [129.46.96.20]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-33bbeb053a5sm8076380eec.27.2026.09.13.08.59.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 13 Sep 2026 08:59:30 -0700 (PDT) From: Brian Cain To: qemu-devel@nongnu.org Cc: =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Pierrick Bouvier , Brian Cain , marco.liebel@oss.qualcomm.com, Helge Deller , Paolo Bonzini , richard.henderson@linaro.org, Laurent Vivier Subject: [PATCH v3 1/6] tcg: split out _var forms of gvec logical, abs and min/max ops Date: Sun, 13 Sep 2026 08:59:23 -0700 Message-Id: <20260913155928.365928-2-brian.cain@oss.qualcomm.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20260913155928.365928-1-brian.cain@oss.qualcomm.com> References: <20260913155928.365928-1-brian.cain@oss.qualcomm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 X-Proofpoint-GUID: 7UVB4hLg9YbzPm_Uh0GbrQmLF4wfAvrG X-Proofpoint-ORIG-GUID: 7UVB4hLg9YbzPm_Uh0GbrQmLF4wfAvrG X-Authority-Analysis: v=2.4 cv=NelzRGD4 c=1 sm=1 tr=0 ts=6aa6c866 cx=c_pps a=vVfyC5vLCtgYJKYeQD43oA==:117 a=ouPCqIW2jiPt+lZRy3xVPw==:17 a=IkcTkHD0fZMA:10 a=VdqzKS8jKosA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=3WHJM1ZQz_JShphwDgj5:22 a=EUspDBNiAAAA:8 a=KKAkSRfTAAAA:8 a=QBOsjqmz0i8ZXA3WJQ8A:9 a=QEXdDO2ut3YA:10 a=rl5im9kqc5Lf4LNbBjHf:22 a=cvBusfyB2V15izCimMoJ:22 X-Proofpoint-Spam-Info: AW1haW4tMjYwOTEzMDIyNyBTYWx0ZWRfX+WwshmP2DKvF ed5IAanDzufMJPu+ln0bmFgd8Xy7bQhhxrGGjwsZKr0JV7k4j5nJtZnB2yBV+2MekUJYkMLU1gX nCm3stVoUXRdTCxWklY/HRhBgl/nTXA= X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwOTEzMDIyNyBTYWx0ZWRfXzl87q25WV1ln Ad3jDgeoo8vk2xS50jvbr2UO50lrc8ZIcNrEJONXjZOSlx9ym6TttLhWmWr2vZYdNmwQ04L5M+s h7hfZ/QZQfB1JfWWHysX9BVx2nPGQ10o7NmSAUuyDJqMKwkOmCEvRObcBBfR0VjbJY+gghlg1f5 c2kmG4aPdAzJ8+t4wWjmlILwZ5fkHJeDdAI5rTiMrNKt97e1xaMih2cxA1fu8m7YzpErkmctFwK x1Ha+Nm+NTY00jcxTz1VmyzVJxNlSlNvG1qxIQq1Aek1GWhrrry3iXnv3IU38Hyd5bZOKCyRvW7 hVHLwNdosM39TvF1HW0jqrq22rsL0s6CAEXrLlAAYK7LQeq1MaVxTUt+wA22nOaRd2U8/viEgwc 2JXEOAFMoceIGDuV0wUIYYppLKbkg1QTMqPhOl089xXIEeUYBPuSOkhBqFTTgrW/G+ab2jJi5tu eRPnSzMXy/d8tBynOeA== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1176,Hydra:6.1.134,FMLib:17.12.100.49 definitions=2026-09-13_05,2026-09-11_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 bulkscore=0 adultscore=0 impostorscore=0 priorityscore=1501 clxscore=1015 spamscore=0 malwarescore=0 suspectscore=0 lowpriorityscore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2609040000 definitions=main-2609130227 Received-SPF: pass client-ip=205.220.180.131; envelope-from=brian.cain@oss.qualcomm.com; helo=mx0b-0031df01.pphosted.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: qemu development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org dGFyZ2V0L2hleGFnb24gaXMgYWJvdXQgdG8gYWRkcmVzcyBpdHMgSFZYIHJlZ2lzdGVyIGZpbGUg dGhyb3VnaCBhCnJ1bnRpbWUgYmFzZSBwb2ludGVyIHJhdGhlciB0aGFuIGEgY29uc3RhbnQgb2Zm c2V0IGZyb20gZW52LCBpbiBvcmRlciB0bwpzaGFyZSBvbmUgcmVnaXN0ZXIgZmlsZSBiZXR3ZWVu IHNldmVyYWwgdkNQVXMuICBUaGUgZ3ZlYyBvcHMgaXQgbmVlZHMKaGF2ZSBubyBiYXNlLXBhcmFt ZXRlcml6ZWQgZm9ybSB5ZXQuCgpTcGxpdCB0Y2dfZ2VuX2d2ZWNfe2FuZCxvcix4b3IsYW5kYyxv cmMsbm90LGFicyxzbWluLHVtaW4sc21heCx1bWF4fQp0aGUgc2FtZSB3YXkgdGNnX2dlbl9ndmVj X3thZGQsc3ViLG1vdixkdXBfaW1tfSBhbHJlYWR5IGFyZTogdGhlIHdvcmsKbW92ZXMgdG8gYSBf dmFyIGZ1bmN0aW9uIHRha2luZyBhIFRDR3ZfcHRyIGJhc2UgcGVyIG9wZXJhbmQsIGFuZCB0aGUK ZXhpc3RpbmcgZW50cnkgcG9pbnQgYmVjb21lcyBhIHdyYXBwZXIgcGFzc2luZyB0Y2dfZW52LgoK VGhlIGFvZnMgPT0gYm9mcyBzaG9ydGN1dHMgYWxzbyBoYXZlIHRvIGNvbXBhcmUgdGhlIGJhc2Vz LCBzaW5jZSBlcXVhbApvZmZzZXRzIGludG8gZGlmZmVyZW50IG9iamVjdHMgYXJlIG5vdCB0aGUg c2FtZSBvcGVyYW5kLgoKUmV2aWV3ZWQtYnk6IE1hcmNvIExpZWJlbCA8bWFyY28ubGllYmVsQG9z cy5xdWFsY29tbS5jb20+ClJldmlld2VkLWJ5OiBSaWNoYXJkIEhlbmRlcnNvbiA8cmljaGFyZC5o ZW5kZXJzb25AbGluYXJvLm9yZz4KU2lnbmVkLW9mZi1ieTogQnJpYW4gQ2FpbiA8YnJpYW4uY2Fp bkBvc3MucXVhbGNvbW0uY29tPgotLS0KIGluY2x1ZGUvdGNnL3RjZy1vcC1ndmVjLWNvbW1vbi5o IHwgIDQ1ICsrKysrKysrCiB0Y2cvdGNnLW9wLWd2ZWMuYyAgICAgICAgICAgICAgICB8IDE4NCAr KysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDE4OSBpbnNl cnRpb25zKCspLCA0MCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9pbmNsdWRlL3RjZy90Y2ct b3AtZ3ZlYy1jb21tb24uaCBiL2luY2x1ZGUvdGNnL3RjZy1vcC1ndmVjLWNvbW1vbi5oCmluZGV4 IGVhMGM4N2Y0ZGI2Li45OWE2Njg1ZThhNSAxMDA2NDQKLS0tIGEvaW5jbHVkZS90Y2cvdGNnLW9w LWd2ZWMtY29tbW9uLmgKKysrIGIvaW5jbHVkZS90Y2cvdGNnLW9wLWd2ZWMtY29tbW9uLmgKQEAg LTI4Nyw2ICsyODcsMTMgQEAgdm9pZCB0Y2dfZ2VuX2d2ZWNfbW92X3Zhcih1bnNpZ25lZCB2ZWNl LCBUQ0d2X3B0ciBkYmFzZSwgdWludDMyX3QgZG9mcywKICAgICAgICAgICAgICAgICAgICAgICAg ICAgVENHdl9wdHIgYWJhc2UsIHVpbnQzMl90IGFvZnMsCiAgICAgICAgICAgICAgICAgICAgICAg ICAgIHVpbnQzMl90IG9wcnN6LCB1aW50MzJfdCBtYXhzeik7CiAKK3ZvaWQgdGNnX2dlbl9ndmVj X25vdF92YXIodW5zaWduZWQgdmVjZSwgVENHdl9wdHIgZGJhc2UsIHVpbnQzMl90IGRvZnMsCisg ICAgICAgICAgICAgICAgICAgICAgICAgIFRDR3ZfcHRyIGFiYXNlLCB1aW50MzJfdCBhb2ZzLAor ICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBvcHJzeiwgdWludDMyX3QgbWF4c3op Owordm9pZCB0Y2dfZ2VuX2d2ZWNfYWJzX3Zhcih1bnNpZ25lZCB2ZWNlLCBUQ0d2X3B0ciBkYmFz ZSwgdWludDMyX3QgZG9mcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgVENHdl9wdHIgYWJh c2UsIHVpbnQzMl90IGFvZnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IG9w cnN6LCB1aW50MzJfdCBtYXhzeik7CisKIHZvaWQgdGNnX2dlbl9ndmVjX21vdih1bnNpZ25lZCB2 ZWNlLCB1aW50MzJfdCBkb2ZzLCB1aW50MzJfdCBhb2ZzLAogICAgICAgICAgICAgICAgICAgICAg IHVpbnQzMl90IG9wcnN6LCB1aW50MzJfdCBtYXhzeik7CiB2b2lkIHRjZ19nZW5fZ3ZlY19ub3Qo dW5zaWduZWQgdmVjZSwgdWludDMyX3QgZG9mcywgdWludDMyX3QgYW9mcywKQEAgLTMzNSw2ICsz NDIsMjMgQEAgdm9pZCB0Y2dfZ2VuX2d2ZWNfdXNzdWIodW5zaWduZWQgdmVjZSwgdWludDMyX3Qg ZG9mcywgdWludDMyX3QgYW9mcywKICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGJv ZnMsIHVpbnQzMl90IG9wcnN6LCB1aW50MzJfdCBtYXhzeik7CiAKIC8qIE1pbi9tYXguICAqLwor dm9pZCB0Y2dfZ2VuX2d2ZWNfc21pbl92YXIodW5zaWduZWQgdmVjZSwgVENHdl9wdHIgZGJhc2Us IHVpbnQzMl90IGRvZnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBUQ0d2X3B0ciBhYmFz ZSwgdWludDMyX3QgYW9mcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIFRDR3ZfcHRyIGJi YXNlLCB1aW50MzJfdCBib2ZzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3Qg b3Byc3osIHVpbnQzMl90IG1heHN6KTsKK3ZvaWQgdGNnX2dlbl9ndmVjX3VtaW5fdmFyKHVuc2ln bmVkIHZlY2UsIFRDR3ZfcHRyIGRiYXNlLCB1aW50MzJfdCBkb2ZzLAorICAgICAgICAgICAgICAg ICAgICAgICAgICAgVENHdl9wdHIgYWJhc2UsIHVpbnQzMl90IGFvZnMsCisgICAgICAgICAgICAg ICAgICAgICAgICAgICBUQ0d2X3B0ciBiYmFzZSwgdWludDMyX3QgYm9mcywKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgIHVpbnQzMl90IG9wcnN6LCB1aW50MzJfdCBtYXhzeik7Cit2b2lkIHRj Z19nZW5fZ3ZlY19zbWF4X3Zhcih1bnNpZ25lZCB2ZWNlLCBUQ0d2X3B0ciBkYmFzZSwgdWludDMy X3QgZG9mcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIFRDR3ZfcHRyIGFiYXNlLCB1aW50 MzJfdCBhb2ZzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgVENHdl9wdHIgYmJhc2UsIHVp bnQzMl90IGJvZnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBvcHJzeiwg dWludDMyX3QgbWF4c3opOwordm9pZCB0Y2dfZ2VuX2d2ZWNfdW1heF92YXIodW5zaWduZWQgdmVj ZSwgVENHdl9wdHIgZGJhc2UsIHVpbnQzMl90IGRvZnMsCisgICAgICAgICAgICAgICAgICAgICAg ICAgICBUQ0d2X3B0ciBhYmFzZSwgdWludDMyX3QgYW9mcywKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgIFRDR3ZfcHRyIGJiYXNlLCB1aW50MzJfdCBib2ZzLAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgdWludDMyX3Qgb3Byc3osIHVpbnQzMl90IG1heHN6KTsKKwogdm9pZCB0Y2dfZ2Vu X2d2ZWNfc21pbih1bnNpZ25lZCB2ZWNlLCB1aW50MzJfdCBkb2ZzLCB1aW50MzJfdCBhb2ZzLAog ICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBib2ZzLCB1aW50MzJfdCBvcHJzeiwgdWlu dDMyX3QgbWF4c3opOwogdm9pZCB0Y2dfZ2VuX2d2ZWNfdW1pbih1bnNpZ25lZCB2ZWNlLCB1aW50 MzJfdCBkb2ZzLCB1aW50MzJfdCBhb2ZzLApAQCAtMzQ0LDYgKzM2OCwyNyBAQCB2b2lkIHRjZ19n ZW5fZ3ZlY19zbWF4KHVuc2lnbmVkIHZlY2UsIHVpbnQzMl90IGRvZnMsIHVpbnQzMl90IGFvZnMs CiB2b2lkIHRjZ19nZW5fZ3ZlY191bWF4KHVuc2lnbmVkIHZlY2UsIHVpbnQzMl90IGRvZnMsIHVp bnQzMl90IGFvZnMsCiAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGJvZnMsIHVpbnQz Ml90IG9wcnN6LCB1aW50MzJfdCBtYXhzeik7CiAKK3ZvaWQgdGNnX2dlbl9ndmVjX2FuZF92YXIo dW5zaWduZWQgdmVjZSwgVENHdl9wdHIgZGJhc2UsIHVpbnQzMl90IGRvZnMsCisgICAgICAgICAg ICAgICAgICAgICAgICAgIFRDR3ZfcHRyIGFiYXNlLCB1aW50MzJfdCBhb2ZzLAorICAgICAgICAg ICAgICAgICAgICAgICAgICBUQ0d2X3B0ciBiYmFzZSwgdWludDMyX3QgYm9mcywKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgdWludDMyX3Qgb3Byc3osIHVpbnQzMl90IG1heHN6KTsKK3ZvaWQg dGNnX2dlbl9ndmVjX29yX3Zhcih1bnNpZ25lZCB2ZWNlLCBUQ0d2X3B0ciBkYmFzZSwgdWludDMy X3QgZG9mcywKKyAgICAgICAgICAgICAgICAgICAgICAgICBUQ0d2X3B0ciBhYmFzZSwgdWludDMy X3QgYW9mcywKKyAgICAgICAgICAgICAgICAgICAgICAgICBUQ0d2X3B0ciBiYmFzZSwgdWludDMy X3QgYm9mcywKKyAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBvcHJzeiwgdWludDMy X3QgbWF4c3opOwordm9pZCB0Y2dfZ2VuX2d2ZWNfeG9yX3Zhcih1bnNpZ25lZCB2ZWNlLCBUQ0d2 X3B0ciBkYmFzZSwgdWludDMyX3QgZG9mcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgVENH dl9wdHIgYWJhc2UsIHVpbnQzMl90IGFvZnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgIFRD R3ZfcHRyIGJiYXNlLCB1aW50MzJfdCBib2ZzLAorICAgICAgICAgICAgICAgICAgICAgICAgICB1 aW50MzJfdCBvcHJzeiwgdWludDMyX3QgbWF4c3opOwordm9pZCB0Y2dfZ2VuX2d2ZWNfYW5kY192 YXIodW5zaWduZWQgdmVjZSwgVENHdl9wdHIgZGJhc2UsIHVpbnQzMl90IGRvZnMsCisgICAgICAg ICAgICAgICAgICAgICAgICAgICBUQ0d2X3B0ciBhYmFzZSwgdWludDMyX3QgYW9mcywKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgIFRDR3ZfcHRyIGJiYXNlLCB1aW50MzJfdCBib2ZzLAorICAg ICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3Qgb3Byc3osIHVpbnQzMl90IG1heHN6KTsK K3ZvaWQgdGNnX2dlbl9ndmVjX29yY192YXIodW5zaWduZWQgdmVjZSwgVENHdl9wdHIgZGJhc2Us IHVpbnQzMl90IGRvZnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgIFRDR3ZfcHRyIGFiYXNl LCB1aW50MzJfdCBhb2ZzLAorICAgICAgICAgICAgICAgICAgICAgICAgICBUQ0d2X3B0ciBiYmFz ZSwgdWludDMyX3QgYm9mcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3Qgb3By c3osIHVpbnQzMl90IG1heHN6KTsKKwogdm9pZCB0Y2dfZ2VuX2d2ZWNfYW5kKHVuc2lnbmVkIHZl Y2UsIHVpbnQzMl90IGRvZnMsIHVpbnQzMl90IGFvZnMsCiAgICAgICAgICAgICAgICAgICAgICAg dWludDMyX3QgYm9mcywgdWludDMyX3Qgb3Byc3osIHVpbnQzMl90IG1heHN6KTsKIHZvaWQgdGNn X2dlbl9ndmVjX29yKHVuc2lnbmVkIHZlY2UsIHVpbnQzMl90IGRvZnMsIHVpbnQzMl90IGFvZnMs CmRpZmYgLS1naXQgYS90Y2cvdGNnLW9wLWd2ZWMuYyBiL3RjZy90Y2ctb3AtZ3ZlYy5jCmluZGV4 IDI3ZjM4MDdiMDA0Li4xOTFhYzBmYTg2NCAxMDA2NDQKLS0tIGEvdGNnL3RjZy1vcC1ndmVjLmMK KysrIGIvdGNnL3RjZy1vcC1ndmVjLmMKQEAgLTE5MTEsOCArMTkxMSw5IEBAIHZvaWQgdGNnX2dl bl9ndmVjX2R1cF9pbW0odW5zaWduZWQgdmVjZSwgdWludDMyX3QgZG9mcywgdWludDMyX3Qgb3By c3osCiAgICAgdGNnX2dlbl9ndmVjX2R1cF9pbW1fdmFyKHZlY2UsIHRjZ19lbnYsIGRvZnMsIG9w cnN6LCBtYXhzeiwgeCk7CiB9CiAKLXZvaWQgdGNnX2dlbl9ndmVjX25vdCh1bnNpZ25lZCB2ZWNl LCB1aW50MzJfdCBkb2ZzLCB1aW50MzJfdCBhb2ZzLAotICAgICAgICAgICAgICAgICAgICAgIHVp bnQzMl90IG9wcnN6LCB1aW50MzJfdCBtYXhzeikKK3ZvaWQgdGNnX2dlbl9ndmVjX25vdF92YXIo dW5zaWduZWQgdmVjZSwgVENHdl9wdHIgZGJhc2UsIHVpbnQzMl90IGRvZnMsCisgICAgICAgICAg ICAgICAgICAgICAgICAgIFRDR3ZfcHRyIGFiYXNlLCB1aW50MzJfdCBhb2ZzLAorICAgICAgICAg ICAgICAgICAgICAgICAgICB1aW50MzJfdCBvcHJzeiwgdWludDMyX3QgbWF4c3opCiB7CiAgICAg c3RhdGljIGNvbnN0IEdWZWNHZW4yIGcgPSB7CiAgICAgICAgIC5mbmk4ID0gdGNnX2dlbl9ub3Rf aTY0LApAQCAtMTkyMCw3ICsxOTIxLDEzIEBAIHZvaWQgdGNnX2dlbl9ndmVjX25vdCh1bnNpZ25l ZCB2ZWNlLCB1aW50MzJfdCBkb2ZzLCB1aW50MzJfdCBhb2ZzLAogICAgICAgICAuZm5vID0gZ2Vu X2hlbHBlcl9ndmVjX25vdCwKICAgICAgICAgLnByZWZlcl9pNjQgPSB0cnVlLAogICAgIH07Ci0g ICAgdGNnX2dlbl9ndmVjXzIoZG9mcywgYW9mcywgb3Byc3osIG1heHN6LCAmZyk7CisgICAgdGNn X2dlbl9ndmVjXzJfdmFyKGRiYXNlLCBkb2ZzLCBhYmFzZSwgYW9mcywgb3Byc3osIG1heHN6LCAm Zyk7Cit9CisKK3ZvaWQgdGNnX2dlbl9ndmVjX25vdCh1bnNpZ25lZCB2ZWNlLCB1aW50MzJfdCBk b2ZzLCB1aW50MzJfdCBhb2ZzLAorICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IG9wcnN6 LCB1aW50MzJfdCBtYXhzeikKK3sKKyAgICB0Y2dfZ2VuX2d2ZWNfbm90X3Zhcih2ZWNlLCB0Y2df ZW52LCBkb2ZzLCB0Y2dfZW52LCBhb2ZzLCBvcHJzeiwgbWF4c3opOwogfQogCiAvKiBQZXJmb3Jt IGEgdmVjdG9yIGFkZGl0aW9uIHVzaW5nIG5vcm1hbCBhZGRpdGlvbiBhbmQgYSBtYXNrLiAgVGhl IG1hc2sKQEAgLTI0MjcsOCArMjQzNCwxMCBAQCB2b2lkIHRjZ19nZW5fZ3ZlY191c3N1Yih1bnNp Z25lZCB2ZWNlLCB1aW50MzJfdCBkb2ZzLCB1aW50MzJfdCBhb2ZzLAogICAgIHRjZ19nZW5fZ3Zl Y18zKGRvZnMsIGFvZnMsIGJvZnMsIG9wcnN6LCBtYXhzeiwgJmdbdmVjZV0pOwogfQogCi12b2lk IHRjZ19nZW5fZ3ZlY19zbWluKHVuc2lnbmVkIHZlY2UsIHVpbnQzMl90IGRvZnMsIHVpbnQzMl90 IGFvZnMsCi0gICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IGJvZnMsIHVpbnQzMl90IG9w cnN6LCB1aW50MzJfdCBtYXhzeikKK3ZvaWQgdGNnX2dlbl9ndmVjX3NtaW5fdmFyKHVuc2lnbmVk IHZlY2UsIFRDR3ZfcHRyIGRiYXNlLCB1aW50MzJfdCBkb2ZzLAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgVENHdl9wdHIgYWJhc2UsIHVpbnQzMl90IGFvZnMsCisgICAgICAgICAgICAgICAg ICAgICAgICAgICBUQ0d2X3B0ciBiYmFzZSwgdWludDMyX3QgYm9mcywKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgIHVpbnQzMl90IG9wcnN6LCB1aW50MzJfdCBtYXhzeikKIHsKICAgICBzdGF0 aWMgY29uc3QgVENHT3Bjb2RlIHZlY29wX2xpc3RbXSA9IHsgSU5ERVhfb3Bfc21pbl92ZWMsIDAg fTsKICAgICBzdGF0aWMgY29uc3QgR1ZlY0dlbjMgZ1s0XSA9IHsKQEAgLTI0NTIsMTEgKzI0NjEs MjEgQEAgdm9pZCB0Y2dfZ2VuX2d2ZWNfc21pbih1bnNpZ25lZCB2ZWNlLCB1aW50MzJfdCBkb2Zz LCB1aW50MzJfdCBhb2ZzLAogICAgICAgICAgIC52ZWNlID0gTU9fNjQgfQogICAgIH07CiAgICAg dGNnX2RlYnVnX2Fzc2VydCh2ZWNlIDw9IE1PXzY0KTsKLSAgICB0Y2dfZ2VuX2d2ZWNfMyhkb2Zz LCBhb2ZzLCBib2ZzLCBvcHJzeiwgbWF4c3osICZnW3ZlY2VdKTsKKyAgICB0Y2dfZ2VuX2d2ZWNf M192YXIoZGJhc2UsIGRvZnMsIGFiYXNlLCBhb2ZzLCBiYmFzZSwgYm9mcywKKyAgICAgICAgICAg ICAgICAgICAgICAgb3Byc3osIG1heHN6LCAmZ1t2ZWNlXSk7CiB9CiAKLXZvaWQgdGNnX2dlbl9n dmVjX3VtaW4odW5zaWduZWQgdmVjZSwgdWludDMyX3QgZG9mcywgdWludDMyX3QgYW9mcywKK3Zv aWQgdGNnX2dlbl9ndmVjX3NtaW4odW5zaWduZWQgdmVjZSwgdWludDMyX3QgZG9mcywgdWludDMy X3QgYW9mcywKICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgYm9mcywgdWludDMyX3Qg b3Byc3osIHVpbnQzMl90IG1heHN6KQoreworICAgIHRjZ19nZW5fZ3ZlY19zbWluX3Zhcih2ZWNl LCB0Y2dfZW52LCBkb2ZzLCB0Y2dfZW52LCBhb2ZzLAorICAgICAgICAgICAgICAgICAgICAgICAg ICB0Y2dfZW52LCBib2ZzLCBvcHJzeiwgbWF4c3opOworfQorCit2b2lkIHRjZ19nZW5fZ3ZlY191 bWluX3Zhcih1bnNpZ25lZCB2ZWNlLCBUQ0d2X3B0ciBkYmFzZSwgdWludDMyX3QgZG9mcywKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgIFRDR3ZfcHRyIGFiYXNlLCB1aW50MzJfdCBhb2ZzLAor ICAgICAgICAgICAgICAgICAgICAgICAgICAgVENHdl9wdHIgYmJhc2UsIHVpbnQzMl90IGJvZnMs CisgICAgICAgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBvcHJzeiwgdWludDMyX3QgbWF4 c3opCiB7CiAgICAgc3RhdGljIGNvbnN0IFRDR09wY29kZSB2ZWNvcF9saXN0W10gPSB7IElOREVY X29wX3VtaW5fdmVjLCAwIH07CiAgICAgc3RhdGljIGNvbnN0IEdWZWNHZW4zIGdbNF0gPSB7CkBA IC0yNDgwLDExICsyNDk5LDIxIEBAIHZvaWQgdGNnX2dlbl9ndmVjX3VtaW4odW5zaWduZWQgdmVj ZSwgdWludDMyX3QgZG9mcywgdWludDMyX3QgYW9mcywKICAgICAgICAgICAudmVjZSA9IE1PXzY0 IH0KICAgICB9OwogICAgIHRjZ19kZWJ1Z19hc3NlcnQodmVjZSA8PSBNT182NCk7Ci0gICAgdGNn X2dlbl9ndmVjXzMoZG9mcywgYW9mcywgYm9mcywgb3Byc3osIG1heHN6LCAmZ1t2ZWNlXSk7Cisg ICAgdGNnX2dlbl9ndmVjXzNfdmFyKGRiYXNlLCBkb2ZzLCBhYmFzZSwgYW9mcywgYmJhc2UsIGJv ZnMsCisgICAgICAgICAgICAgICAgICAgICAgIG9wcnN6LCBtYXhzeiwgJmdbdmVjZV0pOwogfQog Ci12b2lkIHRjZ19nZW5fZ3ZlY19zbWF4KHVuc2lnbmVkIHZlY2UsIHVpbnQzMl90IGRvZnMsIHVp bnQzMl90IGFvZnMsCit2b2lkIHRjZ19nZW5fZ3ZlY191bWluKHVuc2lnbmVkIHZlY2UsIHVpbnQz Ml90IGRvZnMsIHVpbnQzMl90IGFvZnMsCiAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90 IGJvZnMsIHVpbnQzMl90IG9wcnN6LCB1aW50MzJfdCBtYXhzeikKK3sKKyAgICB0Y2dfZ2VuX2d2 ZWNfdW1pbl92YXIodmVjZSwgdGNnX2VudiwgZG9mcywgdGNnX2VudiwgYW9mcywKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgdGNnX2VudiwgYm9mcywgb3Byc3osIG1heHN6KTsKK30KKwordm9p ZCB0Y2dfZ2VuX2d2ZWNfc21heF92YXIodW5zaWduZWQgdmVjZSwgVENHdl9wdHIgZGJhc2UsIHVp bnQzMl90IGRvZnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBUQ0d2X3B0ciBhYmFzZSwg dWludDMyX3QgYW9mcywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIFRDR3ZfcHRyIGJiYXNl LCB1aW50MzJfdCBib2ZzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3Qgb3By c3osIHVpbnQzMl90IG1heHN6KQogewogICAgIHN0YXRpYyBjb25zdCBUQ0dPcGNvZGUgdmVjb3Bf bGlzdFtdID0geyBJTkRFWF9vcF9zbWF4X3ZlYywgMCB9OwogICAgIHN0YXRpYyBjb25zdCBHVmVj R2VuMyBnWzRdID0gewpAQCAtMjUwOCwxMSArMjUzNywyMSBAQCB2b2lkIHRjZ19nZW5fZ3ZlY19z bWF4KHVuc2lnbmVkIHZlY2UsIHVpbnQzMl90IGRvZnMsIHVpbnQzMl90IGFvZnMsCiAgICAgICAg ICAgLnZlY2UgPSBNT182NCB9CiAgICAgfTsKICAgICB0Y2dfZGVidWdfYXNzZXJ0KHZlY2UgPD0g TU9fNjQpOwotICAgIHRjZ19nZW5fZ3ZlY18zKGRvZnMsIGFvZnMsIGJvZnMsIG9wcnN6LCBtYXhz eiwgJmdbdmVjZV0pOworICAgIHRjZ19nZW5fZ3ZlY18zX3ZhcihkYmFzZSwgZG9mcywgYWJhc2Us IGFvZnMsIGJiYXNlLCBib2ZzLAorICAgICAgICAgICAgICAgICAgICAgICBvcHJzeiwgbWF4c3os ICZnW3ZlY2VdKTsKIH0KIAotdm9pZCB0Y2dfZ2VuX2d2ZWNfdW1heCh1bnNpZ25lZCB2ZWNlLCB1 aW50MzJfdCBkb2ZzLCB1aW50MzJfdCBhb2ZzLAordm9pZCB0Y2dfZ2VuX2d2ZWNfc21heCh1bnNp Z25lZCB2ZWNlLCB1aW50MzJfdCBkb2ZzLCB1aW50MzJfdCBhb2ZzLAogICAgICAgICAgICAgICAg ICAgICAgICB1aW50MzJfdCBib2ZzLCB1aW50MzJfdCBvcHJzeiwgdWludDMyX3QgbWF4c3opCit7 CisgICAgdGNnX2dlbl9ndmVjX3NtYXhfdmFyKHZlY2UsIHRjZ19lbnYsIGRvZnMsIHRjZ19lbnYs IGFvZnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgIHRjZ19lbnYsIGJvZnMsIG9wcnN6LCBt YXhzeik7Cit9CisKK3ZvaWQgdGNnX2dlbl9ndmVjX3VtYXhfdmFyKHVuc2lnbmVkIHZlY2UsIFRD R3ZfcHRyIGRiYXNlLCB1aW50MzJfdCBkb2ZzLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg VENHdl9wdHIgYWJhc2UsIHVpbnQzMl90IGFvZnMsCisgICAgICAgICAgICAgICAgICAgICAgICAg ICBUQ0d2X3B0ciBiYmFzZSwgdWludDMyX3QgYm9mcywKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgIHVpbnQzMl90IG9wcnN6LCB1aW50MzJfdCBtYXhzeikKIHsKICAgICBzdGF0aWMgY29uc3Qg VENHT3Bjb2RlIHZlY29wX2xpc3RbXSA9IHsgSU5ERVhfb3BfdW1heF92ZWMsIDAgfTsKICAgICBz dGF0aWMgY29uc3QgR1ZlY0dlbjMgZ1s0XSA9IHsKQEAgLTI1MzYsNyArMjU3NSwxNSBAQCB2b2lk IHRjZ19nZW5fZ3ZlY191bWF4KHVuc2lnbmVkIHZlY2UsIHVpbnQzMl90IGRvZnMsIHVpbnQzMl90 IGFvZnMsCiAgICAgICAgICAgLnZlY2UgPSBNT182NCB9CiAgICAgfTsKICAgICB0Y2dfZGVidWdf YXNzZXJ0KHZlY2UgPD0gTU9fNjQpOwotICAgIHRjZ19nZW5fZ3ZlY18zKGRvZnMsIGFvZnMsIGJv ZnMsIG9wcnN6LCBtYXhzeiwgJmdbdmVjZV0pOworICAgIHRjZ19nZW5fZ3ZlY18zX3ZhcihkYmFz ZSwgZG9mcywgYWJhc2UsIGFvZnMsIGJiYXNlLCBib2ZzLAorICAgICAgICAgICAgICAgICAgICAg ICBvcHJzeiwgbWF4c3osICZnW3ZlY2VdKTsKK30KKwordm9pZCB0Y2dfZ2VuX2d2ZWNfdW1heCh1 bnNpZ25lZCB2ZWNlLCB1aW50MzJfdCBkb2ZzLCB1aW50MzJfdCBhb2ZzLAorICAgICAgICAgICAg ICAgICAgICAgICB1aW50MzJfdCBib2ZzLCB1aW50MzJfdCBvcHJzeiwgdWludDMyX3QgbWF4c3op Cit7CisgICAgdGNnX2dlbl9ndmVjX3VtYXhfdmFyKHZlY2UsIHRjZ19lbnYsIGRvZnMsIHRjZ19l bnYsIGFvZnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgIHRjZ19lbnYsIGJvZnMsIG9wcnN6 LCBtYXhzeik7CiB9CiAKIC8qIFBlcmZvcm0gYSB2ZWN0b3IgbmVnYXRpb24gdXNpbmcgbm9ybWFs IG5lZ2F0aW9uIGFuZCBhIG1hc2suCkBAIC0yNjQ1LDggKzI2OTIsOSBAQCBzdGF0aWMgdm9pZCB0 Y2dfZ2VuX3ZlY19hYnMxNl9pNjQoVENHdl9pNjQgZCwgVENHdl9pNjQgYikKICAgICBnZW5fYWJz dl9tYXNrKGQsIGIsIE1PXzE2KTsKIH0KIAotdm9pZCB0Y2dfZ2VuX2d2ZWNfYWJzKHVuc2lnbmVk IHZlY2UsIHVpbnQzMl90IGRvZnMsIHVpbnQzMl90IGFvZnMsCi0gICAgICAgICAgICAgICAgICAg ICAgdWludDMyX3Qgb3Byc3osIHVpbnQzMl90IG1heHN6KQordm9pZCB0Y2dfZ2VuX2d2ZWNfYWJz X3Zhcih1bnNpZ25lZCB2ZWNlLCBUQ0d2X3B0ciBkYmFzZSwgdWludDMyX3QgZG9mcywKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgVENHdl9wdHIgYWJhc2UsIHVpbnQzMl90IGFvZnMsCisgICAg ICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IG9wcnN6LCB1aW50MzJfdCBtYXhzeikKIHsK ICAgICBzdGF0aWMgY29uc3QgVENHT3Bjb2RlIHZlY29wX2xpc3RbXSA9IHsgSU5ERVhfb3BfYWJz X3ZlYywgMCB9OwogICAgIHN0YXRpYyBjb25zdCBHVmVjR2VuMiBnWzRdID0gewpAQCAtMjY3NCwx MSArMjcyMiwxOSBAQCB2b2lkIHRjZ19nZW5fZ3ZlY19hYnModW5zaWduZWQgdmVjZSwgdWludDMy X3QgZG9mcywgdWludDMyX3QgYW9mcywKICAgICB9OwogCiAgICAgdGNnX2RlYnVnX2Fzc2VydCh2 ZWNlIDw9IE1PXzY0KTsKLSAgICB0Y2dfZ2VuX2d2ZWNfMihkb2ZzLCBhb2ZzLCBvcHJzeiwgbWF4 c3osICZnW3ZlY2VdKTsKKyAgICB0Y2dfZ2VuX2d2ZWNfMl92YXIoZGJhc2UsIGRvZnMsIGFiYXNl LCBhb2ZzLCBvcHJzeiwgbWF4c3osICZnW3ZlY2VdKTsKIH0KIAotdm9pZCB0Y2dfZ2VuX2d2ZWNf YW5kKHVuc2lnbmVkIHZlY2UsIHVpbnQzMl90IGRvZnMsIHVpbnQzMl90IGFvZnMsCi0gICAgICAg ICAgICAgICAgICAgICAgdWludDMyX3QgYm9mcywgdWludDMyX3Qgb3Byc3osIHVpbnQzMl90IG1h eHN6KQordm9pZCB0Y2dfZ2VuX2d2ZWNfYWJzKHVuc2lnbmVkIHZlY2UsIHVpbnQzMl90IGRvZnMs IHVpbnQzMl90IGFvZnMsCisgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3Qgb3Byc3osIHVp bnQzMl90IG1heHN6KQoreworICAgIHRjZ19nZW5fZ3ZlY19hYnNfdmFyKHZlY2UsIHRjZ19lbnYs IGRvZnMsIHRjZ19lbnYsIGFvZnMsIG9wcnN6LCBtYXhzeik7Cit9CisKK3ZvaWQgdGNnX2dlbl9n dmVjX2FuZF92YXIodW5zaWduZWQgdmVjZSwgVENHdl9wdHIgZGJhc2UsIHVpbnQzMl90IGRvZnMs CisgICAgICAgICAgICAgICAgICAgICAgICAgIFRDR3ZfcHRyIGFiYXNlLCB1aW50MzJfdCBhb2Zz LAorICAgICAgICAgICAgICAgICAgICAgICAgICBUQ0d2X3B0ciBiYmFzZSwgdWludDMyX3QgYm9m cywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3Qgb3Byc3osIHVpbnQzMl90IG1h eHN6KQogewogICAgIHN0YXRpYyBjb25zdCBHVmVjR2VuMyBnID0gewogICAgICAgICAuZm5pOCA9 IHRjZ19nZW5fYW5kX2k2NCwKQEAgLTI2ODcsMTUgKzI3NDMsMjUgQEAgdm9pZCB0Y2dfZ2VuX2d2 ZWNfYW5kKHVuc2lnbmVkIHZlY2UsIHVpbnQzMl90IGRvZnMsIHVpbnQzMl90IGFvZnMsCiAgICAg ICAgIC5wcmVmZXJfaTY0ID0gdHJ1ZSwKICAgICB9OwogCi0gICAgaWYgKGFvZnMgPT0gYm9mcykg ewotICAgICAgICB0Y2dfZ2VuX2d2ZWNfbW92KHZlY2UsIGRvZnMsIGFvZnMsIG9wcnN6LCBtYXhz eik7CisgICAgaWYgKGFiYXNlID09IGJiYXNlICYmIGFvZnMgPT0gYm9mcykgeworICAgICAgICB0 Y2dfZ2VuX2d2ZWNfbW92X3Zhcih2ZWNlLCBkYmFzZSwgZG9mcywgYWJhc2UsIGFvZnMsIG9wcnN6 LCBtYXhzeik7CiAgICAgfSBlbHNlIHsKLSAgICAgICAgdGNnX2dlbl9ndmVjXzMoZG9mcywgYW9m cywgYm9mcywgb3Byc3osIG1heHN6LCAmZyk7CisgICAgICAgIHRjZ19nZW5fZ3ZlY18zX3Zhcihk YmFzZSwgZG9mcywgYWJhc2UsIGFvZnMsIGJiYXNlLCBib2ZzLAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgb3Byc3osIG1heHN6LCAmZyk7CiAgICAgfQogfQogCi12b2lkIHRjZ19nZW5fZ3Zl Y19vcih1bnNpZ25lZCB2ZWNlLCB1aW50MzJfdCBkb2ZzLCB1aW50MzJfdCBhb2ZzLAotICAgICAg ICAgICAgICAgICAgICAgdWludDMyX3QgYm9mcywgdWludDMyX3Qgb3Byc3osIHVpbnQzMl90IG1h eHN6KQordm9pZCB0Y2dfZ2VuX2d2ZWNfYW5kKHVuc2lnbmVkIHZlY2UsIHVpbnQzMl90IGRvZnMs IHVpbnQzMl90IGFvZnMsCisgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgYm9mcywgdWlu dDMyX3Qgb3Byc3osIHVpbnQzMl90IG1heHN6KQoreworICAgIHRjZ19nZW5fZ3ZlY19hbmRfdmFy KHZlY2UsIHRjZ19lbnYsIGRvZnMsIHRjZ19lbnYsIGFvZnMsIHRjZ19lbnYsIGJvZnMsCisgICAg ICAgICAgICAgICAgICAgICAgICAgb3Byc3osIG1heHN6KTsKK30KKwordm9pZCB0Y2dfZ2VuX2d2 ZWNfb3JfdmFyKHVuc2lnbmVkIHZlY2UsIFRDR3ZfcHRyIGRiYXNlLCB1aW50MzJfdCBkb2ZzLAor ICAgICAgICAgICAgICAgICAgICAgICAgIFRDR3ZfcHRyIGFiYXNlLCB1aW50MzJfdCBhb2ZzLAor ICAgICAgICAgICAgICAgICAgICAgICAgIFRDR3ZfcHRyIGJiYXNlLCB1aW50MzJfdCBib2ZzLAor ICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IG9wcnN6LCB1aW50MzJfdCBtYXhzeikK IHsKICAgICBzdGF0aWMgY29uc3QgR1ZlY0dlbjMgZyA9IHsKICAgICAgICAgLmZuaTggPSB0Y2df Z2VuX29yX2k2NCwKQEAgLTI3MDQsMTUgKzI3NzAsMjUgQEAgdm9pZCB0Y2dfZ2VuX2d2ZWNfb3Io dW5zaWduZWQgdmVjZSwgdWludDMyX3QgZG9mcywgdWludDMyX3QgYW9mcywKICAgICAgICAgLnBy ZWZlcl9pNjQgPSB0cnVlLAogICAgIH07CiAKLSAgICBpZiAoYW9mcyA9PSBib2ZzKSB7Ci0gICAg ICAgIHRjZ19nZW5fZ3ZlY19tb3YodmVjZSwgZG9mcywgYW9mcywgb3Byc3osIG1heHN6KTsKKyAg ICBpZiAoYWJhc2UgPT0gYmJhc2UgJiYgYW9mcyA9PSBib2ZzKSB7CisgICAgICAgIHRjZ19nZW5f Z3ZlY19tb3ZfdmFyKHZlY2UsIGRiYXNlLCBkb2ZzLCBhYmFzZSwgYW9mcywgb3Byc3osIG1heHN6 KTsKICAgICB9IGVsc2UgewotICAgICAgICB0Y2dfZ2VuX2d2ZWNfMyhkb2ZzLCBhb2ZzLCBib2Zz LCBvcHJzeiwgbWF4c3osICZnKTsKKyAgICAgICAgdGNnX2dlbl9ndmVjXzNfdmFyKGRiYXNlLCBk b2ZzLCBhYmFzZSwgYW9mcywgYmJhc2UsIGJvZnMsCisgICAgICAgICAgICAgICAgICAgICAgICAg ICBvcHJzeiwgbWF4c3osICZnKTsKICAgICB9CiB9CiAKLXZvaWQgdGNnX2dlbl9ndmVjX3hvcih1 bnNpZ25lZCB2ZWNlLCB1aW50MzJfdCBkb2ZzLCB1aW50MzJfdCBhb2ZzLAotICAgICAgICAgICAg ICAgICAgICAgIHVpbnQzMl90IGJvZnMsIHVpbnQzMl90IG9wcnN6LCB1aW50MzJfdCBtYXhzeikK K3ZvaWQgdGNnX2dlbl9ndmVjX29yKHVuc2lnbmVkIHZlY2UsIHVpbnQzMl90IGRvZnMsIHVpbnQz Ml90IGFvZnMsCisgICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBib2ZzLCB1aW50MzJfdCBv cHJzeiwgdWludDMyX3QgbWF4c3opCit7CisgICAgdGNnX2dlbl9ndmVjX29yX3Zhcih2ZWNlLCB0 Y2dfZW52LCBkb2ZzLCB0Y2dfZW52LCBhb2ZzLCB0Y2dfZW52LCBib2ZzLAorICAgICAgICAgICAg ICAgICAgICAgICAgb3Byc3osIG1heHN6KTsKK30KKwordm9pZCB0Y2dfZ2VuX2d2ZWNfeG9yX3Zh cih1bnNpZ25lZCB2ZWNlLCBUQ0d2X3B0ciBkYmFzZSwgdWludDMyX3QgZG9mcywKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgVENHdl9wdHIgYWJhc2UsIHVpbnQzMl90IGFvZnMsCisgICAgICAg ICAgICAgICAgICAgICAgICAgIFRDR3ZfcHRyIGJiYXNlLCB1aW50MzJfdCBib2ZzLAorICAgICAg ICAgICAgICAgICAgICAgICAgICB1aW50MzJfdCBvcHJzeiwgdWludDMyX3QgbWF4c3opCiB7CiAg ICAgc3RhdGljIGNvbnN0IEdWZWNHZW4zIGcgPSB7CiAgICAgICAgIC5mbmk4ID0gdGNnX2dlbl94 b3JfaTY0LApAQCAtMjcyMSwxNSArMjc5NywyNSBAQCB2b2lkIHRjZ19nZW5fZ3ZlY194b3IodW5z aWduZWQgdmVjZSwgdWludDMyX3QgZG9mcywgdWludDMyX3QgYW9mcywKICAgICAgICAgLnByZWZl cl9pNjQgPSB0cnVlLAogICAgIH07CiAKLSAgICBpZiAoYW9mcyA9PSBib2ZzKSB7Ci0gICAgICAg IHRjZ19nZW5fZ3ZlY19kdXBfaW1tKE1PXzY0LCBkb2ZzLCBvcHJzeiwgbWF4c3osIDApOworICAg IGlmIChhYmFzZSA9PSBiYmFzZSAmJiBhb2ZzID09IGJvZnMpIHsKKyAgICAgICAgdGNnX2dlbl9n dmVjX2R1cF9pbW1fdmFyKE1PXzY0LCBkYmFzZSwgZG9mcywgb3Byc3osIG1heHN6LCAwKTsKICAg ICB9IGVsc2UgewotICAgICAgICB0Y2dfZ2VuX2d2ZWNfMyhkb2ZzLCBhb2ZzLCBib2ZzLCBvcHJz eiwgbWF4c3osICZnKTsKKyAgICAgICAgdGNnX2dlbl9ndmVjXzNfdmFyKGRiYXNlLCBkb2ZzLCBh YmFzZSwgYW9mcywgYmJhc2UsIGJvZnMsCisgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHJz eiwgbWF4c3osICZnKTsKICAgICB9CiB9CiAKLXZvaWQgdGNnX2dlbl9ndmVjX2FuZGModW5zaWdu ZWQgdmVjZSwgdWludDMyX3QgZG9mcywgdWludDMyX3QgYW9mcywKLSAgICAgICAgICAgICAgICAg ICAgICAgdWludDMyX3QgYm9mcywgdWludDMyX3Qgb3Byc3osIHVpbnQzMl90IG1heHN6KQordm9p ZCB0Y2dfZ2VuX2d2ZWNfeG9yKHVuc2lnbmVkIHZlY2UsIHVpbnQzMl90IGRvZnMsIHVpbnQzMl90 IGFvZnMsCisgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgYm9mcywgdWludDMyX3Qgb3By c3osIHVpbnQzMl90IG1heHN6KQoreworICAgIHRjZ19nZW5fZ3ZlY194b3JfdmFyKHZlY2UsIHRj Z19lbnYsIGRvZnMsIHRjZ19lbnYsIGFvZnMsIHRjZ19lbnYsIGJvZnMsCisgICAgICAgICAgICAg ICAgICAgICAgICAgb3Byc3osIG1heHN6KTsKK30KKwordm9pZCB0Y2dfZ2VuX2d2ZWNfYW5kY192 YXIodW5zaWduZWQgdmVjZSwgVENHdl9wdHIgZGJhc2UsIHVpbnQzMl90IGRvZnMsCisgICAgICAg ICAgICAgICAgICAgICAgICAgICBUQ0d2X3B0ciBhYmFzZSwgdWludDMyX3QgYW9mcywKKyAgICAg ICAgICAgICAgICAgICAgICAgICAgIFRDR3ZfcHRyIGJiYXNlLCB1aW50MzJfdCBib2ZzLAorICAg ICAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3Qgb3Byc3osIHVpbnQzMl90IG1heHN6KQog ewogICAgIHN0YXRpYyBjb25zdCBHVmVjR2VuMyBnID0gewogICAgICAgICAuZm5pOCA9IHRjZ19n ZW5fYW5kY19pNjQsCkBAIC0yNzM4LDE1ICsyODI0LDI1IEBAIHZvaWQgdGNnX2dlbl9ndmVjX2Fu ZGModW5zaWduZWQgdmVjZSwgdWludDMyX3QgZG9mcywgdWludDMyX3QgYW9mcywKICAgICAgICAg LnByZWZlcl9pNjQgPSB0cnVlLAogICAgIH07CiAKLSAgICBpZiAoYW9mcyA9PSBib2ZzKSB7Ci0g ICAgICAgIHRjZ19nZW5fZ3ZlY19kdXBfaW1tKE1PXzY0LCBkb2ZzLCBvcHJzeiwgbWF4c3osIDAp OworICAgIGlmIChhYmFzZSA9PSBiYmFzZSAmJiBhb2ZzID09IGJvZnMpIHsKKyAgICAgICAgdGNn X2dlbl9ndmVjX2R1cF9pbW1fdmFyKE1PXzY0LCBkYmFzZSwgZG9mcywgb3Byc3osIG1heHN6LCAw KTsKICAgICB9IGVsc2UgewotICAgICAgICB0Y2dfZ2VuX2d2ZWNfMyhkb2ZzLCBhb2ZzLCBib2Zz LCBvcHJzeiwgbWF4c3osICZnKTsKKyAgICAgICAgdGNnX2dlbl9ndmVjXzNfdmFyKGRiYXNlLCBk b2ZzLCBhYmFzZSwgYW9mcywgYmJhc2UsIGJvZnMsCisgICAgICAgICAgICAgICAgICAgICAgICAg ICBvcHJzeiwgbWF4c3osICZnKTsKICAgICB9CiB9CiAKLXZvaWQgdGNnX2dlbl9ndmVjX29yYyh1 bnNpZ25lZCB2ZWNlLCB1aW50MzJfdCBkb2ZzLCB1aW50MzJfdCBhb2ZzLAotICAgICAgICAgICAg ICAgICAgICAgIHVpbnQzMl90IGJvZnMsIHVpbnQzMl90IG9wcnN6LCB1aW50MzJfdCBtYXhzeikK K3ZvaWQgdGNnX2dlbl9ndmVjX2FuZGModW5zaWduZWQgdmVjZSwgdWludDMyX3QgZG9mcywgdWlu dDMyX3QgYW9mcywKKyAgICAgICAgICAgICAgICAgICAgICAgdWludDMyX3QgYm9mcywgdWludDMy X3Qgb3Byc3osIHVpbnQzMl90IG1heHN6KQoreworICAgIHRjZ19nZW5fZ3ZlY19hbmRjX3Zhcih2 ZWNlLCB0Y2dfZW52LCBkb2ZzLCB0Y2dfZW52LCBhb2ZzLCB0Y2dfZW52LCBib2ZzLAorICAgICAg ICAgICAgICAgICAgICAgICAgICBvcHJzeiwgbWF4c3opOworfQorCit2b2lkIHRjZ19nZW5fZ3Zl Y19vcmNfdmFyKHVuc2lnbmVkIHZlY2UsIFRDR3ZfcHRyIGRiYXNlLCB1aW50MzJfdCBkb2ZzLAor ICAgICAgICAgICAgICAgICAgICAgICAgICBUQ0d2X3B0ciBhYmFzZSwgdWludDMyX3QgYW9mcywK KyAgICAgICAgICAgICAgICAgICAgICAgICAgVENHdl9wdHIgYmJhc2UsIHVpbnQzMl90IGJvZnMs CisgICAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQzMl90IG9wcnN6LCB1aW50MzJfdCBtYXhz eikKIHsKICAgICBzdGF0aWMgY29uc3QgR1ZlY0dlbjMgZyA9IHsKICAgICAgICAgLmZuaTggPSB0 Y2dfZ2VuX29yY19pNjQsCkBAIC0yNzU1LDEzICsyODUxLDIxIEBAIHZvaWQgdGNnX2dlbl9ndmVj X29yYyh1bnNpZ25lZCB2ZWNlLCB1aW50MzJfdCBkb2ZzLCB1aW50MzJfdCBhb2ZzLAogICAgICAg ICAucHJlZmVyX2k2NCA9IHRydWUsCiAgICAgfTsKIAotICAgIGlmIChhb2ZzID09IGJvZnMpIHsK LSAgICAgICAgdGNnX2dlbl9ndmVjX2R1cF9pbW0oTU9fNjQsIGRvZnMsIG9wcnN6LCBtYXhzeiwg LTEpOworICAgIGlmIChhYmFzZSA9PSBiYmFzZSAmJiBhb2ZzID09IGJvZnMpIHsKKyAgICAgICAg dGNnX2dlbl9ndmVjX2R1cF9pbW1fdmFyKE1PXzY0LCBkYmFzZSwgZG9mcywgb3Byc3osIG1heHN6 LCAtMSk7CiAgICAgfSBlbHNlIHsKLSAgICAgICAgdGNnX2dlbl9ndmVjXzMoZG9mcywgYW9mcywg Ym9mcywgb3Byc3osIG1heHN6LCAmZyk7CisgICAgICAgIHRjZ19nZW5fZ3ZlY18zX3ZhcihkYmFz ZSwgZG9mcywgYWJhc2UsIGFvZnMsIGJiYXNlLCBib2ZzLAorICAgICAgICAgICAgICAgICAgICAg ICAgICAgb3Byc3osIG1heHN6LCAmZyk7CiAgICAgfQogfQogCit2b2lkIHRjZ19nZW5fZ3ZlY19v cmModW5zaWduZWQgdmVjZSwgdWludDMyX3QgZG9mcywgdWludDMyX3QgYW9mcywKKyAgICAgICAg ICAgICAgICAgICAgICB1aW50MzJfdCBib2ZzLCB1aW50MzJfdCBvcHJzeiwgdWludDMyX3QgbWF4 c3opCit7CisgICAgdGNnX2dlbl9ndmVjX29yY192YXIodmVjZSwgdGNnX2VudiwgZG9mcywgdGNn X2VudiwgYW9mcywgdGNnX2VudiwgYm9mcywKKyAgICAgICAgICAgICAgICAgICAgICAgICBvcHJz eiwgbWF4c3opOworfQorCiB2b2lkIHRjZ19nZW5fZ3ZlY19uYW5kKHVuc2lnbmVkIHZlY2UsIHVp bnQzMl90IGRvZnMsIHVpbnQzMl90IGFvZnMsCiAgICAgICAgICAgICAgICAgICAgICAgIHVpbnQz Ml90IGJvZnMsIHVpbnQzMl90IG9wcnN6LCB1aW50MzJfdCBtYXhzeikKIHsKLS0gCjIuMzQuMQoK