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 X-Spam-Level: X-Spam-Status: No, score=-9.8 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 95575C32750 for ; Fri, 2 Aug 2019 15:58:42 +0000 (UTC) Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 70C1920B7C for ; Fri, 2 Aug 2019 15:58:42 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 70C1920B7C Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=citrix.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1htZws-0006Tn-Ie; Fri, 02 Aug 2019 15:58:30 +0000 Received: from all-amaz-eas1.inumbo.com ([34.197.232.57] helo=us1-amaz-eas2.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1htZwr-0006S5-Mi for xen-devel@lists.xenproject.org; Fri, 02 Aug 2019 15:58:29 +0000 X-Inumbo-ID: 5d25b412-b53e-11e9-bdca-4ff00e5ac374 Received: from esa2.hc3370-68.iphmx.com (unknown [216.71.145.153]) by us1-amaz-eas2.inumbo.com (Halon) with ESMTPS id 5d25b412-b53e-11e9-bdca-4ff00e5ac374; Fri, 02 Aug 2019 15:58:27 +0000 (UTC) Authentication-Results: esa2.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none; spf=None smtp.pra=anthony.perard@citrix.com; spf=Pass smtp.mailfrom=anthony.perard@citrix.com; spf=None smtp.helo=postmaster@mail.citrix.com Received-SPF: None (esa2.hc3370-68.iphmx.com: no sender authenticity information available from domain of anthony.perard@citrix.com) identity=pra; client-ip=162.221.158.21; receiver=esa2.hc3370-68.iphmx.com; envelope-from="anthony.perard@citrix.com"; x-sender="anthony.perard@citrix.com"; x-conformance=sidf_compatible Received-SPF: Pass (esa2.hc3370-68.iphmx.com: domain of anthony.perard@citrix.com designates 162.221.158.21 as permitted sender) identity=mailfrom; client-ip=162.221.158.21; receiver=esa2.hc3370-68.iphmx.com; envelope-from="anthony.perard@citrix.com"; x-sender="anthony.perard@citrix.com"; x-conformance=sidf_compatible; x-record-type="v=spf1"; x-record-text="v=spf1 ip4:209.167.231.154 ip4:178.63.86.133 ip4:195.66.111.40/30 ip4:85.115.9.32/28 ip4:199.102.83.4 ip4:192.28.146.160 ip4:192.28.146.107 ip4:216.52.6.88 ip4:216.52.6.188 ip4:162.221.158.21 ip4:162.221.156.83 ~all" Received-SPF: None (esa2.hc3370-68.iphmx.com: no sender authenticity information available from domain of postmaster@mail.citrix.com) identity=helo; client-ip=162.221.158.21; receiver=esa2.hc3370-68.iphmx.com; envelope-from="anthony.perard@citrix.com"; x-sender="postmaster@mail.citrix.com"; x-conformance=sidf_compatible IronPort-SDR: VVqjn1/GqfDHhGXCJvgjdlpbVgqYW7vaIxLCSgbJmDyxN1B68mDb3XMrtVj+nCAbUP8sllDudj ChG6t8cucofw6cYS44eMesIee4scPq5VLZYxLMlIHqhzV75wg8SjzkjaeZER6RUKrdmz62YWg2 TGmcI1Rqz7yWIXUSVuVvz0xKudpfBpyCMDK7DDwrceRQZAdrrxoqFVYrNnASq4xL6s8WA9eHL3 4SwBKqszA1EXXMZkR59hVi4Rt99sz+OIaUt7qEYAdY/alXx8u8puC1O1E3Navs3C6c5HqrFLaq NIw= X-SBRS: 2.7 X-MesageID: 3787851 X-Ironport-Server: esa2.hc3370-68.iphmx.com X-Remote-IP: 162.221.158.21 X-Policy: $RELAYED X-IronPort-AV: E=Sophos;i="5.64,338,1559534400"; d="scan'208";a="3787851" From: Anthony PERARD To: Date: Fri, 2 Aug 2019 16:35:52 +0100 Message-ID: <20190802153606.32061-22-anthony.perard@citrix.com> X-Mailer: git-send-email 2.22.0 In-Reply-To: <20190802153606.32061-1-anthony.perard@citrix.com> References: <20190802153606.32061-1-anthony.perard@citrix.com> MIME-Version: 1.0 Subject: [Xen-devel] [PATCH 21/35] libxl_usb: Make libxl__device_usbdev_add uses ev_qmp X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Cc: Anthony PERARD , Ian Jackson , Wei Liu Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" U2lnbmVkLW9mZi1ieTogQW50aG9ueSBQRVJBUkQgPGFudGhvbnkucGVyYXJkQGNpdHJpeC5jb20+ Ci0tLQogdG9vbHMvbGlieGwvbGlieGxfdXNiLmMgfCA5OSArKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKystLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDgxIGluc2VydGlvbnMoKyksIDE4 IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3Rvb2xzL2xpYnhsL2xpYnhsX3VzYi5jIGIvdG9v bHMvbGlieGwvbGlieGxfdXNiLmMKaW5kZXggOTJlZWViMjdmMC4uNmIzZTM4OGExOCAxMDA2NDQK LS0tIGEvdG9vbHMvbGlieGwvbGlieGxfdXNiLmMKKysrIGIvdG9vbHMvbGlieGwvbGlieGxfdXNi LmMKQEAgLTM5NywyNiArMzk3LDI1IEBAIHN0YXRpYyBpbnQgbGlieGxfX2RldmljZV91c2JjdHJs X2RlbF9odm0obGlieGxfX2djICpnYywKIH0KIAogLyogU2VuZCBxbXAgY29tbWFuZHMgdG8gY3Jl YXRlIGEgdXNiIGRldmljZSBpbiBxZW11LiAqLwotc3RhdGljIGludCBsaWJ4bF9fZGV2aWNlX3Vz YmRldl9hZGRfaHZtKGxpYnhsX19nYyAqZ2MsIHVpbnQzMl90IGRvbWlkLAorc3RhdGljIGludCBs aWJ4bF9fZGV2aWNlX3VzYmRldl9hZGRfaHZtKGxpYnhsX19nYyAqZ2MsIGxpYnhsX19ldl9xbXAg KnFtcCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWJ4bF9kZXZp Y2VfdXNiZGV2ICp1c2JkZXYpCiB7Ci0gICAgZmxleGFycmF5X3QgKnFtcF9hcmdzOworICAgIGxp YnhsX19qc29uX29iamVjdCAqcW1wX2FyZ3MgPSBOVUxMOwogCi0gICAgcW1wX2FyZ3MgPSBmbGV4 YXJyYXlfbWFrZShnYywgMTIsIDEpOwotICAgIGZsZXhhcnJheV9hcHBlbmRfcGFpcihxbXBfYXJn cywgImlkIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgR0NTUFJJTlRGKCJ4ZW51c2ItJWQt JWQiLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNiZGV2LT51Lmhvc3Rk ZXYuaG9zdGJ1cywKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVzYmRldi0+ dS5ob3N0ZGV2Lmhvc3RhZGRyKSk7Ci0gICAgZmxleGFycmF5X2FwcGVuZF9wYWlyKHFtcF9hcmdz LCAiZHJpdmVyIiwgInVzYi1ob3N0Iik7Ci0gICAgZmxleGFycmF5X2FwcGVuZF9wYWlyKHFtcF9h cmdzLCAiYnVzIiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgR0NTUFJJTlRGKCJ4ZW51c2It JWQuMCIsIHVzYmRldi0+Y3RybCkpOwotICAgIGZsZXhhcnJheV9hcHBlbmRfcGFpcihxbXBfYXJn cywgInBvcnQiLCBHQ1NQUklOVEYoIiVkIiwgdXNiZGV2LT5wb3J0KSk7Ci0gICAgZmxleGFycmF5 X2FwcGVuZF9wYWlyKHFtcF9hcmdzLCAiaG9zdGJ1cyIsCi0gICAgICAgICAgICAgICAgICAgICAg ICAgIEdDU1BSSU5URigiJWQiLCB1c2JkZXYtPnUuaG9zdGRldi5ob3N0YnVzKSk7Ci0gICAgZmxl eGFycmF5X2FwcGVuZF9wYWlyKHFtcF9hcmdzLCAiaG9zdGFkZHIiLAotICAgICAgICAgICAgICAg ICAgICAgICAgICBHQ1NQUklOVEYoIiVkIiwgdXNiZGV2LT51Lmhvc3RkZXYuaG9zdGFkZHIpKTsK LQotICAgIHJldHVybiBsaWJ4bF9fcW1wX3J1bl9jb21tYW5kX2ZsZXhhcnJheShnYywgZG9taWQs ICJkZXZpY2VfYWRkIiwgcW1wX2FyZ3MpOworICAgIGxpYnhsX19xbXBfcGFyYW1fYWRkX3N0cmlu ZyhnYywgJnFtcF9hcmdzLCAiaWQiLAorICAgICAgICBHQ1NQUklOVEYoInhlbnVzYi0lZC0lZCIs IHVzYmRldi0+dS5ob3N0ZGV2Lmhvc3RidXMsCisgICAgICAgICAgICAgICAgICB1c2JkZXYtPnUu aG9zdGRldi5ob3N0YWRkcikpOworICAgIGxpYnhsX19xbXBfcGFyYW1fYWRkX3N0cmluZyhnYywg JnFtcF9hcmdzLCAiZHJpdmVyIiwgInVzYi1ob3N0Iik7CisgICAgbGlieGxfX3FtcF9wYXJhbV9h ZGRfc3RyaW5nKGdjLCAmcW1wX2FyZ3MsICJidXMiLAorICAgICAgICBHQ1NQUklOVEYoInhlbnVz Yi0lZC4wIiwgdXNiZGV2LT5jdHJsKSk7CisgICAgbGlieGxfX3FtcF9wYXJhbV9hZGRfc3RyaW5n KGdjLCAmcW1wX2FyZ3MsICJwb3J0IiwKKyAgICAgICAgR0NTUFJJTlRGKCIlZCIsIHVzYmRldi0+ cG9ydCkpOworICAgIGxpYnhsX19xbXBfcGFyYW1fYWRkX3N0cmluZyhnYywgJnFtcF9hcmdzLCAi aG9zdGJ1cyIsCisgICAgICAgIEdDU1BSSU5URigiJWQiLCB1c2JkZXYtPnUuaG9zdGRldi5ob3N0 YnVzKSk7CisgICAgbGlieGxfX3FtcF9wYXJhbV9hZGRfc3RyaW5nKGdjLCAmcW1wX2FyZ3MsICJo b3N0YWRkciIsCisgICAgICAgIEdDU1BSSU5URigiJWQiLCB1c2JkZXYtPnUuaG9zdGRldi5ob3N0 YWRkcikpOworCisgICAgcmV0dXJuIGxpYnhsX19ldl9xbXBfc2VuZChnYywgcW1wLCAiZGV2aWNl X2FkZCIsIHFtcF9hcmdzKTsKIH0KIAogLyogU2VuZCBxbXAgY29tbWFuZHMgdG8gZGVsZXRlIGEg dXNiIGRldmljZSBpbiBxZW11LiAqLwpAQCAtMTY0MSw2ICsxNjQwLDEzIEBAIHN0YXRpYyBpbnQg dXNiYmFja19kZXZfYXNzaWduKGxpYnhsX19nYyAqZ2MsIGNvbnN0IGNoYXIgKmJ1c2lkKQogICAg IHJldHVybiByYzsKIH0KIAorc3RhdGljIHZvaWQgZGV2aWNlX3VzYmRldl9hZGRfcW1wX2NiKGxp YnhsX19lZ2MgKmVnYywKKyAgICBsaWJ4bF9fZXZfcW1wICpxbXAsIGNvbnN0IGxpYnhsX19qc29u X29iamVjdCAqciwgaW50IHJjKTsKK3N0YXRpYyB2b2lkIGRldmljZV91c2JkZXZfYWRkX3RpbWVv dXQobGlieGxfX2VnYyAqZWdjLAorICAgIGxpYnhsX19ldl90aW1lICpldiwgY29uc3Qgc3RydWN0 IHRpbWV2YWwgKnJlcXVlc3RlZF9hYnMsIGludCByYyk7CitzdGF0aWMgdm9pZCBkZXZpY2VfdXNi ZGV2X2FkZF9kb25lKGxpYnhsX19lZ2MgKmVnYywKKyAgICBsaWJ4bF9fYW9fZGV2aWNlICphb2Rl diwgaW50IHJjKTsKKwogLyogQU8gb3BlcmF0aW9uIHRvIGFkZCBhIHVzYiBkZXZpY2UuCiAgKgog ICogR2VuZXJhbGx5LCBpdCBkb2VzOgpAQCAtMTY2Nyw5ICsxNjczLDE0IEBAIHN0YXRpYyB2b2lk IGxpYnhsX19kZXZpY2VfdXNiZGV2X2FkZChsaWJ4bF9fZWdjICplZ2MsIHVpbnQzMl90IGRvbWlk LAogICAgIGludCBudW1fYXNzaWduZWQ7CiAgICAgbGlieGxfZGV2aWNlX3VzYmN0cmwgdXNiY3Ry bDsKICAgICBjaGFyICpidXNpZDsKKyAgICBib29sIGhhc19jYWxsYmFjayA9IGZhbHNlOwogCiAg ICAgbGlieGxfZGV2aWNlX3VzYmN0cmxfaW5pdCgmdXNiY3RybCk7CiAKKyAgICAvKiBTdG9yZSAq dXNiZGV2IHRvIGJlIHVzZWQgYnkgY2FsbGJhY2tzICovCisgICAgYW9kZXYtPmRldmljZV9jb25m aWcgPSB1c2JkZXY7CisgICAgYW9kZXYtPmRldmljZV90eXBlID0gJmxpYnhsX191c2JkZXZfZGV2 dHlwZTsKKwogICAgIC8qIEN1cnJlbnRseSBvbmx5IHN1cHBvcnQgYWRkaW5nIFVTQiBkZXZpY2Ug ZnJvbSBEb20wIGJhY2tlbmQuCiAgICAgICogU28sIGlmIFVTQiBjb250cm9sbGVyIGlzIHNwZWNp ZmllZCwgY2hlY2sgaXRzIGJhY2tlbmQgZG9tYWluLAogICAgICAqIGlmIGl0J3Mgbm90IERvbTAs IHJlcG9ydCBlcnJvci4KQEAgLTE3NTMsMTIgKzE3NjQsMjIgQEAgc3RhdGljIHZvaWQgbGlieGxf X2RldmljZV91c2JkZXZfYWRkKGxpYnhsX19lZ2MgKmVnYywgdWludDMyX3QgZG9taWQsCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFvZGV2LT51cGRhdGVf anNvbik7CiAgICAgICAgIGlmIChyYykgZ290byBvdXQ7CiAKLSAgICAgICAgcmMgPSBsaWJ4bF9f ZGV2aWNlX3VzYmRldl9hZGRfaHZtKGdjLCBkb21pZCwgdXNiZGV2KTsKKyAgICAgICAgcmMgPSBs aWJ4bF9fZXZfdGltZV9yZWdpc3Rlcl9yZWwoYW8sICZhb2Rldi0+dGltZW91dCwKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGV2aWNlX3VzYmRldl9hZGRfdGltZW91 dCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTElCWExfUU1QX0NN RF9USU1FT1VUICogMTAwMCk7CisgICAgICAgIGlmIChyYykgZ290byBvdXQ7CisKKyAgICAgICAg YW9kZXYtPnFtcC5hbyA9IGFvOworICAgICAgICBhb2Rldi0+cW1wLmRvbWlkID0gZG9taWQ7Cisg ICAgICAgIGFvZGV2LT5xbXAuY2FsbGJhY2sgPSBkZXZpY2VfdXNiZGV2X2FkZF9xbXBfY2I7Cisg ICAgICAgIGFvZGV2LT5xbXAucGF5bG9hZF9mZCA9IC0xOworICAgICAgICByYyA9IGxpYnhsX19k ZXZpY2VfdXNiZGV2X2FkZF9odm0oZ2MsICZhb2Rldi0+cW1wLCB1c2JkZXYpOwogICAgICAgICBp ZiAocmMpIHsKICAgICAgICAgICAgIGxpYnhsX19kZXZpY2VfdXNiZGV2X3JlbW92ZV94ZW5zdG9y ZShnYywgZG9taWQsIHVzYmRldiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIExJQlhMX1VTQkNUUkxfVFlQRV9ERVZJQ0VNT0RFTCk7CiAgICAgICAgICAgICBn b3RvIG91dDsKICAgICAgICAgfQorICAgICAgICBoYXNfY2FsbGJhY2sgPSB0cnVlOwogICAgICAg ICBicmVhazsKICAgICBkZWZhdWx0OgogICAgICAgICBMT0dEKEVSUk9SLCBkb21pZCwgIlVuc3Vw cG9ydGVkIHVzYiBjb250cm9sbGVyIHR5cGUiKTsKQEAgLTE3NzAsNiArMTc5MSw0OCBAQCBzdGF0 aWMgdm9pZCBsaWJ4bF9fZGV2aWNlX3VzYmRldl9hZGQobGlieGxfX2VnYyAqZWdjLCB1aW50MzJf dCBkb21pZCwKIAogb3V0OgogICAgIGxpYnhsX2RldmljZV91c2JjdHJsX2Rpc3Bvc2UoJnVzYmN0 cmwpOworICAgIC8qIE9ubHkgY2FsbCBfZG9uZSBpZiBubyBjYWxsYmFjayBoYXZlIGJlZW4gc2V0 dXAgKi8KKyAgICBpZiAoIWhhc19jYWxsYmFjaykKKyAgICAgICAgZGV2aWNlX3VzYmRldl9hZGRf ZG9uZShlZ2MsIGFvZGV2LCByYyk7IC8qIG11c3QgYmUgbGFzdCAqLworfQorCitzdGF0aWMgdm9p ZCBkZXZpY2VfdXNiZGV2X2FkZF90aW1lb3V0KGxpYnhsX19lZ2MgKmVnYywKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlieGxfX2V2X3RpbWUgKmV2LAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzdHJ1Y3QgdGltZXZhbCAqcmVxdWVz dGVkX2FicywKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50IHJjKQor eworICAgIEVHQ19HQzsKKyAgICBsaWJ4bF9fYW9fZGV2aWNlICphb2RldiA9IENPTlRBSU5FUl9P RihldiwgKmFvZGV2LCB0aW1lb3V0KTsKKworICAgIGlmIChyYyA9PSBFUlJPUl9USU1FRE9VVCkK KyAgICAgICAgTE9HRChFUlJPUiwgYW9kZXYtPnFtcC5kb21pZCwKKyAgICAgICAgICAgICAiQWRk aW5nIHVzYmRldiB0byBRRU1VIHRpbWVkIG91dCIpOworICAgIGRldmljZV91c2JkZXZfYWRkX3Ft cF9jYihlZ2MsICZhb2Rldi0+cW1wLCBOVUxMLCByYyk7Cit9CisKK3N0YXRpYyB2b2lkIGRldmlj ZV91c2JkZXZfYWRkX3FtcF9jYihsaWJ4bF9fZWdjICplZ2MsCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgbGlieGxfX2V2X3FtcCAqcW1wLAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGNvbnN0IGxpYnhsX19qc29uX29iamVjdCAqciwKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQgcmMpCit7CisgICAgRUdDX0dDOworICAg IGxpYnhsX19hb19kZXZpY2UgKmFvZGV2ID0gQ09OVEFJTkVSX09GKHFtcCwgKmFvZGV2LCBxbXAp OworICAgIGxpYnhsX2RldmljZV91c2JkZXYgKmNvbnN0IHVzYmRldiA9IGFvZGV2LT5kZXZpY2Vf Y29uZmlnOworCisgICAgaWYgKHJjKQorICAgICAgICBsaWJ4bF9fZGV2aWNlX3VzYmRldl9yZW1v dmVfeGVuc3RvcmUoZ2MsIHFtcC0+ZG9taWQsCisgICAgICAgICAgICB1c2JkZXYsIExJQlhMX1VT QkNUUkxfVFlQRV9ERVZJQ0VNT0RFTCk7CisgICAgZGV2aWNlX3VzYmRldl9hZGRfZG9uZShlZ2Ms IGFvZGV2LCByYyk7IC8qIG11c3QgYmUgbGFzdCAqLworfQorCitzdGF0aWMgdm9pZCBkZXZpY2Vf dXNiZGV2X2FkZF9kb25lKGxpYnhsX19lZ2MgKmVnYywKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgbGlieGxfX2FvX2RldmljZSAqYW9kZXYsCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGludCByYykKK3sKKyAgICBFR0NfR0M7CisKKyAgICBsaWJ4bF9fZXZf dGltZV9kZXJlZ2lzdGVyKGdjLCAmYW9kZXYtPnRpbWVvdXQpOworICAgIGxpYnhsX19ldl9xbXBf ZGlzcG9zZShnYywgJmFvZGV2LT5xbXApOwogICAgIGFvZGV2LT5yYyA9IHJjOwogICAgIGFvZGV2 LT5jYWxsYmFjayhlZ2MsIGFvZGV2KTsKIH0KLS0gCkFudGhvbnkgUEVSQVJECgoKX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcg bGlzdApYZW4tZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9q ZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL3hlbi1kZXZlbA==