From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [216.205.24.124]) by sourceware.org (Postfix) with ESMTP id 41F2D385801D for ; Mon, 13 Sep 2021 18:11:18 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 41F2D385801D Received: from mail-io1-f70.google.com (mail-io1-f70.google.com [209.85.166.70]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-373-zQB4Pp9POd2lKNYBdTPRPg-1; Mon, 13 Sep 2021 14:11:16 -0400 X-MC-Unique: zQB4Pp9POd2lKNYBdTPRPg-1 Received: by mail-io1-f70.google.com with SMTP id s22-20020a5e98160000b02905afde383110so14471958ioj.8 for ; Mon, 13 Sep 2021 11:11:16 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=QSw51hlXhaJ6ijf302pR0u2MoZ4BNbj5LhjwTNhqSsA=; b=N+2jjA/UVOSrLu91Zxe1xIfGbLupyB9phUmE2io7wyqKUapMWVexK+RrwTsCuccCmn ZQHypdSMnKJla2w65CVQs9R2KOGGZxkMgxoaAjK8UnUhv4IleiHYGRYA+bRAO/dx4T7G WFPHPX57qyFZLn0HS6LSOgHyZdxr089ng01NR8y7cZnjetdI1k8vn7dMaFqyGPALJm3C chf01rXDKHAHgilt1LwFiOFiVZs+vSe4m3VIrbZKO1mO08hZfh9ZoJLiBDAMM9s5buUB 67AAkCMUcbOM5wC535/jptA2LU4uYEZscRrvl2YsSo+ld03n9M9sWK9we2D5iSgvZjGR xBxg== X-Gm-Message-State: AOAM530X8enbO8Q1tO3GSiGjzLJJNIEUkhxMtt4mjOU8Ox7anYKTOAWR E9k+zmLob1dfKEbIfIn9zYCmyjBWjSBtjUAVohn8Cqci2b01DrFKTHD1BbcPXNhPTeYG1TmCs40 3Fm+Fjn4jzFUYHTpcQKJXzYDEZ2HwhfcsEoKaf5hGxA== X-Received: by 2002:a92:cccc:: with SMTP id u12mr9273594ilq.189.1631556675770; Mon, 13 Sep 2021 11:11:15 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxTszBYkhhtlWJz3kRci7MpuHKYoEGaKyY4JmS+Q2VkIUTo89klyd/i13lOmpVFf/BrAuHGyLAHOJJjc9ZoZwg= X-Received: by 2002:a92:cccc:: with SMTP id u12mr9273581ilq.189.1631556675528; Mon, 13 Sep 2021 11:11:15 -0700 (PDT) MIME-Version: 1.0 References: <20210826210213.GM416@redhat.com> In-Reply-To: From: Noah Sanci Date: Mon, 13 Sep 2021 14:11:04 -0400 Message-ID: Subject: Re: [Bug debuginfod/28034] client-side %-escape url characters To: Mark Wielaard , elfutils-devel@sourceware.org X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: multipart/mixed; boundary="00000000000013a35705cbe4646c" X-Spam-Status: No, score=-12.7 required=5.0 tests=BAYES_00, DKIMWL_WL_HIGH, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, KAM_BADIPHTTP, KAM_SHORT, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H2, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: elfutils-devel@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Elfutils-devel mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 13 Sep 2021 18:11:20 -0000 --00000000000013a35705cbe4646c Content-Type: text/plain; charset="UTF-8" Hello Quick arithmetic change to the original patch with an updated commit message. Best, Noah Sanci --00000000000013a35705cbe4646c Content-Type: text/x-patch; charset="US-ASCII"; name="0001-debuginfod-PR28034-No-longer-escape-and-loop-efficie.patch" Content-Disposition: attachment; filename="0001-debuginfod-PR28034-No-longer-escape-and-loop-efficie.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_ktiypjqy0 RnJvbSBjYjJhMzk1N2QwMTdmNDBlMWVkYjM1ZWQ4ZjhmZDNiOWRlZTFjNmJlIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOb2FoIFNhbmNpIDxuc2FuY2lAcmVkaGF0LmNvbT4KRGF0ZTog VGh1LCA5IFNlcCAyMDIxIDEzOjEwOjMzIC0wNDAwClN1YmplY3Q6IFtQQVRDSF0gZGVidWdpbmZv ZDogUFIyODAzNCAtIE5vIGxvbmdlciBlc2NhcGUgJy8nLCBhbmQgbG9vcAogZWZmaWNpZW5jeQoK UHJldmlvdXNseSwgdXJscyBjb250YWluaW5nICcvJywgc28gbW9zdCB1cmxzLCB3b3VsZCBlc2Nh cGUgJy8nIHRvICUyRiwKd2hpY2ggaXMgdW5kZXNpcmFibGUgZm9yIHVzZSBpbiBvdGhlciBsaWJy YXJpZXMgd2hpY2ggbWF5IGVzY2FwZQpkaWZmZXJlbnRseS4gVGhpcyBwYXRjaCBlc2NhcGVzIHRo ZSAnLycgYW5kIHJlcGxhY2VzIGFsbCBvZiB0aGVtCmVuc3VyaW5nIHRoZXJlIGFyZSBubyAlMkZz IHNlbnQuClNvbWUgaW5lZmZpY2llbmNpZXMgd2l0aGluIHRoZSBjb2RlIHdlcmUgZml4ZWQsIHN1 Y2ggYXMgY2hhbmdpbmcgY29uc3RhbnQKb3BlcmF0aW9ucyBvZiBhIHdoaWxlIGxvb3Agd2l0aGlu IGEgZm9yIGxvb3AgdG8gYSB3aGlsZSBsb29wIG91dHNpZGUgb2YKYSBmb3IgbG9vcC4gQWxzbyBz dHJsZW4gaXMgbm8gbG9uZ2VyIHVzZWQgd2l0aGluIHRoZSBsb29wLCBzaW1wbGlmeWluZwp0aGUg aW50ZXJpb3Igb3BlcmF0aW9ucyB0byBtZXJlIGFyaXRobWV0aWMuCgpodHRwczovL3NvdXJjZXdh cmUub3JnL2J1Z3ppbGxhL3Nob3dfYnVnLmNnaT9pZD0yODAzNAoKU2lnbmVkLW9mZi1ieTogTm9h aCBTYW5jaSA8bnNhbmNpQHJlZGhhdC5jb20+Ci0tLQogZGVidWdpbmZvZC9DaGFuZ2VMb2cgICAg ICAgICAgICAgICAgICAgfCAgNCArKwogZGVidWdpbmZvZC9kZWJ1Z2luZm9kLWNsaWVudC5jICAg ICAgICAgfCAzNSArKysrKysrKysrKy0tLS0KIHRlc3RzL0NoYW5nZUxvZyAgICAgICAgICAgICAg ICAgICAgICAgIHwgMTIgKysrLS0tCiB0ZXN0cy9NYWtlZmlsZS5hbSAgICAgICAgICAgICAgICAg ICAgICB8ICAyICsKIHRlc3RzL3J1bi1kZWJ1Z2luZm9kLXBlcmNlbnQtZXNjYXBlLnNoIHwgNjAg KysrKysrKysrKysrKysrKysrKysrKysrKysKIDUgZmlsZXMgY2hhbmdlZCwgMTAwIGluc2VydGlv bnMoKyksIDEzIGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNzU1IHRlc3RzL3J1bi1kZWJ1 Z2luZm9kLXBlcmNlbnQtZXNjYXBlLnNoCgpkaWZmIC0tZ2l0IGEvZGVidWdpbmZvZC9DaGFuZ2VM b2cgYi9kZWJ1Z2luZm9kL0NoYW5nZUxvZwppbmRleCAxMTczZjljZC4uYjhlYWE4OGMgMTAwNjQ0 Ci0tLSBhL2RlYnVnaW5mb2QvQ2hhbmdlTG9nCisrKyBiL2RlYnVnaW5mb2QvQ2hhbmdlTG9nCkBA IC0yLDYgKzIsMTAgQEAKIAogCSogZGVidWdpbmZvZC5jeHggKGxpYmFyY2hpdmVfZmRjYWNoZTo6 bG9va3VwKTogQWRkIGVuZGwgYWZ0ZXIKIAlvYmF0Y2hlZChjbG9nKSBsaW5lLgorMjAyMS0wOS0x MyAgTm9haCBTYW5jaSAgPG5zYW5jaUByZWRoYXQuY29tPgorCisJKiBkZWJ1Z2luZm9kLWNsaWVu dC5jIChkZWJ1Z2luZm9kX3F1ZXJ5X3NlcnZlcik6IFJlbW92ZWQgY29uc3RhbnQKKwlvcGVyYXRp b25zIGZyb20gYSBsb29wLiBjdXJsX2ZyZWUgbWVtb3J5LgogCiAyMDIxLTA5LTA2ICBEbWl0cnkg Vi4gTGV2aW4gIDxsZHZAYWx0bGludXgub3JnPgogCmRpZmYgLS1naXQgYS9kZWJ1Z2luZm9kL2Rl YnVnaW5mb2QtY2xpZW50LmMgYi9kZWJ1Z2luZm9kL2RlYnVnaW5mb2QtY2xpZW50LmMKaW5kZXgg ZDQxNzIzY2UuLjhhMWM2OGQ1IDEwMDY0NAotLS0gYS9kZWJ1Z2luZm9kL2RlYnVnaW5mb2QtY2xp ZW50LmMKKysrIGIvZGVidWdpbmZvZC9kZWJ1Z2luZm9kLWNsaWVudC5jCkBAIC04ODMsNiArODgz LDMyIEBAIGRlYnVnaW5mb2RfcXVlcnlfc2VydmVyIChkZWJ1Z2luZm9kX2NsaWVudCAqYywKICAg ICAgIGRhdGFbaV0uZXJyYnVmWzBdID0gJ1wwJzsKICAgICB9CiAKKyAgY2hhciAqZXNjYXBlZF9z dHJpbmcgPSBOVUxMOworICBzaXplX3QgZXNjYXBlZF9zdHJsZW4gPSAwOworICBpZiAoZmlsZW5h bWUpCisgICAgeworICAgICAgZXNjYXBlZF9zdHJpbmcgPSBjdXJsX2Vhc3lfZXNjYXBlKCZ0YXJn ZXRfaGFuZGxlLCBmaWxlbmFtZSsxLCAwKTsKKyAgICAgIGlmICghZXNjYXBlZF9zdHJpbmcpCisg ICAgICAgIHsKKyAgICAgICAgICByYyA9IC1FTk9NRU07CisgICAgICAgICAgZ290byBvdXQyOwor ICAgICAgICB9CisgICAgICBjaGFyICpsb2MgPSBlc2NhcGVkX3N0cmluZzsKKyAgICAgIGVzY2Fw ZWRfc3RybGVuID0gc3RybGVuKGVzY2FwZWRfc3RyaW5nKTsKKyAgICAgIHdoaWxlICgobG9jID0g c3Ryc3RyKGxvYywgIiUyRiIpKSkKKyAgICAgICAgeworICAgICAgICAgIGxvY1swXSA9ICcvJzsK KyAgICAgICAgICAvL3B1bGwgdGhlIHN0cmluZyBiYWNrIGFmdGVyIHJlcGxhY2VtZW50CisgICAg ICAgICAgLy8gbG9jLWVzY2FwZWRfc3RyaW5nIGZpbmRzIHRoZSBkaXN0YW5jZSBmcm9tIHRoZSBv cmlnaW4gdG8gdGhlIG5ldyBsb2NhdGlvbgorICAgICAgICAgIC8vIC0gMiBhY2NvdW50cyBmb3Ig dGhlIDJGIHdoaWNoIHJlbWFpbiBhbmQgZG9uJ3QgbmVlZCB0byBiZSBtZWFzdXJlZC4KKyAgICAg ICAgICAvLyBUaGUgdHdvIGFib3ZlIHN1YnRyYWN0ZWQgZnJvbSBlc2NhcGVkX3N0cmxlbiB5aWVs ZHMgdGhlIHJlbWFpbmluZyBjaGFyYWN0ZXJzCisgICAgICAgICAgLy8gaW4gdGhlIHN0cmluZyB3 aGljaCB3ZSB3YW50IHRvIHB1bGwgYmFjaworICAgICAgICAgIG1lbW1vdmUobG9jKzEsIGxvYysz LGVzY2FwZWRfc3RybGVuIC0gKGxvYy1lc2NhcGVkX3N0cmluZykgLSAyKTsKKyAgICAgICAgICAv L0JlY2F1c2UgdGhlIDJGIHdhcyBvdmVyd3JpdHRlbiBpbiB0aGUgbWVtbW92ZSAoYXMgZGVzaXJl ZCkgZXNjYXBlZF9zdHJsZW4gaXMKKyAgICAgICAgICAvLyBub3cgdHdvIHNob3J0ZXIuCisgICAg ICAgICAgZXNjYXBlZF9zdHJsZW4gLT0gMjsKKyAgICAgICAgfQorICAgIH0KICAgLyogSW5pdGlh bGl6ZSBlYWNoIGhhbmRsZS4gICovCiAgIGZvciAoaW50IGkgPSAwOyBpIDwgbnVtX3VybHM7IGkr KykKICAgICB7CkBAIC05MDQsMTYgKzkzMCw4IEBAIGRlYnVnaW5mb2RfcXVlcnlfc2VydmVyIChk ZWJ1Z2luZm9kX2NsaWVudCAqYywKICAgICAgIGlmIChmaWxlbmFtZSkgLyogbXVzdCBzdGFydCB3 aXRoIC8gKi8KICAgICAgICAgewogICAgICAgICAgIC8qIFBSMjgwMzQgZXNjYXBlIGNoYXJhY3Rl cnMgaW4gY29tcGxldGVkIHVybCB0byAlaGggZm9ybWF0LiAqLwotICAgICAgICAgIGNoYXIgKmVz Y2FwZWRfc3RyaW5nOwotICAgICAgICAgIGVzY2FwZWRfc3RyaW5nID0gY3VybF9lYXN5X2VzY2Fw ZShkYXRhW2ldLmhhbmRsZSwgZmlsZW5hbWUsIDApOwotICAgICAgICAgIGlmICghZXNjYXBlZF9z dHJpbmcpCi0gICAgICAgICAgICB7Ci0gICAgICAgICAgICAgIHJjID0gLUVOT01FTTsKLSAgICAg ICAgICAgICAgZ290byBvdXQyOwotICAgICAgICAgICAgfQogICAgICAgICAgIHNucHJpbnRmKGRh dGFbaV0udXJsLCBQQVRIX01BWCwgIiVzLyVzLyVzLyVzIiwgc2VydmVyX3VybCwKICAgICAgICAg ICAgICAgICAgICBidWlsZF9pZF9ieXRlcywgdHlwZSwgZXNjYXBlZF9zdHJpbmcpOwotICAgICAg ICAgIGN1cmxfZnJlZShlc2NhcGVkX3N0cmluZyk7CiAgICAgICAgIH0KICAgICAgIGVsc2UKICAg ICAgICAgc25wcmludGYoZGF0YVtpXS51cmwsIFBBVEhfTUFYLCAiJXMvJXMvJXMiLCBzZXJ2ZXJf dXJsLCBidWlsZF9pZF9ieXRlcywgdHlwZSk7CkBAIC05NTMsNiArOTcxLDcgQEAgZGVidWdpbmZv ZF9xdWVyeV9zZXJ2ZXIgKGRlYnVnaW5mb2RfY2xpZW50ICpjLAogICAgICAgY3VybF9tdWx0aV9h ZGRfaGFuZGxlKGN1cmxtLCBkYXRhW2ldLmhhbmRsZSk7CiAgICAgfQogCisgIGlmIChmaWxlbmFt ZSkgY3VybF9mcmVlKGVzY2FwZWRfc3RyaW5nKTsKICAgLyogUXVlcnkgc2VydmVycyBpbiBwYXJh bGxlbC4gICovCiAgIGlmICh2ZmQgPj0gMCkKICAgICBkcHJpbnRmICh2ZmQsICJxdWVyeSAlZCB1 cmxzIGluIHBhcmFsbGVsXG4iLCBudW1fdXJscyk7CmRpZmYgLS1naXQgYS90ZXN0cy9DaGFuZ2VM b2cgYi90ZXN0cy9DaGFuZ2VMb2cKaW5kZXggMTE1NDY4NmEuLjNmMjE5MzIwIDEwMDY0NAotLS0g YS90ZXN0cy9DaGFuZ2VMb2cKKysrIGIvdGVzdHMvQ2hhbmdlTG9nCkBAIC0zMCw2ICszMCwxMSBA QAogCSogcnVuLWRlYnVnaW5mb2QtZmVkZXJhdGlvbi1tZXRyaWNzLnNoOiBMaWtld2lzZS4KIAkq IHJ1bi1kZWJ1Z2luZm9kLWZlZGVyYXRpb24tc3FsaXRlLnNoOiBMaWtld2lzZS4KIAorMjAyMS0w OS0xMyAgTm9haCBTYW5jaSAgPG5zYW5jaUByZWRoYXQuY29tPgorCisJKiBNYWtlZmlsZS5hbTog YWRkZWQgcnVuLWRlYnVnaW5mb2QtcGVyY2VudC1lc2NhcGUuc2ggdG8gVEVTVFMgYW5kCisJRVhU UkFfRElTVC4KKwogMjAyMS0wOS0wNiAgRG1pdHJ5IFYuIExldmluICA8bGR2QGFsdGxpbnV4Lm9y Zz4KIAogCSogZWxmY29weS5jIChjb3B5X2VsZik6IFJlbW92ZSBjYXN0IG9mIG1hbGxvYyByZXR1 cm4gdmFsdWUuCkBAIC0xNjQsMTEgKzE2OSw4IEBACiAyMDIxLTA3LTE2ICBOb2FoIFNhbmNpICA8 bnNhbmNpQHJlZGhhdC5jb20+CiAKIAlQUjI4MDM0Ci0JKiBydW4tZGVidWdpbmZvZC1maW5kLnNo OiBBZGRlZCBhIHRlc3QgZW5zdXJpbmcgZmlsZXMgd2l0aCAlCi0JZXNjYXBhYmxlIGNoYXJhY3Rl cnMgaW4gdGhlaXIgcGF0aHMgYXJlIGFjY2Vzc2libGUuIFRoZSB0ZXN0Ci0JaXRzZWxmIGlzIGNo YW5naW5nIHRoZSBuYW1lIG9mIGEgYmluYXJ5IGtub3duIHByZXZpb3VzbHkgYXMgcHJvZyB0bwot CXArciVvJGcuIEdlbmVyYWwgb3BlcmF0aW9ucyBzdWNoIGFzIGFjY2Vzc2luZyBwK3IlbyRnIGFj dHMgYXMgdGhlCi0JdGVzdCBmb3IgJS1lc2NhcGUgY2hlY2tpbmcuCisJKiBydW4tZGVidWdpbmZv ZC1wZXJjZW50LWVzY2FwZS5zaDogQWRkZWQgYSB0ZXN0IGVuc3VyaW5nIGZpbGVzIHdpdGggJQor CWVzY2FwYWJsZSBjaGFyYWN0ZXJzIGluIHRoZWlyIHBhdGhzIGFyZSBhY2Nlc3NpYmxlLgogCiAy MDIxLTA3LTIxICBOb2FoIFNhbmNpIDxuc2FuY2lAcmVkaGF0LmNvbT4KIApkaWZmIC0tZ2l0IGEv dGVzdHMvTWFrZWZpbGUuYW0gYi90ZXN0cy9NYWtlZmlsZS5hbQppbmRleCAyMjk0MjczMy4uNDNj MzRjZTYgMTAwNjQ0Ci0tLSBhL3Rlc3RzL01ha2VmaWxlLmFtCisrKyBiL3Rlc3RzL01ha2VmaWxl LmFtCkBAIC0yMzEsNiArMjMxLDcgQEAgVEVTVFMgKz0gcnVuLWRlYnVnaW5mb2QtZGxvcGVuLnNo IFwKIAkgcnVuLWRlYnVnaW5mb2QtZmVkZXJhdGlvbi1zcWxpdGUuc2ggXAogCSBydW4tZGVidWdp bmZvZC1mZWRlcmF0aW9uLWxpbmsuc2ggXAogCSBydW4tZGVidWdpbmZvZC1mZWRlcmF0aW9uLW1l dHJpY3Muc2ggXAorICAgICAgICAgcnVuLWRlYnVnaW5mb2QtcGVyY2VudC1lc2NhcGUuc2ggXAog CSBydW4tZGVidWdpbmZvZC14LWZvcndhcmRlZC1mb3Iuc2gKIGVuZGlmCiBlbmRpZgpAQCAtNTI0 LDYgKzUyNSw3IEBAIEVYVFJBX0RJU1QgPSBydW4tYXJleHRyYWN0LnNoIHJ1bi1hcnN5bXRlc3Qu c2ggcnVuLWFyLnNoIFwKIAkgICAgIHJ1bi1kZWJ1Z2luZm9kLWFyY2hpdmUtZ3Jvb20uc2ggXAog CSAgICAgcnVuLWRlYnVnaW5mb2QtYXJjaGl2ZS1yZW5hbWUuc2ggXAogICAgICAgICAgICAgIHJ1 bi1kZWJ1Z2luZm9kLWFyY2hpdmUtdGVzdC5zaCBcCisgICAgICAgICAgICAgcnVuLWRlYnVnaW5m b2QtcGVyY2VudC1lc2NhcGUuc2ggXAogCSAgICAgZGVidWdpbmZvZC1ycG1zL2ZlZG9yYTMwL2hl bGxvMi0xLjAtMi5zcmMucnBtIFwKIAkgICAgIGRlYnVnaW5mb2QtcnBtcy9mZWRvcmEzMC9oZWxs bzItMS4wLTIueDg2XzY0LnJwbSBcCiAJICAgICBkZWJ1Z2luZm9kLXJwbXMvZmVkb3JhMzAvaGVs bG8yLWRlYnVnaW5mby0xLjAtMi54ODZfNjQucnBtIFwKZGlmZiAtLWdpdCBhL3Rlc3RzL3J1bi1k ZWJ1Z2luZm9kLXBlcmNlbnQtZXNjYXBlLnNoIGIvdGVzdHMvcnVuLWRlYnVnaW5mb2QtcGVyY2Vu dC1lc2NhcGUuc2gKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5kZXggMDAwMDAwMDAuLmY3ZDhkYzY2 Ci0tLSAvZGV2L251bGwKKysrIGIvdGVzdHMvcnVuLWRlYnVnaW5mb2QtcGVyY2VudC1lc2NhcGUu c2gKQEAgLTAsMCArMSw2MCBAQAorIyEvdXNyL2Jpbi9lbnYgYmFzaAorIworIyBDb3B5cmlnaHQg KEMpIDIwMTktMjAyMSBSZWQgSGF0LCBJbmMuCisjIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIGVsZnV0 aWxzLgorIworIyBUaGlzIGZpbGUgaXMgZnJlZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1 dGUgaXQgYW5kL29yIG1vZGlmeQorIyBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5l cmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorIyB0aGUgRnJlZSBTb2Z0d2FyZSBG b3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvcgorIyAoYXQgeW91 ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorIworIyBlbGZ1dGlscyBpcyBkaXN0cmlidXRl ZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLCBidXQKKyMgV0lUSE9VVCBBTlkg V0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorIyBNRVJDSEFO VEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCisj IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisjCisjIFlvdSBz aG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNl bnNlCisjIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtLiAgSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cu Z251Lm9yZy9saWNlbnNlcy8+LgorCisuICRzcmNkaXIvZGVidWdpbmZvZC1zdWJyLnNoICAjIGlu Y2x1ZGVzIHNldCAtZQorIyBmb3IgdGVzdCBjYXNlIGRlYnVnZ2luZywgdW5jb21tZW50Ogorc2V0 IC14Cit1bnNldCBWQUxHUklORF9DTUQKKyMgVGhpcyB2YXJpYWJsZSBpcyBlc3NlbnRpYWwgYW5k IGVuc3VyZXMgbm8gdGltZS1yYWNlIGZvciBjbGFpbWluZyBwb3J0cyBvY2N1cnMKKyMgc2V0IGJh c2UgdG8gYSB1bmlxdWUgbXVsdGlwbGUgb2YgMTAwIG5vdCB1c2VkIGluIGFueSBvdGhlciAncnVu LWRlYnVnaW5mb2QtKicgdGVzdAorYmFzZT0xMDAwMAorZ2V0X3BvcnRzCitEQj0ke1BXRH0vLmRl YnVnaW5mb2RfdG1wLnNxbGl0ZQordGVtcGZpbGVzICREQgorbWtkaXIgRgorZW52IExEX0xJQlJB UllfUEFUSD0kbGRwYXRoICR7YWJzX2J1aWxkZGlyfS8uLi9kZWJ1Z2luZm9kL2RlYnVnaW5mb2Qg JFZFUkJPU0UgXAorICAgIC1GIC1SIC1kICREQiAtcCAkUE9SVDEgLXQwIC1nMCAtdiBSICR7UFdE fS9GID4gdmxvZyRQT1JUMSAyPiYxICYKK1BJRDE9JCEKK3RlbXBmaWxlcyB2bG9nJFBPUlQxCitl cnJmaWxlcyB2bG9nJFBPUlQxCisjIFNlcnZlciBtdXN0IGJlY29tZSByZWFkeQord2FpdF9yZWFk eSAkUE9SVDEgJ3JlYWR5JyAxCisjIEJlIHBhdGllbnQgd2hlbiBydW4gb24gYSBidXN5IG1hY2hp bmUgdGhpbmdzIG1pZ2h0IHRha2UgYSBiaXQuCisKKyMgQnVpbGQgYSBub24tc3RyaXBwZWQgYmlu YXJ5CitlY2hvICJpbnQgbWFpbigpIHsgcmV0dXJuIDA7IH0iID4gJHtQV0R9L0YvcCsrclwkXCNv Xl5nLmMKK2djYyAtV2wsLS1idWlsZC1pZCAtZyAtbyAke1BXRH0vRi9wKytyXCRcI29eXmcgJHtQ V0R9L0YvcCsrclwkXCNvXl5nLmMKK0JVSUxESUQ9YGVudiBMRF9MSUJSQVJZX1BBVEg9JGxkcGF0 aCAke2Fic19idWlsZGRpcn0vLi4vc3JjL3JlYWRlbGYgXAorICAgICAgICAgIC1hICR7UFdEfS9G L3ArK3JcXCRcI29eXmcgfCBncmVwICdCdWlsZCBJRCcgfCBjdXQgLWQgJyAnIC1mIDdgCit0ZW1w ZmlsZXMgJHtQV0R9L0YvcCsrclwkXCNvXl5nLmMgJHtQV0R9L0YvcCsrclwkXCNvXl5nCitraWxs IC1VU1IxICRQSUQxCisjIE5vdyB0aGVyZSBzaG91bGQgYmUgMSBmaWxlcyBpbiB0aGUgaW5kZXgK K3dhaXRfcmVhZHkgJFBPUlQxICd0aHJlYWRfd29ya190b3RhbHtyb2xlPSJ0cmF2ZXJzZSJ9JyAx Cit3YWl0X3JlYWR5ICRQT1JUMSAndGhyZWFkX3dvcmtfcGVuZGluZ3tyb2xlPSJzY2FuIn0nIDAK K3dhaXRfcmVhZHkgJFBPUlQxICd0aHJlYWRfYnVzeXtyb2xlPSJzY2FuIn0nIDAKK3JtIC1yZiAk REVCVUdJTkZPRF9DQUNIRV9QQVRIICMgY2xlYW4gaXQgZnJvbSBwcmV2aW91cyB0ZXN0cworbHMg RgorZW52IERFQlVHSU5GT0RfQ0FDSEVfUEFUSD0ke1BXRH0vLmNsaWVudF9jYWNoZSBERUJVR0lO Rk9EX1VSTFM9Imh0dHA6Ly8xMjcuMC4wLjE6JFBPUlQxIiBcCisgICAgTERfTElCUkFSWV9QQVRI PSRsZHBhdGggJHthYnNfdG9wX2J1aWxkZGlyfS9kZWJ1Z2luZm9kL2RlYnVnaW5mb2QtZmluZCAt dnZ2IHNvdXJjZSBGL3ArK3JcJFwjb15eZyAke2Fic19idWlsZGRpcn0vRi9wKytyXCRcI29eXmcu YyA+IHZsb2cxIDI+JjEgfHwgdHJ1ZQordGVtcGZpbGVzIHZsb2cxCitncmVwICdGL3AlMkIlMkJy JTI0JTIzbyU1RSU1RWcuYycgdmxvZzEKKwora2lsbCAkUElEMQord2FpdCAkUElEMQorUElEMT0w CitleGl0IDAKLS0gCjIuMzEuMQoK --00000000000013a35705cbe4646c--