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 [170.10.133.124]) by sourceware.org (Postfix) with ESMTP id 03C96384B007 for ; Thu, 8 Jul 2021 19:22:27 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 03C96384B007 Received: from mail-il1-f199.google.com (mail-il1-f199.google.com [209.85.166.199]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-228-3CFw9LBWP3CsIBt99KxRbw-1; Thu, 08 Jul 2021 15:22:26 -0400 X-MC-Unique: 3CFw9LBWP3CsIBt99KxRbw-1 Received: by mail-il1-f199.google.com with SMTP id i11-20020a056e02004bb029020269661e11so2933045ilr.13 for ; Thu, 08 Jul 2021 12:22:26 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=edf0HNjfEonV32ArYCB7oLAsiMlMm/eJnylTDESFcJE=; b=TDwoj6Gs0PtJKZS0koMkkBgZDV2OmISknJJ6+n4dCYbKeavQJC8T8m6zhuYat9alDo kHNb145tAbJf+WyTZNUrtioP6N4Ikv5cm8WUqp3sz9dwEh7igZNtq0HUKm7vVaeWzs9V U5JH+TNQOPOh43KhSqVcQmJ1tBMmYOOQ8JvXv/5qidZSiD8cP4yfLRUUCidXTNP4PTCG rjfjHCEaQL+dvah954WFMd0lSerwHK2UKzmPtUJbKzQT02qL5Whsomf4DRLa2fJa4dkS fsb5eWpLiDjjo9h8NIRKYNFMOwkZvKrYqQDsJd8IsXNayxjPqrXxMO9x9J0ASIO8HHRH HF5w== X-Gm-Message-State: AOAM5331OFf/Y0eIYEcpKlS75OksQ2Jq42wqPGg0bWlVyHtYGE0WczLy SZBHGvog4wb2+G2nzRCPzpqbIgSIWp9ZVrCFl+0FHV/iGT592n3czoTqn0NGT/BtyShyFda9TxS CVFtlmjA3jq5LjH2FT0QQ574l6h+Y74sKhn6V8qBT3A== X-Received: by 2002:a05:6638:3382:: with SMTP id h2mr2269859jav.131.1625772145493; Thu, 08 Jul 2021 12:22:25 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzPfa0JanZ0KItExQZUlVN3vtBDq2E1IHrjPXv8whOVyUM3sb32incvHwZtGjqmJg9kTro12ZM8l20yqofCh34= X-Received: by 2002:a05:6638:3382:: with SMTP id h2mr2269844jav.131.1625772145292; Thu, 08 Jul 2021 12:22:25 -0700 (PDT) MIME-Version: 1.0 From: Noah Sanci Date: Thu, 8 Jul 2021 15:22:14 -0400 Message-ID: Subject: [debuginfod/25978] To: elfutils-devel@sourceware.org X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: multipart/mixed; boundary="00000000000034f50405c6a193c9" X-Spam-Status: No, score=-14.4 required=5.0 tests=BAYES_00, DKIMWL_WL_HIGH, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H4, RCVD_IN_MSPIKE_WL, 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: Thu, 08 Jul 2021 19:22:30 -0000 --00000000000034f50405c6a193c9 Content-Type: text/plain; charset="UTF-8" Hello, Please find the patch information for pr25978 attached. Noah Sanci --00000000000034f50405c6a193c9 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-debuginfod-PR25978-Created-the-prefetch-fdcache.patch" Content-Disposition: attachment; filename="0001-debuginfod-PR25978-Created-the-prefetch-fdcache.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_kqvaq35t0 RnJvbSBhZjgwNDMxYWY5NmIzZDFmOTIxZGYyNjQ2NzI4MjlkYjcxYjQ2ZDIwIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBOb2FoIDxuc2FuY2lAcmVkaGF0LmNvbT4KRGF0ZTogVGh1LCAx MCBKdW4gMjAyMSAxMDoyOTo0NSAtMDQwMApTdWJqZWN0OiBbUEFUQ0hdIGRlYnVnaW5mb2Q6IFBS MjU5NzggLSBDcmVhdGVkIHRoZSBwcmVmZXRjaCBmZGNhY2hlCgpUaGUgZGVidWdpbmZvZCBmZGNh Y2hlLXByZWZldGNoIGxvZ2ljIGhhcyBiZWVuIG9ic2VydmVkIHRvIHNob3cgc29tZQpkZWdlbmVy YWNpZXMgaW4gb3BlcmF0aW9uLiAgU2luY2UgZmRjYWNoZSBldmljdGlvbnMgYXJlIGRvbmUKZnJl cXVlbnRseSwgYW5kIGZyZXNobHkgcHJlZmV0Y2hlZCBhcmNoaXZlIGVsZW1lbnRzIGFyZSBwdXQg YXQgdGhlCmJhY2sgb2YgbHJ1W10sIGVhY2ggZXZpY3Rpb24gcm91bmQgY2FuIHN1bW1hcmlseSBu dWtlIHRoaW5ncyB0aGF0CndlcmUganVzdCBwcmVmZXRjaGVkIC4uLi4gYW5kIGFyZSBqdXN0IGdv aW5nIHRvIGJlIHByZWZldGNoZWQgYWdhaW4uCkl0IHdvdWxkIGJlIGJldHRlciB0byBoYXZlIHR3 byBscnUgbGlzdHMsIG9yIGJlaW5nIGFibGUgdG8gaW5zZXJ0Cm5ld2x5IHByZWZldGNoZWQgZW50 cmllcyBzb21ld2hlcmUgaW4gdGhlIG1pZGRsZSBvZiB0aGUgbGlzdCByYXRoZXIKdGhhbiBhdCB0 aGUgdmVyeSB2ZXJ5IGVuZC4KCmh0dHBzOi8vc291cmNld2FyZS5vcmcvYnVnemlsbGEvc2hvd19i dWcuY2dpP2lkPTI1OTc4CgpTaWduZWQtb2ZmLWJ5OiBOb2FoIFNhbmNpIDxuc2FuY2lAcmVkaGF0 LmNvbT4KLS0tCiBkZWJ1Z2luZm9kL0NoYW5nZUxvZyAgICAgICAgIHwgIDE1ICsrKysKIGRlYnVn aW5mb2QvZGVidWdpbmZvZC5jeHggICAgfCAxNDYgKysrKysrKysrKysrKysrKysrKysrKysrKysr KystLS0tLS0KIGRvYy9kZWJ1Z2luZm9kLjggICAgICAgICAgICAgfCAgMTAgKysrCiB0ZXN0cy9D aGFuZ2VMb2cgICAgICAgICAgICAgIHwgICA3ICsrCiB0ZXN0cy9ydW4tZGVidWdpbmZvZC1maW5k LnNoIHwgIDI1ICsrKysrLQogNSBmaWxlcyBjaGFuZ2VkLCAxNzggaW5zZXJ0aW9ucygrKSwgMjUg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZGVidWdpbmZvZC9DaGFuZ2VMb2cgYi9kZWJ1Z2lu Zm9kL0NoYW5nZUxvZwppbmRleCAyODZjOTEwYS4uMDJhZDM0YjQgMTAwNjQ0Ci0tLSBhL2RlYnVn aW5mb2QvQ2hhbmdlTG9nCisrKyBiL2RlYnVnaW5mb2QvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTgg QEAKKzIwMjEtMDYtMjggTm9haCBTYW5jaSA8bnNhbmNpQHJlZGhhdC5jb20+CisKKwlQUjI1OTc4 CisJKiBkZWJ1Z2luZm9kLmN4eCAob3B0aW9ucyk6IEFkZGVkIC0tZmRjYWNoZS1wcmVmZXRjaC1m ZHMvbWJzIG9wdGlvbnMuCisJKHNldF9tZXRyaWMpOiBBZGRlZCBhIGNvbmRpdGlvbiBmb3IgZmRj YWNoZV9taW50bXAgdG8gZW5zdXJlIG5vCisJbmVnYXRpdmUgcGVyY2VudGFnZXMgb3IgcGVyY2Vu dGFnZXMgbGFyZ2VyIHRoYW4gMTAwJSBhcmUgZ2l2ZW4uCisJKGdsb2JhbHMpOiBBZGRlZCBmZGNh Y2hlX3ByZWZldGNoX21icy9mZGNhY2hlX3ByZWZldGNoX2Zkcy4KKwkoc2V0X21ldHJpY3MpOiBE aWZmZXJlbnRpYXRlIGJldHdlZW4gbHJ1IGFuZCBwcmVmZXRjaCBtZXRyaWNzLgorCShpbnRlcm4p OiBBZGRlZCBwcmVmZXRjaCBmdW5jdGlvbmFsaXR5IGZvciBudWtpbmcgcHJlZXhpc3RpbmcgY29w aWVzCisJYW5kIGluY3JlbWVudGluZyBwcmVmZXRjaCBtZXRyaWNzLgorCShsb29rdXApOiBTZWFy Y2ggcHJlZmV0Y2ggY2FjaGUgYW5kIGluY3JlbWVudCBhc3NvY2lhdGVkIG1ldHJpY3MuIFVwb24K KwlmaW5kaW5nIGluIHRoZSBwcmVmZXRjaCBjYWNoZSBtb3ZlIHRoZSBlbGVtZW50IHRvIHRoZSBs cnUgY2FjaGUuCisJKGxpbWl0KTogQXJndW1lbnRzIHVwZGF0ZWQuIFVwZGF0ZSBzaXplIG9mIHBy ZWZldGNoIGNhY2hlLgorCShtYWluKTogTG9nIHByZWZldGNoIGFuZCBjYWNoZSBmZHMvbWJzCisK IDIwMjEtMDYtMDMgIEZyYW5rIENoLiBFaWdsZXIgPGZjaGVAcmVkaGF0LmNvbT4KIAogCVBSMjc4 NjMKZGlmZiAtLWdpdCBhL2RlYnVnaW5mb2QvZGVidWdpbmZvZC5jeHggYi9kZWJ1Z2luZm9kL2Rl YnVnaW5mb2QuY3h4CmluZGV4IDU0MzA0NGM2Li5jMzQ4YWE2MSAxMDA2NDQKLS0tIGEvZGVidWdp bmZvZC9kZWJ1Z2luZm9kLmN4eAorKysgYi9kZWJ1Z2luZm9kL2RlYnVnaW5mb2QuY3h4CkBAIC0z NjgsNyArMzY4LDEzIEBAIHN0YXRpYyBjb25zdCBzdHJ1Y3QgYXJncF9vcHRpb24gb3B0aW9uc1td ID0KICAgIHsgImZkY2FjaGUtcHJlZmV0Y2giLCBBUkdQX0tFWV9GRENBQ0hFX1BSRUZFVENILCAi TlVNIiwgMCwgIk51bWJlciBvZiBhcmNoaXZlIGZpbGVzIHRvIHByZWZldGNoIGludG8gZmRjYWNo ZS4iLCAwIH0sCiAjZGVmaW5lIEFSR1BfS0VZX0ZEQ0FDSEVfTUlOVE1QIDB4MTAwNAogICAgeyAi ZmRjYWNoZS1taW50bXAiLCBBUkdQX0tFWV9GRENBQ0hFX01JTlRNUCwgIk5VTSIsIDAsICJNaW5p bXVtIGZyZWUgc3BhY2UlIG9uIHRtcGRpci4iLCAwIH0sCi0gICB7IE5VTEwsIDAsIE5VTEwsIDAs IE5VTEwsIDAgfQorI2RlZmluZSBBUkdQX0tFWV9GRENBQ0hFX1BSRUZFVENIX01CUyAweDEwMDUK KyAgIHsgImZkY2FjaGUtcHJlZmV0Y2gtbWJzIiwgQVJHUF9LRVlfRkRDQUNIRV9QUkVGRVRDSF9N QlMsICJNQiIsIDAsIk1lZ2FieXRlcyBhbGxvY2F0ZWQgdG8gdGhlIFwKKyAgICAgIHByZWZldGNo IGNhY2hlLiIsIDB9LAorI2RlZmluZSBBUkdQX0tFWV9GRENBQ0hFX1BSRUZFVENIX0ZEUyAweDEw MDYKKyAgIHsgImZkY2FjaGUtcHJlZmV0Y2gtZmRzIiwgQVJHUF9LRVlfRkRDQUNIRV9QUkVGRVRD SF9GRFMsICJOVU0iLCAwLCJOdW1iZXIgb2YgZmlsZXMgYWxsb2NhdGVkIHRvIHRoZSBcCisgICAg ICBwcmVmZXRjaCBjYWNoZS4iLCAwfSwKKyAgIHsgTlVMTCwgMCwgTlVMTCwgMCwgTlVMTCwgMCB9 LAogICB9OwogCiAvKiBTaG9ydCBkZXNjcmlwdGlvbiBvZiBwcm9ncmFtLiAgKi8KQEAgLTQxMiw2 ICs0MTgsOCBAQCBzdGF0aWMgbG9uZyBmZGNhY2hlX2ZkczsKIHN0YXRpYyBsb25nIGZkY2FjaGVf bWJzOwogc3RhdGljIGxvbmcgZmRjYWNoZV9wcmVmZXRjaDsKIHN0YXRpYyBsb25nIGZkY2FjaGVf bWludG1wOworc3RhdGljIGxvbmcgZmRjYWNoZV9wcmVmZXRjaF9tYnM7CitzdGF0aWMgbG9uZyBm ZGNhY2hlX3ByZWZldGNoX2ZkczsKIHN0YXRpYyBzdHJpbmcgdG1wZGlyOwogCiBzdGF0aWMgdm9p ZCBzZXRfbWV0cmljKGNvbnN0IHN0cmluZyYga2V5LCBkb3VibGUgdmFsdWUpOwpAQCAtNTM4LDEw ICs1NDYsMjIgQEAgcGFyc2Vfb3B0IChpbnQga2V5LCBjaGFyICphcmcsCiAgICAgICBicmVhazsK ICAgICBjYXNlIEFSR1BfS0VZX0ZEQ0FDSEVfTUlOVE1QOgogICAgICAgZmRjYWNoZV9taW50bXAg PSBhdG9sIChhcmcpOworICAgICAgaWYoIGZkY2FjaGVfbWludG1wID4gMTAwIHx8IGZkY2FjaGVf bWludG1wIDwgMCApCisgICAgICAgIGFyZ3BfZmFpbHVyZShzdGF0ZSwgMSwgRUlOVkFMLCAiZmRj YWNoZSBtaW50bXAgcGVyY2VudCIpOwogICAgICAgYnJlYWs7CiAgICAgY2FzZSBBUkdQX0tFWV9B Ukc6CiAgICAgICBzb3VyY2VfcGF0aHMuaW5zZXJ0KHN0cmluZyhhcmcpKTsKICAgICAgIGJyZWFr OworICAgIGNhc2UgQVJHUF9LRVlfRkRDQUNIRV9QUkVGRVRDSF9GRFM6CisgICAgICBmZGNhY2hl X3ByZWZldGNoX2ZkcyA9IGF0b2woYXJnKTsKKyAgICAgIGlmICggZmRjYWNoZV9wcmVmZXRjaF9m ZHMgPCAwKQorICAgICAgICBhcmdwX2ZhaWx1cmUoc3RhdGUsIDEsIEVJTlZBTCwgImZkY2FjaGUg cHJlZmV0Y2ggZmRzIik7CisgICAgICBicmVhazsKKyAgICBjYXNlIEFSR1BfS0VZX0ZEQ0FDSEVf UFJFRkVUQ0hfTUJTOgorICAgICAgZmRjYWNoZV9wcmVmZXRjaF9tYnMgPSBhdG9sKGFyZyk7Cisg ICAgICBpZiAoIGZkY2FjaGVfcHJlZmV0Y2hfbWJzIDwgMCkKKyAgICAgICAgYXJncF9mYWlsdXJl KHN0YXRlLCAxLCBFSU5WQUwsICJmZGNhY2hlIHByZWZldGNoIG1icyIpOworICAgICAgYnJlYWs7 CiAgICAgICAvLyBjYXNlICdoJzogYXJncF9zdGF0ZV9oZWxwIChzdGF0ZSwgc3RkZXJyLCBBUkdQ X0hFTFBfTE9OR3xBUkdQX0hFTFBfRVhJVF9PSyk7CiAgICAgZGVmYXVsdDogcmV0dXJuIEFSR1Bf RVJSX1VOS05PV047CiAgICAgfQpAQCAtMTE5OSwyMyArMTIxOSwzMiBAQCBwcml2YXRlOgogICB9 OwogICBkZXF1ZTxmZGNhY2hlX2VudHJ5PiBscnU7IC8vIEBoZWFkOiBtb3N0IHJlY2VudGx5IHVz ZWQKICAgbG9uZyBtYXhfZmRzOworICBkZXF1ZTxmZGNhY2hlX2VudHJ5PiBwcmVmZXRjaDsgLy8g cHJlZmV0Y2hlZAogICBsb25nIG1heF9tYnM7CisgIGxvbmcgbWF4X3ByZWZldGNoX21iczsKKyAg bG9uZyBtYXhfcHJlZmV0Y2hfZmRzOwogCiBwdWJsaWM6CiAgIHZvaWQgc2V0X21ldHJpY3MoKQog ICB7Ci0gICAgZG91YmxlIHRvdGFsX21iID0gMC4wOworICAgIGRvdWJsZSBmZGNhY2hlX21iID0g MC4wOworICAgIGRvdWJsZSBwcmVmZXRjaF9tYiA9IDAuMDsKICAgICBmb3IgKGF1dG8gaSA9IGxy dS5iZWdpbigpOyBpIDwgbHJ1LmVuZCgpOyBpKyspCi0gICAgICB0b3RhbF9tYiArPSBpLT5mZF9z aXplX21iOwotICAgIHNldF9tZXRyaWMoImZkY2FjaGVfYnl0ZXMiLCAoaW50NjRfdCkodG90YWxf bWIqMTAyNC4wKjEwMjQuMCkpOworICAgICAgZmRjYWNoZV9tYiArPSBpLT5mZF9zaXplX21iOwor ICAgIGZvciAoYXV0byBqID0gcHJlZmV0Y2guYmVnaW4oKTsgaiA8IHByZWZldGNoLmVuZCgpOyBq KyspCisgICAgICBwcmVmZXRjaF9tYiArPSBqLT5mZF9zaXplX21iOworICAgIHNldF9tZXRyaWMo ImZkY2FjaGVfYnl0ZXMiLCBmZGNhY2hlX21iKjEwMjQuMCoxMDI0LjApOwogICAgIHNldF9tZXRy aWMoImZkY2FjaGVfY291bnQiLCBscnUuc2l6ZSgpKTsKKyAgICBzZXRfbWV0cmljKCJmZGNhY2hl X3ByZWZldGNoX2J5dGVzIiwgcHJlZmV0Y2hfbWIqMTAyNC4wKjEwMjQuMCk7CisgICAgc2V0X21l dHJpYygiZmRjYWNoZV9wcmVmZXRjaF9jb3VudCIsIHByZWZldGNoLnNpemUoKSk7CiAgIH0KIAog ICB2b2lkIGludGVybihjb25zdCBzdHJpbmcmIGEsIGNvbnN0IHN0cmluZyYgYiwgc3RyaW5nIGZk LCBvZmZfdCBzeiwgYm9vbCBmcm9udF9wKQogICB7CiAgICAgewogICAgICAgdW5pcXVlX2xvY2s8 bXV0ZXg+IGxvY2soZmRjYWNoZV9sb2NrKTsKLSAgICAgIGZvciAoYXV0byBpID0gbHJ1LmJlZ2lu KCk7IGkgPCBscnUuZW5kKCk7IGkrKykgLy8gbnVrZSBwcmVleGlzdGluZyBjb3B5CisgICAgICAv LyBudWtlIHByZWV4aXN0aW5nIGNvcHkKKyAgICAgIGZvciAoYXV0byBpID0gbHJ1LmJlZ2luKCk7 IGkgPCBscnUuZW5kKCk7IGkrKykKICAgICAgICAgewogICAgICAgICAgIGlmIChpLT5hcmNoaXZl ID09IGEgJiYgaS0+ZW50cnkgPT0gYikKICAgICAgICAgICAgIHsKQEAgLTEyMjUsMTcgKzEyNTQs MjggQEAgcHVibGljOgogICAgICAgICAgICAgICBicmVhazsgLy8gbXVzdCBub3QgY29udGludWUg aXRlcmF0aW5nCiAgICAgICAgICAgICB9CiAgICAgICAgIH0KKyAgICAgIC8vIG51a2UgcHJlZXhp c3RpbmcgY29weSBpbiBwcmVmZXRjaAorICAgICAgZm9yIChhdXRvIGkgPSBwcmVmZXRjaC5iZWdp bigpOyBpIDwgcHJlZmV0Y2guZW5kKCk7IGkrKykKKyAgICAgICAgeworICAgICAgICAgIGlmIChp LT5hcmNoaXZlID09IGEgJiYgaS0+ZW50cnkgPT0gYikKKyAgICAgICAgICAgIHsKKyAgICAgICAg ICAgICAgdW5saW5rIChpLT5mZC5jX3N0cigpKTsKKyAgICAgICAgICAgICAgcHJlZmV0Y2guZXJh c2UoaSk7CisgICAgICAgICAgICAgIGluY19tZXRyaWMoImZkY2FjaGVfb3BfY291bnQiLCJvcCIs InByZWZldGNoX2RlcXVldWUiKTsKKyAgICAgICAgICAgICAgYnJlYWs7IC8vIG11c3Qgbm90IGNv bnRpbnVlIGl0ZXJhdGluZworICAgICAgICAgICAgfQorICAgICAgICB9CiAgICAgICBkb3VibGUg bWIgPSAoc3orNjU1MzUpLzEwNDg1NzYuMDsgLy8gcm91bmQgdXAgdG8gNjRLIGJsb2NrCiAgICAg ICBmZGNhY2hlX2VudHJ5IG4gPSB7IGEsIGIsIGZkLCBtYiB9OwogICAgICAgaWYgKGZyb250X3Ap CiAgICAgICAgIHsKLSAgICAgICAgICBpbmNfbWV0cmljKCJmZGNhY2hlX29wX2NvdW50Iiwib3Ai LCJlbnF1ZXVlX2Zyb250Iik7CisgICAgICAgICAgaW5jX21ldHJpYygiZmRjYWNoZV9vcF9jb3Vu dCIsIm9wIiwiZW5xdWV1ZSIpOwogICAgICAgICAgIGxydS5wdXNoX2Zyb250KG4pOwogICAgICAg ICB9CiAgICAgICBlbHNlCiAgICAgICAgIHsKLSAgICAgICAgICBpbmNfbWV0cmljKCJmZGNhY2hl X29wX2NvdW50Iiwib3AiLCJlbnF1ZXVlX2JhY2siKTsKLSAgICAgICAgICBscnUucHVzaF9iYWNr KG4pOworICAgICAgICAgIGluY19tZXRyaWMoImZkY2FjaGVfb3BfY291bnQiLCJvcCIsInByZWZl dGNoX2VucXVldWUiKTsKKyAgICAgICAgICBwcmVmZXRjaC5wdXNoX2Zyb250KG4pOwogICAgICAg ICB9CiAgICAgICBpZiAodmVyYm9zZSA+IDMpCiAgICAgICAgIG9iYXRjaGVkKGNsb2cpIDw8ICJm ZGNhY2hlIGludGVybmVkIGE9IiA8PCBhIDw8ICIgYj0iIDw8IGIKQEAgLTEyNDgsMTAgKzEyODgs MTAgQEAgcHVibGljOgogICAgICAgewogICAgICAgICBpbmNfbWV0cmljKCJmZGNhY2hlX29wX2Nv dW50Iiwib3AiLCJlbWVyZy1mbHVzaCIpOwogICAgICAgICBvYmF0Y2hlZChjbG9nKSA8PCAiZmRj YWNoZSBlbWVyZ2VuY3kgZmx1c2ggZm9yIGZpbGxpbmcgdG1wZGlyIiA8PCBlbmRsOwotICAgICAg ICB0aGlzLT5saW1pdCgwLCAwKTsgLy8gZW1lcmdlbmN5IGZsdXNoCisgICAgICAgIHRoaXMtPmxp bWl0KDAsIDAsIDAsIDApOyAvLyBlbWVyZ2VuY3kgZmx1c2gKICAgICAgIH0KICAgICBlbHNlIGlm IChmcm9udF9wKQotICAgICAgdGhpcy0+bGltaXQobWF4X2ZkcywgbWF4X21icyk7IC8vIGFnZSBj YWNoZSBpZiByZXF1aXJlZAorICAgICAgdGhpcy0+bGltaXQobWF4X2ZkcywgbWF4X21icywgbWF4 X3ByZWZldGNoX2ZkcywgbWF4X3ByZWZldGNoX21icyk7IC8vIGFnZSBjYWNoZSBpZiByZXF1aXJl ZAogICB9CiAKICAgaW50IGxvb2t1cChjb25zdCBzdHJpbmcmIGEsIGNvbnN0IHN0cmluZyYgYikK QEAgLTEyNjcsNyArMTMwNywyMSBAQCBwdWJsaWM6CiAgICAgICAgICAgICAgIGxydS5lcmFzZShp KTsgLy8gaW52YWxpZGF0ZXMgaSwgc28gbm8gbW9yZSBpdGVyYXRpb24hCiAgICAgICAgICAgICAg IGxydS5wdXNoX2Zyb250KG4pOwogICAgICAgICAgICAgICBpbmNfbWV0cmljKCJmZGNhY2hlX29w X2NvdW50Iiwib3AiLCJyZXF1ZXVlX2Zyb250Iik7Ci0gICAgICAgICAgICAgIGZkID0gb3Blbihu LmZkLmNfc3RyKCksIE9fUkRPTkxZKTsgLy8gTkI6IG5vIHByb2JsZW0gaWYgZHVwKCkgZmFpbHM7 IGxvb2tzIGxpa2UgY2FjaGUgbWlzcworICAgICAgICAgICAgICBmZCA9IG9wZW4obi5mZC5jX3N0 cigpLCBPX1JET05MWSk7IAorICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIH0KKyAg ICAgICAgfQorICAgICAgLy8gSXRlcmF0ZSB0aHJvdWdoIHByZWZldGNoIHdoaWxlIGZkID09IC0x IHRvIGVuc3VyZSB0aGF0IG5vIGR1cGxpY2F0aW9uIGJldHdlZW4gbHJ1IGFuZCAKKyAgICAgIC8v IHByZWZldGNoIG9jY3Vycy4KKyAgICAgIGZvciAoIGF1dG8gaSA9IHByZWZldGNoLmJlZ2luKCk7 IGZkID09IC0xICYmIGkgPCBwcmVmZXRjaC5lbmQoKTsgKytpKQorICAgICAgICB7CisgICAgICAg ICAgaWYgKGktPmFyY2hpdmUgPT0gYSAmJiBpLT5lbnRyeSA9PSBiKQorICAgICAgICAgICAgeyAv LyBmb3VuZCBpdDsgdGFrZSB0aGUgZW50cnkgZnJvbSB0aGUgcHJlZmV0Y2ggZGVxdWUgdG8gdGhl IGxydSBkZXF1ZSwgc2luY2UgaXQgaGFzIG5vdyBiZWVuIGFjY2Vzc2VkLgorICAgICAgICAgICAg ICBmZGNhY2hlX2VudHJ5IG4gPSAqaTsKKyAgICAgICAgICAgICAgcHJlZmV0Y2guZXJhc2UoaSk7 CisgICAgICAgICAgICAgIGxydS5wdXNoX2Zyb250KG4pOworICAgICAgICAgICAgICBpbmNfbWV0 cmljKCJmZGNhY2hlX29wX2NvdW50Iiwib3AiLCJwcmVmZXRjaF9hY2Nlc3MiKTsKKyAgICAgICAg ICAgICAgZmQgPSBvcGVuKG4uZmQuY19zdHIoKSwgT19SRE9OTFkpOyAKICAgICAgICAgICAgICAg YnJlYWs7CiAgICAgICAgICAgICB9CiAgICAgICAgIH0KQEAgLTEyNzcsMTAgKzEzMzEsMTAgQEAg cHVibGljOgogICAgICAgewogICAgICAgICBpbmNfbWV0cmljKCJmZGNhY2hlX29wX2NvdW50Iiwi b3AiLCJlbWVyZy1mbHVzaCIpOwogICAgICAgICBvYmF0Y2hlZChjbG9nKSA8PCAiZmRjYWNoZSBl bWVyZ2VuY3kgZmx1c2ggZm9yIGZpbGxpbmcgdG1wZGlyIjsKLSAgICAgICAgdGhpcy0+bGltaXQo MCwgMCk7IC8vIGVtZXJnZW5jeSBmbHVzaAorICAgICAgICB0aGlzLT5saW1pdCgwLCAwLCAwLCAw KTsgLy8gZW1lcmdlbmN5IGZsdXNoCiAgICAgICB9CiAgICAgZWxzZSBpZiAoZmQgPj0gMCkKLSAg ICAgIHRoaXMtPmxpbWl0KG1heF9mZHMsIG1heF9tYnMpOyAvLyBhZ2UgY2FjaGUgaWYgcmVxdWly ZWQKKyAgICAgIHRoaXMtPmxpbWl0KG1heF9mZHMsIG1heF9tYnMsIG1heF9wcmVmZXRjaF9mZHMs IG1heF9wcmVmZXRjaF9tYnMpOyAvLyBhZ2UgY2FjaGUgaWYgcmVxdWlyZWQKIAogICAgIHJldHVy biBmZDsKICAgfQpAQCAtMTI5Niw2ICsxMzUwLDE0IEBAIHB1YmxpYzoKICAgICAgICAgICAgIHJl dHVybiB0cnVlOwogICAgICAgICAgIH0KICAgICAgIH0KKyAgICBmb3IgKGF1dG8gaSA9IHByZWZl dGNoLmJlZ2luKCk7IGkgPCBwcmVmZXRjaC5lbmQoKTsgaSsrKQorICAgICAgeworICAgICAgICBp ZiAoaS0+YXJjaGl2ZSA9PSBhICYmIGktPmVudHJ5ID09IGIpCisgICAgICAgICAgeworICAgICAg ICAgICAgaW5jX21ldHJpYygiZmRjYWNoZV9vcF9jb3VudCIsIm9wIiwicHJlZmV0Y2hfcHJvYmVf aGl0Iik7CisgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAgICAgICB9CisgICAgICB9CiAg ICAgaW5jX21ldHJpYygiZmRjYWNoZV9vcF9jb3VudCIsIm9wIiwicHJvYmVfbWlzcyIpOwogICAg IHJldHVybiBmYWxzZTsKICAgfQpAQCAtMTMwNiw3ICsxMzY4LDcgQEAgcHVibGljOgogICAgIGZv ciAoYXV0byBpID0gbHJ1LmJlZ2luKCk7IGkgPCBscnUuZW5kKCk7IGkrKykKICAgICAgIHsKICAg ICAgICAgaWYgKGktPmFyY2hpdmUgPT0gYSAmJiBpLT5lbnRyeSA9PSBiKQotICAgICAgICAgIHsg Ly8gZm91bmQgaXQ7IG1vdmUgaXQgdG8gaGVhZCBvZiBscnUKKyAgICAgICAgICB7IC8vIGZvdW5k IGl0OyBlcmFzZSBpdCBmcm9tIGxydQogICAgICAgICAgICAgZmRjYWNoZV9lbnRyeSBuID0gKmk7 CiAgICAgICAgICAgICBscnUuZXJhc2UoaSk7IC8vIGludmFsaWRhdGVzIGksIHNvIG5vIG1vcmUg aXRlcmF0aW9uIQogICAgICAgICAgICAgaW5jX21ldHJpYygiZmRjYWNoZV9vcF9jb3VudCIsIm9w IiwiY2xlYXIiKTsKQEAgLTEzMTUsMTAgKzEzNzcsMjEgQEAgcHVibGljOgogICAgICAgICAgICAg cmV0dXJuOwogICAgICAgICAgIH0KICAgICAgIH0KKyAgICBmb3IgKGF1dG8gaSA9IHByZWZldGNo LmJlZ2luKCk7IGkgPCBwcmVmZXRjaC5lbmQoKTsgaSsrKQorICAgICAgeworICAgICAgICBpZiAo aS0+YXJjaGl2ZSA9PSBhICYmIGktPmVudHJ5ID09IGIpCisgICAgICAgICAgeyAvLyBmb3VuZCBp dDsgZXJhc2UgaXQgZnJvbSBscnUKKyAgICAgICAgICAgIGZkY2FjaGVfZW50cnkgbiA9ICppOwor ICAgICAgICAgICAgcHJlZmV0Y2guZXJhc2UoaSk7IC8vIGludmFsaWRhdGVzIGksIHNvIG5vIG1v cmUgaXRlcmF0aW9uIQorICAgICAgICAgICAgaW5jX21ldHJpYygiZmRjYWNoZV9vcF9jb3VudCIs Im9wIiwicHJlZmV0Y2hfY2xlYXIiKTsKKyAgICAgICAgICAgIHVubGluayAobi5mZC5jX3N0cigp KTsKKyAgICAgICAgICAgIHNldF9tZXRyaWNzKCk7CisgICAgICAgICAgICByZXR1cm47CisgICAg ICAgICAgfQorICAgICAgfQogICB9CiAKLQotICB2b2lkIGxpbWl0KGxvbmcgbWF4ZmRzLCBsb25n IG1heG1icywgYm9vbCBtZXRyaWNzX3AgPSB0cnVlKQorICB2b2lkIGxpbWl0KGxvbmcgbWF4ZmRz LCBsb25nIG1heG1icywgbG9uZyBtYXhwcmVmZXRjaGZkcywgbG9uZyBtYXhwcmVmZXRjaG1icyAs IGJvb2wgbWV0cmljc19wID0gdHJ1ZSkKICAgewogICAgIGlmICh2ZXJib3NlID4gMyAmJiAodGhp cy0+bWF4X2ZkcyAhPSBtYXhmZHMgfHwgdGhpcy0+bWF4X21icyAhPSBtYXhtYnMpKQogICAgICAg b2JhdGNoZWQoY2xvZykgPDwgImZkY2FjaGUgbGltaXRlZCB0byBtYXhmZHM9IiA8PCBtYXhmZHMg PDwgIiBtYXhtYnM9IiA8PCBtYXhtYnMgPDwgZW5kbDsKQEAgLTEzMjYsNyArMTM5OSw4IEBAIHB1 YmxpYzoKICAgICB1bmlxdWVfbG9jazxtdXRleD4gbG9jayhmZGNhY2hlX2xvY2spOwogICAgIHRo aXMtPm1heF9mZHMgPSBtYXhmZHM7CiAgICAgdGhpcy0+bWF4X21icyA9IG1heG1iczsKLQorICAg IHRoaXMtPm1heF9wcmVmZXRjaF9mZHMgPSBtYXhwcmVmZXRjaGZkczsKKyAgICB0aGlzLT5tYXhf cHJlZmV0Y2hfbWJzID0gbWF4cHJlZmV0Y2htYnM7CiAgICAgbG9uZyB0b3RhbF9mZCA9IDA7CiAg ICAgZG91YmxlIHRvdGFsX21iID0gMC4wOwogICAgIGZvciAoYXV0byBpID0gbHJ1LmJlZ2luKCk7 IGkgPCBscnUuZW5kKCk7IGkrKykKQEAgLTEzMzQsNyArMTQwOCw3IEBAIHB1YmxpYzoKICAgICAg ICAgLy8gYWNjdW11bGF0ZSB0b3RhbHMgZnJvbSBtb3N0IHJlY2VudGx5IHVzZWQgb25lIGdvaW5n IGJhY2t3YXJkCiAgICAgICAgIHRvdGFsX2ZkICsrOwogICAgICAgICB0b3RhbF9tYiArPSBpLT5m ZF9zaXplX21iOwotICAgICAgICBpZiAodG90YWxfZmQgPiBtYXhfZmRzIHx8IHRvdGFsX21iID4g bWF4X21icykKKyAgICAgICAgaWYgKHRvdGFsX2ZkID4gdGhpcy0+bWF4X2ZkcyB8fCB0b3RhbF9t YiA+IHRoaXMtPm1heF9tYnMpCiAgICAgICAgICAgewogICAgICAgICAgICAgLy8gZm91bmQgdGhl IGN1dCBoZXJlIHBvaW50IQogCkBAIC0xMzUyLDYgKzE0MjYsMjkgQEAgcHVibGljOgogICAgICAg ICAgICAgYnJlYWs7CiAgICAgICAgICAgfQogICAgICAgfQorICAgIHRvdGFsX2ZkID0gMDsKKyAg ICB0b3RhbF9tYiA9IDAuMDsKKyAgICBmb3IoYXV0byBpID0gcHJlZmV0Y2guYmVnaW4oKTsgaSA8 IHByZWZldGNoLmVuZCgpOyBpKyspeworICAgICAgLy8gYWNjdW11bGF0ZSB0b3RhbHMgZnJvbSBt b3N0IHJlY2VudGx5IHVzZWQgb25lIGdvaW5nIGJhY2t3YXJkCisgICAgICAgIHRvdGFsX2ZkICsr OworICAgICAgICB0b3RhbF9tYiArPSBpLT5mZF9zaXplX21iOworICAgICAgICBpZiAodG90YWxf ZmQgPiB0aGlzLT5tYXhfcHJlZmV0Y2hfZmRzIHx8IHRvdGFsX21iID4gdGhpcy0+bWF4X3ByZWZl dGNoX21icykKKyAgICAgICAgICB7CisgICAgICAgICAgICAvLyBmb3VuZCB0aGUgY3V0IGhlcmUg cG9pbnQhCisgICAgICAgICAgICBmb3IgKGF1dG8gaiA9IGk7IGogPCBwcmVmZXRjaC5lbmQoKTsg aisrKSAvLyBjbG9zZSBhbGwgdGhlIGZkcyBmcm9tIGhlcmUgb24gaW4KKyAgICAgICAgICAgICAg eworICAgICAgICAgICAgICAgIGlmICh2ZXJib3NlID4gMykKKyAgICAgICAgICAgICAgICAgIG9i YXRjaGVkKGNsb2cpIDw8ICJmZGNhY2hlIGV2aWN0ZWQgZnJvbSBwcmVmZXRjaCBhPSIgPDwgai0+ YXJjaGl2ZSA8PCAiIGI9IiA8PCBqLT5lbnRyeQorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgPDwgIiBmZD0iIDw8IGotPmZkIDw8ICIgbWI9IiA8PCBqLT5mZF9zaXplX21iIDw8IGVu ZGw7CisgICAgICAgICAgICAgICAgaWYgKG1ldHJpY3NfcCkKKyAgICAgICAgICAgICAgICAgIGlu Y19tZXRyaWMoImZkY2FjaGVfb3BfY291bnQiLCJvcCIsInByZWZldGNoX2V2aWN0Iik7CisgICAg ICAgICAgICAgICAgdW5saW5rIChqLT5mZC5jX3N0cigpKTsKKyAgICAgICAgICAgICAgfQorCisg ICAgICAgICAgICBwcmVmZXRjaC5lcmFzZShpLCBwcmVmZXRjaC5lbmQoKSk7IC8vIGVyYXNlIHRo ZSBub2RlcyBnZW5lcmFsbHkKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgIH0KKyAgICB9 CiAgICAgaWYgKG1ldHJpY3NfcCkgc2V0X21ldHJpY3MoKTsKICAgfQogCkBAIC0xMzYwLDcgKzE0 NTcsNyBAQCBwdWJsaWM6CiAgIHsKICAgICAvLyB1bmxpbmsgYW55IGZkY2FjaGUgZW50cmllcyBp biAkVE1QRElSCiAgICAgLy8gZG9uJ3QgdXBkYXRlIG1ldHJpY3M7IHRob3NlIGdsb2JhbHMgbWF5 IGJlIGFscmVhZHkgZGVzdHJveWVkCi0gICAgbGltaXQoMCwgMCwgZmFsc2UpOworICAgIGxpbWl0 KDAsIDAsIDAsIDAsIGZhbHNlKTsKICAgfQogfTsKIHN0YXRpYyBsaWJhcmNoaXZlX2ZkY2FjaGUg ZmRjYWNoZTsKQEAgLTE1NDcsNyArMTY0NCw3IEBAIGhhbmRsZV9idWlsZGlkX3JfbWF0Y2ggKGJv b2wgaW50ZXJuYWxfcmVxX3AsCiAgICAgICAgICAgLy8gcmVzcG9uc2libGUgZm9yIHVubGlua2lu ZyBpdCBsYXRlci4KICAgICAgICAgICBmZGNhY2hlLmludGVybihiX3NvdXJjZTAsIGZuLAogICAg ICAgICAgICAgICAgICAgICAgICAgIHRtcHBhdGgsIGFyY2hpdmVfZW50cnlfc2l6ZShlKSwKLSAg ICAgICAgICAgICAgICAgICAgICAgICBmYWxzZSk7IC8vIHByZWZldGNoZWQgb25lcyBnbyB0byBi YWNrIG9mIGxydQorICAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlKTsgLy8gcHJlZmV0Y2hl ZCBvbmVzIGdvIHRvIHRoZSBwcmVmZXRjaCBjYWNoZQogICAgICAgICAgIHByZWZldGNoX2NvdW50 IC0tOwogICAgICAgICAgIGNsb3NlIChmZCk7IC8vIHdlJ3JlIG5vdCBzYXZpbmcgdGhpcyBmZCB0 byBtYWtlIGEgbWhkLXJlc3BvbnNlIGZyb20hCiAgICAgICAgICAgY29udGludWU7CkBAIC0zMjkz LDggKzMzOTAsOCBAQCB2b2lkIGdyb29tKCkKICAgc3FsaXRlM19kYl9yZWxlYXNlX21lbW9yeShk YnEpOyAvLyAuLi4gZm9yIGJvdGggY29ubmVjdGlvbnMKICAgZGVidWdpbmZvZF9wb29sX2dyb29t KCk7IC8vIGFuZCByZWxlYXNlIGFueSBkZWJ1Z2luZm9kX2NsaWVudCBvYmplY3RzIHdlJ3ZlIGJl ZW4gaG9sZGluZyBvbnRvCiAKLSAgZmRjYWNoZS5saW1pdCgwLDApOyAvLyByZWxlYXNlIHRoZSBm ZGNhY2hlIGNvbnRlbnRzCi0gIGZkY2FjaGUubGltaXQoZmRjYWNoZV9mZHMsZmRjYWNoZV9tYnMp OyAvLyByZXN0b3JlIHN0YXR1cyBxdW8gcGFyYW1ldGVycworICBmZGNhY2hlLmxpbWl0KDAsMCww LDApOyAvLyByZWxlYXNlIHRoZSBmZGNhY2hlIGNvbnRlbnRzCisgIGZkY2FjaGUubGltaXQoZmRj YWNoZV9mZHMsIGZkY2FjaGVfbWJzLCBmZGNhY2hlX3ByZWZldGNoX2ZkcywgZmRjYWNoZV9wcmVm ZXRjaF9tYnMpOyAvLyByZXN0b3JlIHN0YXR1cyBxdW8gcGFyYW1ldGVycwogCiAgIGNsb2NrX2dl dHRpbWUgKENMT0NLX01PTk9UT05JQywgJnRzX2VuZCk7CiAgIGRvdWJsZSBkZWx0YXMgPSAodHNf ZW5kLnR2X3NlYyAtIHRzX3N0YXJ0LnR2X3NlYykgKyAodHNfZW5kLnR2X25zZWMgLSB0c19zdGFy dC50dl9uc2VjKS8xLmU5OwpAQCAtMzQ1Niw3ICszNTUzLDcgQEAgbWFpbiAoaW50IGFyZ2MsIGNo YXIgKmFyZ3ZbXSkKICAgaWYgKHNjYW5fYXJjaGl2ZXMuc2l6ZSgpPT0wICYmICFzY2FuX2ZpbGVz ICYmIHNvdXJjZV9wYXRocy5zaXplKCk+MCkKICAgICBvYmF0Y2hlZChjbG9nKSA8PCAid2Fybmlu Zzogd2l0aG91dCAtRiAtUiAtVSAtWiwgaWdub3JpbmcgUEFUSHMiIDw8IGVuZGw7CiAKLSAgZmRj YWNoZS5saW1pdChmZGNhY2hlX2ZkcywgZmRjYWNoZV9tYnMpOworICBmZGNhY2hlLmxpbWl0KGZk Y2FjaGVfZmRzLCBmZGNhY2hlX21icywgZmRjYWNoZV9wcmVmZXRjaF9mZHMsIGZkY2FjaGVfcHJl ZmV0Y2hfbWJzKTsKIAogICAodm9pZCkgc2lnbmFsIChTSUdQSVBFLCBTSUdfSUdOKTsgLy8gbWlj cm9odHRwZCBjYW4gZ2VuZXJhdGUgaXQgaW5jaWRlbnRhbGx5LCBpZ25vcmUKICAgKHZvaWQpIHNp Z25hbCAoU0lHSU5ULCBzaWduYWxfaGFuZGxlcik7IC8vIF5DCkBAIC0zNjAwLDYgKzM2OTcsOSBA QCBtYWluIChpbnQgYXJnYywgY2hhciAqYXJndltdKQogICBvYmF0Y2hlZChjbG9nKSA8PCAiZmRj YWNoZSB0bXBkaXIgIiA8PCB0bXBkaXIgPDwgZW5kbDsKICAgb2JhdGNoZWQoY2xvZykgPDwgImZk Y2FjaGUgdG1wZGlyIG1pbiUgIiA8PCBmZGNhY2hlX21pbnRtcCA8PCBlbmRsOwogICBvYmF0Y2hl ZChjbG9nKSA8PCAiZ3Jvb20gdGltZSAiIDw8IGdyb29tX3MgPDwgZW5kbDsKKyAgb2JhdGNoZWQo Y2xvZykgPDwgInByZWZldGNoIGZkcyAiIDw8IGZkY2FjaGVfcHJlZmV0Y2hfZmRzIDw8IGVuZGw7 CisgIG9iYXRjaGVkKGNsb2cpIDw8ICJwcmVmZXRjaCBtYnMgIiA8PCBmZGNhY2hlX3ByZWZldGNo X21icyA8PCBlbmRsOworCiAgIGlmIChzY2FuX2FyY2hpdmVzLnNpemUoKT4wKQogICAgIHsKICAg ICAgIG9iYXRjaGVkIG9iKGNsb2cpOwpkaWZmIC0tZ2l0IGEvZG9jL2RlYnVnaW5mb2QuOCBiL2Rv Yy9kZWJ1Z2luZm9kLjgKaW5kZXggMWJhNDJjZjYuLjIzMjVlNWY3IDEwMDY0NAotLS0gYS9kb2Mv ZGVidWdpbmZvZC44CisrKyBiL2RvYy9kZWJ1Z2luZm9kLjgKQEAgLTIxMiw2ICsyMTIsMTYgQEAg JFRNUERJUiBvciBcZkIvdG1wXGZQIGZpbGVzeXN0ZW0uICBUaGlzIGlzIGJlY2F1c2UgdGhhdCBp cyB3aGVyZSB0aGUKIG1vc3QgcmVjZW50bHkgdXNlZCBleHRyYWN0ZWQgZmlsZXMgYXJlIGtlcHQu ICBHcm9vbWluZyBjbGVhbnMgdGhpcwogY2FjaGUuCiAKKy5UUAorLkIgIlwtXC1mZGNhY2hlXC1c LXByZWZldGNoXC1mZHM9TlVNIiAgIlwtXC1mZGNhY2hlXC1cLXByZWZldGNoXC1tYnM9TUIiCitD b25maWd1cmUgaG93IG1hbnkgZmlsZSBkZXNjcmlwdG9ycyAoZmRzKSBhbmQgbWVnYWJ5dGVzICht YnMpIGFyZQorYWxsb2NhdGVkIHRvIHRoZSBwcmVmZXRjaCBmZGNhY2hlLiBJZiB1bnNwZWNpZmll ZCwgdmFsdWVzIG9mCitcZkJcLVwtcHJlZmV0Y2hcLWZkc1xmUCBhbmQgXGZCXC1cLXByZWZldGNo XC1tYnNcZlAgZGVwZW5kCitvbiBjb25jdXJyZW5jeSBvZiB0aGUgc3lzdGVtIGFuZCBvbiB0aGUg YXZhaWxhYmxlIGRpc2sgc3BhY2Ugb24KK3RoZSAkVE1QRElSLiBBbGxvY2F0aW5nIG1vcmUgdG8g dGhlIHByZWZldGNoIGNhY2hlIHdpbGwgaW1wcm92ZQorcGVyZm9ybWFuY2UgaW4gZW52aXJvbm1l bnRzIHdoZXJlIGRpZmZlcmVudCBwYXJ0cyBvZiBzZXZlcmFsIGxhcmdlCithcmNoaXZlcyBhcmUg YmVpbmcgYWNjZXNzZWQuCisKIC5UUAogLkIgIlwtXC1mZGNhY2hlXC1taW50bXA9TlVNIgogQ29u ZmlndXJlIGEgZGlzayBzcGFjZSB0aHJlc2hvbGQgZm9yIGVtZXJnZW5jeSBmbHVzaGluZyBvZiB0 aGUgY2FjaGUuCmRpZmYgLS1naXQgYS90ZXN0cy9DaGFuZ2VMb2cgYi90ZXN0cy9DaGFuZ2VMb2cK aW5kZXggZDhmYTk3ZmEuLjk0MjAxOTU5IDEwMDY0NAotLS0gYS90ZXN0cy9DaGFuZ2VMb2cKKysr IGIvdGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTAgQEAKKzIwMjEtMDYtMjggIE5vYWggU2Fu Y2kgPG5zYW5jaUByZWRoYXQuY29tPgorCisJUFIyNTk3OAorCSogcnVuLWRlYnVnaW5mb2QtZmlu ZC5zaDogVGVzdCB0byBlbnN1cmUgb3B0aW9ucworCWZkY2FjaGUtcHJlZmV0Y2gtZmRzL21icyBh cmUgc2V0LiBDaGVjayB0aGF0IGluY19tZXRyaWMgd29ya3MgZm9yIGxydQorCWFuZCBwcmVmZXRj aCBjYWNoZSBtZXRyaWNzLgorCiAyMDIxLTA2LTE2ICBGcmFuayBDaC4gRWlnbGVyIDxmY2hlQHJl ZGhhdC5jb20+CiAKIAkqIHJ1bi1kZWJ1Z2luZm9kLWZpbmQuc2g6IEZpeCBpbnRlcm1pdHRlbnQg Z3Jvb20vc3RhbGUgZmFpbHVyZSwKZGlmZiAtLWdpdCBhL3Rlc3RzL3J1bi1kZWJ1Z2luZm9kLWZp bmQuc2ggYi90ZXN0cy9ydW4tZGVidWdpbmZvZC1maW5kLnNoCmluZGV4IDQ1NmRjMmY4Li42ZWJh NThmNCAxMDA3NTUKLS0tIGEvdGVzdHMvcnVuLWRlYnVnaW5mb2QtZmluZC5zaAorKysgYi90ZXN0 cy9ydW4tZGVidWdpbmZvZC1maW5kLnNoCkBAIC0xMTksMTIgKzExOSwxNSBAQCB3YWl0X3JlYWR5 KCkKICAgZmkKIH0KIAorRkRDQUNIRV9GRFM9NTAKK0ZEQ0FDSEVfTUJTPTE5MAorUFJFRkVUQ0hf RkRTPTEwCitQUkVGRVRDSF9NQlM9MTIwCiAjIGNyZWF0ZSBhIGJvZ3VzIC5ycG0gZmlsZSB0byBl dm9rZSBhIG1ldHJpYy12aXNpYmxlIGVycm9yCiAjIFVzZSBhIGN5Y2xpYyBzeW1saW5rIGluc3Rl YWQgb2YgY2htb2QgMDAwIHRvIG1ha2Ugc3VyZSBldmVuIHJvb3QKICMgd291bGQgc2VlIGFuIGVy cm9yIChydW5uaW5nIHRoZSB0ZXN0c3VpdGUgdW5kZXIgcm9vdCBpcyBOT1QgZW5jb3VyYWdlZCku CiBsbiAtcyBSL25vdGhpbmcucnBtIFIvbm90aGluZy5ycG0KLQotZW52IExEX0xJQlJBUllfUEFU SD0kbGRwYXRoIERFQlVHSU5GT0RfVVJMUz0gJHthYnNfYnVpbGRkaXJ9Ly4uL2RlYnVnaW5mb2Qv ZGVidWdpbmZvZCAkVkVSQk9TRSAtRiAtUiAtZCAkREIgLXAgJFBPUlQxIC10MCAtZzAgLS1mZGNh Y2hlLWZkcyAxIC0tZmRjYWNoZS1tYnMgMiAtLWZkY2FjaGUtbWludG1wIDAgLVogLnRhci54eiAt WiAudGFyLmJ6Mj1iemNhdCAtdiBSIEYgWiBMID4gdmxvZyRQT1JUMSAyPiYxICYKK2VudiBMRF9M SUJSQVJZX1BBVEg9JGxkcGF0aCBERUJVR0lORk9EX1VSTFM9ICR7YWJzX2J1aWxkZGlyfS8uLi9k ZWJ1Z2luZm9kL2RlYnVnaW5mb2QgJFZFUkJPU0UgLUYgLVIgLWQgJERCIC1wICRQT1JUMSAtdDAg LWcwIC0tZmRjYWNoZS1tYnM9JEZEQ0FDSEVfTUJTIC0tZmRjYWNoZS1mZHM9JEZEQ0FDSEVfRkRT IC0tZmRjYWNoZS1wcmVmZXRjaC1tYnM9JFBSRUZFVENIX01CUyAtLWZkY2FjaGUtcHJlZmV0Y2gt ZmRzPSRQUkVGRVRDSF9GRFMgLS1mZGNhY2hlLW1pbnRtcCAwIC1aIC50YXIueHogLVogLnRhci5i ejI9YnpjYXQgLXYgUiBGIFogTCA+IHZsb2ckUE9SVDEgMj4mMSAmCiBQSUQxPSQhCiB0ZW1wZmls ZXMgdmxvZyRQT1JUMQogZXJyZmlsZXMgdmxvZyRQT1JUMQpAQCAtNDcwLDYgKzQ3MywyNCBAQCBh cmNoaXZlX3Rlc3QgZjBhYTE1YjhhYmE0ZjNjMjhjYWMzYzJhNzM4MDFmZWZhNjQ0YTlmMiAvdXNy L3NyYy9kZWJ1Zy9oZWxsby0xLjAvaAogCiBlZ3JlcCAnKGxpYmMuZXJyb3IuKnJoZWw3KXwoYmMx ZmViZmQwM2NhKXwoZjBhYTE1YjhhYmEpJyB2bG9nJFBPUlQxCiAKKyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwor IyMgUFIyNTk3OAorIyBFbnN1cmUgdGhhdCB0aGUgZmRjYWNoZSBvcHRpb25zIGFyZSB3b3JraW5n LgorZ3JlcCAicHJlZmV0Y2ggZmRzIiB2bG9nJFBPUlQxCitncmVwICJwcmVmZXRjaCBtYnMiIHZs b2ckUE9SVDEKK2dyZXAgImZkY2FjaGUgZmRzIiB2bG9nJFBPUlQxCitncmVwICJmZGNhY2hlIG1i cyIgdmxvZyRQT1JUMQorIyBzZWFyY2ggdGhlIHZsb2cgdG8gZmluZCB3aGF0IG1ldHJpYyBjb3Vu dHMgc2hvdWxkIGJlIGFuZCBjaGVjayB0aGUgY29ycmVjdCBtZXRyaWNzCisjIHdlcmUgaW5jcmlt ZW50ZWQKK3dhaXRfcmVhZHkgJFBPUlQxICdmZGNhY2hlX29wX2NvdW50e29wPSJlbnF1ZXVlIn0n ICQoIGdyZXAgLWMgJ2ludGVybmVkLipmcm9udD0xJyB2bG9nJFBPUlQxICkKK3dhaXRfcmVhZHkg JFBPUlQxICdmZGNhY2hlX29wX2NvdW50e29wPSJldmljdCJ9JyAkKCBncmVwIC1jICdldmljdGVk IGE9LionIHZsb2ckUE9SVDEgKQord2FpdF9yZWFkeSAkUE9SVDEgJ2ZkY2FjaGVfb3BfY291bnR7 b3A9InByZWZldGNoX2VucXVldWUifScgJCggZ3JlcCAtYyAnaW50ZXJuZWQuKmZyb250PTAnIHZs b2ckUE9SVDEgKQord2FpdF9yZWFkeSAkUE9SVDEgJ2ZkY2FjaGVfb3BfY291bnR7b3A9InByZWZl dGNoX2V2aWN0In0nICQoIGdyZXAgLWMgJ2V2aWN0ZWQgZnJvbSBwcmVmZXRjaCBhPS4qZnJvbnQ9 MCcgdmxvZyRQT1JUMSB8fCB0cnVlICkKKyMgaWYgYWxsIGVucXVldWVkIGl0ZW1zIGFyZSBhbHNv IGV2aWN0ZWQgdGhlbiB3ZSBzaG91bGQgZXhwZWN0IHByZWZldGNoIHRvIGJlIGVtcHR5CitpZiBb ICRQRl9FTlFVRVVFRCAtZXEgJFBGX0VWSUNURUQgXTsgdGhlbgorICAgIHdhaXRfcmVhZHkgJFBP UlQxICdmZGNhY2hlX3ByZWZldGNoX2J5dGVzJyAwCisgICAgd2FpdF9yZWFkeSAkUE9SVDEgJ2Zk Y2FjaGVfcHJlZmV0Y2hfY291bnQnIDAKK2ZpCiAjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKIAogIyBGZWRlcmF0 aW9uIG1vZGUKLS0gCjIuMzEuMQoK --00000000000034f50405c6a193c9--