From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id CG8QAFleXGcchxUAWB0awg (envelope-from ) for ; Fri, 13 Dec 2024 11:18:33 -0500 Authentication-Results: simark.ca; dkim=pass (2048-bit key; unprotected) header.d=intel.com header.i=@intel.com header.a=rsa-sha256 header.s=Intel header.b=VEpCnV+m; dkim-atps=neutral Received: by simark.ca (Postfix, from userid 112) id EFE231E0BB; Fri, 13 Dec 2024 11:18:32 -0500 (EST) X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-13) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-6.4 required=5.0 tests=ARC_SIGNED,ARC_VALID,BAYES_00, DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED autolearn=unavailable autolearn_force=no version=4.0.0 Received: from server2.sourceware.org (server2.sourceware.org [8.43.85.97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by simark.ca (Postfix) with ESMTPS id 2F0251E091 for ; Fri, 13 Dec 2024 11:18:31 -0500 (EST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id F3DC2385783C for ; Fri, 13 Dec 2024 16:18:30 +0000 (GMT) Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.15]) by sourceware.org (Postfix) with ESMTPS id 9AF083858290; Fri, 13 Dec 2024 16:01:01 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 9AF083858290 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=intel.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 9AF083858290 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=192.198.163.15 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1734105662; cv=none; b=acZZxaG65EGwejdmlNMOP28cX8z2UrL3JvHmnzmxQV7zHWkGp3LwUhPBdes4ezGNDZYQ6fpL6mzy0G7Q76eGWYfxL1qDxFcGrgCqNt/MSDCcZqsDtk8lbITI4lL9X1xEJyrCJGKkGTswwtcdJhle+V398iladjYY/md3IGG4cX8= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1734105662; c=relaxed/simple; bh=JWpSV+GAjVzRYGsxuANyqnmdNA43Sm2GAxoK8WteUFU=; h=DKIM-Signature:From:To:Subject:Date:Message-Id:MIME-Version; b=oQJ2wALcGu+OcWO4D3/EusZkGfZCm4iAmGIp51iBgSN6acClUOf+ibIxAZWfbRjRkRu85CK+fSLXXEyKnRkArct0Al8pW8xfqVwqpBxKUuEYBWPsnCzLj4oBqh11o9NFOUZDmXnbM5Xc+n1jPWtfXBzooEbgiiwb2j0KmAaS94c= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 9AF083858290 Authentication-Results: sourceware.org; dkim=pass (2048-bit key, unprotected) header.d=intel.com header.i=@intel.com header.a=rsa-sha256 header.s=Intel header.b=VEpCnV+m DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1734105662; x=1765641662; h=from:to:subject:date:message-id:in-reply-to:references: mime-version:content-transfer-encoding; bh=JWpSV+GAjVzRYGsxuANyqnmdNA43Sm2GAxoK8WteUFU=; b=VEpCnV+mCeH8Ekla4hcrYKn0YJI+d4TPIsMZcpK8OsYGf+kRQyTuzSzu 2dqZZiOMg5NbJu1EAp04eW0mCM53jN4pZvHfLaXs1Uqlr5mgiFx/5SrL5 cG8lCq3XSXLwEwXbUHnKfK4VDNATXFZsNCJpehEuetkN/CnAlE8kaou+o zT6SrKFxBhaOsipA7gN//WI4YrzHKDxNvJaZpPhD+lxoWW/W9+mS/G2dm SOZ907PksqvZlBo4CIZ3teiCtgCODSM4NCJYP+LUEAKCb7uDsJuUFTN4f 17nGe8Fruhtmmb/7X8QMHHj8TJJic/0NIwMz3U3rXZomr32yBgQ9LBC7z A==; X-CSE-ConnectionGUID: B/FSdtlIR3y9qBOAdtTUQA== X-CSE-MsgGUID: 9HFdp+6JS2OjfXl6qkH1uw== X-IronPort-AV: E=McAfee;i="6700,10204,11285"; a="34696337" X-IronPort-AV: E=Sophos;i="6.12,231,1728975600"; d="scan'208";a="34696337" Received: from orviesa010.jf.intel.com ([10.64.159.150]) by fmvoesa109.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Dec 2024 08:01:01 -0800 X-CSE-ConnectionGUID: 1/Rx50LWQa+3iKhNUPNLkQ== X-CSE-MsgGUID: v/KEAU4bS8m8oT0tnwWllQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.12,224,1728975600"; d="scan'208";a="96434327" Received: from gkldtt-dev-004.igk.intel.com (HELO localhost) ([10.123.221.202]) by orviesa010-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 13 Dec 2024 08:00:59 -0800 From: Tankut Baris Aktemur To: gdb-patches@sourceware.org, Markus Metzger , binutils@sourceware.org Subject: [PATCH v2 02/47] bfd: add intelgt target to BFD Date: Fri, 13 Dec 2024 16:59:19 +0100 Message-Id: <20241213-upstream-intelgt-mvp-v2-2-5c4caeb7b33d@intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20241213-upstream-intelgt-mvp-v2-0-5c4caeb7b33d@intel.com> References: <20241213-upstream-intelgt-mvp-v2-0-5c4caeb7b33d@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" X-Mailer: b4 0.14.2 Content-Transfer-Encoding: base64 X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gdb-patches-bounces~public-inbox=simark.ca@sourceware.org RnJvbTogTmF0YWxpYSBTYWlhcG92YSA8bmF0YWxpYS5zYWlhcG92YUBpbnRlbC5jb20+CgpBZGQg ZGVzY3JpcHRpb24gb2YgSW50ZWxHVCB0YXJnZXQgdG8gQkZELiAgRGVzY3JpYmUgaXRzIHJlbG9j YXRpb24KdHlwZXMuCgpUbzogPGJpbnV0aWxzQHNvdXJjZXdhcmUub3JnPgotLS0KIGJmZC9NYWtl ZmlsZS5hbSAgICAgICB8ICAgMiArCiBiZmQvTWFrZWZpbGUuaW4gICAgICAgfCAgIDQgKysKIGJm ZC9hcmNodXJlcy5jICAgICAgICB8ICAgNCArKwogYmZkL2JmZC1pbjIuaCAgICAgICAgIHwgICA2 ICsrCiBiZmQvY29uZmlnLmJmZCAgICAgICAgfCAgMTMgKysrLQogYmZkL2NvbmZpZ3VyZSAgICAg ICAgIHwgICAxICsKIGJmZC9jb25maWd1cmUuYWMgICAgICB8ICAgMSArCiBiZmQvY3B1LWludGVs Z3QuYyAgICAgfCAgNTcgKysrKysrKysrKysrKysrCiBiZmQvZWxmNjQtaW50ZWxndC5jICAgfCAx OTUgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIGJm ZC9saWJiZmQuaCAgICAgICAgICB8ICAgMiArCiBiZmQvcmVsb2MuYyAgICAgICAgICAgfCAgIDcg KysKIGJmZC90YXJnZXRzLmMgICAgICAgICB8ICAgMiArCiBiaW51dGlscy9yZWFkZWxmLmMgICAg fCAgIDkgKysrCiBpbmNsdWRlL2VsZi9pbnRlbGd0LmggfCAgMzkgKysrKysrKysrKwogMTQgZmls ZXMgY2hhbmdlZCwgMzM5IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEvYmZkL01ha2VmaWxlLmFtIGIvYmZkL01ha2VmaWxlLmFtCmluZGV4IGRhZGJkMGY3ODgyNjZk ZDhhOTVlODE0ZWM5Zjc5ZTBhZWQzZDVkNjMuLjEyODA5NjJhZjYzM2FmMzU4NWZmZDViZDgyNmUy OTBhZTljNDJiMWIgMTAwNjQ0Ci0tLSBhL2JmZC9NYWtlZmlsZS5hbQorKysgYi9iZmQvTWFrZWZp bGUuYW0KQEAgLTExOSw2ICsxMTksNyBAQCBBTExfTUFDSElORVMgPSBcCiAJY3B1LWkzODYubG8g XAogCWNwdS1pYTY0LmxvIFwKIAljcHUtaWFtY3UubG8gXAorCWNwdS1pbnRlbGd0LmxvIFwKIAlj cHUtaXAyay5sbyBcCiAJY3B1LWlxMjAwMC5sbyBcCiAJY3B1LWt2eC5sbyBcCkBAIC0yMDIsNiAr MjAzLDcgQEAgQUxMX01BQ0hJTkVTX0NGSUxFUyA9IFwKIAljcHUtaTM4Ni5jIFwKIAljcHUtaWE2 NC5jIFwKIAljcHUtaWFtY3UuYyBcCisJY3B1LWludGVsZ3QuYyBcCiAJY3B1LWlwMmsuYyBcCiAJ Y3B1LWlxMjAwMC5jIFwKIAljcHUta3Z4LmMgXApkaWZmIC0tZ2l0IGEvYmZkL01ha2VmaWxlLmlu IGIvYmZkL01ha2VmaWxlLmluCmluZGV4IGE3ODFlMmI4OTU5ZDlmMzZmOGIwZWIyNjFiYzA5MjBl NWY2ZjU4MzIuLjlkN2M1N2FkZDEyNTNhM2U0MmI3YmIwNDQwOTdiZDQ2ZTJmZjM4ZGQgMTAwNjQ0 Ci0tLSBhL2JmZC9NYWtlZmlsZS5pbgorKysgYi9iZmQvTWFrZWZpbGUuaW4KQEAgLTU4NSw2ICs1 ODUsNyBAQCBBTExfTUFDSElORVMgPSBcCiAJY3B1LWkzODYubG8gXAogCWNwdS1pYTY0LmxvIFwK IAljcHUtaWFtY3UubG8gXAorCWNwdS1pbnRlbGd0LmxvIFwKIAljcHUtaXAyay5sbyBcCiAJY3B1 LWlxMjAwMC5sbyBcCiAJY3B1LWt2eC5sbyBcCkBAIC02NjgsNiArNjY5LDcgQEAgQUxMX01BQ0hJ TkVTX0NGSUxFUyA9IFwKIAljcHUtaTM4Ni5jIFwKIAljcHUtaWE2NC5jIFwKIAljcHUtaWFtY3Uu YyBcCisJY3B1LWludGVsZ3QuYyBcCiAJY3B1LWlwMmsuYyBcCiAJY3B1LWlxMjAwMC5jIFwKIAlj cHUta3Z4LmMgXApAQCAtMTAyNCw2ICsxMDI2LDcgQEAgQkZENjRfQkFDS0VORFMgPSBcCiAJZWxm NjQtaHBwYS5sbyBcCiAJZWxmNjQtaWE2NC12bXMubG8gXAogCWVsZjY0LWlhNjQubG8gXAorCWVs ZjY0LWludGVsZ3QubG8gXAogCWVsZjY0LWt2eC5sbyBcCiAJZWxmNjQtbG9vbmdhcmNoLmxvIFwK IAllbGY2NC1taXBzLmxvIFwKQEAgLTE0OTUsNiArMTQ5OCw3IEBAIGRpc3RjbGVhbi1jb21waWxl OgogQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL2NwdS1p Mzg2LlBsb0BhbV9fcXVvdGVACiBAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVA Li8kKERFUERJUikvY3B1LWlhNjQuUGxvQGFtX19xdW90ZUAKIEBBTURFUF9UUlVFQEBhbV9faW5j bHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS9jcHUtaWFtY3UuUGxvQGFtX19xdW90ZUAKK0BB TURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS9jcHUtaW50ZWxn dC5QbG9AYW1fX3F1b3RlQAogQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4v JChERVBESVIpL2NwdS1pcDJrLlBsb0BhbV9fcXVvdGVACiBAQU1ERVBfVFJVRUBAYW1fX2luY2x1 ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvY3B1LWlxMjAwMC5QbG9AYW1fX3F1b3RlQAogQEFN REVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1fX3F1b3RlQC4vJChERVBESVIpL2NwdS1rdnguUGxv QGFtX19xdW90ZUAKZGlmZiAtLWdpdCBhL2JmZC9hcmNodXJlcy5jIGIvYmZkL2FyY2h1cmVzLmMK aW5kZXggNWMxMDRhZjZlZjM1YWU3YmYwMjA5YzU1OTdmMTJiNDRmZGY2YmRhNC4uODc3OGE4YzNh MDJkNDkyMDBlZjU2YjY1ZmI0NjZjYjRkODQzZmI1ZSAxMDA2NDQKLS0tIGEvYmZkL2FyY2h1cmVz LmMKKysrIGIvYmZkL2FyY2h1cmVzLmMKQEAgLTM5OSw2ICszOTksOCBAQCBERVNDUklQVElPTgog LiAgYmZkX2FyY2hfaWE2NCwgICAgICB7KiBIUC9JbnRlbCBpYTY0LiAgKn0KIC4jZGVmaW5lIGJm ZF9tYWNoX2lhNjRfZWxmNjQJNjQKIC4jZGVmaW5lIGJmZF9tYWNoX2lhNjRfZWxmMzIJMzIKKy4g IGJmZF9hcmNoX2ludGVsZ3QsICAgeyogSW50ZWwoUikgR3JhcGhpY3MgVGVjaG5vbG9neS4gICp9 CisuI2RlZmluZSBiZmRfbWFjaF9pbnRlbGd0CTkKIC4gIGJmZF9hcmNoX2lwMmssICAgICAgeyog VWJpY29tIElQMksgbWljcm9jb250cm9sbGVycy4gKn0KIC4jZGVmaW5lIGJmZF9tYWNoX2lwMjAy MgkxCiAuI2RlZmluZSBiZmRfbWFjaF9pcDIwMjJleHQJMgpAQCAtNjUwLDYgKzY1Miw3IEBAIGV4 dGVybiBjb25zdCBiZmRfYXJjaF9pbmZvX3R5cGUgYmZkX2hwcGFfYXJjaDsKIGV4dGVybiBjb25z dCBiZmRfYXJjaF9pbmZvX3R5cGUgYmZkX2kzODZfYXJjaDsKIGV4dGVybiBjb25zdCBiZmRfYXJj aF9pbmZvX3R5cGUgYmZkX2lhbWN1X2FyY2g7CiBleHRlcm4gY29uc3QgYmZkX2FyY2hfaW5mb190 eXBlIGJmZF9pYTY0X2FyY2g7CitleHRlcm4gY29uc3QgYmZkX2FyY2hfaW5mb190eXBlIGJmZF9p bnRlbGd0X2FyY2g7CiBleHRlcm4gY29uc3QgYmZkX2FyY2hfaW5mb190eXBlIGJmZF9pcDJrX2Fy Y2g7CiBleHRlcm4gY29uc3QgYmZkX2FyY2hfaW5mb190eXBlIGJmZF9pcTIwMDBfYXJjaDsKIGV4 dGVybiBjb25zdCBiZmRfYXJjaF9pbmZvX3R5cGUgYmZkX2t2eF9hcmNoOwpAQCAtNzM4LDYgKzc0 MSw3IEBAIHN0YXRpYyBjb25zdCBiZmRfYXJjaF9pbmZvX3R5cGUgKiBjb25zdCBiZmRfYXJjaHVy ZXNfbGlzdFtdID0KICAgICAmYmZkX2kzODZfYXJjaCwKICAgICAmYmZkX2lhbWN1X2FyY2gsCiAg ICAgJmJmZF9pYTY0X2FyY2gsCisgICAgJmJmZF9pbnRlbGd0X2FyY2gsCiAgICAgJmJmZF9pcDJr X2FyY2gsCiAgICAgJmJmZF9pcTIwMDBfYXJjaCwKICAgICAmYmZkX2t2eF9hcmNoLApkaWZmIC0t Z2l0IGEvYmZkL2JmZC1pbjIuaCBiL2JmZC9iZmQtaW4yLmgKaW5kZXggMDkyYTY1ODdjMWM0NDNl MGRlMjllMGVhNzEyNDM2ZTA1MmQ0ZWU5Mi4uNDhiZDhhZTUyMWMxYmM5MjIwZjIyMTFhYzQxNTNm ZmNjNTA1ZGM0YSAxMDA2NDQKLS0tIGEvYmZkL2JmZC1pbjIuaAorKysgYi9iZmQvYmZkLWluMi5o CkBAIC0xNjY1LDYgKzE2NjUsOCBAQCBlbnVtIGJmZF9hcmNoaXRlY3R1cmUKICAgYmZkX2FyY2hf aWE2NCwgICAgICAvKiBIUC9JbnRlbCBpYTY0LiAgKi8KICNkZWZpbmUgYmZkX21hY2hfaWE2NF9l bGY2NCAgICA2NAogI2RlZmluZSBiZmRfbWFjaF9pYTY0X2VsZjMyICAgIDMyCisgIGJmZF9hcmNo X2ludGVsZ3QsICAgLyogSW50ZWwoUikgR3JhcGhpY3MgVGVjaG5vbG9neS4gICovCisjZGVmaW5l IGJmZF9tYWNoX2ludGVsZ3QgICAgICAgOQogICBiZmRfYXJjaF9pcDJrLCAgICAgIC8qIFViaWNv bSBJUDJLIG1pY3JvY29udHJvbGxlcnMuICovCiAjZGVmaW5lIGJmZF9tYWNoX2lwMjAyMiAgICAg ICAgMQogI2RlZmluZSBiZmRfbWFjaF9pcDIwMjJleHQgICAgIDIKQEAgLTc0NjEsNiArNzQ2Mywx MCBAQCBlbnVtIGJmZF9yZWxvY19jb2RlX3JlYWwKICAgQkZEX1JFTE9DX0xBUkNIX1RMU19MRF9Q Q1JFTDIwX1MyLAogICBCRkRfUkVMT0NfTEFSQ0hfVExTX0dEX1BDUkVMMjBfUzIsCiAgIEJGRF9S RUxPQ19MQVJDSF9UTFNfREVTQ19QQ1JFTDIwX1MyLAorCisgIC8qIEludGVsR1QgcmVsb2NhdGlv bnMuICAqLworICBCRkRfUkVMT0NfWkVfU1lNX0FERFIzMl9ISSwKKyAgQkZEX1JFTE9DX1pFX1BF Ul9USFJFQURfUEFZTE9BRF9PRkZTRVRfMzIsCiAgIEJGRF9SRUxPQ19VTlVTRUQKIH07CiB0eXBl ZGVmIGVudW0gYmZkX3JlbG9jX2NvZGVfcmVhbCBiZmRfcmVsb2NfY29kZV9yZWFsX3R5cGU7CmRp ZmYgLS1naXQgYS9iZmQvY29uZmlnLmJmZCBiL2JmZC9jb25maWcuYmZkCm9sZCBtb2RlIDEwMDY0 NApuZXcgbW9kZSAxMDA3NTUKaW5kZXggZjg0ODJkNzE3ZTE5Mjg4MGM5MjVhZDI1MmFlMTc2YmZi NzA2YmQ5NS4uNmEyZDY5NDVmNTdkMmZlZTY0ODc2ODQyNzBlOTg4NmIyZDQwZDIzYQotLS0gYS9i ZmQvY29uZmlnLmJmZAorKysgYi9iZmQvY29uZmlnLmJmZApAQCAtMTk3LDYgKzE5Nyw3IEBAIGZp ZG8qKQkJIHRhcmdfYXJjaHM9YmZkX202OGtfYXJjaCA7OwogaHBwYSopCQkgdGFyZ19hcmNocz1i ZmRfaHBwYV9hcmNoIDs7CiBpWzMtN104NikJIHRhcmdfYXJjaHM9YmZkX2kzODZfYXJjaCA7Owog aWExNikJCSB0YXJnX2FyY2hzPWJmZF9pMzg2X2FyY2ggOzsKK2ludGVsZ3QpCSB0YXJnX2FyY2hz PWJmZF9pbnRlbGd0X2FyY2ggOzsKIGt2eCkJCSB0YXJnX2FyY2hzPWJmZF9rdnhfYXJjaCA7Owog bG9vbmdhcmNoKikJIHRhcmdfYXJjaHM9YmZkX2xvb25nYXJjaF9hcmNoIDs7CiBtNjgxMSp8bTY4 aGMxMSopIHRhcmdfYXJjaHM9ImJmZF9tNjhoYzExX2FyY2ggYmZkX202OGhjMTJfYXJjaCBiZmRf bTlzMTJ4X2FyY2ggYmZkX205czEyeGdfYXJjaCIgOzsKQEAgLTcxMiwxMiArNzEzLDEyIEBAIGNh c2UgIiR7dGFyZ30iIGluCiAgICAgOzsKICAgeDg2XzY0LSotbGludXgtKikKICAgICB0YXJnX2Rl ZnZlYz14ODZfNjRfZWxmNjRfdmVjCi0gICAgdGFyZ19zZWx2ZWNzPSJpMzg2X2VsZjMyX3ZlYyBp YW1jdV9lbGYzMl92ZWMgeDg2XzY0X2VsZjMyX3ZlYyBpMzg2X3BlaV92ZWMgeDg2XzY0X3BlX3Zl YyB4ODZfNjRfcGVpX3ZlYyIKKyAgICB0YXJnX3NlbHZlY3M9ImkzODZfZWxmMzJfdmVjIGlhbWN1 X2VsZjMyX3ZlYyB4ODZfNjRfZWxmMzJfdmVjIGkzODZfcGVpX3ZlYyB4ODZfNjRfcGVfdmVjIHg4 Nl82NF9wZWlfdmVjIGludGVsZ3RfZWxmNjRfdmVjIgogICAgIHdhbnQ2ND10cnVlCiAgICAgOzsK ICAgeDg2XzY0LSotbWluZ3cqIHwgeDg2XzY0LSotcGUgfCB4ODZfNjQtKi1wZXAgfCB4ODZfNjQt Ki1jeWd3aW4pCiAgICAgdGFyZ19kZWZ2ZWM9eDg2XzY0X3BlX3ZlYwotICAgIHRhcmdfc2VsdmVj cz0ieDg2XzY0X3BlX3ZlYyB4ODZfNjRfcGVpX3ZlYyB4ODZfNjRfcGVfYmlnX3ZlYyB4ODZfNjRf ZWxmNjRfdmVjIGkzODZfcGVfdmVjIGkzODZfcGVpX3ZlYyBpMzg2X2VsZjMyX3ZlYyBpYW1jdV9l bGYzMl92ZWMgcGRiX3ZlYyIKKyAgICB0YXJnX3NlbHZlY3M9Ing4Nl82NF9wZV92ZWMgeDg2XzY0 X3BlaV92ZWMgeDg2XzY0X3BlX2JpZ192ZWMgeDg2XzY0X2VsZjY0X3ZlYyBpMzg2X3BlX3ZlYyBp Mzg2X3BlaV92ZWMgaTM4Nl9lbGYzMl92ZWMgaWFtY3VfZWxmMzJfdmVjIHBkYl92ZWMgaW50ZWxn dF9lbGY2NF92ZWMgaW50ZWxndF9sZWdhY3lfZWxmNjRfdmVjIgogICAgIHdhbnQ2ND10cnVlCiAg ICAgdGFyZ191bmRlcnNjb3JlPW5vCiAgICAgOzsKQEAgLTc4OCw3ICs3ODksMTMgQEAgY2FzZSAi JHt0YXJnfSIgaW4KICAgICB0YXJnX2RlZnZlYz1pMzg2X2VsZjMyX3ZlYwogICAgIHRhcmdfc2Vs dmVjcz0iaTM4Nl9tc2Rvc192ZWMgaTM4Nl9hb3V0X3ZlYyIKICAgICA7OwotCisjaWZkZWYgQkZE NjQKKyAgaW50ZWxndC0qLWVsZikKKyAgICB0YXJnX2RlZnZlYz1pbnRlbGd0X2VsZjY0X3ZlYwor ICAgIHRhcmdfc2VsdmVjcz0iaW50ZWxndF9lbGY2NF92ZWMiCisgICAgd2FudDY0PXRydWUKKyAg ICA7OworI2VuZGlmCiAgIGlwMmstKi1lbGYpCiAgICAgdGFyZ19kZWZ2ZWM9aXAya19lbGYzMl92 ZWMKICAgICB0YXJnX3VuZGVyc2NvcmU9eWVzCmRpZmYgLS1naXQgYS9iZmQvY29uZmlndXJlIGIv YmZkL2NvbmZpZ3VyZQppbmRleCAyZGI5Zjc2YjllYjM5ZWI3ZTg2NjE5YjExYzlkYWZhMjI0ZGVk YTVlLi4xNDZjMjRlMzY2MDU1ODg1NmIxNjZkOTI2ZTE1MmE5YzUzNWVjNTA2IDEwMDc1NQotLS0g YS9iZmQvY29uZmlndXJlCisrKyBiL2JmZC9jb25maWd1cmUKQEAgLTE1OTA4LDYgKzE1OTA4LDcg QEAgZG8KICAgICBpYTY0X2VsZjY0X2hwdXhfYmVfdmVjKQkgdGI9IiR0YiBlbGY2NC1pYTY0Lmxv IGVsZnh4LWlhNjQubG8gZWxmNjQubG8gJGVsZiI7IHRhcmdldF9zaXplPTY0IDs7CiAgICAgaWE2 NF9lbGY2NF92bXNfdmVjKQkJIHRiPSIkdGIgZWxmNjQtaWE2NC12bXMubG8gZWxmNjQtaWE2NC5s byBlbGZ4eC1pYTY0LmxvIGVsZjY0LmxvIHZtcy1saWIubG8gdm1zLW1pc2MubG8gJGVsZiI7IHRh cmdldF9zaXplPTY0IDs7CiAgICAgaWE2NF9wZWlfdmVjKQkJIHRiPSIkdGIgcGVpLWlhNjQubG8g cGVwaWdlbi5sbyAkY29mZiI7IHRhcmdldF9zaXplPTY0IDs7CisgICAgaW50ZWxndF9lbGY2NF92 ZWMpCQkgdGI9IiR0YiBlbGY2NC1pbnRlbGd0LmxvIGVsZjY0LmxvICRlbGYiOyB0YXJnZXRfc2l6 ZT02NCA7OwogICAgIGlwMmtfZWxmMzJfdmVjKQkJIHRiPSIkdGIgZWxmMzItaXAyay5sbyBlbGYz Mi5sbyAkZWxmIiA7OwogICAgIGlxMjAwMF9lbGYzMl92ZWMpCQkgdGI9IiR0YiBlbGYzMi1pcTIw MDAubG8gZWxmMzIubG8gJGVsZiIgOzsKICAgICBrdnhfZWxmMzJfdmVjKQkJIHRiPSIkdGIgZWxm MzIta3Z4LmxvIGVsZnh4LWt2eC5sbyBlbGYzMi5sbyAkZWxmICRpcGEiIDs7CmRpZmYgLS1naXQg YS9iZmQvY29uZmlndXJlLmFjIGIvYmZkL2NvbmZpZ3VyZS5hYwppbmRleCA0NjVhNzQ2M2Q0ODE4 ZTA0NWEzYzMzMTA1ZDZlMWMxNmU1NTZiOTBiLi44MTY1NDdhOGYyNzljZTM3Nzc0YzA4ZGFmMzE3 ZmU1M2NiOTA5YmFkIDEwMDY0NAotLS0gYS9iZmQvY29uZmlndXJlLmFjCisrKyBiL2JmZC9jb25m aWd1cmUuYWMKQEAgLTQ5NCw2ICs0OTQsNyBAQCBkbwogICAgIGlhNjRfZWxmNjRfaHB1eF9iZV92 ZWMpCSB0Yj0iJHRiIGVsZjY0LWlhNjQubG8gZWxmeHgtaWE2NC5sbyBlbGY2NC5sbyAkZWxmIjsg dGFyZ2V0X3NpemU9NjQgOzsKICAgICBpYTY0X2VsZjY0X3Ztc192ZWMpCQkgdGI9IiR0YiBlbGY2 NC1pYTY0LXZtcy5sbyBlbGY2NC1pYTY0LmxvIGVsZnh4LWlhNjQubG8gZWxmNjQubG8gdm1zLWxp Yi5sbyB2bXMtbWlzYy5sbyAkZWxmIjsgdGFyZ2V0X3NpemU9NjQgOzsKICAgICBpYTY0X3BlaV92 ZWMpCQkgdGI9IiR0YiBwZWktaWE2NC5sbyBwZXBpZ2VuLmxvICRjb2ZmIjsgdGFyZ2V0X3NpemU9 NjQgOzsKKyAgICBpbnRlbGd0X2VsZjY0X3ZlYykJCSB0Yj0iJHRiIGVsZjY0LWludGVsZ3QubG8g ZWxmNjQubG8gJGVsZiI7IHRhcmdldF9zaXplPTY0IDs7CiAgICAgaXAya19lbGYzMl92ZWMpCQkg dGI9IiR0YiBlbGYzMi1pcDJrLmxvIGVsZjMyLmxvICRlbGYiIDs7CiAgICAgaXEyMDAwX2VsZjMy X3ZlYykJCSB0Yj0iJHRiIGVsZjMyLWlxMjAwMC5sbyBlbGYzMi5sbyAkZWxmIiA7OwogICAgIGt2 eF9lbGYzMl92ZWMpCQkgdGI9IiR0YiBlbGYzMi1rdngubG8gZWxmeHgta3Z4LmxvIGVsZjMyLmxv ICRlbGYgJGlwYSIgOzsKZGlmZiAtLWdpdCBhL2JmZC9jcHUtaW50ZWxndC5jIGIvYmZkL2NwdS1p bnRlbGd0LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMC4uZGQ3OGU3MjYwZTdkODgxNGE3ZmE0ZjVhMGZiM2Y0NTMwMDYz NzFhNgotLS0gL2Rldi9udWxsCisrKyBiL2JmZC9jcHUtaW50ZWxndC5jCkBAIC0wLDAgKzEsNTcg QEAKKy8qIEJGRCBzdXBwb3J0IGZvciB0aGUgSW50ZWwoUikgR3JhcGhpY3MgVGVjaG5vbG9neSBh cmNoaXRlY3R1cmUuCisgICBDb3B5cmlnaHQgKEMpIDIwMTktMjAyNCBGcmVlIFNvZnR3YXJlIEZv dW5kYXRpb24sIEluYy4KKworICAgVGhpcyBmaWxlIGlzIHBhcnQgb2YgQkZELCB0aGUgQmluYXJ5 IEZpbGUgRGVzY3JpcHRvciBsaWJyYXJ5LgorCisgICBUaGlzIHByb2dyYW0gaXMgZnJlZSBzb2Z0 d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeQorICAgaXQgdW5kZXIg dGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQg YnkKKyAgIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDMgb2Yg dGhlIExpY2Vuc2UsIG9yCisgICAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgor CisgICBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxs IGJlIHVzZWZ1bCwKKyAgIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRo ZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisgICBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1Ig QSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisgICBHTlUgR2VuZXJhbCBQdWJsaWMgTGlj ZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorCisgICBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBj b3B5IG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorICAgYWxvbmcgd2l0aCB0aGlz IHByb2dyYW07IGlmIG5vdCwgd3JpdGUgdG8gdGhlIEZyZWUgU29mdHdhcmUKKyAgIEZvdW5kYXRp b24sIEluYy4sIDUxIEZyYW5rbGluIFN0cmVldCAtIEZpZnRoIEZsb29yLCBCb3N0b24sCisgICBN QSAwMjExMC0xMzAxLCBVU0EuICAqLworCisjaW5jbHVkZSAic3lzZGVwLmgiCisjaW5jbHVkZSAi YmZkLmgiCisjaW5jbHVkZSAibGliYmZkLmgiCisKK3N0YXRpYyB2b2lkICoKK2JmZF9hcmNoX2lu dGVsZ3RfZmlsbCAoYmZkX3NpemVfdHlwZSBjb3VudCwKKwkJICAgICAgIGJvb2wgaXNfYmlnZW5k aWFuIEFUVFJJQlVURV9VTlVTRUQsCisJCSAgICAgICBib29sIGNvZGUpCit7CisgIHZvaWQgKmZp bGwgPSBiZmRfbWFsbG9jIChjb3VudCk7CisKKyAgaWYgKGZpbGwgIT0gTlVMTCkKKyAgICB7Cisg ICAgICAvKiBub3Agb24gZ2VuIGlzIDB4N2UuICAqLworICAgICAgbWVtc2V0IChmaWxsLCBjb2Rl ID8gMHg3ZSA6IDAsIGNvdW50KTsKKyAgICB9CisKKyAgcmV0dXJuIGZpbGw7Cit9CisKK2NvbnN0 IGJmZF9hcmNoX2luZm9fdHlwZSBiZmRfaW50ZWxndF9hcmNoID0KKyAgeworICAgIDY0LCAvKiA2 NCBiaXRzIGluIGEgd29yZC4gICovCisgICAgNjQsIC8qIDY0IGJpdHMgaW4gYW4gYWRkcmVzcy4g ICovCisgICAgOCwgIC8qIDggYml0cyBpbiBhIGJ5dGUuICAqLworICAgIGJmZF9hcmNoX2ludGVs Z3QsIC8qIEFyY2hpdGVjdHVyZS4gICovCisgICAgYmZkX21hY2hfaW50ZWxndCwgLyogTWFjaGlu ZSBudW1iZXIuICAqLworICAgICJpbnRlbGd0IiwgLyogQXJjaGl0ZWN0dXJlIG5hbWUuICAqLwor ICAgICJpbnRlbGd0IiwgLyogUHJpbnRhYmxlIG5hbWUuICAqLworICAgIDMsIC8qIFNlY3Rpb24g YWxpZ25tZW50IHBvd2VyLiAgKi8KKyAgICB0cnVlLCAvKiBEZWZhdWx0IG1hY2hpbmUgZm9yIHRo aXMgYXJjaGl0ZWN0dXJlLiAgKi8KKyAgICBiZmRfZGVmYXVsdF9jb21wYXRpYmxlLCAvKiBDaGVj ayBmb3IgY29tcGF0aWJpbGl0eS4gICovCisgICAgYmZkX2RlZmF1bHRfc2NhbiwgLyogQ2hlY2sg Zm9yIGFuIGFyY2ggYW5kIG1hY2ggaGl0LiAgKi8KKyAgICBiZmRfYXJjaF9pbnRlbGd0X2ZpbGws IC8qIEFsbG9jYXRlIGFuZCBmaWxsIGJmZC4gICovCisgICAgTlVMTCwgLyogUG9pbnRlciB0byBu ZXh0LiAgKi8KKyAgICAwIC8qIE1heGltdW0gb2Zmc2V0IG9mIGEgcmVsb2MgZnJvbSB0aGUgc3Rh cnQgb2YgYW4gaW5zbi4gICovCisgIH07CmRpZmYgLS1naXQgYS9iZmQvZWxmNjQtaW50ZWxndC5j IGIvYmZkL2VsZjY0LWludGVsZ3QuYwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41MGNjYmFjMDUwNjc5MzNjNTQ1ZDMw MjYzMmY4ODEyMzY0ZGYwNTZhCi0tLSAvZGV2L251bGwKKysrIGIvYmZkL2VsZjY0LWludGVsZ3Qu YwpAQCAtMCwwICsxLDE5NSBAQAorLyogSW50ZWwoUikgR3JhcGhpY3MgVGVjaG5vbG9neS1zcGVj aWZpYyBzdXBwb3J0IGZvciBFTEYKKyAgIENvcHlyaWdodCAoQykgMjAyMi0yMDI0IEZyZWUgU29m dHdhcmUgRm91bmRhdGlvbiwgSW5jLgorCisgICBUaGlzIGZpbGUgaXMgcGFydCBvZiBCRkQsIHRo ZSBCaW5hcnkgRmlsZSBEZXNjcmlwdG9yIGxpYnJhcnkuCisKKyAgIFRoaXMgcHJvZ3JhbSBpcyBm cmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgICBp dCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1 Ymxpc2hlZCBieQorICAgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNp b24gMyBvZiB0aGUgTGljZW5zZSwgb3IKKyAgIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZl cnNpb24uCisKKyAgIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0 IGl0IHdpbGwgYmUgdXNlZnVsLAorICAgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0 IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKKyAgIE1FUkNIQU5UQUJJTElUWSBvciBGSVRO RVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAgIEdOVSBHZW5lcmFsIFB1 YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisKKyAgIFlvdSBzaG91bGQgaGF2ZSByZWNl aXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgICBhbG9uZyB3 aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQorICAg Rm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0IC0gRmlmdGggRmxvb3IsIEJvc3Rv biwKKyAgIE1BIDAyMTEwLTEzMDEsIFVTQS4gICovCisKKyNpbmNsdWRlICJzeXNkZXAuaCIKKyNp bmNsdWRlICJiZmQuaCIKKyNpbmNsdWRlICJsaWJiZmQuaCIKKyNpbmNsdWRlICJlbGYtYmZkLmgi CisKKyNpbmNsdWRlICJlbGYvY29tbW9uLmgiCisjaW5jbHVkZSAiZWxmL2ludGVsZ3QuaCIKKwor I2RlZmluZSBNSU5VU19PTkUgKH4gKGJmZF92bWEpIDApCisKKyNkZWZpbmUgSU5URUxHVF9BUlJB WV9TSVpFKGEpIChzaXplb2YgKGEpIC8gc2l6ZW9mICgoYSlbMF0pKQorCitzdGF0aWMgYm9vbAor ZWxmNjRfaW50ZWxndF9lbGZfb2JqZWN0X3AgKGJmZCAqYWJmZCkKK3sKKyAgcmV0dXJuIGJmZF9k ZWZhdWx0X3NldF9hcmNoX21hY2ggKGFiZmQsIGJmZF9hcmNoX2ludGVsZ3QsIGJmZF9tYWNoX2lu dGVsZ3QpOworfQorCisvKiBNYXAgQkZEIHJlbG9jcyB0byB0aGUgSW50ZWxHVCByZWxvY3MuICAq Lworc3RydWN0IGVsZl9yZWxvY19tYXAKK3sKKyAgYmZkX3JlbG9jX2NvZGVfcmVhbF90eXBlIGJm ZF9yZWxvY192YWw7CisgIHVuc2lnbmVkIGNoYXIgZWxmX3JlbG9jX3ZhbDsKK307CisKK3N0YXRp YyBjb25zdCBzdHJ1Y3QgZWxmX3JlbG9jX21hcCBlbGY2NF9pbnRlbGd0X3JlbG9jX21hcFtdID0K K3sKKyAgeyBCRkRfUkVMT0NfNjQsIFJfWkVfU1lNX0FERFIgfSwKKyAgeyBCRkRfUkVMT0NfMzIs IFJfWkVfU1lNX0FERFJfMzIgfSwKKyAgeyBCRkRfUkVMT0NfWkVfU1lNX0FERFIzMl9ISSwgUl9a RV9TWU1fQUREUjMyX0hJIH0sCisgIHsgQkZEX1JFTE9DX1pFX1BFUl9USFJFQURfUEFZTE9BRF9P RkZTRVRfMzIsCisgICAgUl9QRVJfVEhSRUFEX1BBWUxPQURfT0ZGU0VUXzMyIH0sCit9OworCitz dGF0aWMgcmVsb2NfaG93dG9fdHlwZSBlbGY2NF9pbnRlbGd0X2hvd3RvX3RhYmxlW10gPQorewor ICBIT1dUTyAoUl9aRV9OT05FLAkJLyogdHlwZSAqLworCSAwLAkJCS8qIHJpZ2h0c2hpZnQgKi8K KwkgMCwJCQkvKiBzaXplICgwID0gYnl0ZSwgMSA9IHNob3J0LCAyID0gbG9uZykgKi8KKwkgMCwJ CQkvKiBiaXRzaXplICovCisJIGZhbHNlLAkJCS8qIHBjX3JlbGF0aXZlICovCisJIDAsCQkJLyog Yml0cG9zICovCisJIGNvbXBsYWluX292ZXJmbG93X2RvbnQsLyogY29tcGxhaW5fb25fb3ZlcmZs b3cgKi8KKwkgTlVMTCwJCQkvKiBzcGVjaWFsX2Z1bmN0aW9uICovCisJICJSX1pFX05PTkUiLAkJ LyogbmFtZSAqLworCSBmYWxzZSwJCQkvKiBwYXJ0aWFsX2lucGxhY2UgKi8KKwkgMCwJCQkvKiBz cmNfbWFzayAqLworCSAwLAkJCS8qIGRzdF9tYXNrICovCisJIGZhbHNlKSwJCS8qIHBjcmVsX29m ZnNldCAqLworICBIT1dUTyAoUl9aRV9TWU1fQUREUiwJCS8qIHR5cGUgKi8KKwkgMCwJCQkvKiBy aWdodHNoaWZ0ICovCisJIDIsCQkJLyogc2l6ZSAoMCA9IGJ5dGUsIDEgPSBzaG9ydCwgMiA9IGxv bmcpICovCisJIDY0LAkJCS8qIGJpdHNpemUgKi8KKwkgZmFsc2UsCQkJLyogcGNfcmVsYXRpdmUg Ki8KKwkgMCwJCQkvKiBiaXRwb3MgKi8KKwkgY29tcGxhaW5fb3ZlcmZsb3dfdW5zaWduZWQsCS8q IGNvbXBsYWluX29uX292ZXJmbG93ICovCisJIGJmZF9lbGZfZ2VuZXJpY19yZWxvYywgLyogc3Bl Y2lhbF9mdW5jdGlvbiAqLworCSAiUl9aRV9TWU1fQUREUiIsCS8qIG5hbWUgKi8KKwkgZmFsc2Us CQkJLyogcGFydGlhbF9pbnBsYWNlICovCisJIE1JTlVTX09ORSwJCS8qIHNyY19tYXNrICovCisJ IE1JTlVTX09ORSwJCS8qIGRzdF9tYXNrICovCisJIGZhbHNlKSwJCS8qIHBjcmVsX29mZnNldCAq LworICBIT1dUTyAoUl9aRV9TWU1fQUREUl8zMiwJLyogdHlwZSAqLworCSAwLAkJCS8qIHJpZ2h0 c2hpZnQgKi8KKwkgMiwJCQkvKiBzaXplICgwID0gYnl0ZSwgMSA9IHNob3J0LCAyID0gbG9uZykg Ki8KKwkgMzIsCQkJLyogYml0c2l6ZSAqLworCSBmYWxzZSwJCQkvKiBwY19yZWxhdGl2ZSAqLwor CSAwLAkJCS8qIGJpdHBvcyAqLworCSBjb21wbGFpbl9vdmVyZmxvd191bnNpZ25lZCwJLyogY29t cGxhaW5fb25fb3ZlcmZsb3cgKi8KKwkgYmZkX2VsZl9nZW5lcmljX3JlbG9jLCAvKiBzcGVjaWFs X2Z1bmN0aW9uICovCisJICJSX1pFX1NZTV9BRERSXzMyIiwJLyogbmFtZSAqLworCSBmYWxzZSwJ CQkvKiBwYXJ0aWFsX2lucGxhY2UgKi8KKwkgTUlOVVNfT05FLAkJLyogc3JjX21hc2sgKi8KKwkg TUlOVVNfT05FLAkJLyogZHN0X21hc2sgKi8KKwkgZmFsc2UpLAkJLyogcGNyZWxfb2Zmc2V0ICov CisgIEhPV1RPIChSX1pFX1NZTV9BRERSMzJfSEksCS8qIHR5cGUgKi8KKwkgMzIsCQkJLyogcmln aHRzaGlmdCAqLworCSAyLAkJCS8qIHNpemUgKDAgPSBieXRlLCAxID0gc2hvcnQsIDIgPSBsb25n KSAqLworCSAzMiwJCQkvKiBiaXRzaXplICovCisJIGZhbHNlLAkJCS8qIHBjX3JlbGF0aXZlICov CisJIDAsCQkJLyogYml0cG9zICovCisJIGNvbXBsYWluX292ZXJmbG93X3Vuc2lnbmVkLAkvKiBj b21wbGFpbl9vbl9vdmVyZmxvdyAqLworCSBiZmRfZWxmX2dlbmVyaWNfcmVsb2MsIC8qIHNwZWNp YWxfZnVuY3Rpb24gKi8KKwkgIlJfWkVfU1lNX0FERFIzMl9ISSIsCS8qIG5hbWUgKi8KKwkgZmFs c2UsCQkJLyogcGFydGlhbF9pbnBsYWNlICovCisJIE1JTlVTX09ORSwJCS8qIHNyY19tYXNrICov CisJIE1JTlVTX09ORSwJCS8qIGRzdF9tYXNrICovCisJIGZhbHNlKSwJCS8qIHBjcmVsX29mZnNl dCAqLworICBIT1dUTyAoUl9QRVJfVEhSRUFEX1BBWUxPQURfT0ZGU0VUXzMyLAkvKiB0eXBlICov CisJIDAsCQkJLyogcmlnaHRzaGlmdCAqLworCSAyLAkJCS8qIHNpemUgKDAgPSBieXRlLCAxID0g c2hvcnQsIDIgPSBsb25nKSAqLworCSAzMiwJCQkvKiBiaXRzaXplICovCisJIGZhbHNlLAkJCS8q IHBjX3JlbGF0aXZlICovCisJIDAsCQkJLyogYml0cG9zICovCisJIGNvbXBsYWluX292ZXJmbG93 X3Vuc2lnbmVkLAkvKiBjb21wbGFpbl9vbl9vdmVyZmxvdyAqLworCSBOVUxMLAkJCS8qIHNwZWNp YWxfZnVuY3Rpb24gKi8KKwkgIlJfUEVSX1RIUkVBRF9QQVlMT0FEX09GRlNFVF8zMiIsCS8qIG5h bWUgKi8KKwkgZmFsc2UsCQkJLyogcGFydGlhbF9pbnBsYWNlICovCisJIE1JTlVTX09ORSwJCS8q IHNyY19tYXNrICovCisJIE1JTlVTX09ORSwJCS8qIGRzdF9tYXNrICovCisJIGZhbHNlKSwJCS8q IHBjcmVsX29mZnNldCAqLworfTsKKworLyogR2l2ZW4gYSBCRkQgcmVsb2MgdHlwZSwgcmV0dXJu IGEgSE9XVE8gc3RydWN0dXJlLiAgKi8KK3N0YXRpYyByZWxvY19ob3d0b190eXBlICoKK2VsZjY0 X2ludGVsZ3RfcmVsb2NfdHlwZV9sb29rdXAgKGJmZCAqYWJmZCBBVFRSSUJVVEVfVU5VU0VELAor CQkJCSBiZmRfcmVsb2NfY29kZV9yZWFsX3R5cGUgY29kZSkKK3sKKyAgdW5zaWduZWQgaW50IGk7 CisKKyAgZm9yIChpID0gMDsgaSA8IElOVEVMR1RfQVJSQVlfU0laRSAoZWxmNjRfaW50ZWxndF9y ZWxvY19tYXApOyBpKyspCisgIHsKKyAgICBzdHJ1Y3QgZWxmX3JlbG9jX21hcCByZWxvY19tYXAg ID0gZWxmNjRfaW50ZWxndF9yZWxvY19tYXBbaV07CisKKyAgICBpZiAocmVsb2NfbWFwLmJmZF9y ZWxvY192YWwgPT0gY29kZSkKKyAgICAgIHJldHVybiAmZWxmNjRfaW50ZWxndF9ob3d0b190YWJs ZVtyZWxvY19tYXAuZWxmX3JlbG9jX3ZhbF07CisgIH0KKworICByZXR1cm4gTlVMTDsKK30KKwor LyogR2l2ZW4gcmVsb2NhdGlvbiBOQU1FLCBmaW5kIGl0cyBIT1dUTyBzdHJ1Y3R1cmUuICAqLwor c3RhdGljIHJlbG9jX2hvd3RvX3R5cGUgKgorZWxmNjRfaW50ZWxndF9yZWxvY19uYW1lX2xvb2t1 cCAoYmZkICphYmZkIEFUVFJJQlVURV9VTlVTRUQsCisJCQkJIGNvbnN0IGNoYXIgKnJfbmFtZSkK K3sKKyAgdW5zaWduZWQgaW50IGk7CisKKyAgZm9yIChpID0gMDsgaSA8IElOVEVMR1RfQVJSQVlf U0laRSAoZWxmNjRfaW50ZWxndF9ob3d0b190YWJsZSk7IGkrKykKKyAgICBpZiAoZWxmNjRfaW50 ZWxndF9ob3d0b190YWJsZVtpXS5uYW1lICE9IE5VTEwKKwkmJiBzdHJjYXNlY21wIChlbGY2NF9p bnRlbGd0X2hvd3RvX3RhYmxlW2ldLm5hbWUsIHJfbmFtZSkgPT0gMCkKKyAgICAgIHJldHVybiAm ZWxmNjRfaW50ZWxndF9ob3d0b190YWJsZVtpXTsKKworICByZXR1cm4gTlVMTDsKK30KKworLyog U2V0cyBIT1dUTyBvZiB0aGUgQkZEX1JFTE9DIHRvIHRoZSBlbnRyeSBvZiBob3d0byB0YWJsZSBi YXNlZAorICAgb24gdGhlIHR5cGUgb2YgRUxGX1JFTE9DLiAgKi8KK3N0YXRpYyBib29sCitlbGY2 NF9pbmZvX3RvX2hvd3RvIChiZmQgKmFiZmQsIGFyZWxlbnQgKmJmZF9yZWxvYywKKwkJICAgICBF bGZfSW50ZXJuYWxfUmVsYSAqZWxmX3JlbG9jKQoreworICB1bnNpZ25lZCBpbnQgcl90eXBlID0g RUxGMzJfUl9UWVBFIChlbGZfcmVsb2MtPnJfaW5mbyk7CisgIGJmZF9yZWxvYy0+aG93dG8gPSAm ZWxmNjRfaW50ZWxndF9ob3d0b190YWJsZVtyX3R5cGVdOworCisgIGlmIChiZmRfcmVsb2MtPmhv d3RvID09IE5VTEwpCisgICAgeworICAgICAgLyogeGdldHRleHQ6Yy1mb3JtYXQgKi8KKyAgICAg IF9iZmRfZXJyb3JfaGFuZGxlciAoXygiJXBCOiB1bnN1cHBvcnRlZCByZWxvY2F0aW9uIHR5cGUg JSN4IiksCisJCQkgIGFiZmQsIHJfdHlwZSk7CisgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQor ICByZXR1cm4gdHJ1ZTsKK30KKworI2RlZmluZSBFTEZfTUFYUEFHRVNJWkUJCSAgICAweDQwMDAw MDAwCisKKyNkZWZpbmUgVEFSR0VUX0xJVFRMRV9TWU0JCSAgICBpbnRlbGd0X2VsZjY0X3ZlYwor I2RlZmluZSBUQVJHRVRfTElUVExFX05BTUUJCSAgICAiZWxmNjQtaW50ZWxndCIKKyNkZWZpbmUg RUxGX0FSQ0gJCQkgICAgYmZkX2FyY2hfaW50ZWxndAorI2RlZmluZSBFTEZfTUFDSElORV9DT0RF CQkgICAgRU1fSU5URUxHVAorCisjZGVmaW5lIEVMRl9PU0FCSQkJCSAgICAwCisKKyNkZWZpbmUg ZWxmNjRfYmVkCQkJICAgIGVsZjY0X2ludGVsZ3RfYmVkCisKKyNkZWZpbmUgZWxmX2JhY2tlbmRf b2JqZWN0X3AJCSAgICBlbGY2NF9pbnRlbGd0X2VsZl9vYmplY3RfcAorCisjZGVmaW5lIGVsZl9i YWNrZW5kX3dhbnRfcGx0X3N5bQkgICAgMAorCisjZGVmaW5lIGJmZF9lbGY2NF9iZmRfcmVsb2Nf dHlwZV9sb29rdXAgICAgIGVsZjY0X2ludGVsZ3RfcmVsb2NfdHlwZV9sb29rdXAKKyNkZWZpbmUg YmZkX2VsZjY0X2JmZF9yZWxvY19uYW1lX2xvb2t1cCAgICAgZWxmNjRfaW50ZWxndF9yZWxvY19u YW1lX2xvb2t1cAorI2RlZmluZSBlbGZfaW5mb190b19ob3d0bwkJICAgIGVsZjY0X2luZm9fdG9f aG93dG8KKworI2luY2x1ZGUgImVsZjY0LXRhcmdldC5oIgpkaWZmIC0tZ2l0IGEvYmZkL2xpYmJm ZC5oIGIvYmZkL2xpYmJmZC5oCmluZGV4IDdkN2FlMWVhZWM5YzdlOWQzOGE1NjE0MjQ5NTY2OWQ2 MzBkYjcxMmIuLjAyYzdiMjNjYTJlMzg4NmQwNjMzMDkwZDc5M2QzY2M1YjEyZjJjMjggMTAwNjQ0 Ci0tLSBhL2JmZC9saWJiZmQuaAorKysgYi9iZmQvbGliYmZkLmgKQEAgLTM2MjYsNiArMzYyNiw4 IEBAIHN0YXRpYyBjb25zdCBjaGFyICpjb25zdCBiZmRfcmVsb2NfY29kZV9yZWFsX25hbWVzW10g PSB7ICJAQHVuaW5pdGlhbGl6ZWRAQCIsCiAgICJCRkRfUkVMT0NfTEFSQ0hfVExTX0xEX1BDUkVM MjBfUzIiLAogICAiQkZEX1JFTE9DX0xBUkNIX1RMU19HRF9QQ1JFTDIwX1MyIiwKICAgIkJGRF9S RUxPQ19MQVJDSF9UTFNfREVTQ19QQ1JFTDIwX1MyIiwKKyAgIkJGRF9SRUxPQ19aRV9TWU1fQURE UjMyX0hJIiwKKyAgIkJGRF9SRUxPQ19aRV9QRVJfVEhSRUFEX1BBWUxPQURfT0ZGU0VUXzMyIiwK ICAiQEBvdmVyZmxvdzogQkZEX1JFTE9DX1VOVVNFREBAIiwKIH07CiAjZW5kaWYKZGlmZiAtLWdp dCBhL2JmZC9yZWxvYy5jIGIvYmZkL3JlbG9jLmMKaW5kZXggZjYwNzc2Mjk5Yzg2M2YyZWQ4OGE5 MjYyYmY5OTBhYTk3OWVlM2NiNS4uNzU5M2Y1OWRkYzhiYTAzZjBiMjFhM2U1M2IwZDZkZWQwYzcx ZmM5YyAxMDA2NDQKLS0tIGEvYmZkL3JlbG9jLmMKKysrIGIvYmZkL3JlbG9jLmMKQEAgLTgyNjAs NiArODI2MCwxMyBAQCBFTlVNWAogRU5VTURPQwogICBMQVJDSCByZWxvY2F0aW9ucy4KIAorRU5V TQorICBCRkRfUkVMT0NfWkVfU1lNX0FERFIzMl9ISQorRU5VTVgKKyAgQkZEX1JFTE9DX1pFX1BF Ul9USFJFQURfUEFZTE9BRF9PRkZTRVRfMzIKK0VOVU1ET0MKKyAgSW50ZWxHVCByZWxvY2F0aW9u cy4KKwogRU5EU0VOVU0KICAgQkZEX1JFTE9DX1VOVVNFRAogCmRpZmYgLS1naXQgYS9iZmQvdGFy Z2V0cy5jIGIvYmZkL3RhcmdldHMuYwppbmRleCAxNzhlOWQzMGEyYjcyZGQxODRjZjJkNzE2ZTc4 ZjkwOTQ0ZTE4OGViLi4zOTk0YTg3NjAxNDg5YmI5MzI0MzEwMDBmNTEwNTQ1NTBmYTIzZjI3IDEw MDY0NAotLS0gYS9iZmQvdGFyZ2V0cy5jCisrKyBiL2JmZC90YXJnZXRzLmMKQEAgLTc2NCw2ICs3 NjQsNyBAQCBleHRlcm4gY29uc3QgYmZkX3RhcmdldCBpYTY0X2VsZjY0X2xlX3ZlYzsKIGV4dGVy biBjb25zdCBiZmRfdGFyZ2V0IGlhNjRfZWxmNjRfaHB1eF9iZV92ZWM7CiBleHRlcm4gY29uc3Qg YmZkX3RhcmdldCBpYTY0X2VsZjY0X3Ztc192ZWM7CiBleHRlcm4gY29uc3QgYmZkX3RhcmdldCBp YTY0X3BlaV92ZWM7CitleHRlcm4gY29uc3QgYmZkX3RhcmdldCBpbnRlbGd0X2VsZjY0X3ZlYzsK IGV4dGVybiBjb25zdCBiZmRfdGFyZ2V0IGlwMmtfZWxmMzJfdmVjOwogZXh0ZXJuIGNvbnN0IGJm ZF90YXJnZXQgaXEyMDAwX2VsZjMyX3ZlYzsKIGV4dGVybiBjb25zdCBiZmRfdGFyZ2V0IGt2eF9l bGYzMl92ZWM7CkBAIC0xMTIxLDYgKzExMjIsNyBAQCBzdGF0aWMgY29uc3QgYmZkX3RhcmdldCAq IGNvbnN0IF9iZmRfdGFyZ2V0X3ZlY3RvcltdID0KIAkmaWE2NF9lbGY2NF9ocHV4X2JlX3ZlYywK IAkmaWE2NF9lbGY2NF92bXNfdmVjLAogCSZpYTY0X3BlaV92ZWMsCisJJmludGVsZ3RfZWxmNjRf dmVjLAogI2VuZGlmCiAKIAkmaXAya19lbGYzMl92ZWMsCmRpZmYgLS1naXQgYS9iaW51dGlscy9y ZWFkZWxmLmMgYi9iaW51dGlscy9yZWFkZWxmLmMKaW5kZXggNjRlNDYxZGFmODYwNTE1ZjI5M2I4 MjFkNTA5MTdhYTAyMDc1NDRlMS4uNzU1MTM4ZmYxODBjYTc3NjYyMGEwYWQ1NjdlZDE0YjZmNTUz ODFlMiAxMDA2NDQKLS0tIGEvYmludXRpbHMvcmVhZGVsZi5jCisrKyBiL2JpbnV0aWxzL3JlYWRl bGYuYwpAQCAtMTI0LDYgKzEyNCw3IEBACiAjaW5jbHVkZSAiZWxmL2t2eC5oIgogI2luY2x1ZGUg ImVsZi9sbTMyLmgiCiAjaW5jbHVkZSAiZWxmL2lxMjAwMC5oIgorI2luY2x1ZGUgImVsZi9pbnRl bGd0LmgiCiAjaW5jbHVkZSAiZWxmL20zMmMuaCIKICNpbmNsdWRlICJlbGYvbTMyci5oIgogI2lu Y2x1ZGUgImVsZi9tNjhrLmgiCkBAIC0yMzczLDYgKzIzNzQsMTAgQEAgZHVtcF9yZWxvY2F0aW9u cyAoRmlsZWRhdGEgKiAgICAgICAgICBmaWxlZGF0YSwKIAljYXNlIEVNX0FNREdQVToKIAkgIHJ0 eXBlID0gZWxmX2FtZGdwdV9yZWxvY190eXBlICh0eXBlKTsKIAkgIGJyZWFrOworCisJY2FzZSBF TV9JTlRFTEdUOgorCSAgcnR5cGUgPSBlbGZfaW50ZWxndF9yZWxvY190eXBlICh0eXBlKTsKKwkg IGJyZWFrOwogCX0KIAogICAgICAgaWYgKHJ0eXBlID09IE5VTEwpCkBAIC0xNTU0Nyw2ICsxNTU1 Miw4IEBAIGlzXzMyYml0X2Fic19yZWxvYyAoRmlsZWRhdGEgKiBmaWxlZGF0YSwgdW5zaWduZWQg aW50IHJlbG9jX3R5cGUpCiAgICAgICByZXR1cm4gcmVsb2NfdHlwZSA9PSAxOyAvKiBSX1hURU5T QV8zMi4gICovCiAgICAgY2FzZSBFTV9aODA6CiAgICAgICByZXR1cm4gcmVsb2NfdHlwZSA9PSA2 OyAvKiBSX1o4MF8zMi4gICovCisgICAgY2FzZSBFTV9JTlRFTEdUOgorICAgICAgcmV0dXJuIHJl bG9jX3R5cGUgPT0gMjsgLyogUl9aRV9TWU1fQUREUl8zMiAqLwogICAgIGRlZmF1bHQ6CiAgICAg ICB7CiAJc3RhdGljIHVuc2lnbmVkIGludCBwcmV2X3dhcm4gPSAwOwpAQCAtMTU2ODYsNiArMTU2 OTMsOCBAQCBpc182NGJpdF9hYnNfcmVsb2MgKEZpbGVkYXRhICogZmlsZWRhdGEsIHVuc2lnbmVk IGludCByZWxvY190eXBlKQogICAgICAgcmV0dXJuIHJlbG9jX3R5cGUgPT0gMTg7CS8qIFJfTUlQ U182NC4gICovCiAgICAgY2FzZSBFTV9LVlg6CiAgICAgICByZXR1cm4gcmVsb2NfdHlwZSA9PSAz OyAvKiBSX0tWWF82NCAqLworICAgIGNhc2UgRU1fSU5URUxHVDoKKyAgICAgIHJldHVybiByZWxv Y190eXBlID09IDE7CS8qIFJfWkVfU1lNX0FERFIuICAqLwogICAgIGRlZmF1bHQ6CiAgICAgICBy ZXR1cm4gZmFsc2U7CiAgICAgfQpkaWZmIC0tZ2l0IGEvaW5jbHVkZS9lbGYvaW50ZWxndC5oIGIv aW5jbHVkZS9lbGYvaW50ZWxndC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE2ZmJmOWNlNGY3N2U1MWYxMTUyZDFk MjBmYTI3NmUyZmM5YTM0NDYKLS0tIC9kZXYvbnVsbAorKysgYi9pbmNsdWRlL2VsZi9pbnRlbGd0 LmgKQEAgLTAsMCArMSwzOSBAQAorLyogQ29weXJpZ2h0IChDKSAyMDIyLTIwMjQgRnJlZSBTb2Z0 d2FyZSBGb3VuZGF0aW9uLCBJbmMuCisKKyAgIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEJGRCwgdGhl IEJpbmFyeSBGaWxlIERlc2NyaXB0b3IgbGlicmFyeS4KKworICAgVGhpcyBwcm9ncmFtIGlzIGZy ZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkKKyAgIGl0 IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVi bGlzaGVkIGJ5CisgICB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lv biAzIG9mIHRoZSBMaWNlbnNlLCBvcgorICAgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVy c2lvbi4KKworICAgVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQg aXQgd2lsbCBiZSB1c2VmdWwsCisgICBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQg ZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICAgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5F U1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZQorICAgR05VIEdlbmVyYWwgUHVi bGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKworICAgWW91IHNob3VsZCBoYXZlIHJlY2Vp dmVkIGEgY29weSBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKKyAgIGFsb25nIHdp dGggdGhpcyBwcm9ncmFtOyBpZiBub3QsIHdyaXRlIHRvIHRoZSBGcmVlIFNvZnR3YXJlCisgICBG b3VuZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQgLSBGaWZ0aCBGbG9vciwgQm9zdG9u LAorICAgTUEgMDIxMTAtMTMwMSwgVVNBLiAgKi8KKworLyogVGhpcyBmaWxlIGhvbGRzIGRlZmlu aXRpb25zIHNwZWNpZmljIHRvIHRoZSBJbnRlbEdUIEFCSS4gICovCisKKyNpZm5kZWYgX19JTlRF TEdUX0hfCisjZGVmaW5lIF9fSU5URUxHVF9IXworCisjaW5jbHVkZSAiZWxmL3JlbG9jLW1hY3Jv cy5oIgorCitTVEFSVF9SRUxPQ19OVU1CRVJTIChlbGZfaW50ZWxndF9yZWxvY190eXBlKQorICBS RUxPQ19OVU1CRVIgKFJfWkVfTk9ORSwJCQkgICAgIDApCisgIC8qIDY0LWJpdCBhZGRyZXNzLiAg Ki8KKyAgUkVMT0NfTlVNQkVSIChSX1pFX1NZTV9BRERSLAkJCSAgICAgMSkKKyAgLyogMzItYml0 IGFkZHJlc3Mgb3IgbG93ZXIgMzItYml0IG9mIGEgNjQtYml0IGFkZHJlc3MuICAqLworICBSRUxP Q19OVU1CRVIgKFJfWkVfU1lNX0FERFJfMzIsCQkgICAgIDIpCisgIC8qIEhpZ2hlciAzMmJpdHMg b2YgYSA2NC1iaXQgYWRkcmVzcy4gICovCisgIFJFTE9DX05VTUJFUiAoUl9aRV9TWU1fQUREUjMy X0hJLAkJICAgICAzKQorICAvKiAzMi1iaXQgZmllbGQgb2YgcGF5bG9hZCBvZmZzZXQgb2YgcGVy LXRocmVhZCBkYXRhLiAgKi8KKyAgUkVMT0NfTlVNQkVSIChSX1BFUl9USFJFQURfUEFZTE9BRF9P RkZTRVRfMzIsICAgICAgNCkKK0VORF9SRUxPQ19OVU1CRVJTIChSX1pFX21heCkKKworI2VuZGlm IC8qIF9fSU5URUxHVF9IXyAqLwoKLS0gCjIuMzQuMQoKSW50ZWwgRGV1dHNjaGxhbmQgR21iSA0K UmVnaXN0ZXJlZCBBZGRyZXNzOiBBbSBDYW1wZW9uIDEwLCA4NTU3OSBOZXViaWJlcmcsIEdlcm1h bnkNClRlbDogKzQ5IDg5IDk5IDg4NTMtMCwgd3d3LmludGVsLmRlDQpNYW5hZ2luZyBEaXJlY3Rv cnM6IFNlYW4gRmVubmVsbHksIEplZmZyZXkgU2NobmVpZGVybWFuLCBUaWZmYW55IERvb24gU2ls dmENCkNoYWlycGVyc29uIG9mIHRoZSBTdXBlcnZpc29yeSBCb2FyZDogTmljb2xlIExhdQ0KUmVn aXN0ZXJlZCBPZmZpY2U6IE11bmljaA0KQ29tbWVyY2lhbCBSZWdpc3RlcjogQW10c2dlcmljaHQg TXVlbmNoZW4gSFJCIDE4NjkyOAo=