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=-6.6 required=3.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED 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 BFE5DC352A3 for ; Tue, 11 Feb 2020 14:00:54 +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 8617D2086A for ; Tue, 11 Feb 2020 14:00:54 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=citrix.com header.i=@citrix.com header.b="epPux8ts" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 8617D2086A Authentication-Results: mail.kernel.org; dmarc=fail (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 1j1W5d-0007uI-TX; Tue, 11 Feb 2020 14:00:37 +0000 Received: from us1-rack-iad1.inumbo.com ([172.99.69.81]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1j1W5c-0007u8-J0 for xen-devel@lists.xenproject.org; Tue, 11 Feb 2020 14:00:36 +0000 X-Inumbo-ID: def4dc40-4cd6-11ea-8d48-bc764e2007e4 Received: from esa3.hc3370-68.iphmx.com (unknown [216.71.145.155]) by us1-rack-iad1.inumbo.com (Halon) with ESMTPS id def4dc40-4cd6-11ea-8d48-bc764e2007e4; Tue, 11 Feb 2020 14:00:34 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1581429635; h=date:from:to:cc:subject:message-id:references: mime-version:content-transfer-encoding:in-reply-to; bh=olvJOusaPXKusNbBEcZFwfyghg3Gs6cSLp51Rw20InY=; b=epPux8tsn4nsb2ve9uQYSjsRh+Lbi+kXf+niW4jAQGn8uK0ZR/t6zIVb lz/j82xVj4d3UB/js3Yx/ps87Twr8m8hngbw8n0kuZ4mhpDmMmeY6Qjvm oDTjhhm7kWsyEN3IsDwb/gneTPaFMQS7d21LiNfd7cYFI+bugJmiWL0DR c=; Authentication-Results: esa3.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none; spf=None smtp.pra=roger.pau@citrix.com; spf=Pass smtp.mailfrom=roger.pau@citrix.com; spf=None smtp.helo=postmaster@mail.citrix.com Received-SPF: None (esa3.hc3370-68.iphmx.com: no sender authenticity information available from domain of roger.pau@citrix.com) identity=pra; client-ip=162.221.158.21; receiver=esa3.hc3370-68.iphmx.com; envelope-from="roger.pau@citrix.com"; x-sender="roger.pau@citrix.com"; x-conformance=sidf_compatible Received-SPF: Pass (esa3.hc3370-68.iphmx.com: domain of roger.pau@citrix.com designates 162.221.158.21 as permitted sender) identity=mailfrom; client-ip=162.221.158.21; receiver=esa3.hc3370-68.iphmx.com; envelope-from="roger.pau@citrix.com"; x-sender="roger.pau@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 ip4:168.245.78.127 ~all" Received-SPF: None (esa3.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=esa3.hc3370-68.iphmx.com; envelope-from="roger.pau@citrix.com"; x-sender="postmaster@mail.citrix.com"; x-conformance=sidf_compatible IronPort-SDR: xq8egreGaxFQ7yyDmsWZsvBmxmY0+0zWnvG8miMLI/kCWnCVS43VnsYsZEgq4h6LU/GFsd510L PoAQ8IvqSHAfoehpHhbvMaMRykhIUe4tidIg9VKW1zijWSn37vtPaO98KvQDQEXHeNxaFrhT6/ W5pAtQ6hZvhGsPASmX69vWtw7DoxDhhlvyGzEVAgrHEcgPTdV+qHoowGbkbF5ye84FYpoRAWFH o9TXbZmn+X00QQ+6amAi13lEUTOhb4n/Nl1gdxILVV226kyQsiHlNg46Kh/QPxdKets2ZWfTHh tjo= X-SBRS: 2.7 X-MesageID: 12263545 X-Ironport-Server: esa3.hc3370-68.iphmx.com X-Remote-IP: 162.221.158.21 X-Policy: $RELAYED X-IronPort-AV: E=Sophos;i="5.70,428,1574139600"; d="scan'208";a="12263545" Date: Tue, 11 Feb 2020 15:00:22 +0100 From: Roger Pau =?utf-8?B?TW9ubsOp?= To: Sander Eikelenboom Message-ID: <20200211140022.GJ4679@Air-de-Roger> References: <20200203122319.GU4679@Air-de-Roger> <3bcb67a6-3156-f4b0-5ac6-58ca61038cec@eikelenboom.it> <20200203124127.GV4679@Air-de-Roger> <20200203132108.GW4679@Air-de-Roger> <74e8356c-c7e0-6110-961d-3f3a7cda47a8@eikelenboom.it> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <74e8356c-c7e0-6110-961d-3f3a7cda47a8@eikelenboom.it> X-ClientProxiedBy: AMSPEX02CAS01.citrite.net (10.69.22.112) To AMSPEX02CL01.citrite.net (10.69.22.125) Subject: Re: [Xen-devel] Xen-unstable: pci-passthrough regression bisected to: x86/smp: use APIC ALLBUT destination shorthand when possible 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: "xen-devel@lists.xenproject.org" Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" T24gTW9uLCBGZWIgMTAsIDIwMjAgYXQgMDk6NDk6MzBQTSArMDEwMCwgU2FuZGVyIEVpa2VsZW5i b29tIHdyb3RlOgo+IE9uIDAzLzAyLzIwMjAgMTQ6MjEsIFJvZ2VyIFBhdSBNb25uw6kgd3JvdGU6 Cj4gPiBPbiBNb24sIEZlYiAwMywgMjAyMCBhdCAwMTo0NDowNlBNICswMTAwLCBTYW5kZXIgRWlr ZWxlbmJvb20gd3JvdGU6Cj4gPj4gT24gMDMvMDIvMjAyMCAxMzo0MSwgUm9nZXIgUGF1IE1vbm7D qSB3cm90ZToKPiA+Pj4gT24gTW9uLCBGZWIgMDMsIDIwMjAgYXQgMDE6MzA6NTVQTSArMDEwMCwg U2FuZGVyIEVpa2VsZW5ib29tIHdyb3RlOgo+ID4+Pj4gT24gMDMvMDIvMjAyMCAxMzoyMywgUm9n ZXIgUGF1IE1vbm7DqSB3cm90ZToKPiA+Pj4+PiBPbiBNb24sIEZlYiAwMywgMjAyMCBhdCAwOToz Mzo1MUFNICswMTAwLCBTYW5kZXIgRWlrZWxlbmJvb20gd3JvdGU6Cj4gPj4+Pj4+IEhpIFJvZ2Vy LAo+ID4+Pj4+Pgo+ID4+Pj4+PiBMYXN0IHdlZWsgSSBlbmNvdW50ZXJlZCBhbiBpc3N1ZSB3aXRo IHRoZSBQQ0ktcGFzc3Rocm91Z2ggb2YgYSBVU0IgY29udHJvbGxlci4gCj4gPj4+Pj4+IEluIHRo ZSBndWVzdCBJIGdldDoKPiA+Pj4+Pj4gICAgIFsgMTE0My4zMTM3NTZdIHhoY2lfaGNkIDAwMDA6 MDA6MDUuMDogeEhDSSBob3N0IG5vdCByZXNwb25kaW5nIHRvIHN0b3AgZW5kcG9pbnQgY29tbWFu ZC4KPiA+Pj4+Pj4gICAgIFsgMTE0My4zMzQ4MjVdIHhoY2lfaGNkIDAwMDA6MDA6MDUuMDogeEhD SSBob3N0IGNvbnRyb2xsZXIgbm90IHJlc3BvbmRpbmcsIGFzc3VtZSBkZWFkCj4gPj4+Pj4+ICAg ICBbIDExNDMuMzQ3MzY0XSB4aGNpX2hjZCAwMDAwOjAwOjA1LjA6IEhDIGRpZWQ7IGNsZWFuaW5n IHVwCj4gPj4+Pj4+ICAgICBbIDExNDMuMzU2NDA3XSB1c2IgMS0yOiBVU0IgZGlzY29ubmVjdCwg ZGV2aWNlIG51bWJlciAyCj4gPj4+Pj4+Cj4gPj4+Pj4+IEJpc2VjdGlvbiB0dXJuZWQgdXAgYXMg dGhlIGN1bHByaXQ6IAo+ID4+Pj4+PiAgICBjb21taXQgNTUwMGQyNjVhMmE4ZmE2M2Q2MGMwOGJl YjU0OWRlOGVjODJmZjdhNQo+ID4+Pj4+PiAgICB4ODYvc21wOiB1c2UgQVBJQyBBTExCVVQgZGVz dGluYXRpb24gc2hvcnRoYW5kIHdoZW4gcG9zc2libGUKPiA+Pj4+Pgo+ID4+Pj4+IFNvcnJ5IHRv IGhlYXIgdGhhdCwgbGV0IHNlZSBpZiB3ZSBjYW4gZmlndXJlIG91dCB3aGF0J3Mgd3JvbmcuCj4g Pj4+Pgo+ID4+Pj4gTm8gcHJvYmxlbSwgdGhhdCBpcyB3aHkgSSB0ZXN0IHN0dWZmIDopCj4gPj4+ Pgo+ID4+Pj4+PiBJIHZlcmlmaWVkIGJ5IHJldmVydGluZyB0aGF0IGNvbW1pdCBhbmQgbm93IGl0 IHdvcmtzIGZpbmUgYWdhaW4uCj4gPj4+Pj4KPiA+Pj4+PiBEb2VzIHRoZSBzYW1lIGNvbnRyb2xs ZXIgd29yayBmaW5lIHdoZW4gdXNlZCBpbiBkb20wPwo+ID4+Pj4KPiA+Pj4+IFdpbGwgdGVzdCB0 aGF0LCBidXQgYXMgYWxsIG90aGVyIHBjaSBkZXZpY2VzIGluIGRvbTAgd29yayBmaW5lLAo+ID4+ Pj4gSSBhc3N1bWUgdGhpcyBjb250cm9sbGVyIHdvdWxkIGFsc28gd29yayBmaW5lIGluIGRvbTAg KGFzIGl0IGhhcyBhbHNvCj4gPj4+PiB3b3JrZWQgZmluZSBmb3IgYWdlcyB3aXRoIFBDSS1wYXNz dGhyb3VnaCB0byB0aGF0IGd1ZXN0IGFuZCBzdGlsbCB3b3Jrcwo+ID4+Pj4gZmluZSB3aGVuIHJl dmVydGluZyB0aGUgcmVmZXJlbmNlZCBjb21taXQpLgo+ID4+Pgo+ID4+PiBJcyB0aGlzIHRoZSBv bmx5IGRldmljZSB0aGF0IGZhaWxzIHRvIHdvcmsgd2hlbiBkb2luZyBwY2ktcGFzc3Rocm91Z2gs Cj4gPj4+IG9yIG90aGVyIGRldmljZXMgYWxzbyBkb24ndCB3b3JrIHdpdGggdGhlIG1lbnRpb25l ZCBjaGFuZ2UgYXBwbGllZD8KPiA+Pj4KPiA+Pj4gSGF2ZSB5b3UgdGVzdGVkIG9uIG90aGVyIGJv eGVzPwo+ID4+Pgo+ID4+Pj4gSSBkb24ndCBrbm93IGlmIHlvdXIgY2hhbmdlIGNhbiBzb21laG93 IGhhdmUgYSBzaWRlIGVmZmVjdAo+ID4+Pj4gb24gbGF0ZW5jeSBhcm91bmQgdGhlIHByb2Nlc3Np bmcgb2YgcGNpLXBhc3N0aHJvdWdoID8KPiA+Pj4KPiA+Pj4gSG0sIHRoZSBtZW50aW9uZWQgY29t bWl0IHNob3VsZCBzcGVlZCB1cCBicm9hZGNhc3QgSVBJcywgYnV0IEkgZG9uJ3QKPiA+Pj4gc2Vl IGhvdyBpdCBjb3VsZCBzbG93IGRvd24gb3RoZXIgaW50ZXJydXB0cy4gQWxzbyBJIHdvdWxkIHRo aW5rIHRoZQo+ID4+PiBkb21haW4gaXMgbm90IHJlY2VpdmluZyBpbnRlcnJ1cHRzIGZyb20gdGhl IGRldmljZSwgcmF0aGVyIHRoYW4KPiA+Pj4gaW50ZXJydXB0cyBiZWluZyBzbG93Lgo+ID4+Pgo+ ID4+PiBDYW4geW91IGFsc28gcGFzdGUgdGhlIG91dHB1dCBvZiBsc3BjaSAtdiBmb3IgdGhhdCB4 SENJIGRldmljZSBmcm9tCj4gPj4+IGRvbTA/Cj4gPj4+Cj4gPj4+IFRoYW5rcywgUm9nZXIuCj4g Pj4KPiA+PiBXaWxsIGRvIHRoaXMgZXZlbmluZyBpbmNsdWRpbmcgdGhlIHRlc3RpbmcgaW4gZG9t MCBldGMuCj4gPj4gV2lsbCBhbHNvIHNlZSBpZiB0aGVyZSBpcyBhbnkgcGF0dGVybiB3aGVuIG9i c2VydmluZyAvcHJvYy9pbnRlcnJ1cHRzIGluCj4gPj4gdGhlIGd1ZXN0Lgo+ID4gCj4gPiBUaGFu a3MhIEkgYWxzbyBoYXZlIHNvbWUgdHJpdmlhbCBwYXRjaCB0aGF0IEkgd291bGQgbGlrZSB5b3Ug dG8gdHJ5LAo+ID4ganVzdCB0byBkaXNjYXJkIHNlbmRfSVBJX21hc2sgY2xlYXJpbmcgdGhlIHNj cmF0Y2hfY3B1bWFzayB1bmRlcgo+ID4gYW5vdGhlciBmdW5jdGlvbiBmZWV0Lgo+ID4gCj4gPiBS b2dlci4KPiAKPiBIaSBSb2dlciwKPiAKPiBUb29rIGEgd2hpbGUsIGJ1dCBJIHdhcyBhYmxlIHRv IHJ1biBzb21lIHRlc3RzIG5vdy4KPiAKPiBJIGFsc28gZm9yZ290IGEgZGV0YWlsIGluIHRoZSBm aXJzdCByZXBvcnQgKHByb2JhYmx5IHN0aWxsIGEgYml0IHRpcmVkIGZyb20gRk9TREVNKSwgCj4g bmFtZWx5OiB0aGUgZGV2aWNlIHBhc3NlZHRocm91Z2ggd29ya3MgT0sgZm9yIGEgd2hpbGUgYmVm b3JlIEkgZ2V0IHRoZSBrZXJuZWwgbWVzc2FnZS4KPiAKPiBJIHRlc3RlZCB0aGUgcGF0Y2ggYW5k IGl0IGxvb2tzIGxpa2UgaXQgbWFrZXMgdGhlIGlzc3VlIGdvIGF3YXksCj4gSSB0ZXN0ZWQgZm9y IGEgZGF5LCB3aGlsZSB3aXRob3V0IHRoZSBwYXRjaCAob3IgcmV2ZXJ0IG9mIHRoZSBjb21taXQp IHRoZSBkZXZpY2UKPiB3aWxsIGdpdmUgcHJvYmxlbXMgd2l0aGluIGEgZmV3IGhvdXJzLgoKVGhh bmtzLCBJIGhhdmUgYW5vdGhlciBwYXRjaCBmb3IgeW91IHRvIHRyeSwgd2hpY2ggd2lsbCBsaWtl bHkgbWFrZQp5b3VyIHN5c3RlbSBjcmFzaC4gQ291bGQgeW91IGdpdmUgaXQgYSB0cnkgYW5kIHBh c3RlIHRoZSBsb2cgb3V0cHV0PwoKVGhhbmtzLCBSb2dlci4KLS0tODwtLS0KY29tbWl0IDkwOTg4 MDIxOWVmYzRmZTNjMjU1MzY0NTRkMDRmMDdiZmU2MWUzYjEKQXV0aG9yOiBSb2dlciBQYXUgTW9u bmUgPHJvZ2VyLnBhdUBjaXRyaXguY29tPgpEYXRlOiAgIFR1ZSBGZWIgMTEgMTE6MTQ6NDggMjAy MCArMDEwMAoKICAgIHg4NjogYWRkIGFjY2Vzc29ycyBmb3Igc2NyYXRjaCBjcHUgbWFzawogICAg CiAgICBDdXJyZW50IHVzYWdlIG9mIHRoZSBwZXItQ1BVIHNjcmF0Y2ggY3B1bWFzayBpcyBkYW5n ZXJvdXMgc2luY2UKICAgIHRoZXJlJ3Mgbm8gd2F5IHRvIGZpZ3VyZSBvdXQgaWYgdGhlIG1hc2sg aXMgYWxyZWFkeSBiZWluZyB1c2VkIGV4Y2VwdAogICAgZm9yIG1hbnVhbCBjb2RlIGluc3BlY3Rp b24gb2YgYWxsIHRoZSBjYWxsZXJzIGFuZCBwb3NzaWJsZSBjYWxsIHBhdGhzLgogICAgCiAgICBU aGlzIGlzIHVuc2FmZSBhbmQgbm90IHJlbGlhYmxlLCBzbyBpbnRyb2R1Y2UgYSBtaW5pbWFsIGdl dC9wdXQKICAgIGluZnJhc3RydWN0dXJlIHRvIHByZXZlbnQgbmVzdGVkIHVzYWdlIG9mIHRoZSBz Y3JhdGNoIG1hc2suCiAgICAKICAgIFNpZ25lZC1vZmYtYnk6IFJvZ2VyIFBhdSBNb25uw6kgPHJv Z2VyLnBhdUBjaXRyaXguY29tPgoKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9pb19hcGljLmMg Yi94ZW4vYXJjaC94ODYvaW9fYXBpYy5jCmluZGV4IGU5OGUwOGU5YzguLjRlZTI2MWI2MzIgMTAw NjQ0Ci0tLSBhL3hlbi9hcmNoL3g4Ni9pb19hcGljLmMKKysrIGIveGVuL2FyY2gveDg2L2lvX2Fw aWMuYwpAQCAtMjIzNiwxMCArMjIzNiwxMSBAQCBpbnQgaW9fYXBpY19zZXRfcGNpX3JvdXRpbmcg KGludCBpb2FwaWMsIGludCBwaW4sIGludCBpcnEsIGludCBlZGdlX2xldmVsLCBpbnQgYQogICAg IGVudHJ5LnZlY3RvciA9IHZlY3RvcjsKIAogICAgIGlmIChjcHVtYXNrX2ludGVyc2VjdHMoZGVz Yy0+YXJjaC5jcHVfbWFzaywgVEFSR0VUX0NQVVMpKSB7Ci0gICAgICAgIGNwdW1hc2tfdCAqbWFz ayA9IHRoaXNfY3B1KHNjcmF0Y2hfY3B1bWFzayk7CisgICAgICAgIGNwdW1hc2tfdCAqbWFzayA9 IGdldF9zY3JhdGNoX2NwdW1hc2soKTsKIAogICAgICAgICBjcHVtYXNrX2FuZChtYXNrLCBkZXNj LT5hcmNoLmNwdV9tYXNrLCBUQVJHRVRfQ1BVUyk7CiAgICAgICAgIFNFVF9ERVNUKGVudHJ5LCBs b2dpY2FsLCBjcHVfbWFza190b19hcGljaWQobWFzaykpOworICAgICAgICBwdXRfc2NyYXRjaF9j cHVtYXNrKCk7CiAgICAgfSBlbHNlIHsKICAgICAgICAgcHJpbnRrKFhFTkxPR19FUlIgIklSUSVk OiBubyB0YXJnZXQgQ1BVICglKnBiIHZzICUqcGIpXG4iLAogICAgICAgICAgICAgICAgaXJxLCBD UFVNQVNLX1BSKGRlc2MtPmFyY2guY3B1X21hc2spLCBDUFVNQVNLX1BSKFRBUkdFVF9DUFVTKSk7 CkBAIC0yNDMzLDEwICsyNDM0LDExIEBAIGludCBpb2FwaWNfZ3Vlc3Rfd3JpdGUodW5zaWduZWQg bG9uZyBwaHlzYmFzZSwgdW5zaWduZWQgaW50IHJlZywgdTMyIHZhbCkKIAogICAgIGlmICggY3B1 bWFza19pbnRlcnNlY3RzKGRlc2MtPmFyY2guY3B1X21hc2ssIFRBUkdFVF9DUFVTKSApCiAgICAg ewotICAgICAgICBjcHVtYXNrX3QgKm1hc2sgPSB0aGlzX2NwdShzY3JhdGNoX2NwdW1hc2spOwor ICAgICAgICBjcHVtYXNrX3QgKm1hc2sgPSBnZXRfc2NyYXRjaF9jcHVtYXNrKCk7CiAKICAgICAg ICAgY3B1bWFza19hbmQobWFzaywgZGVzYy0+YXJjaC5jcHVfbWFzaywgVEFSR0VUX0NQVVMpOwog ICAgICAgICBTRVRfREVTVChydGUsIGxvZ2ljYWwsIGNwdV9tYXNrX3RvX2FwaWNpZChtYXNrKSk7 CisgICAgICAgIHB1dF9zY3JhdGNoX2NwdW1hc2soKTsKICAgICB9CiAgICAgZWxzZQogICAgIHsK ZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9pcnEuYyBiL3hlbi9hcmNoL3g4Ni9pcnEuYwppbmRl eCBjYzJlYjhlOTI1Li43ZWNmNTM3NmUzIDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYvaXJxLmMK KysrIGIveGVuL2FyY2gveDg2L2lycS5jCkBAIC0xOTYsNyArMTk2LDcgQEAgc3RhdGljIHZvaWQg X2NsZWFyX2lycV92ZWN0b3Ioc3RydWN0IGlycV9kZXNjICpkZXNjKQogewogICAgIHVuc2lnbmVk IGludCBjcHUsIG9sZF92ZWN0b3IsIGlycSA9IGRlc2MtPmlycTsKICAgICB1bnNpZ25lZCBpbnQg dmVjdG9yID0gZGVzYy0+YXJjaC52ZWN0b3I7Ci0gICAgY3B1bWFza190ICp0bXBfbWFzayA9IHRo aXNfY3B1KHNjcmF0Y2hfY3B1bWFzayk7CisgICAgY3B1bWFza190ICp0bXBfbWFzayA9IGdldF9z Y3JhdGNoX2NwdW1hc2soKTsKIAogICAgIEJVR19PTighdmFsaWRfaXJxX3ZlY3Rvcih2ZWN0b3Ip KTsKIApAQCAtMjIzLDcgKzIyMywxMCBAQCBzdGF0aWMgdm9pZCBfY2xlYXJfaXJxX3ZlY3Rvcihz dHJ1Y3QgaXJxX2Rlc2MgKmRlc2MpCiAgICAgdHJhY2VfaXJxX21hc2soVFJDX0hXX0lSUV9DTEVB Ul9WRUNUT1IsIGlycSwgdmVjdG9yLCB0bXBfbWFzayk7CiAKICAgICBpZiAoIGxpa2VseSghZGVz Yy0+YXJjaC5tb3ZlX2luX3Byb2dyZXNzKSApCisgICAgeworICAgICAgICBwdXRfc2NyYXRjaF9j cHVtYXNrKCk7CiAgICAgICAgIHJldHVybjsKKyAgICB9CiAKICAgICAvKiBJZiB3ZSB3ZXJlIGlu IG1vdGlvbiwgYWxzbyBjbGVhciBkZXNjLT5hcmNoLm9sZF92ZWN0b3IgKi8KICAgICBvbGRfdmVj dG9yID0gZGVzYy0+YXJjaC5vbGRfdmVjdG9yOwpAQCAtMjM2LDYgKzIzOSw3IEBAIHN0YXRpYyB2 b2lkIF9jbGVhcl9pcnFfdmVjdG9yKHN0cnVjdCBpcnFfZGVzYyAqZGVzYykKICAgICAgICAgcGVy X2NwdSh2ZWN0b3JfaXJxLCBjcHUpW29sZF92ZWN0b3JdID0gfmlycTsKICAgICB9CiAKKyAgICBw dXRfc2NyYXRjaF9jcHVtYXNrKCk7CiAgICAgcmVsZWFzZV9vbGRfdmVjKGRlc2MpOwogCiAgICAg ZGVzYy0+YXJjaC5tb3ZlX2luX3Byb2dyZXNzID0gMDsKQEAgLTExNTIsMTAgKzExNTYsMTEgQEAg c3RhdGljIHZvaWQgaXJxX2d1ZXN0X2VvaV90aW1lcl9mbih2b2lkICpkYXRhKQogICAgICAgICBi cmVhazsKIAogICAgIGNhc2UgQUNLVFlQRV9FT0k6Ci0gICAgICAgIGNwdV9lb2lfbWFwID0gdGhp c19jcHUoc2NyYXRjaF9jcHVtYXNrKTsKKyAgICAgICAgY3B1X2VvaV9tYXAgPSBnZXRfc2NyYXRj aF9jcHVtYXNrKCk7CiAgICAgICAgIGNwdW1hc2tfY29weShjcHVfZW9pX21hcCwgYWN0aW9uLT5j cHVfZW9pX21hcCk7CiAgICAgICAgIHNwaW5fdW5sb2NrX2lycSgmZGVzYy0+bG9jayk7CiAgICAg ICAgIG9uX3NlbGVjdGVkX2NwdXMoY3B1X2VvaV9tYXAsIHNldF9lb2lfcmVhZHksIGRlc2MsIDAp OworICAgICAgICBwdXRfc2NyYXRjaF9jcHVtYXNrKCk7CiAgICAgICAgIHJldHVybjsKICAgICB9 CiAKQEAgLTI1MzEsMTIgKzI1MzYsMTIgQEAgdm9pZCBmaXh1cF9pcnFzKGNvbnN0IGNwdW1hc2tf dCAqbWFzaywgYm9vbCB2ZXJib3NlKQogICAgIHVuc2lnbmVkIGludCBpcnE7CiAgICAgc3RhdGlj IGludCB3YXJuZWQ7CiAgICAgc3RydWN0IGlycV9kZXNjICpkZXNjOworICAgIGNwdW1hc2tfdCAq YWZmaW5pdHkgPSBnZXRfc2NyYXRjaF9jcHVtYXNrKCk7CiAKICAgICBmb3IgKCBpcnEgPSAwOyBp cnEgPCBucl9pcnFzOyBpcnErKyApCiAgICAgewogICAgICAgICBib29sIGJyZWFrX2FmZmluaXR5 ID0gZmFsc2UsIHNldF9hZmZpbml0eSA9IHRydWU7CiAgICAgICAgIHVuc2lnbmVkIGludCB2ZWN0 b3I7Ci0gICAgICAgIGNwdW1hc2tfdCAqYWZmaW5pdHkgPSB0aGlzX2NwdShzY3JhdGNoX2NwdW1h c2spOwogCiAgICAgICAgIGlmICggaXJxID09IDIgKQogICAgICAgICAgICAgY29udGludWU7CkBA IC0yNjQwLDYgKzI2NDUsOCBAQCB2b2lkIGZpeHVwX2lycXMoY29uc3QgY3B1bWFza190ICptYXNr LCBib29sIHZlcmJvc2UpCiAgICAgICAgICAgICAgICAgICAgaXJxLCBDUFVNQVNLX1BSKGFmZmlu aXR5KSk7CiAgICAgfQogCisgICAgcHV0X3NjcmF0Y2hfY3B1bWFzaygpOworCiAgICAgLyogVGhh dCBkb2Vzbid0IHNlZW0gc3VmZmljaWVudC4gIEdpdmUgaXQgMW1zLiAqLwogICAgIGxvY2FsX2ly cV9lbmFibGUoKTsKICAgICBtZGVsYXkoMSk7CmRpZmYgLS1naXQgYS94ZW4vYXJjaC94ODYvbW0u YyBiL3hlbi9hcmNoL3g4Ni9tbS5jCmluZGV4IDliMzM4MjkwODQuLmJkZWQxOTcxN2IgMTAwNjQ0 Ci0tLSBhL3hlbi9hcmNoL3g4Ni9tbS5jCisrKyBiL3hlbi9hcmNoL3g4Ni9tbS5jCkBAIC0xMjcx LDcgKzEyNzEsNyBAQCB2b2lkIHB1dF9wYWdlX2Zyb21fbDFlKGwxX3BnZW50cnlfdCBsMWUsIHN0 cnVjdCBkb21haW4gKmwxZV9vd25lcikKICAgICAgICAgICAgICAobDFlX293bmVyID09IHBnX293 bmVyKSApCiAgICAgICAgIHsKICAgICAgICAgICAgIHN0cnVjdCB2Y3B1ICp2OwotICAgICAgICAg ICAgY3B1bWFza190ICptYXNrID0gdGhpc19jcHUoc2NyYXRjaF9jcHVtYXNrKTsKKyAgICAgICAg ICAgIGNwdW1hc2tfdCAqbWFzayA9IGdldF9zY3JhdGNoX2NwdW1hc2soKTsKIAogICAgICAgICAg ICAgY3B1bWFza19jbGVhcihtYXNrKTsKIApAQCAtMTI4OCw2ICsxMjg4LDcgQEAgdm9pZCBwdXRf cGFnZV9mcm9tX2wxZShsMV9wZ2VudHJ5X3QgbDFlLCBzdHJ1Y3QgZG9tYWluICpsMWVfb3duZXIp CiAKICAgICAgICAgICAgIGlmICggIWNwdW1hc2tfZW1wdHkobWFzaykgKQogICAgICAgICAgICAg ICAgIGZsdXNoX3RsYl9tYXNrKG1hc2spOworICAgICAgICAgICAgcHV0X3NjcmF0Y2hfY3B1bWFz aygpOwogICAgICAgICB9CiAjZW5kaWYgLyogQ09ORklHX1BWX0xEVF9QQUdJTkcgKi8KICAgICAg ICAgcHV0X3BhZ2UocGFnZSk7CkBAIC0yOTEyLDcgKzI5MTMsNyBAQCBzdGF0aWMgaW50IF9nZXRf cGFnZV90eXBlKHN0cnVjdCBwYWdlX2luZm8gKnBhZ2UsIHVuc2lnbmVkIGxvbmcgdHlwZSwKICAg ICAgICAgICAgICAgICAgKiB2aXRhbCB0aGF0IG5vIG90aGVyIENQVXMgYXJlIGxlZnQgd2l0aCBt YXBwaW5ncyBvZiBhIGZyYW1lCiAgICAgICAgICAgICAgICAgICogd2hpY2ggaXMgYWJvdXQgdG8g YmVjb21lIHdyaXRlYWJsZSB0byB0aGUgZ3Vlc3QuCiAgICAgICAgICAgICAgICAgICovCi0gICAg ICAgICAgICAgICAgY3B1bWFza190ICptYXNrID0gdGhpc19jcHUoc2NyYXRjaF9jcHVtYXNrKTsK KyAgICAgICAgICAgICAgICBjcHVtYXNrX3QgKm1hc2sgPSBnZXRfc2NyYXRjaF9jcHVtYXNrKCk7 CiAKICAgICAgICAgICAgICAgICBCVUdfT04oaW5faXJxKCkpOwogICAgICAgICAgICAgICAgIGNw dW1hc2tfY29weShtYXNrLCBkLT5kaXJ0eV9jcHVtYXNrKTsKQEAgLTI5MjgsNiArMjkyOSw3IEBA IHN0YXRpYyBpbnQgX2dldF9wYWdlX3R5cGUoc3RydWN0IHBhZ2VfaW5mbyAqcGFnZSwgdW5zaWdu ZWQgbG9uZyB0eXBlLAogICAgICAgICAgICAgICAgICAgICBwZXJmY19pbmNyKG5lZWRfZmx1c2hf dGxiX2ZsdXNoKTsKICAgICAgICAgICAgICAgICAgICAgZmx1c2hfdGxiX21hc2sobWFzayk7CiAg ICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIHB1dF9zY3JhdGNoX2NwdW1hc2soKTsK IAogICAgICAgICAgICAgICAgIC8qIFdlIGxvc2UgZXhpc3RpbmcgdHlwZSBhbmQgdmFsaWRpdHku ICovCiAgICAgICAgICAgICAgICAgbnggJj0gfihQR1RfdHlwZV9tYXNrIHwgUEdUX3ZhbGlkYXRl ZCk7CkBAIC0zNjQ0LDcgKzM2NDYsNyBAQCBsb25nIGRvX21tdWV4dF9vcCgKICAgICAgICAgY2Fz ZSBNTVVFWFRfVExCX0ZMVVNIX01VTFRJOgogICAgICAgICBjYXNlIE1NVUVYVF9JTlZMUEdfTVVM VEk6CiAgICAgICAgIHsKLSAgICAgICAgICAgIGNwdW1hc2tfdCAqbWFzayA9IHRoaXNfY3B1KHNj cmF0Y2hfY3B1bWFzayk7CisgICAgICAgICAgICBjcHVtYXNrX3QgKm1hc2sgPSBnZXRfc2NyYXRj aF9jcHVtYXNrKCk7CiAKICAgICAgICAgICAgIGlmICggdW5saWtlbHkoY3VycmQgIT0gcGdfb3du ZXIpICkKICAgICAgICAgICAgICAgICByYyA9IC1FUEVSTTsKQEAgLTM2NTQsMTIgKzM2NTYsMTcg QEAgbG9uZyBkb19tbXVleHRfb3AoCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IG1hc2spKSApCiAgICAgICAgICAgICAgICAgcmMgPSAtRUlOVkFMOwogICAgICAgICAgICAgaWYg KCB1bmxpa2VseShyYykgKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIHB1dF9zY3Jh dGNoX2NwdW1hc2soKTsKICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIH0KIAog ICAgICAgICAgICAgaWYgKCBvcC5jbWQgPT0gTU1VRVhUX1RMQl9GTFVTSF9NVUxUSSApCiAgICAg ICAgICAgICAgICAgZmx1c2hfdGxiX21hc2sobWFzayk7CiAgICAgICAgICAgICBlbHNlIGlmICgg X19hZGRyX29rKG9wLmFyZzEubGluZWFyX2FkZHIpICkKICAgICAgICAgICAgICAgICBmbHVzaF90 bGJfb25lX21hc2sobWFzaywgb3AuYXJnMS5saW5lYXJfYWRkcik7CisgICAgICAgICAgICBwdXRf c2NyYXRjaF9jcHVtYXNrKCk7CisKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CiAKQEAg LTM2OTIsNyArMzY5OSw3IEBAIGxvbmcgZG9fbW11ZXh0X29wKAogICAgICAgICAgICAgZWxzZSBp ZiAoIGxpa2VseShjYWNoZV9mbHVzaF9wZXJtaXR0ZWQoY3VycmQpKSApCiAgICAgICAgICAgICB7 CiAgICAgICAgICAgICAgICAgdW5zaWduZWQgaW50IGNwdTsKLSAgICAgICAgICAgICAgICBjcHVt YXNrX3QgKm1hc2sgPSB0aGlzX2NwdShzY3JhdGNoX2NwdW1hc2spOworICAgICAgICAgICAgICAg IGNwdW1hc2tfdCAqbWFzayA9IGdldF9zY3JhdGNoX2NwdW1hc2soKTsKIAogICAgICAgICAgICAg ICAgIGNwdW1hc2tfY2xlYXIobWFzayk7CiAgICAgICAgICAgICAgICAgZm9yX2VhY2hfb25saW5l X2NwdShjcHUpCkBAIC0zNzAwLDYgKzM3MDcsNyBAQCBsb25nIGRvX21tdWV4dF9vcCgKICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBlcl9jcHUoY3B1X3NpYmxp bmdfbWFzaywgY3B1KSkgKQogICAgICAgICAgICAgICAgICAgICAgICAgX19jcHVtYXNrX3NldF9j cHUoY3B1LCBtYXNrKTsKICAgICAgICAgICAgICAgICBmbHVzaF9tYXNrKG1hc2ssIEZMVVNIX0NB Q0hFKTsKKyAgICAgICAgICAgICAgICBwdXRfc2NyYXRjaF9jcHVtYXNrKCk7CiAgICAgICAgICAg ICB9CiAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgcmMgPSAtRUlOVkFMOwpAQCAt NDE2NSwxMiArNDE3MywxMyBAQCBsb25nIGRvX21tdV91cGRhdGUoCiAgICAgICAgICAqIEZvcmNl IG90aGVyIHZDUFUtcyBvZiB0aGUgYWZmZWN0ZWQgZ3Vlc3QgdG8gcGljayB1cCBMNCBlbnRyeQog ICAgICAgICAgKiBjaGFuZ2VzIChpZiBhbnkpLgogICAgICAgICAgKi8KLSAgICAgICAgdW5zaWdu ZWQgaW50IGNwdSA9IHNtcF9wcm9jZXNzb3JfaWQoKTsKLSAgICAgICAgY3B1bWFza190ICptYXNr ID0gcGVyX2NwdShzY3JhdGNoX2NwdW1hc2ssIGNwdSk7CisgICAgICAgIGNwdW1hc2tfdCAqbWFz ayA9IGdldF9zY3JhdGNoX2NwdW1hc2soKTsKIAotICAgICAgICBjcHVtYXNrX2FuZG5vdChtYXNr LCBwdF9vd25lci0+ZGlydHlfY3B1bWFzaywgY3B1bWFza19vZihjcHUpKTsKKyAgICAgICAgY3B1 bWFza19hbmRub3QobWFzaywgcHRfb3duZXItPmRpcnR5X2NwdW1hc2ssCisgICAgICAgICAgICAg ICAgICAgICAgIGNwdW1hc2tfb2Yoc21wX3Byb2Nlc3Nvcl9pZCgpKSk7CiAgICAgICAgIGlmICgg IWNwdW1hc2tfZW1wdHkobWFzaykgKQogICAgICAgICAgICAgZmx1c2hfbWFzayhtYXNrLCBGTFVT SF9UTEJfR0xPQkFMIHwgRkxVU0hfUk9PVF9QR1RCTCk7CisgICAgICAgIHB1dF9zY3JhdGNoX2Nw dW1hc2soKTsKICAgICB9CiAKICAgICBwZXJmY19hZGQobnVtX3BhZ2VfdXBkYXRlcywgaSk7CkBA IC00MzYxLDcgKzQzNzAsNyBAQCBzdGF0aWMgaW50IF9fZG9fdXBkYXRlX3ZhX21hcHBpbmcoCiAg ICAgICAgICAgICBtYXNrID0gZC0+ZGlydHlfY3B1bWFzazsKICAgICAgICAgICAgIGJyZWFrOwog ICAgICAgICBkZWZhdWx0OgotICAgICAgICAgICAgbWFzayA9IHRoaXNfY3B1KHNjcmF0Y2hfY3B1 bWFzayk7CisgICAgICAgICAgICBtYXNrID0gZ2V0X3NjcmF0Y2hfY3B1bWFzaygpOwogICAgICAg ICAgICAgcmMgPSB2Y3B1bWFza190b19wY3B1bWFzayhkLCBjb25zdF9ndWVzdF9oYW5kbGVfZnJv bV9wdHIoYm1hcF9wdHIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2lkKSwKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgbWFzayk7CkBAIC00MzgxLDcgKzQzOTAsNyBAQCBzdGF0aWMgaW50 IF9fZG9fdXBkYXRlX3ZhX21hcHBpbmcoCiAgICAgICAgICAgICBtYXNrID0gZC0+ZGlydHlfY3B1 bWFzazsKICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICBkZWZhdWx0OgotICAgICAgICAgICAg bWFzayA9IHRoaXNfY3B1KHNjcmF0Y2hfY3B1bWFzayk7CisgICAgICAgICAgICBtYXNrID0gZ2V0 X3NjcmF0Y2hfY3B1bWFzaygpOwogICAgICAgICAgICAgcmMgPSB2Y3B1bWFza190b19wY3B1bWFz ayhkLCBjb25zdF9ndWVzdF9oYW5kbGVfZnJvbV9wdHIoYm1hcF9wdHIsCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2 b2lkKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFzayk7CkBAIC00 MzkyLDYgKzQ0MDEsOSBAQCBzdGF0aWMgaW50IF9fZG9fdXBkYXRlX3ZhX21hcHBpbmcoCiAgICAg ICAgIGJyZWFrOwogICAgIH0KIAorICAgIGlmICggbWFzayAmJiBtYXNrICE9IGQtPmRpcnR5X2Nw dW1hc2sgKQorICAgICAgICBwdXRfc2NyYXRjaF9jcHVtYXNrKCk7CisKICAgICByZXR1cm4gcmM7 CiB9CiAKZGlmZiAtLWdpdCBhL3hlbi9hcmNoL3g4Ni9tc2kuYyBiL3hlbi9hcmNoL3g4Ni9tc2ku YwppbmRleCBjODVjZjlmODVhLi4xZWMxY2M1MWQzIDEwMDY0NAotLS0gYS94ZW4vYXJjaC94ODYv bXNpLmMKKysrIGIveGVuL2FyY2gveDg2L21zaS5jCkBAIC0xNTksMTMgKzE1OSwxNSBAQCB2b2lk IG1zaV9jb21wb3NlX21zZyh1bnNpZ25lZCB2ZWN0b3IsIGNvbnN0IGNwdW1hc2tfdCAqY3B1X21h c2ssIHN0cnVjdCBtc2lfbXNnCiAKICAgICBpZiAoIGNwdV9tYXNrICkKICAgICB7Ci0gICAgICAg IGNwdW1hc2tfdCAqbWFzayA9IHRoaXNfY3B1KHNjcmF0Y2hfY3B1bWFzayk7CisgICAgICAgIGNw dW1hc2tfdCAqbWFzazsKIAogICAgICAgICBpZiAoICFjcHVtYXNrX2ludGVyc2VjdHMoY3B1X21h c2ssICZjcHVfb25saW5lX21hcCkgKQogICAgICAgICAgICAgcmV0dXJuOwogCisgICAgICAgIG1h c2sgPSBnZXRfc2NyYXRjaF9jcHVtYXNrKCk7CiAgICAgICAgIGNwdW1hc2tfYW5kKG1hc2ssIGNw dV9tYXNrLCAmY3B1X29ubGluZV9tYXApOwogICAgICAgICBtc2ctPmRlc3QzMiA9IGNwdV9tYXNr X3RvX2FwaWNpZChtYXNrKTsKKyAgICAgICAgcHV0X3NjcmF0Y2hfY3B1bWFzaygpOwogICAgIH0K IAogICAgIG1zZy0+YWRkcmVzc19oaSA9IE1TSV9BRERSX0JBU0VfSEk7CmRpZmYgLS1naXQgYS94 ZW4vaW5jbHVkZS9hc20teDg2L3NtcC5oIGIveGVuL2luY2x1ZGUvYXNtLXg4Ni9zbXAuaAppbmRl eCAxYWE1NWQ0MWUxLi5iOTk0NDg4ZDlmIDEwMDY0NAotLS0gYS94ZW4vaW5jbHVkZS9hc20teDg2 L3NtcC5oCisrKyBiL3hlbi9pbmNsdWRlL2FzbS14ODYvc21wLmgKQEAgLTI2LDYgKzI2LDIxIEBA IERFQ0xBUkVfUEVSX0NQVShjcHVtYXNrX3Zhcl90LCBjcHVfc2libGluZ19tYXNrKTsKIERFQ0xB UkVfUEVSX0NQVShjcHVtYXNrX3Zhcl90LCBjcHVfY29yZV9tYXNrKTsKIERFQ0xBUkVfUEVSX0NQ VShjcHVtYXNrX3Zhcl90LCBzY3JhdGNoX2NwdW1hc2spOwogCitzdGF0aWMgaW5saW5lIGNwdW1h c2tfdCAqc2NyYXRjaF9jcHVtYXNrKGNvbnN0IGNoYXIgKmZuKQoreworICAgIHN0YXRpYyBERUZJ TkVfUEVSX0NQVShjb25zdCBjaGFyICosIHNjcmF0Y2hfY3B1bWFza191c2UpOworCisgICAgaWYg KCBmbiAmJiB1bmxpa2VseSh0aGlzX2NwdShzY3JhdGNoX2NwdW1hc2tfdXNlKSkgKQorICAgICAg ICBwYW5pYygic2NyYXRjaCBDUFUgbWFzayBhbHJlYWR5IGluIHVzZSBieSAlc1xuIiwKKyAgICAg ICAgICAgICAgdGhpc19jcHUoc2NyYXRjaF9jcHVtYXNrX3VzZSkpOworICAgIHRoaXNfY3B1KHNj cmF0Y2hfY3B1bWFza191c2UpID0gZm47CisKKyAgICByZXR1cm4gZm4gPyB0aGlzX2NwdShzY3Jh dGNoX2NwdW1hc2spIDogTlVMTDsKK30KKworI2RlZmluZSBnZXRfc2NyYXRjaF9jcHVtYXNrKCkg c2NyYXRjaF9jcHVtYXNrKF9fZnVuY19fKQorI2RlZmluZSBwdXRfc2NyYXRjaF9jcHVtYXNrKCkg KCh2b2lkKXNjcmF0Y2hfY3B1bWFzayhOVUxMKSkKKwogLyoKICAqIERvIHdlLCBmb3IgcGxhdGZv cm0gcmVhc29ucywgbmVlZCB0byBhY3R1YWxseSBrZWVwIENQVXMgb25saW5lIHdoZW4gd2UKICAq IHdvdWxkIG90aGVyd2lzZSBwcmVmZXIgdGhlbSB0byBiZSBvZmY/CgoKX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVsIG1haWxpbmcgbGlzdApY ZW4tZGV2ZWxAbGlzdHMueGVucHJvamVjdC5vcmcKaHR0cHM6Ly9saXN0cy54ZW5wcm9qZWN0Lm9y Zy9tYWlsbWFuL2xpc3RpbmZvL3hlbi1kZXZlbA==