From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 128976 invoked by alias); 31 Mar 2017 15:05:35 -0000 Mailing-List: contact binutils-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: binutils-owner@sourceware.org Received: (qmail 128955 invoked by uid 89); 31 Mar 2017 15:05:34 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-22.2 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,RCVD_IN_DNSWL_NONE,RCVD_IN_SORBS_SPAM,SPF_PASS,UNSUBSCRIBE_BODY autolearn=ham version=3.3.2 spammy= X-HELO: mail-qt0-f172.google.com Received: from mail-qt0-f172.google.com (HELO mail-qt0-f172.google.com) (209.85.216.172) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Fri, 31 Mar 2017 15:05:23 +0000 Received: by mail-qt0-f172.google.com with SMTP id r45so67576659qte.3 for ; Fri, 31 Mar 2017 08:05:24 -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:in-reply-to:references:from:date :message-id:subject:to:cc; bh=vrju3wwbIUVS3gCDrjuouvJG2ps6BIN5yvS8Z1EblTg=; b=EL2iNyXhp777EVK7yKVrsCN1O7gXCeApb4TlTBoM1frg6c3tjV1qCEcGI/1Q/r9GAQ n/rSsW7VZ7qeRmZhVv/7HPXo9afXoykO5JRgzAxPo/ZRNkOPua3RpPrDZpWcaNGNcPPp QRfFfT1kmTW/H2qLv9ETqB5bUQ4wLdqbg41X17Jy/Qf5kXR6e0DQeiVYONunsBZDFW8o tDyVhAXqTN17lLiDIxNAvORm8Kc4iBbvzolEBOaMNATk4KVdfmux4dSkiWEpJjWQAwdd mljbDyXwlbjduM46IQVV0AL789CxWzJulDMEgPcT75KfclvQhSoa4XnB8yhH6hviZDE4 /gYg== X-Gm-Message-State: AFeK/H0XjmlbxX7gahmD9kpxNgj6c5HNDP5ZdLS3Ow5lJaAuBR4/zjgHhiUt7ZBakV59CXAs6vwVMCw6E3nb8w== X-Received: by 10.200.35.36 with SMTP id a33mr3192735qta.216.1490972723207; Fri, 31 Mar 2017 08:05:23 -0700 (PDT) MIME-Version: 1.0 Received: by 10.55.48.129 with HTTP; Fri, 31 Mar 2017 08:05:22 -0700 (PDT) In-Reply-To: <757b532e-8517-d84f-5973-afa60fcd6e42@redhat.com> References: <20170313182054.GA17055@intel.com> <64fcc130-b722-8669-a98c-960dab3aab30@redhat.com> <757b532e-8517-d84f-5973-afa60fcd6e42@redhat.com> From: "H.J. Lu" Date: Fri, 31 Mar 2017 15:05:00 -0000 Message-ID: Subject: Re: RFC: ld: Support ELF GNU program properties To: Nick Clifton Cc: Binutils Content-Type: multipart/mixed; boundary=001a113a7db889ff41054c0823d6 X-IsSubscribed: yes X-SW-Source: 2017-03/txt/msg00383.txt.bz2 --001a113a7db889ff41054c0823d6 Content-Type: text/plain; charset=UTF-8 Content-length: 686 On Fri, Mar 31, 2017 at 6:16 AM, Nick Clifton wrote: > Hi H.J. > >> Put my draft at >> https://github.com/hjl-tools/linux-abi/wiki/property-draft.pdf > > Just one request - could a link to this document be included in the > sources please, so that someone reviewing the code will know where > to find the spec. Done. >> Here is the updated patch. > > The patch is approved - please apply. > Here is the updated patch: 1. Speed up the property merge by removing the merged property in the first pass. 2. Support unsorted properties n .o files. 3. Support more than one property array in .o files. 4. Fix typos in testcases. I will check it in shortly. -- H.J. --001a113a7db889ff41054c0823d6 Content-Type: text/x-patch; charset=US-ASCII; name="0001-ld-Support-ELF-GNU-program-properties.patch" Content-Disposition: attachment; filename="0001-ld-Support-ELF-GNU-program-properties.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_j0xyg1dv0 Content-length: 92749 RnJvbSA4ZDY2MjZlZjVmNzU2OWIxMzc4NWU3MGVkZTE5YzA5NmQzMzVhMWE2 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiAiSC5KLiBMdSIgPGhq bC50b29sc0BnbWFpbC5jb20+CkRhdGU6IEZyaSwgMTUgQXByIDIwMTYgMTY6 NTU6MDggLTA3MDAKU3ViamVjdDogW1BBVENIXSBsZDogU3VwcG9ydCBFTEYg R05VIHByb2dyYW0gcHJvcGVydGllcwoKRnJvbSAubm90ZS5nbnUucHJvcGVy dHkgc2VjdGlvbiBpbiBlYWNoIEVMRiBpbnB1dCwgd2UgYnVpbGQgYSBsaXN0 IG9mCkdOVSBwcm9wZXJ0aWVzIGlmIC5ub3RlLmdudS5wcm9wZXJ0eSBzZWN0 aW9uIGlzbid0IGNvcnJ1cHQuICBUaGUgdW5rbm93bgpwcm9wZXJ0aWVzIGFy ZSBpZ25vcmVkLiAgQWxsIHByb3BlcnR5IGxpc3RzIGluIHJlbG9jYXRhYmxl IGlucHV0cyBhcmUKbWVyZ2VkIGludG8gYW4gb3V0cHV0IHByb3BlcnR5IGxp c3QuICBXaGVuIC16IHN0YWNrLXNpemU9TiBpcyB1c2VkIGFuZApOIGlzbid0 IDAsIHRoZSBHTlVfUFJPUEVSVFlfU1RBQ0tfU0laRSBwcm9wZXJ0eSB3aWxs IGJlIG1lcmdlZCB3aXRoIG9yCmFkZGVkIHRvIHRoZSBvdXRwdXQgcHJvcGVy dHkgbGlzdC4gIC5ub3RlLmdudS5wcm9wZXJ0eSBzZWN0aW9uIGlzCmdlbmVy YXRlZCBpbiBvdXRwdXQgZnJvbSB0aGUgb3V0cHV0IHByb3BlcnR5IGxpc3Qu CgpiZmQvCgoJKiBNYWtlZmlsZS5hbSAoQkZEMzJfQkFDS0VORFMpOiBBZGQg ZWxmLXByb3BlcnRpZXMubG8uCgkoQkZEMzJfQkFDS0VORFNfQ0ZJTEVTKTog QWRkIGVsZi1wcm9wZXJ0aWVzLmMuCgkqIGNvbmZpZ3VyZS5hYyAoZWxmKTog QWRkIGVsZi1wcm9wZXJ0aWVzLmxvLgoJKiBNYWtlZmlsZS5pbjogUmVnZW5l cmF0ZWQuCgkqIGNvbmZpZ3VyZTogTGlrZXdpc2UuCgkqIGVsZi1iZmQuaCAo ZWxmX3Byb3BlcnR5X2tpbmQpOiBOZXcuCgkoZWxmX3Byb3BlcnR5KTogTGlr ZXdpc2UuCgkoZWxmX3Byb3BlcnR5X2xpc3QpOiBMaWtld2lzZS4KCShlbGZf cHJvcGVydGllcyk6IExpa2V3aXNlLgoJKF9iZmRfZWxmX3BhcnNlX2dudV9w cm9wZXJ0aWVzKTogTGlrZXdpc2UuCgkoX2JmZF9lbGZfZ2V0X3Byb3BlcnR5 KTogTGlrZXdpc2UuCgkoX2JmZF9lbGZfbGlua19zZXR1cF9nbnVfcHJvcGVy dGllcyk6IExpa2V3aXNlLgoJKGVsZl9iYWNrZW5kX2RhdGEpOiBBZGQgcGFy c2VfZ251X3Byb3BlcnRpZXMsIG1lcmdlX2dudV9wcm9wZXJ0aWVzCglhbmQg c2V0dXBfZ251X3Byb3BlcnRpZXMuCgkoZWxmX29ial90ZGF0YSk6IEFkZCBw cm9wZXJ0aWVzLgoJKiBlbGYtcHJvcGVydGllcy5jOiBOZXcgZmlsZS4KCSog ZWxmMzItaTM4Ni5jIChlbGZfaTM4Nl9wYXJzZV9nbnVfcHJvcGVydGllcyk6 IE5ldy4KCShlbGZfaTM4Nl9tZXJnZV9nbnVfcHJvcGVydGllcyk6IExpa2V3 aXNlLgoJKGVsZl9iYWNrZW5kX3BhcnNlX2dudV9wcm9wZXJ0aWVzKTogTGlr ZXdpc2UuCgkoZWxmX2JhY2tlbmRfbWVyZ2VfZ251X3Byb3BlcnRpZXMpOiBM aWtld2lzZS4KCSogZWxmNjQteDg2LTY0LmMgKGVsZl94ODZfNjRfcGFyc2Vf Z251X3Byb3BlcnRpZXMpOiBMaWtld2lzZS4KCShlbGZfeDg2XzY0X21lcmdl X2dudV9wcm9wZXJ0aWVzKTogTGlrZXdpc2UuCgkoZWxmX2JhY2tlbmRfcGFy c2VfZ251X3Byb3BlcnRpZXMpOiBMaWtld2lzZS4KCShlbGZfYmFja2VuZF9t ZXJnZV9nbnVfcHJvcGVydGllcyk6IExpa2V3aXNlLgoJKiBlbGZ4eC10YXJn ZXQuaCAoZWxmX2JhY2tlbmRfbWVyZ2VfZ251X3Byb3BlcnRpZXMpOiBMaWtl d2lzZS4KCShlbGZfYmFja2VuZF9wYXJzZV9nbnVfcHJvcGVydGllcyk6IExp a2V3aXNlLgoJKGVsZl9iYWNrZW5kX3NldHVwX2dudV9wcm9wZXJ0aWVzKTog TGlrZXdpc2UuCgkoZWxmTk5fYmVkKTogQWRkIGVsZl9iYWNrZW5kX3BhcnNl X2dudV9wcm9wZXJ0aWVzLAoJZWxmX2JhY2tlbmRfbWVyZ2VfZ251X3Byb3Bl cnRpZXMgYW5kCgllbGZfYmFja2VuZF9zZXR1cF9nbnVfcHJvcGVydGllcy4K CmxkLwoKCSogbGQvTkVXUzogTWVudGlvbiBzdXBwb3J0IGZvciBFTEYgR05V IHByb2dyYW0gcHJvcGVydGllcy4KCSogZW11bHRlbXBsL2VsZjMyLmVtIChn bGQke0VNVUxBVElPTl9OQU1FfV9hZnRlcl9vcGVuKTogQ2FsbAoJRUxGIHNl dHVwX2dudV9wcm9wZXJ0aWVzLgoJKiB0ZXN0c3VpdGUvbGQtaTM4Ni9pMzg2 LmV4cDogUnVuIHByb3BlcnR5IHRlc3RzIGZvciBMaW51eC9pMzg2LgoJKiB0 ZXN0c3VpdGUvbGQtaTM4Ni9wYXNzLmM6IE5ldyBmaWxlLgoJKiB0ZXN0c3Vp dGUvbGQtaTM4Ni9wcm9wZXJ0eS0xLnI6IExpa2V3aXNlLgoJKiB0ZXN0c3Vp dGUvbGQtaTM4Ni9wcm9wZXJ0eS0yLnI6IExpa2V3aXNlLgoJKiB0ZXN0c3Vp dGUvbGQtaTM4Ni9wcm9wZXJ0eS0zLnI6IExpa2V3aXNlLgoJKiB0ZXN0c3Vp dGUvbGQtaTM4Ni9wcm9wZXJ0eS00LnI6IExpa2V3aXNlLgoJKiB0ZXN0c3Vp dGUvbGQtaTM4Ni9wcm9wZXJ0eS01LnI6IExpa2V3aXNlLgoJKiB0ZXN0c3Vp dGUvbGQtaTM4Ni9wcm9wZXJ0eS02LnI6IExpa2V3aXNlLgoJKiB0ZXN0c3Vp dGUvbGQtaTM4Ni9wcm9wZXJ0eS02YS5jOiBMaWtld2lzZS4KCSogdGVzdHN1 aXRlL2xkLWkzODYvcHJvcGVydHktNmIuYzogTGlrZXdpc2UuCgkqIHRlc3Rz dWl0ZS9sZC1pMzg2L3Byb3BlcnR5LTZjLlM6IExpa2V3aXNlLgoJKiB0ZXN0 c3VpdGUvbGQtaTM4Ni9wcm9wZXJ0eS03LnI6IExpa2V3aXNlLgoJKiB0ZXN0 c3VpdGUvbGQtaTM4Ni9wcm9wZXJ0eS1uby1jb3B5LlM6IExpa2V3aXNlLgoJ KiB0ZXN0c3VpdGUvbGQtaTM4Ni9wcm9wZXJ0eS1zdGFjay5TOiBMaWtld2lz ZS4KCSogdGVzdHN1aXRlL2xkLWkzODYvcHJvcGVydHktdW5zb3J0ZWQtMS5T OiBMaWtld2lzZS4KCSogdGVzdHN1aXRlL2xkLWkzODYvcHJvcGVydHktdW5z b3J0ZWQtMi5TOiBMaWtld2lzZS4KCSogdGVzdHN1aXRlL2xkLWkzODYvcHJv cGVydHkteDg2LTEuUzogTGlrZXdpc2UuCgkqIHRlc3RzdWl0ZS9sZC1pMzg2 L3Byb3BlcnR5LXg4Ni0yLlM6IExpa2V3aXNlLgoJKiB0ZXN0c3VpdGUvbGQt eDg2LTY0L3Bhc3MuYzogTGlrZXdpc2UuCgkqIHRlc3RzdWl0ZS9sZC14ODYt NjQvcHJvcGVydHktMS5yOiBMaWtld2lzZS4KCSogdGVzdHN1aXRlL2xkLXg4 Ni02NC9wcm9wZXJ0eS0yLnI6IExpa2V3aXNlLgoJKiB0ZXN0c3VpdGUvbGQt eDg2LTY0L3Byb3BlcnR5LTMucjogTGlrZXdpc2UuCgkqIHRlc3RzdWl0ZS9s ZC14ODYtNjQvcHJvcGVydHktNC5yOiBMaWtld2lzZS4KCSogdGVzdHN1aXRl L2xkLXg4Ni02NC9wcm9wZXJ0eS01LnI6IExpa2V3aXNlLgoJKiB0ZXN0c3Vp dGUvbGQteDg2LTY0L3Byb3BlcnR5LTYucjogTGlrZXdpc2UuCgkqIHRlc3Rz dWl0ZS9sZC14ODYtNjQvcHJvcGVydHktNmEuYzogTGlrZXdpc2UuCgkqIHRl c3RzdWl0ZS9sZC14ODYtNjQvcHJvcGVydHktNmIuYzogTGlrZXdpc2UuCgkq IHRlc3RzdWl0ZS9sZC14ODYtNjQvcHJvcGVydHktNmMuUzogTGlrZXdpc2Uu CgkqIHRlc3RzdWl0ZS9sZC14ODYtNjQvcHJvcGVydHktNy5yOiBMaWtld2lz ZS4KCSogdGVzdHN1aXRlL2xkLXg4Ni02NC9wcm9wZXJ0eS1uby1jb3B5LlM6 IExpa2V3aXNlLgoJKiB0ZXN0c3VpdGUvbGQteDg2LTY0L3Byb3BlcnR5LXN0 YWNrLlM6IExpa2V3aXNlLgoJKiB0ZXN0c3VpdGUvbGQteDg2LTY0L3Byb3Bl cnR5LXVuc29ydGVkLTEuUzogTGlrZXdpc2UuCgkqIHRlc3RzdWl0ZS9sZC14 ODYtNjQvcHJvcGVydHktdW5zb3J0ZWQtMi5TOiBMaWtld2lzZS4KCSogdGVz dHN1aXRlL2xkLXg4Ni02NC9wcm9wZXJ0eS14ODYtMS5TOiBMaWtld2lzZS4K CSogdGVzdHN1aXRlL2xkLXg4Ni02NC9wcm9wZXJ0eS14ODYtMi5TOiBMaWtl d2lzZS4KCSogdGVzdHN1aXRlL2xkLXg4Ni02NC94ODYtNjQuZXhwOiBSdW4g cHJvcGVydHkgdGVzdHMgZm9yCglMaW51eC94ODYtNjQuCi0tLQogYmZkL01h a2VmaWxlLmFtICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDIg KwogYmZkL01ha2VmaWxlLmluICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgfCAgIDMgKwogYmZkL2NvbmZpZ3VyZSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgfCAgIDIgKy0KIGJmZC9jb25maWd1cmUuYWMgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHwgICAyICstCiBiZmQvZWxmLWJmZC5o ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICA1OCArKysrCiBi ZmQvZWxmLXByb3BlcnRpZXMuYyAgICAgICAgICAgICAgICAgICAgICAgICB8 IDQ4MyArKysrKysrKysrKysrKysrKysrKysrKysrKysKIGJmZC9lbGYuYyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAzICsKIGJm ZC9lbGYzMi1pMzg2LmMgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwg IDc0ICsrKysKIGJmZC9lbGY2NC14ODYtNjQuYyAgICAgICAgICAgICAgICAg ICAgICAgICAgIHwgIDc4ICsrKystCiBiZmQvZWxmeHgtdGFyZ2V0LmggICAg ICAgICAgICAgICAgICAgICAgICAgICB8ICAxMiArCiBsZC9ORVdTICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMiArCiBsZC9l bXVsdGVtcGwvZWxmMzIuZW0gICAgICAgICAgICAgICAgICAgICAgICB8ICAg MiArCiBsZC90ZXN0c3VpdGUvbGQtaTM4Ni9pMzg2LmV4cCAgICAgICAgICAg ICAgICB8IDI3MyArKysrKysrKysrKysrKysKIGxkL3Rlc3RzdWl0ZS9sZC1p Mzg2L3Bhc3MuYyAgICAgICAgICAgICAgICAgIHwgICA4ICsKIGxkL3Rlc3Rz dWl0ZS9sZC1pMzg2L3Byb3BlcnR5LTEuciAgICAgICAgICAgIHwgICA3ICsK IGxkL3Rlc3RzdWl0ZS9sZC1pMzg2L3Byb3BlcnR5LTIuciAgICAgICAgICAg IHwgICA3ICsKIGxkL3Rlc3RzdWl0ZS9sZC1pMzg2L3Byb3BlcnR5LTMuciAg ICAgICAgICAgIHwgICA4ICsKIGxkL3Rlc3RzdWl0ZS9sZC1pMzg2L3Byb3Bl cnR5LTQuciAgICAgICAgICAgIHwgICA4ICsKIGxkL3Rlc3RzdWl0ZS9sZC1p Mzg2L3Byb3BlcnR5LTUuciAgICAgICAgICAgIHwgICA4ICsKIGxkL3Rlc3Rz dWl0ZS9sZC1pMzg2L3Byb3BlcnR5LTYuciAgICAgICAgICAgIHwgICA3ICsK IGxkL3Rlc3RzdWl0ZS9sZC1pMzg2L3Byb3BlcnR5LTZhLmMgICAgICAgICAg IHwgICA3ICsKIGxkL3Rlc3RzdWl0ZS9sZC1pMzg2L3Byb3BlcnR5LTZiLmMg ICAgICAgICAgIHwgICA4ICsKIGxkL3Rlc3RzdWl0ZS9sZC1pMzg2L3Byb3Bl cnR5LTZjLlMgICAgICAgICAgIHwgIDE4ICsKIGxkL3Rlc3RzdWl0ZS9sZC1p Mzg2L3Byb3BlcnR5LTcuciAgICAgICAgICAgIHwgICA2ICsKIGxkL3Rlc3Rz dWl0ZS9sZC1pMzg2L3Byb3BlcnR5LW5vLWNvcHkuUyAgICAgIHwgIDE1ICsK IGxkL3Rlc3RzdWl0ZS9sZC1pMzg2L3Byb3BlcnR5LXN0YWNrLlMgICAgICAg IHwgIDE4ICsKIGxkL3Rlc3RzdWl0ZS9sZC1pMzg2L3Byb3BlcnR5LXVuc29y dGVkLTEuUyAgIHwgIDM0ICsrCiBsZC90ZXN0c3VpdGUvbGQtaTM4Ni9wcm9w ZXJ0eS11bnNvcnRlZC0yLlMgICB8ICAyMiArKwogbGQvdGVzdHN1aXRlL2xk LWkzODYvcHJvcGVydHkteDg2LTEuUyAgICAgICAgfCAgMzIgKysKIGxkL3Rl c3RzdWl0ZS9sZC1pMzg2L3Byb3BlcnR5LXg4Ni0yLlMgICAgICAgIHwgIDI1 ICsrCiBsZC90ZXN0c3VpdGUvbGQteDg2LTY0L3Bhc3MuYyAgICAgICAgICAg ICAgICB8ICAgOCArCiBsZC90ZXN0c3VpdGUvbGQteDg2LTY0L3Byb3BlcnR5 LTEuciAgICAgICAgICB8ICAgNyArCiBsZC90ZXN0c3VpdGUvbGQteDg2LTY0 L3Byb3BlcnR5LTIuciAgICAgICAgICB8ICAgNyArCiBsZC90ZXN0c3VpdGUv bGQteDg2LTY0L3Byb3BlcnR5LTMuciAgICAgICAgICB8ICAgOCArCiBsZC90 ZXN0c3VpdGUvbGQteDg2LTY0L3Byb3BlcnR5LTQuciAgICAgICAgICB8ICAg OCArCiBsZC90ZXN0c3VpdGUvbGQteDg2LTY0L3Byb3BlcnR5LTUuciAgICAg ICAgICB8ICAgOCArCiBsZC90ZXN0c3VpdGUvbGQteDg2LTY0L3Byb3BlcnR5 LTYuciAgICAgICAgICB8ICAgNyArCiBsZC90ZXN0c3VpdGUvbGQteDg2LTY0 L3Byb3BlcnR5LTZhLmMgICAgICAgICB8ICAgNyArCiBsZC90ZXN0c3VpdGUv bGQteDg2LTY0L3Byb3BlcnR5LTZiLmMgICAgICAgICB8ICAgOCArCiBsZC90 ZXN0c3VpdGUvbGQteDg2LTY0L3Byb3BlcnR5LTZjLlMgICAgICAgICB8ICAy MyArKwogbGQvdGVzdHN1aXRlL2xkLXg4Ni02NC9wcm9wZXJ0eS03LnIgICAg ICAgICAgfCAgIDYgKwogbGQvdGVzdHN1aXRlL2xkLXg4Ni02NC9wcm9wZXJ0 eS1uby1jb3B5LlMgICAgfCAgMjAgKysKIGxkL3Rlc3RzdWl0ZS9sZC14ODYt NjQvcHJvcGVydHktc3RhY2suUyAgICAgIHwgIDIzICsrCiBsZC90ZXN0c3Vp dGUvbGQteDg2LTY0L3Byb3BlcnR5LXVuc29ydGVkLTEuUyB8ICAzOSArKysK IGxkL3Rlc3RzdWl0ZS9sZC14ODYtNjQvcHJvcGVydHktdW5zb3J0ZWQtMi5T IHwgIDI3ICsrCiBsZC90ZXN0c3VpdGUvbGQteDg2LTY0L3Byb3BlcnR5LXg4 Ni0xLlMgICAgICB8ICAzNyArKwogbGQvdGVzdHN1aXRlL2xkLXg4Ni02NC9w cm9wZXJ0eS14ODYtMi5TICAgICAgfCAgMzAgKysKIGxkL3Rlc3RzdWl0ZS9s ZC14ODYtNjQveDg2LTY0LmV4cCAgICAgICAgICAgIHwgMjczICsrKysrKysr KysrKysrKwogNDggZmlsZXMgY2hhbmdlZCwgMTc3NSBpbnNlcnRpb25zKCsp LCAzIGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IGJmZC9lbGYt cHJvcGVydGllcy5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgbGQvdGVzdHN1aXRl L2xkLWkzODYvcGFzcy5jCiBjcmVhdGUgbW9kZSAxMDA2NDQgbGQvdGVzdHN1 aXRlL2xkLWkzODYvcHJvcGVydHktMS5yCiBjcmVhdGUgbW9kZSAxMDA2NDQg bGQvdGVzdHN1aXRlL2xkLWkzODYvcHJvcGVydHktMi5yCiBjcmVhdGUgbW9k ZSAxMDA2NDQgbGQvdGVzdHN1aXRlL2xkLWkzODYvcHJvcGVydHktMy5yCiBj cmVhdGUgbW9kZSAxMDA2NDQgbGQvdGVzdHN1aXRlL2xkLWkzODYvcHJvcGVy dHktNC5yCiBjcmVhdGUgbW9kZSAxMDA2NDQgbGQvdGVzdHN1aXRlL2xkLWkz ODYvcHJvcGVydHktNS5yCiBjcmVhdGUgbW9kZSAxMDA2NDQgbGQvdGVzdHN1 aXRlL2xkLWkzODYvcHJvcGVydHktNi5yCiBjcmVhdGUgbW9kZSAxMDA2NDQg bGQvdGVzdHN1aXRlL2xkLWkzODYvcHJvcGVydHktNmEuYwogY3JlYXRlIG1v ZGUgMTAwNjQ0IGxkL3Rlc3RzdWl0ZS9sZC1pMzg2L3Byb3BlcnR5LTZiLmMK IGNyZWF0ZSBtb2RlIDEwMDY0NCBsZC90ZXN0c3VpdGUvbGQtaTM4Ni9wcm9w ZXJ0eS02Yy5TCiBjcmVhdGUgbW9kZSAxMDA2NDQgbGQvdGVzdHN1aXRlL2xk LWkzODYvcHJvcGVydHktNy5yCiBjcmVhdGUgbW9kZSAxMDA2NDQgbGQvdGVz dHN1aXRlL2xkLWkzODYvcHJvcGVydHktbm8tY29weS5TCiBjcmVhdGUgbW9k ZSAxMDA2NDQgbGQvdGVzdHN1aXRlL2xkLWkzODYvcHJvcGVydHktc3RhY2su UwogY3JlYXRlIG1vZGUgMTAwNjQ0IGxkL3Rlc3RzdWl0ZS9sZC1pMzg2L3By b3BlcnR5LXVuc29ydGVkLTEuUwogY3JlYXRlIG1vZGUgMTAwNjQ0IGxkL3Rl c3RzdWl0ZS9sZC1pMzg2L3Byb3BlcnR5LXVuc29ydGVkLTIuUwogY3JlYXRl IG1vZGUgMTAwNjQ0IGxkL3Rlc3RzdWl0ZS9sZC1pMzg2L3Byb3BlcnR5LXg4 Ni0xLlMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBsZC90ZXN0c3VpdGUvbGQtaTM4 Ni9wcm9wZXJ0eS14ODYtMi5TCiBjcmVhdGUgbW9kZSAxMDA2NDQgbGQvdGVz dHN1aXRlL2xkLXg4Ni02NC9wYXNzLmMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBs ZC90ZXN0c3VpdGUvbGQteDg2LTY0L3Byb3BlcnR5LTEucgogY3JlYXRlIG1v ZGUgMTAwNjQ0IGxkL3Rlc3RzdWl0ZS9sZC14ODYtNjQvcHJvcGVydHktMi5y CiBjcmVhdGUgbW9kZSAxMDA2NDQgbGQvdGVzdHN1aXRlL2xkLXg4Ni02NC9w cm9wZXJ0eS0zLnIKIGNyZWF0ZSBtb2RlIDEwMDY0NCBsZC90ZXN0c3VpdGUv bGQteDg2LTY0L3Byb3BlcnR5LTQucgogY3JlYXRlIG1vZGUgMTAwNjQ0IGxk L3Rlc3RzdWl0ZS9sZC14ODYtNjQvcHJvcGVydHktNS5yCiBjcmVhdGUgbW9k ZSAxMDA2NDQgbGQvdGVzdHN1aXRlL2xkLXg4Ni02NC9wcm9wZXJ0eS02LnIK IGNyZWF0ZSBtb2RlIDEwMDY0NCBsZC90ZXN0c3VpdGUvbGQteDg2LTY0L3By b3BlcnR5LTZhLmMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBsZC90ZXN0c3VpdGUv bGQteDg2LTY0L3Byb3BlcnR5LTZiLmMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBs ZC90ZXN0c3VpdGUvbGQteDg2LTY0L3Byb3BlcnR5LTZjLlMKIGNyZWF0ZSBt b2RlIDEwMDY0NCBsZC90ZXN0c3VpdGUvbGQteDg2LTY0L3Byb3BlcnR5LTcu cgogY3JlYXRlIG1vZGUgMTAwNjQ0IGxkL3Rlc3RzdWl0ZS9sZC14ODYtNjQv cHJvcGVydHktbm8tY29weS5TCiBjcmVhdGUgbW9kZSAxMDA2NDQgbGQvdGVz dHN1aXRlL2xkLXg4Ni02NC9wcm9wZXJ0eS1zdGFjay5TCiBjcmVhdGUgbW9k ZSAxMDA2NDQgbGQvdGVzdHN1aXRlL2xkLXg4Ni02NC9wcm9wZXJ0eS11bnNv cnRlZC0xLlMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBsZC90ZXN0c3VpdGUvbGQt eDg2LTY0L3Byb3BlcnR5LXVuc29ydGVkLTIuUwogY3JlYXRlIG1vZGUgMTAw NjQ0IGxkL3Rlc3RzdWl0ZS9sZC14ODYtNjQvcHJvcGVydHkteDg2LTEuUwog Y3JlYXRlIG1vZGUgMTAwNjQ0IGxkL3Rlc3RzdWl0ZS9sZC14ODYtNjQvcHJv cGVydHkteDg2LTIuUwoKZGlmZiAtLWdpdCBhL2JmZC9NYWtlZmlsZS5hbSBi L2JmZC9NYWtlZmlsZS5hbQppbmRleCA0OWFiMDkyLi45N2I2MDhjIDEwMDY0 NAotLS0gYS9iZmQvTWFrZWZpbGUuYW0KKysrIGIvYmZkL01ha2VmaWxlLmFt CkBAIC0zMjEsNiArMzIxLDcgQEAgQkZEMzJfQkFDS0VORFMgPSBcCiAJZWxm LW0xMDIwMC5sbyBcCiAJZWxmLW0xMDMwMC5sbyBcCiAJZWxmLW5hY2wubG8g XAorCWVsZi1wcm9wZXJ0aWVzLmxvIFwKIAllbGYtc3RydGFiLmxvIFwKIAll bGYtdnh3b3Jrcy5sbyBcCiAJZWxmLmxvIFwKQEAgLTUxNiw2ICs1MTcsNyBA QCBCRkQzMl9CQUNLRU5EU19DRklMRVMgPSBcCiAJZWxmLW0xMDIwMC5jIFwK IAllbGYtbTEwMzAwLmMgXAogCWVsZi1uYWNsLmMgXAorCWVsZi1wcm9wZXJ0 aWVzLmMgXAogCWVsZi1zdHJ0YWIuYyBcCiAJZWxmLXZ4d29ya3MuYyBcCiAJ ZWxmLmMgXApkaWZmIC0tZ2l0IGEvYmZkL01ha2VmaWxlLmluIGIvYmZkL01h a2VmaWxlLmluCmluZGV4IGZlZDUxMTcuLmU0OGFiYWYgMTAwNjQ0Ci0tLSBh L2JmZC9NYWtlZmlsZS5pbgorKysgYi9iZmQvTWFrZWZpbGUuaW4KQEAgLTY1 NSw2ICs2NTUsNyBAQCBCRkQzMl9CQUNLRU5EUyA9IFwKIAllbGYtbTEwMjAw LmxvIFwKIAllbGYtbTEwMzAwLmxvIFwKIAllbGYtbmFjbC5sbyBcCisJZWxm LXByb3BlcnRpZXMubG8gXAogCWVsZi1zdHJ0YWIubG8gXAogCWVsZi12eHdv cmtzLmxvIFwKIAllbGYubG8gXApAQCAtODUwLDYgKzg1MSw3IEBAIEJGRDMy X0JBQ0tFTkRTX0NGSUxFUyA9IFwKIAllbGYtbTEwMjAwLmMgXAogCWVsZi1t MTAzMDAuYyBcCiAJZWxmLW5hY2wuYyBcCisJZWxmLXByb3BlcnRpZXMuYyBc CiAJZWxmLXN0cnRhYi5jIFwKIAllbGYtdnh3b3Jrcy5jIFwKIAllbGYuYyBc CkBAIC0xNDcxLDYgKzE0NzMsNyBAQCBkaXN0Y2xlYW4tY29tcGlsZToKIEBB TURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElS KS9lbGYtbTEwMjAwLlBsb0BhbV9fcXVvdGVACiBAQU1ERVBfVFJVRUBAYW1f X2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJUikvZWxmLW0xMDMwMC5Q bG9AYW1fX3F1b3RlQAogQEFNREVQX1RSVUVAQGFtX19pbmNsdWRlQCBAYW1f X3F1b3RlQC4vJChERVBESVIpL2VsZi1uYWNsLlBsb0BhbV9fcXVvdGVACitA QU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVAIEBhbV9fcXVvdGVALi8kKERFUERJ UikvZWxmLXByb3BlcnRpZXMuUGxvQGFtX19xdW90ZUAKIEBBTURFUF9UUlVF QEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAuLyQoREVQRElSKS9lbGYtc3Ry dGFiLlBsb0BhbV9fcXVvdGVACiBAQU1ERVBfVFJVRUBAYW1fX2luY2x1ZGVA IEBhbV9fcXVvdGVALi8kKERFUERJUikvZWxmLXZ4d29ya3MuUGxvQGFtX19x dW90ZUAKIEBBTURFUF9UUlVFQEBhbV9faW5jbHVkZUAgQGFtX19xdW90ZUAu LyQoREVQRElSKS9lbGYuUGxvQGFtX19xdW90ZUAKZGlmZiAtLWdpdCBhL2Jm ZC9jb25maWd1cmUgYi9iZmQvY29uZmlndXJlCmluZGV4IDdjYWU0YWUuLjI0 ZTNlMmYgMTAwNzU1Ci0tLSBhL2JmZC9jb25maWd1cmUKKysrIGIvYmZkL2Nv bmZpZ3VyZQpAQCAtMTQyMzQsNyArMTQyMzQsNyBAQCBzZWxhcmNocz0iJGYi CiAjIFRhcmdldCBiYWNrZW5kIC5vIGZpbGVzLgogdGI9CiAKLWVsZj0iZWxm LmxvIGVsZmxpbmsubG8gZWxmLWF0dHJzLmxvIGVsZi1zdHJ0YWIubG8KK2Vs Zj0iZWxmLmxvIGVsZmxpbmsubG8gZWxmLWF0dHJzLmxvIGVsZi1zdHJ0YWIu bG8gZWxmLXByb3BlcnRpZXMubG8KICAgICAgZWxmLWVoLWZyYW1lLmxvIGR3 YXJmMS5sbyBkd2FyZjIubG8iCiBjb2ZmZ2VuPSJjb2ZmZ2VuLmxvIGR3YXJm Mi5sbyIKIGNvZmY9ImNvZmZsaW5rLmxvICRjb2ZmZ2VuIgpkaWZmIC0tZ2l0 IGEvYmZkL2NvbmZpZ3VyZS5hYyBiL2JmZC9jb25maWd1cmUuYWMKaW5kZXgg ZmViMTIzMS4uZTU2ODg0NyAxMDA2NDQKLS0tIGEvYmZkL2NvbmZpZ3VyZS5h YworKysgYi9iZmQvY29uZmlndXJlLmFjCkBAIC0zNjUsNyArMzY1LDcgQEAg c2VsYXJjaHM9IiRmIgogIyBUYXJnZXQgYmFja2VuZCAubyBmaWxlcy4KIHRi PQogCi1lbGY9ImVsZi5sbyBlbGZsaW5rLmxvIGVsZi1hdHRycy5sbyBlbGYt c3RydGFiLmxvCitlbGY9ImVsZi5sbyBlbGZsaW5rLmxvIGVsZi1hdHRycy5s byBlbGYtc3RydGFiLmxvIGVsZi1wcm9wZXJ0aWVzLmxvCiAgICAgIGVsZi1l aC1mcmFtZS5sbyBkd2FyZjEubG8gZHdhcmYyLmxvIgogY29mZmdlbj0iY29m Zmdlbi5sbyBkd2FyZjIubG8iCiBjb2ZmPSJjb2ZmbGluay5sbyAkY29mZmdl biIKZGlmZiAtLWdpdCBhL2JmZC9lbGYtYmZkLmggYi9iZmQvZWxmLWJmZC5o CmluZGV4IDllM2Q2ZjUuLmFmMzc3ZWUgMTAwNjQ0Ci0tLSBhL2JmZC9lbGYt YmZkLmgKKysrIGIvYmZkL2VsZi1iZmQuaApAQCAtNzY2LDYgKzc2NiwzOSBA QCB0eXBlZGVmIGFzZWN0aW9uICogKCplbGZfZ2NfbWFya19ob29rX2ZuKQog ICAoYXNlY3Rpb24gKiwgc3RydWN0IGJmZF9saW5rX2luZm8gKiwgRWxmX0lu dGVybmFsX1JlbGEgKiwKICAgIHN0cnVjdCBlbGZfbGlua19oYXNoX2VudHJ5 ICosIEVsZl9JbnRlcm5hbF9TeW0gKik7CiAKK2VudW0gZWxmX3Byb3BlcnR5 X2tpbmQKKyB7CisgICAgLyogQSBuZXcgcHJvcGVydHkuICAqLworICAgIHBy b3BlcnR5X3Vua25vd24gPSAwLAorICAgIC8qIEEgcHJvcGVydHkgaWdub3Jl ZCBieSBiYWNrZW5kLiAgKi8KKyAgICBwcm9wZXJ0eV9pZ25vcmVkLAorICAg IC8qIEEgY29ycnVwdCBwcm9wZXJ0eSByZXBvcnRlZCBieSBiYWNrZW5kLiAg Ki8KKyAgICBwcm9wZXJ0eV9jb3JydXB0LAorICAgIC8qIEEgcHJvcGVydHkg c2hvdWxkIGJlIHJlbW92ZWQgZHVlIHRvIHByb3BlcnR5IG1lcmdlLiAgKi8K KyAgICBwcm9wZXJ0eV9yZW1vdmUsCisgICAgLyogQSBwcm9wZXJ0eSB3aGlj aCBpcyBhIG51bWJlci4gICovCisgICAgcHJvcGVydHlfbnVtYmVyCisgfTsK KwordHlwZWRlZiBzdHJ1Y3QgZWxmX3Byb3BlcnR5Cit7CisgIHVuc2lnbmVk IGludCBwcl90eXBlOworICB1bnNpZ25lZCBpbnQgcHJfZGF0YXN6OworICB1 bmlvbgorICAgIHsKKyAgICAgIC8qIEZvciBwcm9wZXJ0eV9udW1iZXIsIHRo aXMgaXMgYSBudW1iZXIuICAqLworICAgICAgYmZkX3ZtYSBudW1iZXI7Cisg ICAgICAvKiBBZGQgYSBuZXcgb25lIGlmIGVsZl9wcm9wZXJ0eV9raW5kIGlz IHVwZGF0ZWQuICAqLworICAgIH0gdTsKKyAgZW51bSBlbGZfcHJvcGVydHlf a2luZCBwcl9raW5kOworfSBlbGZfcHJvcGVydHk7CisKK3R5cGVkZWYgc3Ry dWN0IGVsZl9wcm9wZXJ0eV9saXN0Cit7CisgIHN0cnVjdCBlbGZfcHJvcGVy dHlfbGlzdCAqbmV4dDsKKyAgc3RydWN0IGVsZl9wcm9wZXJ0eSBwcm9wZXJ0 eTsKK30gZWxmX3Byb3BlcnR5X2xpc3Q7CisKIHN0cnVjdCBiZmRfZWxmX3Nl Y3Rpb25fcmVsb2NfZGF0YTsKIAogc3RydWN0IGVsZl9iYWNrZW5kX2RhdGEK QEAgLTEzODksNiArMTQyMiwxOSBAQCBzdHJ1Y3QgZWxmX2JhY2tlbmRfZGF0 YQogICAgICBvciBnaXZlIGFuIGVycm9yIGFuZCByZXR1cm4gRkFMU0UuICAq LwogICBiZmRfYm9vbGVhbiAoKm9ial9hdHRyc19oYW5kbGVfdW5rbm93bikg KGJmZCAqLCBpbnQpOwogCisgIC8qIFBhcnNlIEdOVSBwcm9wZXJ0aWVzLiAg UmV0dXJuIHRoZSBwcm9wZXJ0eSBraW5kLiAgSWYgdGhlIHByb3BlcnR5Cisg ICAgIGlzIGNvcnJ1cHQsIGlzc3VlIGFuIGVycm9yIG1lc3NhZ2UgYW5kIHJl dHVybiBwcm9wZXJ0eV9jb3JydXB0LiAgKi8KKyAgZW51bSBlbGZfcHJvcGVy dHlfa2luZCAoKnBhcnNlX2dudV9wcm9wZXJ0aWVzKSAoYmZkICosIHVuc2ln bmVkIGludCwKKwkJCQkJCSAgYmZkX2J5dGUgKiwKKwkJCQkJCSAgdW5zaWdu ZWQgaW50KTsKKworICAvKiBNZXJnZSBHTlUgcHJvcGVydGllcy4gIFJldHVy biBUUlVFIGlmIHByb3BlcnR5IGlzIHVwZGF0ZWQuICAqLworICBiZmRfYm9v bGVhbiAoKm1lcmdlX2dudV9wcm9wZXJ0aWVzKSAoYmZkICosIGVsZl9wcm9w ZXJ0eSAqLAorCQkJCSAgICAgICBlbGZfcHJvcGVydHkgKik7CisKKyAgLyog U2V0IHVwIEdOVSBwcm9wZXJ0aWVzLiAgKi8KKyAgdm9pZCAoKnNldHVwX2du dV9wcm9wZXJ0aWVzKSAoc3RydWN0IGJmZF9saW5rX2luZm8gKik7CisKICAg LyogRW5jb2RpbmcgdXNlZCBmb3IgY29tcGFjdCBFSCB0YWJsZXMuICAqLwog ICBpbnQgKCpjb21wYWN0X2VoX2VuY29kaW5nKSAoc3RydWN0IGJmZF9saW5r X2luZm8gKik7CiAKQEAgLTE3OTgsNiArMTg0NCwxMCBAQCBzdHJ1Y3QgZWxm X29ial90ZGF0YQogICAvKiBTeW1ib2wgYnVmZmVyLiAgKi8KICAgdm9pZCAq c3ltYnVmOwogCisgIC8qIExpc3Qgb2YgR05VIHByb3BlcnRpZXMuICBXaWxs IGJlIHVwZGF0ZWQgYnkgc2V0dXBfZ251X3Byb3BlcnRpZXMKKyAgICAgYWZ0 ZXIgYWxsIGlucHV0IEdOVSBwcm9wZXJ0aWVzIGFyZSBtZXJnZWQgZm9yIG91 dHB1dC4gICovCisgIGVsZl9wcm9wZXJ0eV9saXN0ICpwcm9wZXJ0aWVzOwor CiAgIG9ial9hdHRyaWJ1dGUga25vd25fb2JqX2F0dHJpYnV0ZXNbMl1bTlVN X0tOT1dOX09CSl9BVFRSSUJVVEVTXTsKICAgb2JqX2F0dHJpYnV0ZV9saXN0 ICpvdGhlcl9vYmpfYXR0cmlidXRlc1syXTsKIApAQCAtMTg4Miw2ICsxOTMy LDcgQEAgc3RydWN0IGVsZl9vYmpfdGRhdGEKICAgKGVsZl9rbm93bl9vYmpf YXR0cmlidXRlcyAoYmZkKSBbT0JKX0FUVFJfUFJPQ10pCiAjZGVmaW5lIGVs Zl9vdGhlcl9vYmpfYXR0cmlidXRlc19wcm9jKGJmZCkgXAogICAoZWxmX290 aGVyX29ial9hdHRyaWJ1dGVzIChiZmQpIFtPQkpfQVRUUl9QUk9DXSkKKyNk ZWZpbmUgZWxmX3Byb3BlcnRpZXMoYmZkKSAoZWxmX3RkYXRhIChiZmQpIC0+ IHByb3BlcnRpZXMpCiAMCiBleHRlcm4gdm9pZCBfYmZkX2VsZl9zd2FwX3Zl cmRlZl9pbgogICAoYmZkICosIGNvbnN0IEVsZl9FeHRlcm5hbF9WZXJkZWYg KiwgRWxmX0ludGVybmFsX1ZlcmRlZiAqKTsKQEAgLTI1MzgsNiArMjU4OSwx MyBAQCBleHRlcm4gYmZkX2Jvb2xlYW4gX2JmZF9lbGZfbWVyZ2VfdW5rbm93 bl9hdHRyaWJ1dGVfbG93IChiZmQgKiwgYmZkICosIGludCk7CiBleHRlcm4g YmZkX2Jvb2xlYW4gX2JmZF9lbGZfbWVyZ2VfdW5rbm93bl9hdHRyaWJ1dGVf bGlzdCAoYmZkICosIGJmZCAqKTsKIGV4dGVybiBFbGZfSW50ZXJuYWxfU2hk ciAqX2JmZF9lbGZfc2luZ2xlX3JlbF9oZHIgKGFzZWN0aW9uICpzZWMpOwog CitleHRlcm4gYmZkX2Jvb2xlYW4gX2JmZF9lbGZfcGFyc2VfZ251X3Byb3Bl cnRpZXMKKyAgKGJmZCAqLCBFbGZfSW50ZXJuYWxfTm90ZSAqKTsKK2V4dGVy biBlbGZfcHJvcGVydHkgKiBfYmZkX2VsZl9nZXRfcHJvcGVydHkKKyAgKGJm ZCAqLCB1bnNpZ25lZCBpbnQsIHVuc2lnbmVkIGludCk7CitleHRlcm4gdm9p ZCBfYmZkX2VsZl9saW5rX3NldHVwX2dudV9wcm9wZXJ0aWVzCisgIChzdHJ1 Y3QgYmZkX2xpbmtfaW5mbyAqKTsKKwogLyogVGhlIGxpbmtlciBtYXkgbmVl ZCB0byBrZWVwIHRyYWNrIG9mIHRoZSBudW1iZXIgb2YgcmVsb2NzIHRoYXQg aXQKICAgIGRlY2lkZXMgdG8gY29weSBhcyBkeW5hbWljIHJlbG9jcyBpbiBj aGVja19yZWxvY3MgZm9yIGVhY2ggc3ltYm9sLgogICAgVGhpcyBpcyBzbyB0 aGF0IGl0IGNhbiBsYXRlciBkaXNjYXJkIHRoZW0gaWYgdGhleSBhcmUgZm91 bmQgdG8gYmUKZGlmZiAtLWdpdCBhL2JmZC9lbGYtcHJvcGVydGllcy5jIGIv YmZkL2VsZi1wcm9wZXJ0aWVzLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggMDAwMDAwMC4uYTA0NTZmOAotLS0gL2Rldi9udWxsCisrKyBiL2JmZC9l bGYtcHJvcGVydGllcy5jCkBAIC0wLDAgKzEsNDgzIEBACisvKiBFTEYgcHJv Z3JhbSBwcm9wZXJ0eSBzdXBwb3J0LgorICAgQ29weXJpZ2h0IChDKSAyMDE3 IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgorCisgICBUaGlzIGZp bGUgaXMgcGFydCBvZiBCRkQsIHRoZSBCaW5hcnkgRmlsZSBEZXNjcmlwdG9y IGxpYnJhcnkuCisKKyAgIFRoaXMgcHJvZ3JhbSBpcyBmcmVlIHNvZnR3YXJl OyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5CisgICBp dCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBM aWNlbnNlIGFzIHB1Ymxpc2hlZCBieQorICAgdGhlIEZyZWUgU29mdHdhcmUg Rm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwg b3IKKyAgIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCisK KyAgIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0 aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorICAgYnV0IFdJVEhPVVQgQU5ZIFdB UlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YK KyAgIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM QVIgUFVSUE9TRS4gIFNlZSB0aGUKKyAgIEdOVSBHZW5lcmFsIFB1YmxpYyBM aWNlbnNlIGZvciBtb3JlIGRldGFpbHMuCisKKyAgIFlvdSBzaG91bGQgaGF2 ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBM aWNlbnNlCisgICBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgaWYgbm90LCB3 cml0ZSB0byB0aGUgRnJlZSBTb2Z0d2FyZQorICAgRm91bmRhdGlvbiwgSW5j LiwgNTEgRnJhbmtsaW4gU3RyZWV0IC0gRmlmdGggRmxvb3IsIEJvc3RvbiwK KyAgIE1BIDAyMTEwLTEzMDEsIFVTQS4gICovCisKKy8qIEdOVSBwcm9ncmFt IHByb3BlcnR5IGRyYWZ0IGlzIGF0OgorCisgICBodHRwczovL2dpdGh1Yi5j b20vaGpsLXRvb2xzL2xpbnV4LWFiaS93aWtpL3Byb3BlcnR5LWRyYWZ0LnBk ZgorICovCisKKyNpbmNsdWRlICJzeXNkZXAuaCIKKyNpbmNsdWRlICJiZmQu aCIKKyNpbmNsdWRlICJsaWJiZmQuaCIKKyNpbmNsdWRlICJlbGYtYmZkLmgi CisKKy8qIEdldCBhIHByb3BlcnR5LCBhbGxvY2F0ZSBhIG5ldyBvbmUgaWYg bmVlZGVkLiAgKi8KKworZWxmX3Byb3BlcnR5ICoKK19iZmRfZWxmX2dldF9w cm9wZXJ0eSAoYmZkICphYmZkLCB1bnNpZ25lZCBpbnQgdHlwZSwgdW5zaWdu ZWQgaW50IGRhdGFzeikKK3sKKyAgZWxmX3Byb3BlcnR5X2xpc3QgKnAsICoq bGFzdHA7CisKKyAgaWYgKGJmZF9nZXRfZmxhdm91ciAoYWJmZCkgIT0gYmZk X3RhcmdldF9lbGZfZmxhdm91cikKKyAgICB7CisgICAgICAvKiBOZXZlciBz aG91bGQgaGFwcGVuLiAgKi8KKyAgICAgIGFib3J0ICgpOworICAgIH0KKwor ICAvKiBLZWVwIHRoZSBwcm9wZXJ0eSBsaXN0IGluIG9yZGVyIG9mIHR5cGUu ICAqLworICBsYXN0cCA9ICZlbGZfcHJvcGVydGllcyAoYWJmZCk7CisgIGZv ciAocCA9ICpsYXN0cDsgcDsgcCA9IHAtPm5leHQpCisgICAgeworICAgICAg LyogUmV1c2UgdGhlIGV4aXN0aW5nIGVudHJ5LiAgKi8KKyAgICAgIGlmICh0 eXBlID09IHAtPnByb3BlcnR5LnByX3R5cGUpCisJeworCSAgaWYgKGRhdGFz eiA+IHAtPnByb3BlcnR5LnByX2RhdGFzeikKKwkgICAgeworCSAgICAgIC8q IFRoaXMgY2FuIGhhcHBlbiB3aGVuIG1peGluZyAzMi1iaXQgYW5kIDY0LWJp dCBvYmplY3RzLiAgKi8KKwkgICAgICBwLT5wcm9wZXJ0eS5wcl9kYXRhc3og PSBkYXRhc3o7CisJICAgIH0KKwkgIHJldHVybiAmcC0+cHJvcGVydHk7CisJ fQorICAgICAgZWxzZSBpZiAodHlwZSA8IHAtPnByb3BlcnR5LnByX3R5cGUp CisJYnJlYWs7CisgICAgICBsYXN0cCA9ICZwLT5uZXh0OworICAgIH0KKyAg cCA9IChlbGZfcHJvcGVydHlfbGlzdCAqKSBiZmRfYWxsb2MgKGFiZmQsIHNp emVvZiAoKnApKTsKKyAgaWYgKHAgPT0gTlVMTCkKKyAgICB7CisgICAgICBf YmZkX2Vycm9yX2hhbmRsZXIgKF8oIiVCOiBvdXQgb2YgbWVtb3J5IGluIF9i ZmRfZWxmX2dldF9wcm9wZXJ0eSIpLAorCQkJICBhYmZkKTsKKyAgICAgIF9l eGl0IChFWElUX0ZBSUxVUkUpOworICAgIH0KKyAgbWVtc2V0IChwLCAwLCBz aXplb2YgKCpwKSk7CisgIHAtPnByb3BlcnR5LnByX3R5cGUgPSB0eXBlOwor ICBwLT5wcm9wZXJ0eS5wcl9kYXRhc3ogPSBkYXRhc3o7CisgIHAtPm5leHQg PSAqbGFzdHA7CisgICpsYXN0cCA9IHA7CisgIHJldHVybiAmcC0+cHJvcGVy dHk7Cit9CisKKy8qIFBhcnNlIEdOVSBwcm9wZXJ0aWVzLiAgKi8KKworYmZk X2Jvb2xlYW4KK19iZmRfZWxmX3BhcnNlX2dudV9wcm9wZXJ0aWVzIChiZmQg KmFiZmQsIEVsZl9JbnRlcm5hbF9Ob3RlICpub3RlKQoreworICBjb25zdCBz dHJ1Y3QgZWxmX2JhY2tlbmRfZGF0YSAqYmVkID0gZ2V0X2VsZl9iYWNrZW5k X2RhdGEgKGFiZmQpOworICB1bnNpZ25lZCBpbnQgYWxpZ25fc2l6ZSA9IGJl ZC0+cy0+ZWxmY2xhc3MgPT0gRUxGQ0xBU1M2NCA/IDggOiA0OworICBiZmRf Ynl0ZSAqcHRyID0gKGJmZF9ieXRlICopIG5vdGUtPmRlc2NkYXRhOworICBi ZmRfYnl0ZSAqcHRyX2VuZCA9IHB0ciArIG5vdGUtPmRlc2NzejsKKworICBp ZiAobm90ZS0+ZGVzY3N6IDwgOCB8fCAobm90ZS0+ZGVzY3N6ICUgYWxpZ25f c2l6ZSkgIT0gMCkKKyAgICB7CitiYWRfc2l6ZToKKyAgICAgIF9iZmRfZXJy b3JfaGFuZGxlcgorCShfKCJ3YXJuaW5nOiAlQjogY29ycnVwdCBHTlVfUFJP UEVSVFlfVFlQRSAoJWxkKSBzaXplOiAlI2x4XG4iKSwKKwkgYWJmZCwgbm90 ZS0+dHlwZSwgbm90ZS0+ZGVzY3N6KTsKKyAgICAgIHJldHVybiBGQUxTRTsK KyAgICB9CisKKyAgd2hpbGUgKDEpCisgICAgeworICAgICAgdW5zaWduZWQg aW50IHR5cGUgPSBiZmRfaF9nZXRfMzIgKGFiZmQsIHB0cik7CisgICAgICB1 bnNpZ25lZCBpbnQgZGF0YXN6ID0gYmZkX2hfZ2V0XzMyIChhYmZkLCBwdHIg KyA0KTsKKyAgICAgIGVsZl9wcm9wZXJ0eSAqcHJvcDsKKworICAgICAgcHRy ICs9IDg7CisKKyAgICAgIGlmICgocHRyICsgZGF0YXN6KSA+IHB0cl9lbmQp CisJeworCSAgX2JmZF9lcnJvcl9oYW5kbGVyCisJICAgIChfKCJ3YXJuaW5n OiAlQjogY29ycnVwdCBHTlVfUFJPUEVSVFlfVFlQRSAoJWxkKSB0eXBlICgw eCV4KSBkYXRhc3o6IDB4JXhcbiIpLAorCSAgICAgYWJmZCwgbm90ZS0+dHlw ZSwgdHlwZSwgZGF0YXN6KTsKKwkgIC8qIENsZWFyIGFsbCBwcm9wZXJ0aWVz LiAgKi8KKwkgIGVsZl9wcm9wZXJ0aWVzIChhYmZkKSA9IE5VTEw7CisJICBy ZXR1cm4gRkFMU0U7CisJfQorCisgICAgICBpZiAodHlwZSA+PSBHTlVfUFJP UEVSVFlfTE9QUk9DKQorCXsKKwkgIGlmICh0eXBlIDwgR05VX1BST1BFUlRZ X0xPVVNFUiAmJiBiZWQtPnBhcnNlX2dudV9wcm9wZXJ0aWVzKQorCSAgICB7 CisJICAgICAgZW51bSBlbGZfcHJvcGVydHlfa2luZCBraW5kCisJCT0gYmVk LT5wYXJzZV9nbnVfcHJvcGVydGllcyAoYWJmZCwgdHlwZSwgcHRyLCBkYXRh c3opOworCSAgICAgIGlmIChraW5kID09IHByb3BlcnR5X2NvcnJ1cHQpCisJ CXsKKwkJICAvKiBDbGVhciBhbGwgcHJvcGVydGllcy4gICovCisJCSAgZWxm X3Byb3BlcnRpZXMgKGFiZmQpID0gTlVMTDsKKwkJICByZXR1cm4gRkFMU0U7 CisJCX0KKwkgICAgICBlbHNlIGlmIChraW5kICE9IHByb3BlcnR5X2lnbm9y ZWQpCisJCWdvdG8gbmV4dDsKKwkgICAgfQorCX0KKyAgICAgIGVsc2UKKwl7 CisJICBzd2l0Y2ggKHR5cGUpCisJICAgIHsKKwkgICAgY2FzZSBHTlVfUFJP UEVSVFlfU1RBQ0tfU0laRToKKwkgICAgICBpZiAoZGF0YXN6ICE9IGFsaWdu X3NpemUpCisJCXsKKwkJICBfYmZkX2Vycm9yX2hhbmRsZXIKKwkJICAgIChf KCJ3YXJuaW5nOiAlQjogY29ycnVwdCBzdGFjayBzaXplOiAweCV4XG4iKSwK KwkJICAgICBhYmZkLCBkYXRhc3opOworCQkgIC8qIENsZWFyIGFsbCBwcm9w ZXJ0aWVzLiAgKi8KKwkJICBlbGZfcHJvcGVydGllcyAoYWJmZCkgPSBOVUxM OworCQkgIHJldHVybiBGQUxTRTsKKwkJfQorCSAgICAgIHByb3AgPSBfYmZk X2VsZl9nZXRfcHJvcGVydHkgKGFiZmQsIHR5cGUsIGRhdGFzeik7CisJICAg ICAgaWYgKGRhdGFzeiA9PSA4KQorCQlwcm9wLT51Lm51bWJlciA9IGJmZF9o X2dldF82NCAoYWJmZCwgcHRyKTsKKwkgICAgICBlbHNlCisJCXByb3AtPnUu bnVtYmVyID0gYmZkX2hfZ2V0XzMyIChhYmZkLCBwdHIpOworCSAgICAgIHBy b3AtPnByX2tpbmQgPSBwcm9wZXJ0eV9udW1iZXI7CisJICAgICAgZ290byBu ZXh0OworCisJICAgIGNhc2UgR05VX1BST1BFUlRZX05PX0NPUFlfT05fUFJP VEVDVEVEOgorCSAgICAgIGlmIChkYXRhc3ogIT0gMCkKKwkJeworCQkgIF9i ZmRfZXJyb3JfaGFuZGxlcgorCQkgICAgKF8oIndhcm5pbmc6ICVCOiBjb3Jy dXB0IG5vIGNvcHkgb24gcHJvdGVjdGVkIHNpemU6IDB4JXhcbiIpLAorCQkg ICAgIGFiZmQsIGRhdGFzeik7CisJCSAgLyogQ2xlYXIgYWxsIHByb3BlcnRp ZXMuICAqLworCQkgIGVsZl9wcm9wZXJ0aWVzIChhYmZkKSA9IE5VTEw7CisJ CSAgcmV0dXJuIEZBTFNFOworCQl9CisJICAgICAgcHJvcCA9IF9iZmRfZWxm X2dldF9wcm9wZXJ0eSAoYWJmZCwgdHlwZSwgZGF0YXN6KTsKKwkgICAgICBw cm9wLT5wcl9raW5kID0gcHJvcGVydHlfbnVtYmVyOworCSAgICAgIGdvdG8g bmV4dDsKKworCSAgICBkZWZhdWx0OgorCSAgICAgIGJyZWFrOworCSAgICB9 CisJfQorCisgICAgICBfYmZkX2Vycm9yX2hhbmRsZXIKKwkoXygid2Fybmlu ZzogJUI6IHVuc3VwcG9ydGVkIEdOVV9QUk9QRVJUWV9UWVBFICglbGQpIHR5 cGU6IDB4JXhcbiIpLAorCSBhYmZkLCBub3RlLT50eXBlLCB0eXBlKTsKKwor bmV4dDoKKyAgICAgIHB0ciArPSAoZGF0YXN6ICsgKGFsaWduX3NpemUgLSAx KSkgJiB+IChhbGlnbl9zaXplIC0gMSk7CisgICAgICBpZiAocHRyID09IHB0 cl9lbmQpCisJYnJlYWs7CisKKyAgICAgIGlmIChwdHIgPiAocHRyX2VuZCAt IDgpKQorCWdvdG8gYmFkX3NpemU7CisgICAgfQorCisgIHJldHVybiBUUlVF OworfQorCisvKiBNZXJnZSBHTlUgcHJvcGVydHkgQlBST1Agd2l0aCBBUFJP UC4gIElmIEFQUk9QIGlzbid0IE5VTEwsIHJldHVybiBUUlVFCisgICBpZiBB UFJPUCBpcyB1cGRhdGVkLiAgT3RoZXJ3aXNlLCByZXR1cm4gVFJVRSBpZiBC UFJPUCBzaG91bGQgYmUgbWVyZ2VkCisgICB3aXRoIEFCRkQuICAqLworCitz dGF0aWMgYmZkX2Jvb2xlYW4KK2VsZl9tZXJnZV9nbnVfcHJvcGVydGllcyAo YmZkICphYmZkLCBlbGZfcHJvcGVydHkgKmFwcm9wLAorCQkJICBlbGZfcHJv cGVydHkgKmJwcm9wKQoreworICBjb25zdCBzdHJ1Y3QgZWxmX2JhY2tlbmRf ZGF0YSAqYmVkID0gZ2V0X2VsZl9iYWNrZW5kX2RhdGEgKGFiZmQpOworICB1 bnNpZ25lZCBpbnQgcHJfdHlwZSA9IGFwcm9wICE9IE5VTEwgPyBhcHJvcC0+ cHJfdHlwZSA6IGJwcm9wLT5wcl90eXBlOworCisgIGlmIChiZWQtPm1lcmdl X2dudV9wcm9wZXJ0aWVzICE9IE5VTEwKKyAgICAgICYmIHByX3R5cGUgPj0g R05VX1BST1BFUlRZX0xPUFJPQworICAgICAgJiYgcHJfdHlwZSA8IEdOVV9Q Uk9QRVJUWV9MT1VTRVIpCisgICAgcmV0dXJuIGJlZC0+bWVyZ2VfZ251X3By b3BlcnRpZXMgKGFiZmQsIGFwcm9wLCBicHJvcCk7CisKKyAgc3dpdGNoIChw cl90eXBlKQorICAgIHsKKyAgICBjYXNlIEdOVV9QUk9QRVJUWV9TVEFDS19T SVpFOgorICAgICAgaWYgKGFwcm9wICE9IE5VTEwgJiYgYnByb3AgIT0gTlVM TCkKKwl7CisJICBpZiAoYnByb3AtPnUubnVtYmVyID4gYXByb3AtPnUubnVt YmVyKQorCSAgICB7CisJICAgICAgYXByb3AtPnUubnVtYmVyID0gYnByb3At PnUubnVtYmVyOworCSAgICAgIHJldHVybiBUUlVFOworCSAgICB9CisJICBi cmVhazsKKwl9CisgICAgICAvKiBGQUxMVEhST1VHSCAqLworCisgICAgY2Fz ZSBHTlVfUFJPUEVSVFlfTk9fQ09QWV9PTl9QUk9URUNURUQ6CisgICAgICAv KiBSZXR1cm4gVFJVRSBpZiBBUFJPUCBpcyBOVUxMIHRvIGluZGljYXRlIHRo YXQgQlBST1Agc2hvdWxkCisJIGJlIGFkZGVkIHRvIEFCRkQuICAqLworICAg ICAgcmV0dXJuIGFwcm9wID09IE5VTEw7CisKKyAgICBkZWZhdWx0OgorICAg ICAgLyogTmV2ZXIgc2hvdWxkIGhhcHBlbi4gICovCisgICAgICBhYm9ydCAo KTsKKyAgICB9CisKKyAgcmV0dXJuIEZBTFNFOworfQorCisvKiBSZXR1cm4g dGhlIHByb3BlcnR5IG9mIFRZUEUgb24gKkxJU1RQIGFuZCByZW1vdmUgaXQg ZnJvbSAqTElTVFAuCisgICBSZXR1cm4gTlVMTCBpZiBub3QgZm91bmQuICAq LworCitzdGF0aWMgZWxmX3Byb3BlcnR5ICoKK2VsZl9maW5kX2FuZF9yZW1v dmVfcHJvcGVydHkgKGVsZl9wcm9wZXJ0eV9saXN0ICoqbGlzdHAsCisJCQkg ICAgICB1bnNpZ25lZCBpbnQgdHlwZSkKK3sKKyAgZWxmX3Byb3BlcnR5X2xp c3QgKmxpc3Q7CisKKyAgZm9yIChsaXN0ID0gKmxpc3RwOyBsaXN0OyBsaXN0 ID0gbGlzdC0+bmV4dCkKKyAgICB7CisgICAgICBpZiAodHlwZSA9PSBsaXN0 LT5wcm9wZXJ0eS5wcl90eXBlKQorCXsKKwkgIC8qIFJlbW92ZSB0aGlzIHBy b3BlcnR5LiAgKi8KKwkgICpsaXN0cCA9IGxpc3QtPm5leHQ7CisJICByZXR1 cm4gJmxpc3QtPnByb3BlcnR5OworCX0KKyAgICAgIGVsc2UgaWYgKHR5cGUg PCBsaXN0LT5wcm9wZXJ0eS5wcl90eXBlKQorCWJyZWFrOworICAgICAgbGlz dHAgPSAmbGlzdC0+bmV4dDsKKyAgICB9CisKKyAgcmV0dXJuIE5VTEw7Cit9 CisKKy8qIE1lcmdlIEdOVSBwcm9wZXJ0eSBsaXN0ICpMSVNUUCB3aXRoIEFC RkQuICAqLworCitzdGF0aWMgdm9pZAorZWxmX21lcmdlX2dudV9wcm9wZXJ0 eV9saXN0IChiZmQgKmFiZmQsIGVsZl9wcm9wZXJ0eV9saXN0ICoqbGlzdHAp Cit7CisgIGVsZl9wcm9wZXJ0eV9saXN0ICpwLCAqKmxhc3RwOworICBlbGZf cHJvcGVydHkgKnByOworCisgIC8qIE1lcmdlIGVhY2ggR05VIHByb3BlcnR5 IGluIEFCRkQgd2l0aCB0aGUgb25lIG9uICpMSVNUUC4gICovCisgIGxhc3Rw ID0gJmVsZl9wcm9wZXJ0aWVzIChhYmZkKTsKKyAgZm9yIChwID0gKmxhc3Rw OyBwOyBwID0gcC0+bmV4dCkKKyAgICB7CisgICAgICBwciA9IGVsZl9maW5k X2FuZF9yZW1vdmVfcHJvcGVydHkgKGxpc3RwLCBwLT5wcm9wZXJ0eS5wcl90 eXBlKTsKKyAgICAgIC8qIFBhc3MgTlVMTCB0byBlbGZfbWVyZ2VfZ251X3By b3BlcnRpZXMgZm9yIHRoZSBwcm9wZXJ0eSB3aGljaAorCSBpc24ndCBvbiAq TElTVFAuICAqLworICAgICAgZWxmX21lcmdlX2dudV9wcm9wZXJ0aWVzIChh YmZkLCAmcC0+cHJvcGVydHksIHByKTsKKyAgICAgIGlmIChwLT5wcm9wZXJ0 eS5wcl9raW5kID09IHByb3BlcnR5X3JlbW92ZSkKKwl7CisJICAvKiBSZW1v dmUgdGhpcyBwcm9wZXJ0eS4gICovCisJICAqbGFzdHAgPSBwLT5uZXh0Owor CSAgY29udGludWU7CisJfQorICAgICAgbGFzdHAgPSAmcC0+bmV4dDsKKyAg ICB9CisKKyAgLyogTWVyZ2UgdGhlIHJlbWFpbmluZyBwcm9wZXJ0aWVzIG9u ICpMSVNUUCB3aXRoIEFCRkQuICAqLworICBmb3IgKHAgPSAqbGlzdHA7IHAg IT0gTlVMTDsgcCA9IHAtPm5leHQpCisgICAgaWYgKGVsZl9tZXJnZV9nbnVf cHJvcGVydGllcyAoYWJmZCwgTlVMTCwgJnAtPnByb3BlcnR5KSkKKyAgICAg IHsKKwlwciA9IF9iZmRfZWxmX2dldF9wcm9wZXJ0eSAoYWJmZCwgcC0+cHJv cGVydHkucHJfdHlwZSwKKwkJCQkgICAgcC0+cHJvcGVydHkucHJfZGF0YXN6 KTsKKwkvKiBJdCBtdXN0IGJlIGEgbmV3IHByb3BlcnR5LiAgKi8KKwlpZiAo cHItPnByX2tpbmQgIT0gcHJvcGVydHlfdW5rbm93bikKKwkgIGFib3J0ICgp OworCS8qIEFkZCBhIG5ldyBwcm9wZXJ0eS4gICovCisJKnByID0gcC0+cHJv cGVydHk7CisgICAgICB9Cit9CisKKy8qIFNldCB1cCBHTlUgcHJvcGVydGll cy4gICovCisKK3ZvaWQKK19iZmRfZWxmX2xpbmtfc2V0dXBfZ251X3Byb3Bl cnRpZXMgKHN0cnVjdCBiZmRfbGlua19pbmZvICppbmZvKQoreworICBiZmQg KmFiZmQsICpmaXJzdF9wYmZkID0gTlVMTDsKKyAgZWxmX3Byb3BlcnR5X2xp c3QgKmxpc3Q7CisgIGFzZWN0aW9uICpzZWM7CisgIGJmZF9ib29sZWFuIGhh c19wcm9wZXJ0aWVzID0gRkFMU0U7CisgIGNvbnN0IHN0cnVjdCBlbGZfYmFj a2VuZF9kYXRhICpiZWQKKyAgICA9IGdldF9lbGZfYmFja2VuZF9kYXRhIChp bmZvLT5vdXRwdXRfYmZkKTsKKyAgdW5zaWduZWQgaW50IGVsZmNsYXNzID0g YmVkLT5zLT5lbGZjbGFzczsKKyAgaW50IGVsZl9tYWNoaW5lX2NvZGUgPSBi ZWQtPmVsZl9tYWNoaW5lX2NvZGU7CisKKyAgLyogRmluZCB0aGUgZmlyc3Qg cmVsb2NhdGFibGUgRUxGIGlucHV0IHdpdGggR05VIHByb3BlcnRpZXMuICAq LworICBmb3IgKGFiZmQgPSBpbmZvLT5pbnB1dF9iZmRzOyBhYmZkICE9IE5V TEw7IGFiZmQgPSBhYmZkLT5saW5rLm5leHQpCisgICAgaWYgKGJmZF9nZXRf Zmxhdm91ciAoYWJmZCkgPT0gYmZkX3RhcmdldF9lbGZfZmxhdm91cgorCSYm IGJmZF9jb3VudF9zZWN0aW9ucyAoYWJmZCkgIT0gMAorCSYmIGVsZl9wcm9w ZXJ0aWVzIChhYmZkKSAhPSBOVUxMKQorICAgICAgeworCWhhc19wcm9wZXJ0 aWVzID0gVFJVRTsKKworCS8qIElnbm9yZSBHTlUgcHJvcGVydGllcyBmcm9t IEVMRiBvYmplY3RzIHdpdGggZGlmZmVyZW50IG1hY2hpbmUKKwkgICBjb2Rl IG9yIGNsYXNzLiAgKi8KKwlpZiAoKGVsZl9tYWNoaW5lX2NvZGUKKwkgICAg ID09IGdldF9lbGZfYmFja2VuZF9kYXRhIChhYmZkKS0+ZWxmX21hY2hpbmVf Y29kZSkKKwkgICAgJiYgKGVsZmNsYXNzCisJCT09IGdldF9lbGZfYmFja2Vu ZF9kYXRhIChhYmZkKS0+cy0+ZWxmY2xhc3MpKQorCSAgeworCSAgICAvKiBL ZWVwIC5ub3RlLmdudS5wcm9wZXJ0eSBzZWN0aW9uIGluIEZJUlNUX1BCRkQu ICAqLworCSAgICBmaXJzdF9wYmZkID0gYWJmZDsKKwkgICAgYnJlYWs7CisJ ICB9CisgICAgICB9CisKKyAgLyogRG8gbm90aGluZyBpZiB0aGVyZSBpcyBu byAubm90ZS5nbnUucHJvcGVydHkgc2VjdGlvbi4gICovCisgIGlmICghaGFz X3Byb3BlcnRpZXMpCisgICAgcmV0dXJuOworCisgIC8qIE1lcmdlIC5ub3Rl LmdudS5wcm9wZXJ0eSBzZWN0aW9ucy4gICovCisgIGZvciAoYWJmZCA9IGlu Zm8tPmlucHV0X2JmZHM7IGFiZmQgIT0gTlVMTDsgYWJmZCA9IGFiZmQtPmxp bmsubmV4dCkKKyAgICBpZiAoYWJmZCAhPSBmaXJzdF9wYmZkICYmIGJmZF9j b3VudF9zZWN0aW9ucyAoYWJmZCkgIT0gMCkKKyAgICAgIHsKKwllbGZfcHJv cGVydHlfbGlzdCAqbnVsbF9wdHIgPSBOVUxMOworCWVsZl9wcm9wZXJ0eV9s aXN0ICoqbGlzdHAgPSAmbnVsbF9wdHI7CisKKwkvKiBNZXJnZSAubm90ZS5n bnUucHJvcGVydHkgc2VjdGlvbiBpbiByZWxvY2F0YWJsZSBFTEYgaW5wdXQu ICAqLworCWlmIChiZmRfZ2V0X2ZsYXZvdXIgKGFiZmQpID09IGJmZF90YXJn ZXRfZWxmX2ZsYXZvdXIpCisJICB7CisJICAgIGxpc3QgPSBlbGZfcHJvcGVy dGllcyAoYWJmZCk7CisKKwkgICAgLyogSWdub3JlIEdOVSBwcm9wZXJ0aWVz IGZyb20gRUxGIG9iamVjdHMgd2l0aCBkaWZmZXJlbnQKKwkgICAgICAgbWFj aGluZSBjb2RlLiAgKi8KKwkgICAgaWYgKGxpc3QgIT0gTlVMTAorCQkmJiAo ZWxmX21hY2hpbmVfY29kZQorCQkgICAgPT0gZ2V0X2VsZl9iYWNrZW5kX2Rh dGEgKGFiZmQpLT5lbGZfbWFjaGluZV9jb2RlKSkKKwkgICAgICBsaXN0cCA9 ICZlbGZfcHJvcGVydGllcyAoYWJmZCk7CisJICB9CisJZWxzZQorCSAgbGlz dCA9IE5VTEw7CisKKwkvKiBNZXJnZSBwcm9wZXJ0aWVzIHdpdGggRklSU1Rf UEJGRC4gIEZJUlNUX1BCRkQgY2FuIGJlIE5VTEwKKwkgICB3aGVuIGFsbCBw cm9wZXJ0aWVzIGFyZSBmcm9tIEVMRiBvYmplY3RzIHdpdGggZGlmZmVyZW50 CisJICAgbWFjaGluZSBjb2RlIG9yIGNsYXNzLiAgKi8KKwlpZiAoZmlyc3Rf cGJmZCAhPSBOVUxMKQorCSAgZWxmX21lcmdlX2dudV9wcm9wZXJ0eV9saXN0 IChmaXJzdF9wYmZkLCBsaXN0cCk7CisKKwlpZiAobGlzdCAhPSBOVUxMKQor CSAgeworCSAgICAvKiBEaXNjYXJkIC5ub3RlLmdudS5wcm9wZXJ0eSBzZWN0 aW9uIGluIHRoZSByZXN0IGlucHV0cy4gICovCisJICAgIHNlYyA9IGJmZF9n ZXRfc2VjdGlvbl9ieV9uYW1lIChhYmZkLAorCQkJCQkgICBOT1RFX0dOVV9Q Uk9QRVJUWV9TRUNUSU9OX05BTUUpOworCSAgICBzZWMtPm91dHB1dF9zZWN0 aW9uID0gYmZkX2Fic19zZWN0aW9uX3B0cjsKKwkgIH0KKyAgICAgIH0KKwor ICAvKiBSZXdyaXRlIC5ub3RlLmdudS5wcm9wZXJ0eSBzZWN0aW9uIHNvIHRo YXQgR05VIHByb3BlcnRpZXMgYXJlCisgICAgIGFsd2F5cyBzb3J0ZWQgYnkg dHlwZSBldmVuIGlmIGlucHV0IEdOVSBwcm9wZXJ0aWVzIGFyZW4ndCBzb3J0 ZWQuICAqLworICBpZiAoZmlyc3RfcGJmZCAhPSBOVUxMKQorICAgIHsKKyAg ICAgIHVuc2lnbmVkIGludCBzaXplOworICAgICAgdW5zaWduZWQgaW50IGRl c2NzejsKKyAgICAgIGJmZF9ieXRlICpjb250ZW50czsKKyAgICAgIEVsZl9F eHRlcm5hbF9Ob3RlICplX25vdGU7CisgICAgICB1bnNpZ25lZCBpbnQgYWxp Z25fc2l6ZSA9IGJlZC0+cy0+ZWxmY2xhc3MgPT0gRUxGQ0xBU1M2NCA/IDgg OiA0OworCisgICAgICBzZWMgPSBiZmRfZ2V0X3NlY3Rpb25fYnlfbmFtZSAo Zmlyc3RfcGJmZCwKKwkJCQkgICAgIE5PVEVfR05VX1BST1BFUlRZX1NFQ1RJ T05fTkFNRSk7CisKKyAgICAgIC8qIFVwZGF0ZSBzdGFjayBzaXplIGluIC5u b3RlLmdudS5wcm9wZXJ0eSB3aXRoIC16IHN0YWNrLXNpemU9TgorCSBpZiBO ID4gMC4gICovCisgICAgICBpZiAoaW5mby0+c3RhY2tzaXplID4gMCkKKwl7 CisJICBlbGZfcHJvcGVydHkgKnA7CisJICBiZmRfdm1hIHN0YWNrc2l6ZSA9 IGluZm8tPnN0YWNrc2l6ZTsKKworCSAgcCA9IF9iZmRfZWxmX2dldF9wcm9w ZXJ0eSAoZmlyc3RfcGJmZCwgR05VX1BST1BFUlRZX1NUQUNLX1NJWkUsCisJ CQkJICAgICBhbGlnbl9zaXplKTsKKwkgIGlmIChwLT5wcl9raW5kID09IHBy b3BlcnR5X3Vua25vd24pCisJICAgIHsKKwkgICAgICAvKiBDcmVhdGUgR05V X1BST1BFUlRZX1NUQUNLX1NJWkUuICAqLworCSAgICAgIHAtPnUubnVtYmVy ID0gc3RhY2tzaXplOworCSAgICAgIHAtPnByX2tpbmQgPSBwcm9wZXJ0eV9u dW1iZXI7CisJICAgIH0KKwkgIGVsc2UgaWYgKHN0YWNrc2l6ZSA+IHAtPnUu bnVtYmVyKQorCSAgICBwLT51Lm51bWJlciA9IHN0YWNrc2l6ZTsKKwl9Cisg ICAgICBlbHNlIGlmIChlbGZfcHJvcGVydGllcyAoZmlyc3RfcGJmZCkgPT0g TlVMTCkKKwl7CisJICAvKiBEaXNjYXJkIC5ub3RlLmdudS5wcm9wZXJ0eSBz ZWN0aW9uIGlmIGFsbCBwcm9wZXJ0aWVzIGhhdmUKKwkgICAgIGJlZW4gcmVt b3ZlZC4gICovCisJICBzZWMtPm91dHB1dF9zZWN0aW9uID0gYmZkX2Fic19z ZWN0aW9uX3B0cjsKKwkgIHJldHVybjsKKwl9CisKKyAgICAgIC8qIENvbXB1 dGUgdGhlIHNlY3Rpb24gc2l6ZS4gICovCisgICAgICBkZXNjc3ogPSBvZmZz ZXRvZiAoRWxmX0V4dGVybmFsX05vdGUsIG5hbWVbc2l6ZW9mICJHTlUiXSk7 CisgICAgICBkZXNjc3ogPSAoZGVzY3N6ICsgMykgJiAtKHVuc2lnbmVkIGlu dCkgNDsKKyAgICAgIHNpemUgPSBkZXNjc3o7CisgICAgICBmb3IgKGxpc3Qg PSBlbGZfcHJvcGVydGllcyAoZmlyc3RfcGJmZCk7CisJICAgbGlzdCAhPSBO VUxMOworCSAgIGxpc3QgPSBsaXN0LT5uZXh0KQorCXsKKwkgIC8qIFRoZXJl IGFyZSA0IGJ5dGUgdHlwZSArIDQgYnl0ZSBkYXRhc3ogZm9yIGVhY2ggcHJv cGVydHkuICAqLworCSAgc2l6ZSArPSA0ICsgNCArIGxpc3QtPnByb3BlcnR5 LnByX2RhdGFzejsKKwkgIC8qIEFsaWduIGVhY2ggcHJvcGVydHkuICAqLwor CSAgc2l6ZSA9IChzaXplICsgKGFsaWduX3NpemUgLSAxKSkgJiB+KGFsaWdu X3NpemUgLSAxKTsKKwl9CisKKyAgICAgIC8qIFVwZGF0ZSAubm90ZS5nbnUu cHJvcGVydHkgc2VjdGlvbiBub3cuICAqLworICAgICAgc2VjLT5zaXplID0g c2l6ZTsKKyAgICAgIGNvbnRlbnRzID0gKGJmZF9ieXRlICopIGJmZF96YWxs b2MgKGZpcnN0X3BiZmQsIHNpemUpOworCisgICAgICBlX25vdGUgPSAoRWxm X0V4dGVybmFsX05vdGUgKikgY29udGVudHM7CisgICAgICBiZmRfaF9wdXRf MzIgKGZpcnN0X3BiZmQsIHNpemVvZiAiR05VIiwgJmVfbm90ZS0+bmFtZXN6 KTsKKyAgICAgIGJmZF9oX3B1dF8zMiAoZmlyc3RfcGJmZCwgc2l6ZSAtIGRl c2NzeiwgJmVfbm90ZS0+ZGVzY3N6KTsKKyAgICAgIGJmZF9oX3B1dF8zMiAo Zmlyc3RfcGJmZCwgTlRfR05VX1BST1BFUlRZX1RZUEVfMCwgJmVfbm90ZS0+ dHlwZSk7CisgICAgICBtZW1jcHkgKGVfbm90ZS0+bmFtZSwgIkdOVSIsIHNp emVvZiAiR05VIik7CisKKyAgICAgIHNpemUgPSBkZXNjc3o7CisgICAgICBm b3IgKGxpc3QgPSBlbGZfcHJvcGVydGllcyAoZmlyc3RfcGJmZCk7CisJICAg bGlzdCAhPSBOVUxMOworCSAgIGxpc3QgPSBsaXN0LT5uZXh0KQorCXsKKwkg IC8qIFRoZXJlIGFyZSA0IGJ5dGUgdHlwZSArIDQgYnl0ZSBkYXRhc3ogZm9y IGVhY2ggcHJvcGVydHkuICAqLworCSAgYmZkX2hfcHV0XzMyIChmaXJzdF9w YmZkLCBsaXN0LT5wcm9wZXJ0eS5wcl90eXBlLAorCQkJY29udGVudHMgKyBz aXplKTsKKwkgIGJmZF9oX3B1dF8zMiAoZmlyc3RfcGJmZCwgbGlzdC0+cHJv cGVydHkucHJfZGF0YXN6LAorCQkJY29udGVudHMgKyBzaXplICsgNCk7CisJ ICBzaXplICs9IDQgKyA0OworCisJICAvKiBXcml0ZSBvdXQgcHJvcGVydHkg dmFsdWUuICAqLworCSAgc3dpdGNoIChsaXN0LT5wcm9wZXJ0eS5wcl9raW5k KQorCSAgICB7CisJICAgIGNhc2UgcHJvcGVydHlfbnVtYmVyOgorCSAgICAg IHN3aXRjaCAobGlzdC0+cHJvcGVydHkucHJfZGF0YXN6KQorCQl7CisJCWRl ZmF1bHQ6CisJCSAgLyogTmV2ZXIgc2hvdWxkIGhhcHBlbi4gICovCisJCSAg YWJvcnQgKCk7CisKKwkJY2FzZSAwOgorCQkgIGJyZWFrOworCisJCWNhc2Ug NDoKKwkJICBiZmRfaF9wdXRfMzIgKGZpcnN0X3BiZmQsIGxpc3QtPnByb3Bl cnR5LnUubnVtYmVyLAorCQkJCWNvbnRlbnRzICsgc2l6ZSk7CisJCSAgYnJl YWs7CisKKwkJY2FzZSA4OgorCQkgIGJmZF9oX3B1dF82NCAoZmlyc3RfcGJm ZCwgbGlzdC0+cHJvcGVydHkudS5udW1iZXIsCisJCQkJY29udGVudHMgKyBz aXplKTsKKwkJICBicmVhazsKKwkJfQorCSAgICAgIGJyZWFrOworCisJICAg IGRlZmF1bHQ6CisJICAgICAgLyogTmV2ZXIgc2hvdWxkIGhhcHBlbi4gICov CisJICAgICAgYWJvcnQgKCk7CisJICAgIH0KKwkgIHNpemUgKz0gbGlzdC0+ cHJvcGVydHkucHJfZGF0YXN6OworCisJICAvKiBBbGlnbiBlYWNoIHByb3Bl cnR5LiAgKi8KKwkgIHNpemUgPSAoc2l6ZSArIChhbGlnbl9zaXplIC0gMSkp ICYgfiAoYWxpZ25fc2l6ZSAtIDEpOworCX0KKworICAgICAgLyogQ2FjaGUg dGhlIHNlY3Rpb24gY29udGVudHMgZm9yIGVsZl9saW5rX2lucHV0X2JmZC4g ICovCisgICAgICBlbGZfc2VjdGlvbl9kYXRhIChzZWMpLT50aGlzX2hkci5j b250ZW50cyA9IGNvbnRlbnRzOworICAgIH0KK30KZGlmZiAtLWdpdCBhL2Jm ZC9lbGYuYyBiL2JmZC9lbGYuYwppbmRleCA5NDE4ZTUxLi5kNGQ5MWI2IDEw MDY0NAotLS0gYS9iZmQvZWxmLmMKKysrIGIvYmZkL2VsZi5jCkBAIC05Njkx LDYgKzk2OTEsOSBAQCBlbGZvYmpfZ3Jva19nbnVfbm90ZSAoYmZkICphYmZk LCBFbGZfSW50ZXJuYWxfTm90ZSAqbm90ZSkKICAgICBkZWZhdWx0OgogICAg ICAgcmV0dXJuIFRSVUU7CiAKKyAgICBjYXNlIE5UX0dOVV9QUk9QRVJUWV9U WVBFXzA6CisgICAgICByZXR1cm4gX2JmZF9lbGZfcGFyc2VfZ251X3Byb3Bl cnRpZXMgKGFiZmQsIG5vdGUpOworCiAgICAgY2FzZSBOVF9HTlVfQlVJTERf SUQ6CiAgICAgICByZXR1cm4gZWxmb2JqX2dyb2tfZ251X2J1aWxkX2lkIChh YmZkLCBub3RlKTsKICAgICB9CmRpZmYgLS1naXQgYS9iZmQvZWxmMzItaTM4 Ni5jIGIvYmZkL2VsZjMyLWkzODYuYwppbmRleCAyNzg0ZWY3Li5iMWFmYjQ5 IDEwMDY0NAotLS0gYS9iZmQvZWxmMzItaTM4Ni5jCisrKyBiL2JmZC9lbGYz Mi1pMzg2LmMKQEAgLTYxMzEsNiArNjEzMSw3OCBAQCBlbGZfaTM4Nl9oYXNo X3N5bWJvbCAoc3RydWN0IGVsZl9saW5rX2hhc2hfZW50cnkgKmgpCiAgIHJl dHVybiBfYmZkX2VsZl9oYXNoX3N5bWJvbCAoaCk7CiB9CiAKKy8qIFBhcnNl IGkzODYgR05VIHByb3BlcnRpZXMuICAqLworCitzdGF0aWMgZW51bSBlbGZf cHJvcGVydHlfa2luZAorZWxmX2kzODZfcGFyc2VfZ251X3Byb3BlcnRpZXMg KGJmZCAqYWJmZCwgdW5zaWduZWQgaW50IHR5cGUsCisJCQkgICAgICAgYmZk X2J5dGUgKnB0ciwgdW5zaWduZWQgaW50IGRhdGFzeikKK3sKKyAgZWxmX3By b3BlcnR5ICpwcm9wOworCisgIHN3aXRjaCAodHlwZSkKKyAgICB7CisgICAg Y2FzZSBHTlVfUFJPUEVSVFlfWDg2X0lTQV8xX1VTRUQ6CisgICAgY2FzZSBH TlVfUFJPUEVSVFlfWDg2X0lTQV8xX05FRURFRDoKKyAgICAgIGlmIChkYXRh c3ogIT0gNCkKKwl7CisJICBfYmZkX2Vycm9yX2hhbmRsZXIKKwkgICAgKCh0 eXBlID09IEdOVV9QUk9QRVJUWV9YODZfSVNBXzFfVVNFRAorCSAgICAgID8g XygiZXJyb3I6ICVCOiA8Y29ycnVwdCB4ODYgSVNBIHVzZWQgc2l6ZTogMHgl eD5cbiIpCisJICAgICAgOiBfKCJlcnJvcjogJUI6IDxjb3JydXB0IHg4NiBJ U0EgbmVlZGVkIHNpemU6IDB4JXg+XG4iKSksCisJICAgICBhYmZkLCBkYXRh c3opOworCSAgcmV0dXJuIHByb3BlcnR5X2NvcnJ1cHQ7CisJfQorICAgICAg cHJvcCA9IF9iZmRfZWxmX2dldF9wcm9wZXJ0eSAoYWJmZCwgdHlwZSwgZGF0 YXN6KTsKKyAgICAgIHByb3AtPnUubnVtYmVyID0gYmZkX2hfZ2V0XzMyIChh YmZkLCBwdHIpOworICAgICAgcHJvcC0+cHJfa2luZCA9IHByb3BlcnR5X251 bWJlcjsKKyAgICAgIGJyZWFrOworCisgICAgZGVmYXVsdDoKKyAgICAgIHJl dHVybiBwcm9wZXJ0eV9pZ25vcmVkOworICAgIH0KKworICByZXR1cm4gcHJv cGVydHlfbnVtYmVyOworfQorCisvKiBNZXJnZSBpMzg2IEdOVSBwcm9wZXJ0 eSBCUFJPUCB3aXRoIEFQUk9QLiAgSWYgQVBST1AgaXNuJ3QgTlVMTCwKKyAg IHJldHVybiBUUlVFIGlmIEFQUk9QIGlzIHVwZGF0ZWQuICBPdGhlcndpc2Us IHJldHVybiBUUlVFIGlmIEJQUk9QCisgICBzaG91bGQgYmUgbWVyZ2VkIHdp dGggQUJGRC4gICovCisKK3N0YXRpYyBiZmRfYm9vbGVhbgorZWxmX2kzODZf bWVyZ2VfZ251X3Byb3BlcnRpZXMgKGJmZCAqYWJmZCBBVFRSSUJVVEVfVU5V U0VELAorCQkJICAgICAgIGVsZl9wcm9wZXJ0eSAqYXByb3AsCisJCQkgICAg ICAgZWxmX3Byb3BlcnR5ICpicHJvcCkKK3sKKyAgdW5zaWduZWQgaW50IG51 bWJlcjsKKyAgYmZkX2Jvb2xlYW4gdXBkYXRlZCA9IEZBTFNFOworICB1bnNp Z25lZCBpbnQgcHJfdHlwZSA9IGFwcm9wICE9IE5VTEwgPyBhcHJvcC0+cHJf dHlwZSA6IGJwcm9wLT5wcl90eXBlOworCisgIHN3aXRjaCAocHJfdHlwZSkK KyAgICB7CisgICAgY2FzZSBHTlVfUFJPUEVSVFlfWDg2X0lTQV8xX1VTRUQ6 CisgICAgY2FzZSBHTlVfUFJPUEVSVFlfWDg2X0lTQV8xX05FRURFRDoKKyAg ICAgIGlmIChhcHJvcCAhPSBOVUxMICYmIGJwcm9wICE9IE5VTEwpCisJewor CSAgbnVtYmVyID0gYXByb3AtPnUubnVtYmVyOworCSAgYXByb3AtPnUubnVt YmVyID0gbnVtYmVyIHwgYnByb3AtPnUubnVtYmVyOworCSAgdXBkYXRlZCA9 IG51bWJlciAhPSAodW5zaWduZWQgaW50KSBhcHJvcC0+dS5udW1iZXI7CisJ fQorICAgICAgZWxzZQorCXsKKwkgIC8qIFJldHVybiBUUlVFIGlmIEFQUk9Q IGlzIE5VTEwgdG8gaW5kaWNhdGUgdGhhdCBCUFJPUCBzaG91bGQKKwkgICAg IGJlIGFkZGVkIHRvIEFCRkQuICAqLworCSAgdXBkYXRlZCA9IGFwcm9wID09 IE5VTEw7CisJfQorICAgICAgYnJlYWs7CisKKyAgICBkZWZhdWx0OgorICAg ICAgLyogTmV2ZXIgc2hvdWxkIGhhcHBlbi4gICovCisgICAgICBhYm9ydCAo KTsKKyAgICB9CisKKyAgcmV0dXJuIHVwZGF0ZWQ7Cit9CisKICNkZWZpbmUg VEFSR0VUX0xJVFRMRV9TWU0JCWkzODZfZWxmMzJfdmVjCiAjZGVmaW5lIFRB UkdFVF9MSVRUTEVfTkFNRQkJImVsZjMyLWkzODYiCiAjZGVmaW5lIEVMRl9B UkNICQkJYmZkX2FyY2hfaTM4NgpAQCAtNjE4Miw2ICs2MjU0LDggQEAgZWxm X2kzODZfaGFzaF9zeW1ib2wgKHN0cnVjdCBlbGZfbGlua19oYXNoX2VudHJ5 ICpoKQogICAoKGJmZF9ib29sZWFuICgqKSAoYmZkICosIHN0cnVjdCBiZmRf bGlua19pbmZvICosIGFzZWN0aW9uICopKSBiZmRfdHJ1ZSkKICNkZWZpbmUg ZWxmX2JhY2tlbmRfaGFzaF9zeW1ib2wJCSAgICAgIGVsZl9pMzg2X2hhc2hf c3ltYm9sCiAjZGVmaW5lIGVsZl9iYWNrZW5kX2ZpeHVwX3N5bWJvbAkgICAg ICBlbGZfaTM4Nl9maXh1cF9zeW1ib2wKKyNkZWZpbmUgZWxmX2JhY2tlbmRf cGFyc2VfZ251X3Byb3BlcnRpZXMgICAgICBlbGZfaTM4Nl9wYXJzZV9nbnVf cHJvcGVydGllcworI2RlZmluZSBlbGZfYmFja2VuZF9tZXJnZV9nbnVfcHJv cGVydGllcyAgICAgIGVsZl9pMzg2X21lcmdlX2dudV9wcm9wZXJ0aWVzCiAK ICNpbmNsdWRlICJlbGYzMi10YXJnZXQuaCIKIApkaWZmIC0tZ2l0IGEvYmZk L2VsZjY0LXg4Ni02NC5jIGIvYmZkL2VsZjY0LXg4Ni02NC5jCmluZGV4IGUw ZTZjMTYuLjZkOTJjNzkgMTAwNjQ0Ci0tLSBhL2JmZC9lbGY2NC14ODYtNjQu YworKysgYi9iZmQvZWxmNjQteDg2LTY0LmMKQEAgLTY4OTYsOCArNjg5Niw4 MCBAQCBlbGZfeDg2XzY0X3JlbG9jc19jb21wYXRpYmxlIChjb25zdCBiZmRf dGFyZ2V0ICppbnB1dCwKIAkgICYmIF9iZmRfZWxmX3JlbG9jc19jb21wYXRp YmxlIChpbnB1dCwgb3V0cHV0KSk7CiB9CiAKKy8qIFBhcnNlIHg4Ni02NCBH TlUgcHJvcGVydGllcy4gICovCisKK3N0YXRpYyBlbnVtIGVsZl9wcm9wZXJ0 eV9raW5kCitlbGZfeDg2XzY0X3BhcnNlX2dudV9wcm9wZXJ0aWVzIChiZmQg KmFiZmQsIHVuc2lnbmVkIGludCB0eXBlLAorCQkJCSBiZmRfYnl0ZSAqcHRy LCB1bnNpZ25lZCBpbnQgZGF0YXN6KQoreworICBlbGZfcHJvcGVydHkgKnBy b3A7CisKKyAgc3dpdGNoICh0eXBlKQorICAgIHsKKyAgICBjYXNlIEdOVV9Q Uk9QRVJUWV9YODZfSVNBXzFfVVNFRDoKKyAgICBjYXNlIEdOVV9QUk9QRVJU WV9YODZfSVNBXzFfTkVFREVEOgorICAgICAgaWYgKGRhdGFzeiAhPSA0KQor CXsKKwkgIF9iZmRfZXJyb3JfaGFuZGxlcgorCSAgICAoKHR5cGUgPT0gR05V X1BST1BFUlRZX1g4Nl9JU0FfMV9VU0VECisJICAgICAgPyBfKCJlcnJvcjog JUI6IDxjb3JydXB0IHg4NiBJU0EgdXNlZCBzaXplOiAweCV4PlxuIikKKwkg ICAgICA6IF8oImVycm9yOiAlQjogPGNvcnJ1cHQgeDg2IElTQSBuZWVkZWQg c2l6ZTogMHgleD5cbiIpKSwKKwkgICAgIGFiZmQsIGRhdGFzeik7CisJICBy ZXR1cm4gcHJvcGVydHlfY29ycnVwdDsKKwl9CisgICAgICBwcm9wID0gX2Jm ZF9lbGZfZ2V0X3Byb3BlcnR5IChhYmZkLCB0eXBlLCBkYXRhc3opOworICAg ICAgcHJvcC0+dS5udW1iZXIgPSBiZmRfaF9nZXRfMzIgKGFiZmQsIHB0cik7 CisgICAgICBwcm9wLT5wcl9raW5kID0gcHJvcGVydHlfbnVtYmVyOworICAg ICAgYnJlYWs7CisKKyAgICBkZWZhdWx0OgorICAgICAgcmV0dXJuIHByb3Bl cnR5X2lnbm9yZWQ7CisgICAgfQorCisgIHJldHVybiBwcm9wZXJ0eV9udW1i ZXI7Cit9CisKKy8qIE1lcmdlIHg4Ni02NCBHTlUgcHJvcGVydHkgQlBST1Ag d2l0aCBBUFJPUC4gIElmIEFQUk9QIGlzbid0IE5VTEwsCisgICByZXR1cm4g VFJVRSBpZiBBUFJPUCBpcyB1cGRhdGVkLiAgT3RoZXJ3aXNlLCByZXR1cm4g VFJVRSBpZiBCUFJPUAorICAgc2hvdWxkIGJlIG1lcmdlZCB3aXRoIEFCRkQu ICAqLworCitzdGF0aWMgYmZkX2Jvb2xlYW4KK2VsZl94ODZfNjRfbWVyZ2Vf Z251X3Byb3BlcnRpZXMgKGJmZCAqYWJmZCBBVFRSSUJVVEVfVU5VU0VELAor CQkJCSBlbGZfcHJvcGVydHkgKmFwcm9wLAorCQkJCSBlbGZfcHJvcGVydHkg KmJwcm9wKQoreworICB1bnNpZ25lZCBpbnQgbnVtYmVyOworICBiZmRfYm9v bGVhbiB1cGRhdGVkID0gRkFMU0U7CisgIHVuc2lnbmVkIGludCBwcl90eXBl ID0gYXByb3AgIT0gTlVMTCA/IGFwcm9wLT5wcl90eXBlIDogYnByb3AtPnBy X3R5cGU7CisKKyAgc3dpdGNoIChwcl90eXBlKQorICAgIHsKKyAgICBjYXNl IEdOVV9QUk9QRVJUWV9YODZfSVNBXzFfVVNFRDoKKyAgICBjYXNlIEdOVV9Q Uk9QRVJUWV9YODZfSVNBXzFfTkVFREVEOgorICAgICAgaWYgKGFwcm9wICE9 IE5VTEwgJiYgYnByb3AgIT0gTlVMTCkKKwl7CisJICBudW1iZXIgPSBhcHJv cC0+dS5udW1iZXI7CisJICBhcHJvcC0+dS5udW1iZXIgPSBudW1iZXIgfCBi cHJvcC0+dS5udW1iZXI7CisJICB1cGRhdGVkID0gbnVtYmVyICE9ICh1bnNp Z25lZCBpbnQpIGFwcm9wLT51Lm51bWJlcjsKKwl9CisgICAgICBlbHNlCisJ eworCSAgLyogUmV0dXJuIFRSVUUgaWYgQVBST1AgaXMgTlVMTCB0byBpbmRp Y2F0ZSB0aGF0IEJQUk9QIHNob3VsZAorCSAgICAgYmUgYWRkZWQgdG8gQUJG RC4gICovCisJICB1cGRhdGVkID0gYXByb3AgPT0gTlVMTDsKKwl9CisgICAg ICBicmVhazsKKworICAgIGRlZmF1bHQ6CisgICAgICAvKiBOZXZlciBzaG91 bGQgaGFwcGVuLiAgKi8KKyAgICAgIGFib3J0ICgpOworICAgIH0KKworICBy ZXR1cm4gdXBkYXRlZDsKK30KKwogc3RhdGljIGNvbnN0IHN0cnVjdCBiZmRf ZWxmX3NwZWNpYWxfc2VjdGlvbgotICBlbGZfeDg2XzY0X3NwZWNpYWxfc2Vj dGlvbnNbXT0KK2VsZl94ODZfNjRfc3BlY2lhbF9zZWN0aW9uc1tdPQogewog ICB7IFNUUklOR19DT01NQV9MRU4gKCIuZ251LmxpbmtvbmNlLmxiIiksIC0y LCBTSFRfTk9CSVRTLCAgIFNIRl9BTExPQyArIFNIRl9XUklURSArIFNIRl9Y ODZfNjRfTEFSR0V9LAogICB7IFNUUklOR19DT01NQV9MRU4gKCIuZ251Lmxp bmtvbmNlLmxyIiksIC0yLCBTSFRfUFJPR0JJVFMsIFNIRl9BTExPQyArIFNI Rl9YODZfNjRfTEFSR0V9LApAQCAtNjk4OCw2ICs3MDYwLDEwIEBAIHN0YXRp YyBjb25zdCBzdHJ1Y3QgYmZkX2VsZl9zcGVjaWFsX3NlY3Rpb24KICAgKChi ZmRfYm9vbGVhbiAoKikgKGJmZCAqLCBzdHJ1Y3QgYmZkX2xpbmtfaW5mbyAq LCBhc2VjdGlvbiAqKSkgYmZkX3RydWUpCiAjZGVmaW5lIGVsZl9iYWNrZW5k X2ZpeHVwX3N5bWJvbCBcCiAgIGVsZl94ODZfNjRfZml4dXBfc3ltYm9sCisj ZGVmaW5lIGVsZl9iYWNrZW5kX3BhcnNlX2dudV9wcm9wZXJ0aWVzIFwKKyAg ZWxmX3g4Nl82NF9wYXJzZV9nbnVfcHJvcGVydGllcworI2RlZmluZSBlbGZf YmFja2VuZF9tZXJnZV9nbnVfcHJvcGVydGllcyBcCisgZWxmX3g4Nl82NF9t ZXJnZV9nbnVfcHJvcGVydGllcwogCiAjaW5jbHVkZSAiZWxmNjQtdGFyZ2V0 LmgiCiAKZGlmZiAtLWdpdCBhL2JmZC9lbGZ4eC10YXJnZXQuaCBiL2JmZC9l bGZ4eC10YXJnZXQuaAppbmRleCBkMDYzZmI3Li42Y2M5ZjNmIDEwMDY0NAot LS0gYS9iZmQvZWxmeHgtdGFyZ2V0LmgKKysrIGIvYmZkL2VsZnh4LXRhcmdl dC5oCkBAIC01MTksNiArNTE5LDE1IEBACiAjaWZuZGVmIGVsZl9iYWNrZW5k X29ial9hdHRyc19oYW5kbGVfdW5rbm93bgogI2RlZmluZSBlbGZfYmFja2Vu ZF9vYmpfYXR0cnNfaGFuZGxlX3Vua25vd24JTlVMTAogI2VuZGlmCisjaWZu ZGVmIGVsZl9iYWNrZW5kX3BhcnNlX2dudV9wcm9wZXJ0aWVzCisjZGVmaW5l IGVsZl9iYWNrZW5kX3BhcnNlX2dudV9wcm9wZXJ0aWVzCU5VTEwKKyNlbmRp ZgorI2lmbmRlZiBlbGZfYmFja2VuZF9tZXJnZV9nbnVfcHJvcGVydGllcwor I2RlZmluZSBlbGZfYmFja2VuZF9tZXJnZV9nbnVfcHJvcGVydGllcwlOVUxM CisjZW5kaWYKKyNpZm5kZWYgZWxmX2JhY2tlbmRfc2V0dXBfZ251X3Byb3Bl cnRpZXMKKyNkZWZpbmUgZWxmX2JhY2tlbmRfc2V0dXBfZ251X3Byb3BlcnRp ZXMJX2JmZF9lbGZfbGlua19zZXR1cF9nbnVfcHJvcGVydGllcworI2VuZGlm CiAjaWZuZGVmIGVsZl9iYWNrZW5kX3N0YXRpY190bHNfYWxpZ25tZW50CiAj ZGVmaW5lIGVsZl9iYWNrZW5kX3N0YXRpY190bHNfYWxpZ25tZW50CTEKICNl bmRpZgpAQCAtODM4LDYgKzg0Nyw5IEBAIHN0YXRpYyBzdHJ1Y3QgZWxmX2Jh Y2tlbmRfZGF0YSBlbGZOTl9iZWQgPQogICBlbGZfYmFja2VuZF9vYmpfYXR0 cnNfc2VjdGlvbl90eXBlLAogICBlbGZfYmFja2VuZF9vYmpfYXR0cnNfb3Jk ZXIsCiAgIGVsZl9iYWNrZW5kX29ial9hdHRyc19oYW5kbGVfdW5rbm93biwK KyAgZWxmX2JhY2tlbmRfcGFyc2VfZ251X3Byb3BlcnRpZXMsCisgIGVsZl9i YWNrZW5kX21lcmdlX2dudV9wcm9wZXJ0aWVzLAorICBlbGZfYmFja2VuZF9z ZXR1cF9nbnVfcHJvcGVydGllcywKICAgZWxmX2JhY2tlbmRfY29tcGFjdF9l aF9lbmNvZGluZywKICAgZWxmX2JhY2tlbmRfY2FudF91bndpbmRfb3Bjb2Rl LAogICBlbGZfYmFja2VuZF9zdGF0aWNfdGxzX2FsaWdubWVudCwKZGlmZiAt LWdpdCBhL2xkL05FV1MgYi9sZC9ORVdTCmluZGV4IDk3MmU3YTguLjAzOWE5 MGUgMTAwNjQ0Ci0tLSBhL2xkL05FV1MKKysrIGIvbGQvTkVXUwpAQCAtMSw1 ICsxLDcgQEAKIC0qLSB0ZXh0IC0qLQogCisqIEFkZCBzdXBwb3J0IGZvciBF TEYgR05VIHByb2dyYW0gcHJvcGVydGllcy4KKwogKiBBZGQgc3VwcG9ydCBm b3IgdGhlIFRleGFzIEluc3RydW1lbnRzIFBSVSBwcm9jZXNzb3IuCiAKICog V2hlbiBjb25maWd1cmluZyBmb3IgYXJjKi0qLWxpbnV4KiB0YXJnZXRzIHRo ZSBkZWZhdWx0IGxpbmtlciBlbXVsYXRpb24gd2lsbApkaWZmIC0tZ2l0IGEv bGQvZW11bHRlbXBsL2VsZjMyLmVtIGIvbGQvZW11bHRlbXBsL2VsZjMyLmVt CmluZGV4IGQ0ODM3ZDAuLjAwN2U0OGQgMTAwNjQ0Ci0tLSBhL2xkL2VtdWx0 ZW1wbC9lbGYzMi5lbQorKysgYi9sZC9lbXVsdGVtcGwvZWxmMzIuZW0KQEAg LTEyNTgsNiArMTI1OCw4IEBAIGdsZCR7RU1VTEFUSU9OX05BTUV9X2FmdGVy X29wZW4gKHZvaWQpCiAJfQogICAgIH0KIAorICBnZXRfZWxmX2JhY2tlbmRf ZGF0YSAobGlua19pbmZvLm91dHB1dF9iZmQpLT5zZXR1cF9nbnVfcHJvcGVy dGllcyAoJmxpbmtfaW5mbyk7CisKICAgaWYgKGJmZF9saW5rX3JlbG9jYXRh YmxlICgmbGlua19pbmZvKSkKICAgICB7CiAgICAgICBpZiAobGlua19pbmZv LmV4ZWNzdGFjayA9PSAhIGxpbmtfaW5mby5ub2V4ZWNzdGFjaykKZGlmZiAt LWdpdCBhL2xkL3Rlc3RzdWl0ZS9sZC1pMzg2L2kzODYuZXhwIGIvbGQvdGVz dHN1aXRlL2xkLWkzODYvaTM4Ni5leHAKaW5kZXggYzQ4OTIyNy4uODQ0YjM2 ZiAxMDA2NDQKLS0tIGEvbGQvdGVzdHN1aXRlL2xkLWkzODYvaTM4Ni5leHAK KysrIGIvbGQvdGVzdHN1aXRlL2xkLWkzODYvaTM4Ni5leHAKQEAgLTczNiw2 ICs3MzYsMTc0IEBAIGlmIHsgW2lzbmF0aXZlXQogCSAgICB7e29iamR1bXAg ey1kd30gcHIxOTMxOS5kZH19IFwKIAkgICAgInByMTkzMTkiIFwKIAldIFwK KwlbbGlzdCBcCisJICAgICJCdWlsZCBwcm9wZXJ0eSAxIiBcCisJICAgICIi IFwKKwkgICAgIiIgXAorCSAgICB7cGFzcy5jIHByb3BlcnR5LW5vLWNvcHku U30gXAorCSAgICB7e3JlYWRlbGYgey1ufSBwcm9wZXJ0eS0xLnJ9fSBcCisJ ICAgICJwcm9wZXJ0eS0xIiBcCisJXSBcCisJW2xpc3QgXAorCSAgICAiQnVp bGQgcHJvcGVydHkgMSAoLm8pIiBcCisJICAgICItciAtbm9zdGRsaWIiIFwK KwkgICAgIiIgXAorCSAgICB7cGFzcy5jIHByb3BlcnR5LW5vLWNvcHkuU30g XAorCSAgICB7e3JlYWRlbGYgey1ufSBwcm9wZXJ0eS0xLnJ9fSBcCisJICAg ICJwcm9wZXJ0eS0xLm8iIFwKKwldIFwKKwlbbGlzdCBcCisJICAgICJCdWls ZCBwcm9wZXJ0eSAxICguc28pIiBcCisJICAgICItc2hhcmVkIiBcCisJICAg ICItZlBJQyIgXAorCSAgICB7cGFzcy5jIHByb3BlcnR5LW5vLWNvcHkuU30g XAorCSAgICB7e3JlYWRlbGYgey1ufSBwcm9wZXJ0eS0xLnJ9fSBcCisJICAg ICJwcm9wZXJ0eS0xLnNvIiBcCisJXSBcCisJW2xpc3QgXAorCSAgICAiQnVp bGQgcHJvcGVydHkgMiIgXAorCSAgICAiIiBcCisJICAgICIiIFwKKwkgICAg e3Bhc3MuYyBwcm9wZXJ0eS1zdGFjay5TfSBcCisJICAgIHt7cmVhZGVsZiB7 LW59IHByb3BlcnR5LTIucn19IFwKKwkgICAgInByb3BlcnR5LTIiIFwKKwld IFwKKwlbbGlzdCBcCisJICAgICJCdWlsZCBwcm9wZXJ0eSAyICgubykiIFwK KwkgICAgIi1yIC1ub3N0ZGxpYiIgXAorCSAgICAiIiBcCisJICAgIHtwYXNz LmMgcHJvcGVydHktc3RhY2suU30gXAorCSAgICB7e3JlYWRlbGYgey1ufSBw cm9wZXJ0eS0yLnJ9fSBcCisJICAgICJwcm9wZXJ0eS0yLm8iIFwKKwldIFwK KwlbbGlzdCBcCisJICAgICJCdWlsZCBwcm9wZXJ0eSAyICguc28pIiBcCisJ ICAgICItc2hhcmVkIiBcCisJICAgICItZlBJQyIgXAorCSAgICB7cGFzcy5j IHByb3BlcnR5LXN0YWNrLlN9IFwKKwkgICAge3tyZWFkZWxmIHstbn0gcHJv cGVydHktMi5yfX0gXAorCSAgICAicHJvcGVydHktMi5zbyIgXAorCV0gXAor CVtsaXN0IFwKKwkgICAgIkJ1aWxkIHByb3BlcnR5IDMiIFwKKwkgICAgIiIg XAorCSAgICAiIiBcCisJICAgIHtwYXNzLmMgcHJvcGVydHktc3RhY2suUyBw cm9wZXJ0eS14ODYtMS5TfSBcCisJICAgIHt7cmVhZGVsZiB7LW59IHByb3Bl cnR5LTMucn19IFwKKwkgICAgInByb3BlcnR5LTMiIFwKKwldIFwKKwlbbGlz dCBcCisJICAgICJCdWlsZCBwcm9wZXJ0eSAzICgubykiIFwKKwkgICAgIi1y IC1ub3N0ZGxpYiIgXAorCSAgICAiIiBcCisJICAgIHtwYXNzLmMgcHJvcGVy dHkteDg2LTEuUyBwcm9wZXJ0eS1zdGFjay5TfSBcCisJICAgIHt7cmVhZGVs ZiB7LW59IHByb3BlcnR5LTMucn19IFwKKwkgICAgInByb3BlcnR5LTMubyIg XAorCV0gXAorCVtsaXN0IFwKKwkgICAgIkJ1aWxkIHByb3BlcnR5IDMgKC5z bykiIFwKKwkgICAgIi1zaGFyZWQiIFwKKwkgICAgIi1mUElDIiBcCisJICAg IHtwcm9wZXJ0eS14ODYtMS5TIHBhc3MuYyBwcm9wZXJ0eS1zdGFjay5TfSBc CisJICAgIHt7cmVhZGVsZiB7LW59IHByb3BlcnR5LTMucn19IFwKKwkgICAg InByb3BlcnR5LTMuc28iIFwKKwldIFwKKwlbbGlzdCBcCisJICAgICJCdWls ZCBwcm9wZXJ0eSA0IiBcCisJICAgICIiIFwKKwkgICAgIiIgXAorCSAgICB7 cGFzcy5jIHByb3BlcnR5LXN0YWNrLlMgcHJvcGVydHkteDg2LTEuUyBwcm9w ZXJ0eS14ODYtMi5TfSBcCisJICAgIHt7cmVhZGVsZiB7LW59IHByb3BlcnR5 LTQucn19IFwKKwkgICAgInByb3BlcnR5LTQiIFwKKwldIFwKKwlbbGlzdCBc CisJICAgICJCdWlsZCBwcm9wZXJ0eSA0ICgubykiIFwKKwkgICAgIi1yIC1u b3N0ZGxpYiIgXAorCSAgICAiIiBcCisJICAgIHtwYXNzLmMgcHJvcGVydHkt eDg2LTIuUyBwcm9wZXJ0eS14ODYtMS5TIHByb3BlcnR5LXN0YWNrLlN9IFwK KwkgICAge3tyZWFkZWxmIHstbn0gcHJvcGVydHktNC5yfX0gXAorCSAgICAi cHJvcGVydHktNC5vIiBcCisJXSBcCisJW2xpc3QgXAorCSAgICAiQnVpbGQg cHJvcGVydHkgNCAoLnNvKSIgXAorCSAgICAiLXNoYXJlZCIgXAorCSAgICAi LWZQSUMiIFwKKwkgICAge3Byb3BlcnR5LXg4Ni0yLlMgcHJvcGVydHkteDg2 LTEuUyBwYXNzLmMgcHJvcGVydHktc3RhY2suU30gXAorCSAgICB7e3JlYWRl bGYgey1ufSBwcm9wZXJ0eS00LnJ9fSBcCisJICAgICJwcm9wZXJ0eS00LnNv IiBcCisJXSBcCisJW2xpc3QgXAorCSAgICAiQnVpbGQgcHJvcGVydHkgNCAo LVdsLC16LHN0YWNrLXNpemU9MCkiIFwKKwkgICAgIi1XbCwteixzdGFjay1z aXplPTAiIFwKKwkgICAgIiIgXAorCSAgICB7cGFzcy5jIHByb3BlcnR5LXN0 YWNrLlMgcHJvcGVydHkteDg2LTEuUyBwcm9wZXJ0eS14ODYtMi5TfSBcCisJ ICAgIHt7cmVhZGVsZiB7LW59IHByb3BlcnR5LTQucn19IFwKKwkgICAgInBy b3BlcnR5LTQiIFwKKwldIFwKKwlbbGlzdCBcCisJICAgICJCdWlsZCBwcm9w ZXJ0eSA1IiBcCisJICAgICItV2wsLXosc3RhY2stc2l6ZT0weDkwMDAwMCIg XAorCSAgICAiIiBcCisJICAgIHtwYXNzLmMgcHJvcGVydHktc3RhY2suUyBw cm9wZXJ0eS14ODYtMS5TIHByb3BlcnR5LXg4Ni0yLlN9IFwKKwkgICAge3ty ZWFkZWxmIHstbn0gcHJvcGVydHktNS5yfX0gXAorCSAgICAicHJvcGVydHkt NSIgXAorCV0gXAorCVtsaXN0IFwKKwkgICAgIkJ1aWxkIHByb3BlcnR5IDUg KC5vKSIgXAorCSAgICAiLXIgLW5vc3RkbGliIC1XbCwteixzdGFjay1zaXpl PTB4OTAwMDAwIiBcCisJICAgICIiIFwKKwkgICAge3Bhc3MuYyBwcm9wZXJ0 eS14ODYtMi5TIHByb3BlcnR5LXg4Ni0xLlMgcHJvcGVydHktc3RhY2suU30g XAorCSAgICB7e3JlYWRlbGYgey1ufSBwcm9wZXJ0eS01LnJ9fSBcCisJICAg ICJwcm9wZXJ0eS01Lm8iIFwKKwldIFwKKwlbbGlzdCBcCisJICAgICJCdWls ZCBwcm9wZXJ0eSA1ICguc28pIiBcCisJICAgICItc2hhcmVkIC1XbCwteixz dGFjay1zaXplPTB4OTAwMDAwIiBcCisJICAgICItZlBJQyIgXAorCSAgICB7 cHJvcGVydHkteDg2LTIuUyBwcm9wZXJ0eS14ODYtMS5TIHBhc3MuYyBwcm9w ZXJ0eS1zdGFjay5TfSBcCisJICAgIHt7cmVhZGVsZiB7LW59IHByb3BlcnR5 LTUucn19IFwKKwkgICAgInByb3BlcnR5LTUuc28iIFwKKwldIFwKKwlbbGlz dCBcCisJICAgICJCdWlsZCBwcm9wZXJ0eS02LnNvIiBcCisJICAgICItc2hh cmVkIiBcCisJICAgICItZlBJQyIgXAorCSAgICB7cHJvcGVydHktNmEuYyBw cm9wZXJ0eS02Yy5TfSBcCisJICAgIHt7cmVhZGVsZiB7LW59IHByb3BlcnR5 LTYucn19IFwKKwkgICAgInByb3BlcnR5LTYuc28iIFwKKwldIFwKKwlbbGlz dCBcCisJICAgICJCdWlsZCBwcm9wZXJ0eS02Lm8iIFwKKwkgICAgIi1yIC1u b3N0ZGxpYiIgXAorCSAgICAiIiBcCisJICAgIHtwcm9wZXJ0eS02Yi5jIHBy b3BlcnR5LXN0YWNrLlN9IFwKKwkgICAge3tyZWFkZWxmIHstbn0gcHJvcGVy dHktMi5yfX0gXAorCSAgICAicHJvcGVydHktNi5vIiBcCisJXSBcCisJW2xp c3QgXAorCSAgICAiQnVpbGQgcHJvcGVydHktNiIgXAorCSAgICAiLVdsLC0t YXMtbmVlZGVkIHRtcGRpci9wcm9wZXJ0eS02Lm8gdG1wZGlyL3Byb3BlcnR5 LTYuc28iIFwKKwkgICAgeyBkdW1teS5zIH0gXAorCSAgICAiIiBcCisJICAg IHt7cmVhZGVsZiB7LW59IHByb3BlcnR5LTIucn19IFwKKwkgICAgInByb3Bl cnR5LTYiIFwKKwldIFwKKwlbbGlzdCBcCisJICAgICJCdWlsZCBwcm9wZXJ0 eSA3YSAoLm8pIiBcCisJICAgICItciAtbm9zdGRsaWIiIFwKKwkgICAgIiIg XAorCSAgICB7cHJvcGVydHktdW5zb3J0ZWQtMS5TfSBcCisJICAgIHt7cmVh ZGVsZiB7LW59IHByb3BlcnR5LTcucn19IFwKKwkgICAgInByb3BlcnR5LTdh Lm8iIFwKKwldIFwKKwlbbGlzdCBcCisJICAgICJCdWlsZCBwcm9wZXJ0eSA3 YiAoLm8pIiBcCisJICAgICItciAtbm9zdGRsaWIiIFwKKwkgICAgIiIgXAor CSAgICB7cHJvcGVydHktdW5zb3J0ZWQtMi5TfSBcCisJICAgIHt7cmVhZGVs ZiB7LW59IHByb3BlcnR5LTcucn19IFwKKwkgICAgInByb3BlcnR5LTdiLm8i IFwKKwldIFwKICAgICBdCiAKICAgICBydW5fbGRfbGlua19leGVjX3Rlc3Rz IFtsaXN0IFwKQEAgLTgxNCw2ICs5ODIsMTExIEBAIGlmIHsgW2lzbmF0aXZl XQogCSAgICAiZ290MSIgXAogCSAgICAiZ290MS5vdXQiIFwKIAldIFwKKwlb bGlzdCBcCisJICAgICJSdW4gcHJvcGVydHkgMSIgXAorCSAgICAiIiBcCisJ ICAgICIiIFwKKwkgICAge3Bhc3MuYyBwcm9wZXJ0eS1uby1jb3B5LlN9IFwK KwkgICAgInByb3BlcnR5LTEiICJwYXNzLm91dCIgXAorCV0gXAorCVtsaXN0 IFwKKwkgICAgIlJ1biBwcm9wZXJ0eSAxIChQSUUpIiBcCisJICAgICItcGll IiBcCisJICAgICIiIFwKKwkgICAge3Bhc3MuYyBwcm9wZXJ0eS1uby1jb3B5 LlN9IFwKKwkgICAgInByb3BlcnR5LTEtcGllIiAicGFzcy5vdXQiICItZlBJ RSIgXAorCV0gXAorCVtsaXN0IFwKKwkgICAgIlJ1biBwcm9wZXJ0eSAxIChz dGF0aWMpIiBcCisJICAgICItc3RhdGljIiBcCisJICAgICIiIFwKKwkgICAg e3Bhc3MuYyBwcm9wZXJ0eS1uby1jb3B5LlN9IFwKKwkgICAgInByb3BlcnR5 LTEtc3RhdGljIiAicGFzcy5vdXQiIFwKKwldIFwKKwlbbGlzdCBcCisJICAg ICJSdW4gcHJvcGVydHkgMiIgXAorCSAgICAiIiBcCisJICAgICIiIFwKKwkg ICAge3Bhc3MuYyBwcm9wZXJ0eS1zdGFjay5TfSBcCisJICAgICJwcm9wZXJ0 eS0yIiAicGFzcy5vdXQiIFwKKwldIFwKKwlbbGlzdCBcCisJICAgICJSdW4g cHJvcGVydHkgMiAoUElFKSIgXAorCSAgICAiLXBpZSIgXAorCSAgICAiIiBc CisJICAgIHtwYXNzLmMgcHJvcGVydHktc3RhY2suU30gXAorCSAgICAicHJv cGVydHktMi1waWUiICJwYXNzLm91dCIgIi1mUElFIiBcCisJXSBcCisJW2xp c3QgXAorCSAgICAiUnVuIHByb3BlcnR5IDIgKHN0YXRpYykiIFwKKwkgICAg Ii1zdGF0aWMiIFwKKwkgICAgIiIgXAorCSAgICB7cGFzcy5jIHByb3BlcnR5 LXN0YWNrLlN9IFwKKwkgICAgInByb3BlcnR5LTMtc3RhdGljIiAicGFzcy5v dXQiIFwKKwldIFwKKwlbbGlzdCBcCisJICAgICJSdW4gcHJvcGVydHkgMyIg XAorCSAgICAiIiBcCisJICAgICIiIFwKKwkgICAge3Bhc3MuYyBwcm9wZXJ0 eS1zdGFjay5TIHByb3BlcnR5LXg4Ni0xLlN9IFwKKwkgICAgInByb3BlcnR5 LTMiICJwYXNzLm91dCIgXAorCV0gXAorCVtsaXN0IFwKKwkgICAgIlJ1biBw cm9wZXJ0eSAzIChQSUUpIiBcCisJICAgICItcGllIiBcCisJICAgICIiIFwK KwkgICAge3Bhc3MuYyBwcm9wZXJ0eS14ODYtMS5TIHByb3BlcnR5LXN0YWNr LlN9IFwKKwkgICAgInByb3BlcnR5LTMtcGllIiAicGFzcy5vdXQiICItZlBJ RSIgXAorCV0gXAorCVtsaXN0IFwKKwkgICAgIlJ1biBwcm9wZXJ0eSAzIChz dGF0aWMpIiBcCisJICAgICItc3RhdGljIiBcCisJICAgICIiIFwKKwkgICAg e3Byb3BlcnR5LXg4Ni0xLlMgcGFzcy5jIHByb3BlcnR5LXN0YWNrLlN9IFwK KwkgICAgInByb3BlcnR5LTMtc3RhdGljIiAicGFzcy5vdXQiIFwKKwldIFwK KwlbbGlzdCBcCisJICAgICJSdW4gcHJvcGVydHkgNCIgXAorCSAgICAiIiBc CisJICAgICIiIFwKKwkgICAge3Bhc3MuYyBwcm9wZXJ0eS1zdGFjay5TIHBy b3BlcnR5LXg4Ni0xLlMgcHJvcGVydHkteDg2LTIuU30gXAorCSAgICAicHJv cGVydHktNCIgInBhc3Mub3V0IiBcCisJXSBcCisJW2xpc3QgXAorCSAgICAi UnVuIHByb3BlcnR5IDQgKFBJRSkiIFwKKwkgICAgIi1waWUiIFwKKwkgICAg IiIgXAorCSAgICB7cGFzcy5jIHByb3BlcnR5LXg4Ni0yLlMgcHJvcGVydHkt eDg2LTEuUyBwcm9wZXJ0eS1zdGFjay5TfSBcCisJICAgICJwcm9wZXJ0eS00 LXBpZSIgInBhc3Mub3V0IiAiLWZQSUUiIFwKKwldIFwKKwlbbGlzdCBcCisJ ICAgICJSdW4gcHJvcGVydHkgNCAoc3RhdGljKSIgXAorCSAgICAiLXN0YXRp YyIgXAorCSAgICAiIiBcCisJICAgIHtwcm9wZXJ0eS14ODYtMi5TIHByb3Bl cnR5LXg4Ni0xLlMgcGFzcy5jIHByb3BlcnR5LXN0YWNrLlN9IFwKKwkgICAg InByb3BlcnR5LTQtc3RhdGljIiAicGFzcy5vdXQiIFwKKwldIFwKKwlbbGlz dCBcCisJICAgICJSdW4gcHJvcGVydHkgNSIgXAorCSAgICAiLVdsLC16LHN0 YWNrLXNpemU9MHg5MDAwMDAiIFwKKwkgICAgIiIgXAorCSAgICB7cGFzcy5j IHByb3BlcnR5LXN0YWNrLlMgcHJvcGVydHkteDg2LTEuUyBwcm9wZXJ0eS14 ODYtMi5TfSBcCisJICAgICJwcm9wZXJ0eS01IiAicGFzcy5vdXQiIFwKKwld IFwKKwlbbGlzdCBcCisJICAgICJSdW4gcHJvcGVydHkgNSAoUElFKSIgXAor CSAgICAiLXBpZSAtV2wsLXosc3RhY2stc2l6ZT0weDkwMDAwMCIgXAorCSAg ICAiIiBcCisJICAgIHtwYXNzLmMgcHJvcGVydHkteDg2LTIuUyBwcm9wZXJ0 eS14ODYtMS5TIHByb3BlcnR5LXN0YWNrLlN9IFwKKwkgICAgInByb3BlcnR5 LTUtcGllIiAicGFzcy5vdXQiICItZlBJRSIgXAorCV0gXAorCVtsaXN0IFwK KwkgICAgIlJ1biBwcm9wZXJ0eSA1IChzdGF0aWMpIiBcCisJICAgICItc3Rh dGljIC1XbCwteixzdGFjay1zaXplPTB4OTAwMDAwIiBcCisJICAgICIiIFwK KwkgICAge3Byb3BlcnR5LXg4Ni0yLlMgcHJvcGVydHkteDg2LTEuUyBwYXNz LmMgcHJvcGVydHktc3RhY2suU30gXAorCSAgICAicHJvcGVydHktNS1zdGF0 aWMiICJwYXNzLm91dCIgXAorCV0gXAogICAgIF0KIAogICAgIHVuZGVmaW5l ZF93ZWFrICIiICIiCmRpZmYgLS1naXQgYS9sZC90ZXN0c3VpdGUvbGQtaTM4 Ni9wYXNzLmMgYi9sZC90ZXN0c3VpdGUvbGQtaTM4Ni9wYXNzLmMKbmV3IGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOGZiODkyYwotLS0gL2Rl di9udWxsCisrKyBiL2xkL3Rlc3RzdWl0ZS9sZC1pMzg2L3Bhc3MuYwpAQCAt MCwwICsxLDggQEAKKyNpbmNsdWRlIDxzdGRpby5oPgorCitpbnQKK21haW4g KCkKK3sKKyAgcHJpbnRmICgiUEFTU1xuIik7CisgIHJldHVybiAwOworfQpk aWZmIC0tZ2l0IGEvbGQvdGVzdHN1aXRlL2xkLWkzODYvcHJvcGVydHktMS5y IGIvbGQvdGVzdHN1aXRlL2xkLWkzODYvcHJvcGVydHktMS5yCm5ldyBmaWxl IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmQ4ZjA4YzAKLS0tIC9kZXYv bnVsbAorKysgYi9sZC90ZXN0c3VpdGUvbGQtaTM4Ni9wcm9wZXJ0eS0xLnIK QEAgLTAsMCArMSw3IEBACisjLi4uCitEaXNwbGF5aW5nIG5vdGVzIGZvdW5k IGluOiAubm90ZS5nbnUucHJvcGVydHkKKyAgT3duZXIgICAgICAgICAgICAg ICAgIERhdGEgc2l6ZQlEZXNjcmlwdGlvbgorICBHTlUgICAgICAgICAgICAg ICAgICAweFswLTlhLWZdKwlOVF9HTlVfUFJPUEVSVFlfVFlQRV8wCisgICAg ICBQcm9wZXJ0aWVzOiBubyBjb3B5IG9uIHByb3RlY3RlZCAKKworI3Bhc3MK ZGlmZiAtLWdpdCBhL2xkL3Rlc3RzdWl0ZS9sZC1pMzg2L3Byb3BlcnR5LTIu ciBiL2xkL3Rlc3RzdWl0ZS9sZC1pMzg2L3Byb3BlcnR5LTIucgpuZXcgZmls ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41ZTNkMTU2Ci0tLSAvZGV2 L251bGwKKysrIGIvbGQvdGVzdHN1aXRlL2xkLWkzODYvcHJvcGVydHktMi5y CkBAIC0wLDAgKzEsNyBAQAorIy4uLgorRGlzcGxheWluZyBub3RlcyBmb3Vu ZCBpbjogLm5vdGUuZ251LnByb3BlcnR5CisgIE93bmVyICAgICAgICAgICAg ICAgICBEYXRhIHNpemUJRGVzY3JpcHRpb24KKyAgR05VICAgICAgICAgICAg ICAgICAgMHhbMC05YS1mXSsJTlRfR05VX1BST1BFUlRZX1RZUEVfMAorICAg ICAgUHJvcGVydGllczogc3RhY2sgc2l6ZTogMHg4MDAwMDAKKworI3Bhc3MK ZGlmZiAtLWdpdCBhL2xkL3Rlc3RzdWl0ZS9sZC1pMzg2L3Byb3BlcnR5LTMu ciBiL2xkL3Rlc3RzdWl0ZS9sZC1pMzg2L3Byb3BlcnR5LTMucgpuZXcgZmls ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4wZWQ5MWY1Ci0tLSAvZGV2 L251bGwKKysrIGIvbGQvdGVzdHN1aXRlL2xkLWkzODYvcHJvcGVydHktMy5y CkBAIC0wLDAgKzEsOCBAQAorIy4uLgorRGlzcGxheWluZyBub3RlcyBmb3Vu ZCBpbjogLm5vdGUuZ251LnByb3BlcnR5CisgIE93bmVyICAgICAgICAgICAg ICAgICBEYXRhIHNpemUJRGVzY3JpcHRpb24KKyAgR05VICAgICAgICAgICAg ICAgICAgMHhbMC05YS1mXSsJTlRfR05VX1BST1BFUlRZX1RZUEVfMAorICAg ICAgUHJvcGVydGllczogc3RhY2sgc2l6ZTogMHg4MDAwMDAKKwl4ODYgSVNB IHVzZWQ6IDU4NiwgU1NFCisJeDg2IElTQSBuZWVkZWQ6IGk0ODYsIDU4Ngor I3Bhc3MKZGlmZiAtLWdpdCBhL2xkL3Rlc3RzdWl0ZS9sZC1pMzg2L3Byb3Bl cnR5LTQuciBiL2xkL3Rlc3RzdWl0ZS9sZC1pMzg2L3Byb3BlcnR5LTQucgpu ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jYjJiYzE1Ci0t LSAvZGV2L251bGwKKysrIGIvbGQvdGVzdHN1aXRlL2xkLWkzODYvcHJvcGVy dHktNC5yCkBAIC0wLDAgKzEsOCBAQAorIy4uLgorRGlzcGxheWluZyBub3Rl cyBmb3VuZCBpbjogLm5vdGUuZ251LnByb3BlcnR5CisgIE93bmVyICAgICAg ICAgICAgICAgICBEYXRhIHNpemUJRGVzY3JpcHRpb24KKyAgR05VICAgICAg ICAgICAgICAgICAgMHhbMC05YS1mXSsJTlRfR05VX1BST1BFUlRZX1RZUEVf MAorICAgICAgUHJvcGVydGllczogc3RhY2sgc2l6ZTogMHg4MDAwMDAKKwl4 ODYgSVNBIHVzZWQ6IGk0ODYsIDU4NiwgU1NFCisJeDg2IElTQSBuZWVkZWQ6 IGk0ODYsIDU4NiwgU1NFCisjcGFzcwpkaWZmIC0tZ2l0IGEvbGQvdGVzdHN1 aXRlL2xkLWkzODYvcHJvcGVydHktNS5yIGIvbGQvdGVzdHN1aXRlL2xkLWkz ODYvcHJvcGVydHktNS5yCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw MDAwMDAuLjU1Mjk2NTAKLS0tIC9kZXYvbnVsbAorKysgYi9sZC90ZXN0c3Vp dGUvbGQtaTM4Ni9wcm9wZXJ0eS01LnIKQEAgLTAsMCArMSw4IEBACisjLi4u CitEaXNwbGF5aW5nIG5vdGVzIGZvdW5kIGluOiAubm90ZS5nbnUucHJvcGVy dHkKKyAgT3duZXIgICAgICAgICAgICAgICAgIERhdGEgc2l6ZQlEZXNjcmlw dGlvbgorICBHTlUgICAgICAgICAgICAgICAgICAweFswLTlhLWZdKwlOVF9H TlVfUFJPUEVSVFlfVFlQRV8wCisgICAgICBQcm9wZXJ0aWVzOiBzdGFjayBz aXplOiAweDkwMDAwMAorCXg4NiBJU0EgdXNlZDogaTQ4NiwgNTg2LCBTU0UK Kwl4ODYgSVNBIG5lZWRlZDogaTQ4NiwgNTg2LCBTU0UKKyNwYXNzCmRpZmYg LS1naXQgYS9sZC90ZXN0c3VpdGUvbGQtaTM4Ni9wcm9wZXJ0eS02LnIgYi9s ZC90ZXN0c3VpdGUvbGQtaTM4Ni9wcm9wZXJ0eS02LnIKbmV3IGZpbGUgbW9k ZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uOTdhNDc5ZgotLS0gL2Rldi9udWxs CisrKyBiL2xkL3Rlc3RzdWl0ZS9sZC1pMzg2L3Byb3BlcnR5LTYucgpAQCAt MCwwICsxLDcgQEAKKyMuLi4KK0Rpc3BsYXlpbmcgbm90ZXMgZm91bmQgaW46 IC5ub3RlLmdudS5wcm9wZXJ0eQorICBPd25lciAgICAgICAgICAgICAgICAg RGF0YSBzaXplCURlc2NyaXB0aW9uCisgIEdOVSAgICAgICAgICAgICAgICAg IDB4WzAtOWEtZl0rCU5UX0dOVV9QUk9QRVJUWV9UWVBFXzAKKyAgICAgIFBy b3BlcnRpZXM6IHN0YWNrIHNpemU6IDB4YTAwMDAwCisKKyNwYXNzCmRpZmYg LS1naXQgYS9sZC90ZXN0c3VpdGUvbGQtaTM4Ni9wcm9wZXJ0eS02YS5jIGIv bGQvdGVzdHN1aXRlL2xkLWkzODYvcHJvcGVydHktNmEuYwpuZXcgZmlsZSBt b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5jN2NjMTBiCi0tLSAvZGV2L251 bGwKKysrIGIvbGQvdGVzdHN1aXRlL2xkLWkzODYvcHJvcGVydHktNmEuYwpA QCAtMCwwICsxLDcgQEAKKyNpbmNsdWRlIDxzdGRpby5oPgorCit2b2lkCitw cm9wZXJ0eSAodm9pZCkKK3sKKyAgcHJpbnRmICgiUEFTU1xuIik7Cit9CmRp ZmYgLS1naXQgYS9sZC90ZXN0c3VpdGUvbGQtaTM4Ni9wcm9wZXJ0eS02Yi5j IGIvbGQvdGVzdHN1aXRlL2xkLWkzODYvcHJvcGVydHktNmIuYwpuZXcgZmls ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi41MzM2YjBlCi0tLSAvZGV2 L251bGwKKysrIGIvbGQvdGVzdHN1aXRlL2xkLWkzODYvcHJvcGVydHktNmIu YwpAQCAtMCwwICsxLDggQEAKK2V4dGVybiB2b2lkIHByb3BlcnR5ICh2b2lk KTsKKworaW50CittYWluICgpCit7CisgIHByb3BlcnR5ICgpOworICByZXR1 cm4gMDsKK30KZGlmZiAtLWdpdCBhL2xkL3Rlc3RzdWl0ZS9sZC1pMzg2L3By b3BlcnR5LTZjLlMgYi9sZC90ZXN0c3VpdGUvbGQtaTM4Ni9wcm9wZXJ0eS02 Yy5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjEzZjcy OWQKLS0tIC9kZXYvbnVsbAorKysgYi9sZC90ZXN0c3VpdGUvbGQtaTM4Ni9w cm9wZXJ0eS02Yy5TCkBAIC0wLDAgKzEsMTggQEAKKwkuc2VjdGlvbiAiLm5v dGUuZ251LnByb3BlcnR5IiwgImEiCisJLnAyYWxpZ24gMgorCS5sb25nIDFm IC0gMGYJCS8qIG5hbWUgbGVuZ3RoLiAgKi8KKwkubG9uZyAzZiAtIDFmCQkv KiBkYXRhIGxlbmd0aC4gICovCisJLyogTlRfR05VX1BST1BFUlRZX1RZUEVf MCAqLworCS5sb25nIDUJCQkvKiBub3RlIHR5cGUuICAqLworMDoKKwkuYXNj aXogIkdOVSIJCS8qIHZlbmRvciBuYW1lLiAgKi8KKzE6CisJLnAyYWxpZ24g MgorCS8qIEdOVV9QUk9QRVJUWV9TVEFDS19TSVpFICovCisJLmxvbmcgMQkJ CS8qIHByX3R5cGUuICAqLworCS5sb25nIDVmIC0gNGYJCS8qIHByX2RhdGFz ei4gICovCis0OgorCS5kYy5hIDB4YTAwMDAwCQkvKiBTdGFjayBzaXplLiAg Ki8KKzU6CisJLnAyYWxpZ24gMgorMzoKZGlmZiAtLWdpdCBhL2xkL3Rlc3Rz dWl0ZS9sZC1pMzg2L3Byb3BlcnR5LTcuciBiL2xkL3Rlc3RzdWl0ZS9sZC1p Mzg2L3Byb3BlcnR5LTcucgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw MDAwMDAwLi5hZDZhZjg0Ci0tLSAvZGV2L251bGwKKysrIGIvbGQvdGVzdHN1 aXRlL2xkLWkzODYvcHJvcGVydHktNy5yCkBAIC0wLDAgKzEsNiBAQAorIy4u LgorRGlzcGxheWluZyBub3RlcyBmb3VuZCBpbjogLm5vdGUuZ251LnByb3Bl cnR5CisgIE93bmVyICAgICAgICAgICAgICAgICBEYXRhIHNpemUJRGVzY3Jp cHRpb24KKyAgR05VICAgICAgICAgICAgICAgICAgMHhbMC05YS1mXSsJTlRf R05VX1BST1BFUlRZX1RZUEVfMAorICAgICAgUHJvcGVydGllczogc3RhY2sg c2l6ZTogMHg4MDAwMDAKKwlubyBjb3B5IG9uIHByb3RlY3RlZCAKZGlmZiAt LWdpdCBhL2xkL3Rlc3RzdWl0ZS9sZC1pMzg2L3Byb3BlcnR5LW5vLWNvcHku UyBiL2xkL3Rlc3RzdWl0ZS9sZC1pMzg2L3Byb3BlcnR5LW5vLWNvcHkuUwpu ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4zMTE2OTExCi0t LSAvZGV2L251bGwKKysrIGIvbGQvdGVzdHN1aXRlL2xkLWkzODYvcHJvcGVy dHktbm8tY29weS5TCkBAIC0wLDAgKzEsMTUgQEAKKwkuc2VjdGlvbiAiLm5v dGUuZ251LnByb3BlcnR5IiwgImEiCisJLnAyYWxpZ24gMgorCS5sb25nIDFm IC0gMGYJCS8qIG5hbWUgbGVuZ3RoLiAgKi8KKwkubG9uZyAzZiAtIDFmCQkv KiBkYXRhIGxlbmd0aC4gICovCisJLyogTlRfR05VX1BST1BFUlRZX1RZUEVf MCAqLworCS5sb25nIDUJCQkvKiBub3RlIHR5cGUuICAqLworMDoKKwkuYXNj aXogIkdOVSIJCS8qIHZlbmRvciBuYW1lLiAgKi8KKzE6CisJLnAyYWxpZ24g MgorCS8qIEdOVV9QUk9QRVJUWV9OT19DT1BZX09OX1BST1RFQ1RFRCAqLwor CS5sb25nIDIJCQkvKiBwcl90eXBlLiAgKi8KKwkubG9uZyAwCQkJLyogcHJf ZGF0YXN6LiAgKi8KKwkucDJhbGlnbiAyCiszOgpkaWZmIC0tZ2l0IGEvbGQv dGVzdHN1aXRlL2xkLWkzODYvcHJvcGVydHktc3RhY2suUyBiL2xkL3Rlc3Rz dWl0ZS9sZC1pMzg2L3Byb3BlcnR5LXN0YWNrLlMKbmV3IGZpbGUgbW9kZSAx MDA2NDQKaW5kZXggMDAwMDAwMC4uNWU5YmNjZQotLS0gL2Rldi9udWxsCisr KyBiL2xkL3Rlc3RzdWl0ZS9sZC1pMzg2L3Byb3BlcnR5LXN0YWNrLlMKQEAg LTAsMCArMSwxOCBAQAorCS5zZWN0aW9uICIubm90ZS5nbnUucHJvcGVydHki LCAiYSIKKwkucDJhbGlnbiAyCisJLmxvbmcgMWYgLSAwZgkJLyogbmFtZSBs ZW5ndGguICAqLworCS5sb25nIDNmIC0gMWYJCS8qIGRhdGEgbGVuZ3RoLiAg Ki8KKwkvKiBOVF9HTlVfUFJPUEVSVFlfVFlQRV8wICovCisJLmxvbmcgNQkJ CS8qIG5vdGUgdHlwZS4gICovCiswOgorCS5hc2NpeiAiR05VIgkJLyogdmVu ZG9yIG5hbWUuICAqLworMToKKwkucDJhbGlnbiAyCisJLyogR05VX1BST1BF UlRZX1NUQUNLX1NJWkUgKi8KKwkubG9uZyAxCQkJLyogcHJfdHlwZS4gICov CisJLmxvbmcgNWYgLSA0ZgkJLyogcHJfZGF0YXN6LiAgKi8KKzQ6CisJLmRj LmEgMHg4MDAwMDAJCS8qIFN0YWNrIHNpemUuICAqLworNToKKwkucDJhbGln biAyCiszOgpkaWZmIC0tZ2l0IGEvbGQvdGVzdHN1aXRlL2xkLWkzODYvcHJv cGVydHktdW5zb3J0ZWQtMS5TIGIvbGQvdGVzdHN1aXRlL2xkLWkzODYvcHJv cGVydHktdW5zb3J0ZWQtMS5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4 IDAwMDAwMDAuLjFjYmIyNzIKLS0tIC9kZXYvbnVsbAorKysgYi9sZC90ZXN0 c3VpdGUvbGQtaTM4Ni9wcm9wZXJ0eS11bnNvcnRlZC0xLlMKQEAgLTAsMCAr MSwzNCBAQAorCS5zZWN0aW9uICIubm90ZS5nbnUucHJvcGVydHkiLCAiYSIK KwkucDJhbGlnbiAyCisJLmxvbmcgMWYgLSAwZgkJLyogbmFtZSBsZW5ndGgu ICAqLworCS5sb25nIDNmIC0gMWYJCS8qIGRhdGEgbGVuZ3RoLiAgKi8KKwkv KiBOVF9HTlVfUFJPUEVSVFlfVFlQRV8wICovCisJLmxvbmcgNQkJCS8qIG5v dGUgdHlwZS4gICovCiswOgorCS5hc2NpeiAiR05VIgkJLyogdmVuZG9yIG5h bWUuICAqLworMToKKwkucDJhbGlnbiAyCisJLyogR05VX1BST1BFUlRZX05P X0NPUFlfT05fUFJPVEVDVEVEICovCisJLmxvbmcgMgkJCS8qIHByX3R5cGUu ICAqLworCS5sb25nIDAJCQkvKiBwcl9kYXRhc3ouICAqLworCS5wMmFsaWdu IDIKKzM6CisKKwkuc2VjdGlvbiAiLm5vdGUuZ251LnByb3BlcnR5IiwgImEi CisJLnAyYWxpZ24gMgorCS5sb25nIDFmIC0gMGYJCS8qIG5hbWUgbGVuZ3Ro LiAgKi8KKwkubG9uZyAzZiAtIDFmCQkvKiBkYXRhIGxlbmd0aC4gICovCisJ LyogTlRfR05VX1BST1BFUlRZX1RZUEVfMCAqLworCS5sb25nIDUJCQkvKiBu b3RlIHR5cGUuICAqLworMDoKKwkuYXNjaXogIkdOVSIJCS8qIHZlbmRvciBu YW1lLiAgKi8KKzE6CisJLnAyYWxpZ24gMgorCS8qIEdOVV9QUk9QRVJUWV9T VEFDS19TSVpFICovCisJLmxvbmcgMQkJCS8qIHByX3R5cGUuICAqLworCS5s b25nIDVmIC0gNGYJCS8qIHByX2RhdGFzei4gICovCis0OgorCS5kYy5hIDB4 ODAwMDAwCQkvKiBTdGFjayBzaXplLiAgKi8KKzU6CisJLnAyYWxpZ24gMgor MzoKZGlmZiAtLWdpdCBhL2xkL3Rlc3RzdWl0ZS9sZC1pMzg2L3Byb3BlcnR5 LXVuc29ydGVkLTIuUyBiL2xkL3Rlc3RzdWl0ZS9sZC1pMzg2L3Byb3BlcnR5 LXVuc29ydGVkLTIuUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw MDAwLi4wMjg5Mzk5Ci0tLSAvZGV2L251bGwKKysrIGIvbGQvdGVzdHN1aXRl L2xkLWkzODYvcHJvcGVydHktdW5zb3J0ZWQtMi5TCkBAIC0wLDAgKzEsMjIg QEAKKwkuc2VjdGlvbiAiLm5vdGUuZ251LnByb3BlcnR5IiwgImEiCisJLnAy YWxpZ24gMgorCS5sb25nIDFmIC0gMGYJCS8qIG5hbWUgbGVuZ3RoLiAgKi8K KwkubG9uZyAzZiAtIDFmCQkvKiBkYXRhIGxlbmd0aC4gICovCisJLyogTlRf R05VX1BST1BFUlRZX1RZUEVfMCAqLworCS5sb25nIDUJCQkvKiBub3RlIHR5 cGUuICAqLworMDoKKwkuYXNjaXogIkdOVSIJCS8qIHZlbmRvciBuYW1lLiAg Ki8KKzE6CisJLnAyYWxpZ24gMgorCS8qIEdOVV9QUk9QRVJUWV9OT19DT1BZ X09OX1BST1RFQ1RFRCAqLworCS5sb25nIDIJCQkvKiBwcl90eXBlLiAgKi8K KwkubG9uZyAwCQkJLyogcHJfZGF0YXN6LiAgKi8KKwkucDJhbGlnbiAyCisJ LyogR05VX1BST1BFUlRZX1NUQUNLX1NJWkUgKi8KKwkubG9uZyAxCQkJLyog cHJfdHlwZS4gICovCisJLmxvbmcgNWYgLSA0ZgkJLyogcHJfZGF0YXN6LiAg Ki8KKzQ6CisJLmRjLmEgMHg4MDAwMDAJCS8qIFN0YWNrIHNpemUuICAqLwor NToKKwkucDJhbGlnbiAyCiszOgpkaWZmIC0tZ2l0IGEvbGQvdGVzdHN1aXRl L2xkLWkzODYvcHJvcGVydHkteDg2LTEuUyBiL2xkL3Rlc3RzdWl0ZS9sZC1p Mzg2L3Byb3BlcnR5LXg4Ni0xLlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggMDAwMDAwMC4uOTUzY2E4NwotLS0gL2Rldi9udWxsCisrKyBiL2xkL3Rl c3RzdWl0ZS9sZC1pMzg2L3Byb3BlcnR5LXg4Ni0xLlMKQEAgLTAsMCArMSwz MiBAQAorCS5zZWN0aW9uICIubm90ZS5nbnUucHJvcGVydHkiLCAiYSIKKwku cDJhbGlnbiAyCisJLmxvbmcgMWYgLSAwZgkJLyogbmFtZSBsZW5ndGguICAq LworCS5sb25nIDNmIC0gMWYJCS8qIGRhdGEgbGVuZ3RoLiAgKi8KKwkvKiBO VF9HTlVfUFJPUEVSVFlfVFlQRV8wICovCisJLmxvbmcgNQkJCS8qIG5vdGUg dHlwZS4gICovCiswOgorCS5hc2NpeiAiR05VIgkJLyogdmVuZG9yIG5hbWUu ICAqLworMToKKwkucDJhbGlnbiAyCisJLyogR05VX1BST1BFUlRZX1NUQUNL X1NJWkUgKi8KKwkubG9uZyAxCQkJLyogcHJfdHlwZS4gICovCisJLmxvbmcg NWYgLSA0ZgkJLyogcHJfZGF0YXN6LiAgKi8KKzQ6CisJLmRjLmEgMHg2MDAw MDAJCS8qIFN0YWNrIHNpemUuICAqLworNToKKwkucDJhbGlnbiAyCisJLyog R05VX1BST1BFUlRZX1g4Nl9JU0FfMV9VU0VEICovCisJLmxvbmcgMHhjMDAw MDAwMAkvKiBwcl90eXBlLiAgKi8KKwkubG9uZyA1ZiAtIDRmCQkvKiBwcl9k YXRhc3ouICAqLworNDoKKwkubG9uZyAweGEKKzU6CisJLnAyYWxpZ24gMgor CS8qIEdOVV9QUk9QRVJUWV9YODZfSVNBXzFfTkVFREVEICovCisJLmxvbmcg MHhjMDAwMDAwMQkvKiBwcl90eXBlLiAgKi8KKwkubG9uZyA1ZiAtIDRmCQkv KiBwcl9kYXRhc3ouICAqLworNDoKKwkubG9uZyAweDMKKzU6CisJLnAyYWxp Z24gMgorMzoKZGlmZiAtLWdpdCBhL2xkL3Rlc3RzdWl0ZS9sZC1pMzg2L3By b3BlcnR5LXg4Ni0yLlMgYi9sZC90ZXN0c3VpdGUvbGQtaTM4Ni9wcm9wZXJ0 eS14ODYtMi5TCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu LmYxMWUxZmUKLS0tIC9kZXYvbnVsbAorKysgYi9sZC90ZXN0c3VpdGUvbGQt aTM4Ni9wcm9wZXJ0eS14ODYtMi5TCkBAIC0wLDAgKzEsMjUgQEAKKwkuc2Vj dGlvbiAiLm5vdGUuZ251LnByb3BlcnR5IiwgImEiCisJLnAyYWxpZ24gMgor CS5sb25nIDFmIC0gMGYJCS8qIG5hbWUgbGVuZ3RoLiAgKi8KKwkubG9uZyAz ZiAtIDFmCQkvKiBkYXRhIGxlbmd0aC4gICovCisJLyogTlRfR05VX1BST1BF UlRZX1RZUEVfMCAqLworCS5sb25nIDUJCQkvKiBub3RlIHR5cGUuICAqLwor MDoKKwkuYXNjaXogIkdOVSIJCS8qIHZlbmRvciBuYW1lLiAgKi8KKzE6CisJ LnAyYWxpZ24gMgorCS8qIEdOVV9QUk9QRVJUWV9YODZfSVNBXzFfVVNFRCAq LworCS5sb25nIDB4YzAwMDAwMDAJLyogcHJfdHlwZS4gICovCisJLmxvbmcg NWYgLSA0ZgkJLyogcHJfZGF0YXN6LiAgKi8KKzQ6CisJLmxvbmcgMHgzCis1 OgorCS5wMmFsaWduIDIKKwkvKiBHTlVfUFJPUEVSVFlfWDg2X0lTQV8xX05F RURFRCAqLworCS5sb25nIDB4YzAwMDAwMDEJLyogcHJfdHlwZS4gICovCisJ LmxvbmcgNWYgLSA0ZgkJLyogcHJfZGF0YXN6LiAgKi8KKzQ6CisJLmxvbmcg MHhhCis1OgorCS5wMmFsaWduIDIKKzM6CmRpZmYgLS1naXQgYS9sZC90ZXN0 c3VpdGUvbGQteDg2LTY0L3Bhc3MuYyBiL2xkL3Rlc3RzdWl0ZS9sZC14ODYt NjQvcGFzcy5jCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAu LjhmYjg5MmMKLS0tIC9kZXYvbnVsbAorKysgYi9sZC90ZXN0c3VpdGUvbGQt eDg2LTY0L3Bhc3MuYwpAQCAtMCwwICsxLDggQEAKKyNpbmNsdWRlIDxzdGRp by5oPgorCitpbnQKK21haW4gKCkKK3sKKyAgcHJpbnRmICgiUEFTU1xuIik7 CisgIHJldHVybiAwOworfQpkaWZmIC0tZ2l0IGEvbGQvdGVzdHN1aXRlL2xk LXg4Ni02NC9wcm9wZXJ0eS0xLnIgYi9sZC90ZXN0c3VpdGUvbGQteDg2LTY0 L3Byb3BlcnR5LTEucgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw MDAwLi5kOGYwOGMwCi0tLSAvZGV2L251bGwKKysrIGIvbGQvdGVzdHN1aXRl L2xkLXg4Ni02NC9wcm9wZXJ0eS0xLnIKQEAgLTAsMCArMSw3IEBACisjLi4u CitEaXNwbGF5aW5nIG5vdGVzIGZvdW5kIGluOiAubm90ZS5nbnUucHJvcGVy dHkKKyAgT3duZXIgICAgICAgICAgICAgICAgIERhdGEgc2l6ZQlEZXNjcmlw dGlvbgorICBHTlUgICAgICAgICAgICAgICAgICAweFswLTlhLWZdKwlOVF9H TlVfUFJPUEVSVFlfVFlQRV8wCisgICAgICBQcm9wZXJ0aWVzOiBubyBjb3B5 IG9uIHByb3RlY3RlZCAKKworI3Bhc3MKZGlmZiAtLWdpdCBhL2xkL3Rlc3Rz dWl0ZS9sZC14ODYtNjQvcHJvcGVydHktMi5yIGIvbGQvdGVzdHN1aXRlL2xk LXg4Ni02NC9wcm9wZXJ0eS0yLnIKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggMDAwMDAwMC4uNWUzZDE1NgotLS0gL2Rldi9udWxsCisrKyBiL2xkL3Rl c3RzdWl0ZS9sZC14ODYtNjQvcHJvcGVydHktMi5yCkBAIC0wLDAgKzEsNyBA QAorIy4uLgorRGlzcGxheWluZyBub3RlcyBmb3VuZCBpbjogLm5vdGUuZ251 LnByb3BlcnR5CisgIE93bmVyICAgICAgICAgICAgICAgICBEYXRhIHNpemUJ RGVzY3JpcHRpb24KKyAgR05VICAgICAgICAgICAgICAgICAgMHhbMC05YS1m XSsJTlRfR05VX1BST1BFUlRZX1RZUEVfMAorICAgICAgUHJvcGVydGllczog c3RhY2sgc2l6ZTogMHg4MDAwMDAKKworI3Bhc3MKZGlmZiAtLWdpdCBhL2xk L3Rlc3RzdWl0ZS9sZC14ODYtNjQvcHJvcGVydHktMy5yIGIvbGQvdGVzdHN1 aXRlL2xkLXg4Ni02NC9wcm9wZXJ0eS0zLnIKbmV3IGZpbGUgbW9kZSAxMDA2 NDQKaW5kZXggMDAwMDAwMC4uMGVkOTFmNQotLS0gL2Rldi9udWxsCisrKyBi L2xkL3Rlc3RzdWl0ZS9sZC14ODYtNjQvcHJvcGVydHktMy5yCkBAIC0wLDAg KzEsOCBAQAorIy4uLgorRGlzcGxheWluZyBub3RlcyBmb3VuZCBpbjogLm5v dGUuZ251LnByb3BlcnR5CisgIE93bmVyICAgICAgICAgICAgICAgICBEYXRh IHNpemUJRGVzY3JpcHRpb24KKyAgR05VICAgICAgICAgICAgICAgICAgMHhb MC05YS1mXSsJTlRfR05VX1BST1BFUlRZX1RZUEVfMAorICAgICAgUHJvcGVy dGllczogc3RhY2sgc2l6ZTogMHg4MDAwMDAKKwl4ODYgSVNBIHVzZWQ6IDU4 NiwgU1NFCisJeDg2IElTQSBuZWVkZWQ6IGk0ODYsIDU4NgorI3Bhc3MKZGlm ZiAtLWdpdCBhL2xkL3Rlc3RzdWl0ZS9sZC14ODYtNjQvcHJvcGVydHktNC5y IGIvbGQvdGVzdHN1aXRlL2xkLXg4Ni02NC9wcm9wZXJ0eS00LnIKbmV3IGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uY2IyYmMxNQotLS0gL2Rl di9udWxsCisrKyBiL2xkL3Rlc3RzdWl0ZS9sZC14ODYtNjQvcHJvcGVydHkt NC5yCkBAIC0wLDAgKzEsOCBAQAorIy4uLgorRGlzcGxheWluZyBub3RlcyBm b3VuZCBpbjogLm5vdGUuZ251LnByb3BlcnR5CisgIE93bmVyICAgICAgICAg ICAgICAgICBEYXRhIHNpemUJRGVzY3JpcHRpb24KKyAgR05VICAgICAgICAg ICAgICAgICAgMHhbMC05YS1mXSsJTlRfR05VX1BST1BFUlRZX1RZUEVfMAor ICAgICAgUHJvcGVydGllczogc3RhY2sgc2l6ZTogMHg4MDAwMDAKKwl4ODYg SVNBIHVzZWQ6IGk0ODYsIDU4NiwgU1NFCisJeDg2IElTQSBuZWVkZWQ6IGk0 ODYsIDU4NiwgU1NFCisjcGFzcwpkaWZmIC0tZ2l0IGEvbGQvdGVzdHN1aXRl L2xkLXg4Ni02NC9wcm9wZXJ0eS01LnIgYi9sZC90ZXN0c3VpdGUvbGQteDg2 LTY0L3Byb3BlcnR5LTUucgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw MDAwMDAwLi41NTI5NjUwCi0tLSAvZGV2L251bGwKKysrIGIvbGQvdGVzdHN1 aXRlL2xkLXg4Ni02NC9wcm9wZXJ0eS01LnIKQEAgLTAsMCArMSw4IEBACisj Li4uCitEaXNwbGF5aW5nIG5vdGVzIGZvdW5kIGluOiAubm90ZS5nbnUucHJv cGVydHkKKyAgT3duZXIgICAgICAgICAgICAgICAgIERhdGEgc2l6ZQlEZXNj cmlwdGlvbgorICBHTlUgICAgICAgICAgICAgICAgICAweFswLTlhLWZdKwlO VF9HTlVfUFJPUEVSVFlfVFlQRV8wCisgICAgICBQcm9wZXJ0aWVzOiBzdGFj ayBzaXplOiAweDkwMDAwMAorCXg4NiBJU0EgdXNlZDogaTQ4NiwgNTg2LCBT U0UKKwl4ODYgSVNBIG5lZWRlZDogaTQ4NiwgNTg2LCBTU0UKKyNwYXNzCmRp ZmYgLS1naXQgYS9sZC90ZXN0c3VpdGUvbGQteDg2LTY0L3Byb3BlcnR5LTYu ciBiL2xkL3Rlc3RzdWl0ZS9sZC14ODYtNjQvcHJvcGVydHktNi5yCm5ldyBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk3YTQ3OWYKLS0tIC9k ZXYvbnVsbAorKysgYi9sZC90ZXN0c3VpdGUvbGQteDg2LTY0L3Byb3BlcnR5 LTYucgpAQCAtMCwwICsxLDcgQEAKKyMuLi4KK0Rpc3BsYXlpbmcgbm90ZXMg Zm91bmQgaW46IC5ub3RlLmdudS5wcm9wZXJ0eQorICBPd25lciAgICAgICAg ICAgICAgICAgRGF0YSBzaXplCURlc2NyaXB0aW9uCisgIEdOVSAgICAgICAg ICAgICAgICAgIDB4WzAtOWEtZl0rCU5UX0dOVV9QUk9QRVJUWV9UWVBFXzAK KyAgICAgIFByb3BlcnRpZXM6IHN0YWNrIHNpemU6IDB4YTAwMDAwCisKKyNw YXNzCmRpZmYgLS1naXQgYS9sZC90ZXN0c3VpdGUvbGQteDg2LTY0L3Byb3Bl cnR5LTZhLmMgYi9sZC90ZXN0c3VpdGUvbGQteDg2LTY0L3Byb3BlcnR5LTZh LmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYzdjYzEw YgotLS0gL2Rldi9udWxsCisrKyBiL2xkL3Rlc3RzdWl0ZS9sZC14ODYtNjQv cHJvcGVydHktNmEuYwpAQCAtMCwwICsxLDcgQEAKKyNpbmNsdWRlIDxzdGRp by5oPgorCit2b2lkCitwcm9wZXJ0eSAodm9pZCkKK3sKKyAgcHJpbnRmICgi UEFTU1xuIik7Cit9CmRpZmYgLS1naXQgYS9sZC90ZXN0c3VpdGUvbGQteDg2 LTY0L3Byb3BlcnR5LTZiLmMgYi9sZC90ZXN0c3VpdGUvbGQteDg2LTY0L3By b3BlcnR5LTZiLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw MC4uNTMzNmIwZQotLS0gL2Rldi9udWxsCisrKyBiL2xkL3Rlc3RzdWl0ZS9s ZC14ODYtNjQvcHJvcGVydHktNmIuYwpAQCAtMCwwICsxLDggQEAKK2V4dGVy biB2b2lkIHByb3BlcnR5ICh2b2lkKTsKKworaW50CittYWluICgpCit7Cisg IHByb3BlcnR5ICgpOworICByZXR1cm4gMDsKK30KZGlmZiAtLWdpdCBhL2xk L3Rlc3RzdWl0ZS9sZC14ODYtNjQvcHJvcGVydHktNmMuUyBiL2xkL3Rlc3Rz dWl0ZS9sZC14ODYtNjQvcHJvcGVydHktNmMuUwpuZXcgZmlsZSBtb2RlIDEw MDY0NAppbmRleCAwMDAwMDAwLi40MTI0NmQzCi0tLSAvZGV2L251bGwKKysr IGIvbGQvdGVzdHN1aXRlL2xkLXg4Ni02NC9wcm9wZXJ0eS02Yy5TCkBAIC0w LDAgKzEsMjMgQEAKKyNpZmRlZiBfX0xQNjRfXworIyBkZWZpbmUgQUxJR04g MworI2Vsc2UKKyMgZGVmaW5lIEFMSUdOIDIKKyNlbmRpZgorCS5zZWN0aW9u ICIubm90ZS5nbnUucHJvcGVydHkiLCAiYSIKKwkucDJhbGlnbiBBTElHTgor CS5sb25nIDFmIC0gMGYJCS8qIG5hbWUgbGVuZ3RoLiAgKi8KKwkubG9uZyAz ZiAtIDFmCQkvKiBkYXRhIGxlbmd0aC4gICovCisJLyogTlRfR05VX1BST1BF UlRZX1RZUEVfMCAqLworCS5sb25nIDUJCQkvKiBub3RlIHR5cGUuICAqLwor MDoKKwkuYXNjaXogIkdOVSIJCS8qIHZlbmRvciBuYW1lLiAgKi8KKzE6CisJ LnAyYWxpZ24gQUxJR04KKwkvKiBHTlVfUFJPUEVSVFlfU1RBQ0tfU0laRSAq LworCS5sb25nIDEJCQkvKiBwcl90eXBlLiAgKi8KKwkubG9uZyA1ZiAtIDRm CQkvKiBwcl9kYXRhc3ouICAqLworNDoKKwkuZGMuYSAweGEwMDAwMAkJLyog U3RhY2sgc2l6ZS4gICovCis1OgorCS5wMmFsaWduIEFMSUdOCiszOgpkaWZm IC0tZ2l0IGEvbGQvdGVzdHN1aXRlL2xkLXg4Ni02NC9wcm9wZXJ0eS03LnIg Yi9sZC90ZXN0c3VpdGUvbGQteDg2LTY0L3Byb3BlcnR5LTcucgpuZXcgZmls ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5hZDZhZjg0Ci0tLSAvZGV2 L251bGwKKysrIGIvbGQvdGVzdHN1aXRlL2xkLXg4Ni02NC9wcm9wZXJ0eS03 LnIKQEAgLTAsMCArMSw2IEBACisjLi4uCitEaXNwbGF5aW5nIG5vdGVzIGZv dW5kIGluOiAubm90ZS5nbnUucHJvcGVydHkKKyAgT3duZXIgICAgICAgICAg ICAgICAgIERhdGEgc2l6ZQlEZXNjcmlwdGlvbgorICBHTlUgICAgICAgICAg ICAgICAgICAweFswLTlhLWZdKwlOVF9HTlVfUFJPUEVSVFlfVFlQRV8wCisg ICAgICBQcm9wZXJ0aWVzOiBzdGFjayBzaXplOiAweDgwMDAwMAorCW5vIGNv cHkgb24gcHJvdGVjdGVkIApkaWZmIC0tZ2l0IGEvbGQvdGVzdHN1aXRlL2xk LXg4Ni02NC9wcm9wZXJ0eS1uby1jb3B5LlMgYi9sZC90ZXN0c3VpdGUvbGQt eDg2LTY0L3Byb3BlcnR5LW5vLWNvcHkuUwpuZXcgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCAwMDAwMDAwLi44OGNjMjUyCi0tLSAvZGV2L251bGwKKysrIGIv bGQvdGVzdHN1aXRlL2xkLXg4Ni02NC9wcm9wZXJ0eS1uby1jb3B5LlMKQEAg LTAsMCArMSwyMCBAQAorI2lmZGVmIF9fTFA2NF9fCisjIGRlZmluZSBBTElH TiAzCisjZWxzZQorIyBkZWZpbmUgQUxJR04gMgorI2VuZGlmCisJLnNlY3Rp b24gIi5ub3RlLmdudS5wcm9wZXJ0eSIsICJhIgorCS5wMmFsaWduIEFMSUdO CisJLmxvbmcgMWYgLSAwZgkJLyogbmFtZSBsZW5ndGguICAqLworCS5sb25n IDNmIC0gMWYJCS8qIGRhdGEgbGVuZ3RoLiAgKi8KKwkvKiBOVF9HTlVfUFJP UEVSVFlfVFlQRV8wICovCisJLmxvbmcgNQkJCS8qIG5vdGUgdHlwZS4gICov CiswOgorCS5hc2NpeiAiR05VIgkJLyogdmVuZG9yIG5hbWUuICAqLworMToK KwkucDJhbGlnbiBBTElHTgorCS8qIEdOVV9QUk9QRVJUWV9OT19DT1BZX09O X1BST1RFQ1RFRCAqLworCS5sb25nIDIJCQkvKiBwcl90eXBlLiAgKi8KKwku bG9uZyAwCQkJLyogcHJfZGF0YXN6LiAgKi8KKwkucDJhbGlnbiBBTElHTgor MzoKZGlmZiAtLWdpdCBhL2xkL3Rlc3RzdWl0ZS9sZC14ODYtNjQvcHJvcGVy dHktc3RhY2suUyBiL2xkL3Rlc3RzdWl0ZS9sZC14ODYtNjQvcHJvcGVydHkt c3RhY2suUwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi43 ZjQ1NjU0Ci0tLSAvZGV2L251bGwKKysrIGIvbGQvdGVzdHN1aXRlL2xkLXg4 Ni02NC9wcm9wZXJ0eS1zdGFjay5TCkBAIC0wLDAgKzEsMjMgQEAKKyNpZmRl ZiBfX0xQNjRfXworIyBkZWZpbmUgQUxJR04gMworI2Vsc2UKKyMgZGVmaW5l IEFMSUdOIDIKKyNlbmRpZgorCS5zZWN0aW9uICIubm90ZS5nbnUucHJvcGVy dHkiLCAiYSIKKwkucDJhbGlnbiBBTElHTgorCS5sb25nIDFmIC0gMGYJCS8q IG5hbWUgbGVuZ3RoLiAgKi8KKwkubG9uZyAzZiAtIDFmCQkvKiBkYXRhIGxl bmd0aC4gICovCisJLyogTlRfR05VX1BST1BFUlRZX1RZUEVfMCAqLworCS5s b25nIDUJCQkvKiBub3RlIHR5cGUuICAqLworMDoKKwkuYXNjaXogIkdOVSIJ CS8qIHZlbmRvciBuYW1lLiAgKi8KKzE6CisJLnAyYWxpZ24gQUxJR04KKwkv KiBHTlVfUFJPUEVSVFlfU1RBQ0tfU0laRSAqLworCS5sb25nIDEJCQkvKiBw cl90eXBlLiAgKi8KKwkubG9uZyA1ZiAtIDRmCQkvKiBwcl9kYXRhc3ouICAq LworNDoKKwkuZGMuYSAweDgwMDAwMAkJLyogU3RhY2sgc2l6ZS4gICovCis1 OgorCS5wMmFsaWduIEFMSUdOCiszOgpkaWZmIC0tZ2l0IGEvbGQvdGVzdHN1 aXRlL2xkLXg4Ni02NC9wcm9wZXJ0eS11bnNvcnRlZC0xLlMgYi9sZC90ZXN0 c3VpdGUvbGQteDg2LTY0L3Byb3BlcnR5LXVuc29ydGVkLTEuUwpuZXcgZmls ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi5kZTk2ZTdhCi0tLSAvZGV2 L251bGwKKysrIGIvbGQvdGVzdHN1aXRlL2xkLXg4Ni02NC9wcm9wZXJ0eS11 bnNvcnRlZC0xLlMKQEAgLTAsMCArMSwzOSBAQAorI2lmZGVmIF9fTFA2NF9f CisjIGRlZmluZSBBTElHTiAzCisjZWxzZQorIyBkZWZpbmUgQUxJR04gMgor I2VuZGlmCisJLnNlY3Rpb24gIi5ub3RlLmdudS5wcm9wZXJ0eSIsICJhIgor CS5wMmFsaWduIEFMSUdOCisJLmxvbmcgMWYgLSAwZgkJLyogbmFtZSBsZW5n dGguICAqLworCS5sb25nIDNmIC0gMWYJCS8qIGRhdGEgbGVuZ3RoLiAgKi8K KwkvKiBOVF9HTlVfUFJPUEVSVFlfVFlQRV8wICovCisJLmxvbmcgNQkJCS8q IG5vdGUgdHlwZS4gICovCiswOgorCS5hc2NpeiAiR05VIgkJLyogdmVuZG9y IG5hbWUuICAqLworMToKKwkucDJhbGlnbiBBTElHTgorCS8qIEdOVV9QUk9Q RVJUWV9OT19DT1BZX09OX1BST1RFQ1RFRCAqLworCS5sb25nIDIJCQkvKiBw cl90eXBlLiAgKi8KKwkubG9uZyAwCQkJLyogcHJfZGF0YXN6LiAgKi8KKwku cDJhbGlnbiBBTElHTgorMzoKKworCS5zZWN0aW9uICIubm90ZS5nbnUucHJv cGVydHkiLCAiYSIKKwkucDJhbGlnbiBBTElHTgorCS5sb25nIDFmIC0gMGYJ CS8qIG5hbWUgbGVuZ3RoLiAgKi8KKwkubG9uZyAzZiAtIDFmCQkvKiBkYXRh IGxlbmd0aC4gICovCisJLyogTlRfR05VX1BST1BFUlRZX1RZUEVfMCAqLwor CS5sb25nIDUJCQkvKiBub3RlIHR5cGUuICAqLworMDoKKwkuYXNjaXogIkdO VSIJCS8qIHZlbmRvciBuYW1lLiAgKi8KKzE6CisJLnAyYWxpZ24gQUxJR04K KwkvKiBHTlVfUFJPUEVSVFlfU1RBQ0tfU0laRSAqLworCS5sb25nIDEJCQkv KiBwcl90eXBlLiAgKi8KKwkubG9uZyA1ZiAtIDRmCQkvKiBwcl9kYXRhc3ou ICAqLworNDoKKwkuZGMuYSAweDgwMDAwMAkJLyogU3RhY2sgc2l6ZS4gICov Cis1OgorCS5wMmFsaWduIEFMSUdOCiszOgpkaWZmIC0tZ2l0IGEvbGQvdGVz dHN1aXRlL2xkLXg4Ni02NC9wcm9wZXJ0eS11bnNvcnRlZC0yLlMgYi9sZC90 ZXN0c3VpdGUvbGQteDg2LTY0L3Byb3BlcnR5LXVuc29ydGVkLTIuUwpuZXcg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42NWQ3ZmFkCi0tLSAv ZGV2L251bGwKKysrIGIvbGQvdGVzdHN1aXRlL2xkLXg4Ni02NC9wcm9wZXJ0 eS11bnNvcnRlZC0yLlMKQEAgLTAsMCArMSwyNyBAQAorI2lmZGVmIF9fTFA2 NF9fCisjIGRlZmluZSBBTElHTiAzCisjZWxzZQorIyBkZWZpbmUgQUxJR04g MgorI2VuZGlmCisJLnNlY3Rpb24gIi5ub3RlLmdudS5wcm9wZXJ0eSIsICJh IgorCS5wMmFsaWduIEFMSUdOCisJLmxvbmcgMWYgLSAwZgkJLyogbmFtZSBs ZW5ndGguICAqLworCS5sb25nIDNmIC0gMWYJCS8qIGRhdGEgbGVuZ3RoLiAg Ki8KKwkvKiBOVF9HTlVfUFJPUEVSVFlfVFlQRV8wICovCisJLmxvbmcgNQkJ CS8qIG5vdGUgdHlwZS4gICovCiswOgorCS5hc2NpeiAiR05VIgkJLyogdmVu ZG9yIG5hbWUuICAqLworMToKKwkucDJhbGlnbiBBTElHTgorCS8qIEdOVV9Q Uk9QRVJUWV9OT19DT1BZX09OX1BST1RFQ1RFRCAqLworCS5sb25nIDIJCQkv KiBwcl90eXBlLiAgKi8KKwkubG9uZyAwCQkJLyogcHJfZGF0YXN6LiAgKi8K KwkucDJhbGlnbiBBTElHTgorCS8qIEdOVV9QUk9QRVJUWV9TVEFDS19TSVpF ICovCisJLmxvbmcgMQkJCS8qIHByX3R5cGUuICAqLworCS5sb25nIDVmIC0g NGYJCS8qIHByX2RhdGFzei4gICovCis0OgorCS5kYy5hIDB4ODAwMDAwCQkv KiBTdGFjayBzaXplLiAgKi8KKzU6CisJLnAyYWxpZ24gQUxJR04KKzM6CmRp ZmYgLS1naXQgYS9sZC90ZXN0c3VpdGUvbGQteDg2LTY0L3Byb3BlcnR5LXg4 Ni0xLlMgYi9sZC90ZXN0c3VpdGUvbGQteDg2LTY0L3Byb3BlcnR5LXg4Ni0x LlMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMzNmMmNj ZAotLS0gL2Rldi9udWxsCisrKyBiL2xkL3Rlc3RzdWl0ZS9sZC14ODYtNjQv cHJvcGVydHkteDg2LTEuUwpAQCAtMCwwICsxLDM3IEBACisjaWZkZWYgX19M UDY0X18KKyMgZGVmaW5lIEFMSUdOIDMKKyNlbHNlCisjIGRlZmluZSBBTElH TiAyCisjZW5kaWYKKwkuc2VjdGlvbiAiLm5vdGUuZ251LnByb3BlcnR5Iiwg ImEiCisJLnAyYWxpZ24gQUxJR04KKwkubG9uZyAxZiAtIDBmCQkvKiBuYW1l IGxlbmd0aC4gICovCisJLmxvbmcgM2YgLSAxZgkJLyogZGF0YSBsZW5ndGgu ICAqLworCS8qIE5UX0dOVV9QUk9QRVJUWV9UWVBFXzAgKi8KKwkubG9uZyA1 CQkJLyogbm90ZSB0eXBlLiAgKi8KKzA6CisJLmFzY2l6ICJHTlUiCQkvKiB2 ZW5kb3IgbmFtZS4gICovCisxOgorCS5wMmFsaWduIEFMSUdOCisJLyogR05V X1BST1BFUlRZX1NUQUNLX1NJWkUgKi8KKwkubG9uZyAxCQkJLyogcHJfdHlw ZS4gICovCisJLmxvbmcgNWYgLSA0ZgkJLyogcHJfZGF0YXN6LiAgKi8KKzQ6 CisJLmRjLmEgMHg2MDAwMDAJCS8qIFN0YWNrIHNpemUuICAqLworNToKKwku cDJhbGlnbiBBTElHTgorCS8qIEdOVV9QUk9QRVJUWV9YODZfSVNBXzFfVVNF RCAqLworCS5sb25nIDB4YzAwMDAwMDAJLyogcHJfdHlwZS4gICovCisJLmxv bmcgNWYgLSA0ZgkJLyogcHJfZGF0YXN6LiAgKi8KKzQ6CisJLmxvbmcgMHhh Cis1OgorCS5wMmFsaWduIEFMSUdOCisJLyogR05VX1BST1BFUlRZX1g4Nl9J U0FfMV9ORUVERUQgKi8KKwkubG9uZyAweGMwMDAwMDAxCS8qIHByX3R5cGUu ICAqLworCS5sb25nIDVmIC0gNGYJCS8qIHByX2RhdGFzei4gICovCis0Ogor CS5sb25nIDB4MworNToKKwkucDJhbGlnbiBBTElHTgorMzoKZGlmZiAtLWdp dCBhL2xkL3Rlc3RzdWl0ZS9sZC14ODYtNjQvcHJvcGVydHkteDg2LTIuUyBi L2xkL3Rlc3RzdWl0ZS9sZC14ODYtNjQvcHJvcGVydHkteDg2LTIuUwpuZXcg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4xMzJlNTIxCi0tLSAv ZGV2L251bGwKKysrIGIvbGQvdGVzdHN1aXRlL2xkLXg4Ni02NC9wcm9wZXJ0 eS14ODYtMi5TCkBAIC0wLDAgKzEsMzAgQEAKKyNpZmRlZiBfX0xQNjRfXwor IyBkZWZpbmUgQUxJR04gMworI2Vsc2UKKyMgZGVmaW5lIEFMSUdOIDIKKyNl bmRpZgorCS5zZWN0aW9uICIubm90ZS5nbnUucHJvcGVydHkiLCAiYSIKKwku cDJhbGlnbiBBTElHTgorCS5sb25nIDFmIC0gMGYJCS8qIG5hbWUgbGVuZ3Ro LiAgKi8KKwkubG9uZyAzZiAtIDFmCQkvKiBkYXRhIGxlbmd0aC4gICovCisJ LyogTlRfR05VX1BST1BFUlRZX1RZUEVfMCAqLworCS5sb25nIDUJCQkvKiBu b3RlIHR5cGUuICAqLworMDoKKwkuYXNjaXogIkdOVSIJCS8qIHZlbmRvciBu YW1lLiAgKi8KKzE6CisJLnAyYWxpZ24gQUxJR04KKwkvKiBHTlVfUFJPUEVS VFlfWDg2X0lTQV8xX1VTRUQgKi8KKwkubG9uZyAweGMwMDAwMDAwCS8qIHBy X3R5cGUuICAqLworCS5sb25nIDVmIC0gNGYJCS8qIHByX2RhdGFzei4gICov Cis0OgorCS5sb25nIDB4MworNToKKwkucDJhbGlnbiBBTElHTgorCS8qIEdO VV9QUk9QRVJUWV9YODZfSVNBXzFfTkVFREVEICovCisJLmxvbmcgMHhjMDAw MDAwMQkvKiBwcl90eXBlLiAgKi8KKwkubG9uZyA1ZiAtIDRmCQkvKiBwcl9k YXRhc3ouICAqLworNDoKKwkubG9uZyAweGEKKzU6CisJLnAyYWxpZ24gQUxJ R04KKzM6CmRpZmYgLS1naXQgYS9sZC90ZXN0c3VpdGUvbGQteDg2LTY0L3g4 Ni02NC5leHAgYi9sZC90ZXN0c3VpdGUvbGQteDg2LTY0L3g4Ni02NC5leHAK aW5kZXggOGU0ZTQyMi4uZTdhN2Y4MCAxMDA2NDQKLS0tIGEvbGQvdGVzdHN1 aXRlL2xkLXg4Ni02NC94ODYtNjQuZXhwCisrKyBiL2xkL3Rlc3RzdWl0ZS9s ZC14ODYtNjQveDg2LTY0LmV4cApAQCAtODI4LDYgKzgyOCwxNzQgQEAgaWYg eyBbaXNuYXRpdmVdICYmIFt3aGljaCAkQ0NdICE9IDAgfSB7CiAJICAgIHt7 b2JqZHVtcCB7LWR3fSBwcjE5MzE5LmRkfX0gXAogCSAgICAicHIxOTMxOSIg XAogCV0gXAorCVtsaXN0IFwKKwkgICAgIkJ1aWxkIHByb3BlcnR5IDEiIFwK KwkgICAgIiIgXAorCSAgICAiIiBcCisJICAgIHtwYXNzLmMgcHJvcGVydHkt bm8tY29weS5TfSBcCisJICAgIHt7cmVhZGVsZiB7LW59IHByb3BlcnR5LTEu cn19IFwKKwkgICAgInByb3BlcnR5LTEiIFwKKwldIFwKKwlbbGlzdCBcCisJ ICAgICJCdWlsZCBwcm9wZXJ0eSAxICgubykiIFwKKwkgICAgIi1yIC1ub3N0 ZGxpYiIgXAorCSAgICAiIiBcCisJICAgIHtwYXNzLmMgcHJvcGVydHktbm8t Y29weS5TfSBcCisJICAgIHt7cmVhZGVsZiB7LW59IHByb3BlcnR5LTEucn19 IFwKKwkgICAgInByb3BlcnR5LTEubyIgXAorCV0gXAorCVtsaXN0IFwKKwkg ICAgIkJ1aWxkIHByb3BlcnR5IDEgKC5zbykiIFwKKwkgICAgIi1zaGFyZWQi IFwKKwkgICAgIi1mUElDIiBcCisJICAgIHtwYXNzLmMgcHJvcGVydHktbm8t Y29weS5TfSBcCisJICAgIHt7cmVhZGVsZiB7LW59IHByb3BlcnR5LTEucn19 IFwKKwkgICAgInByb3BlcnR5LTEuc28iIFwKKwldIFwKKwlbbGlzdCBcCisJ ICAgICJCdWlsZCBwcm9wZXJ0eSAyIiBcCisJICAgICIiIFwKKwkgICAgIiIg XAorCSAgICB7cGFzcy5jIHByb3BlcnR5LXN0YWNrLlN9IFwKKwkgICAge3ty ZWFkZWxmIHstbn0gcHJvcGVydHktMi5yfX0gXAorCSAgICAicHJvcGVydHkt MiIgXAorCV0gXAorCVtsaXN0IFwKKwkgICAgIkJ1aWxkIHByb3BlcnR5IDIg KC5vKSIgXAorCSAgICAiLXIgLW5vc3RkbGliIiBcCisJICAgICIiIFwKKwkg ICAge3Bhc3MuYyBwcm9wZXJ0eS1zdGFjay5TfSBcCisJICAgIHt7cmVhZGVs ZiB7LW59IHByb3BlcnR5LTIucn19IFwKKwkgICAgInByb3BlcnR5LTIubyIg XAorCV0gXAorCVtsaXN0IFwKKwkgICAgIkJ1aWxkIHByb3BlcnR5IDIgKC5z bykiIFwKKwkgICAgIi1zaGFyZWQiIFwKKwkgICAgIi1mUElDIiBcCisJICAg IHtwYXNzLmMgcHJvcGVydHktc3RhY2suU30gXAorCSAgICB7e3JlYWRlbGYg ey1ufSBwcm9wZXJ0eS0yLnJ9fSBcCisJICAgICJwcm9wZXJ0eS0yLnNvIiBc CisJXSBcCisJW2xpc3QgXAorCSAgICAiQnVpbGQgcHJvcGVydHkgMyIgXAor CSAgICAiIiBcCisJICAgICIiIFwKKwkgICAge3Bhc3MuYyBwcm9wZXJ0eS1z dGFjay5TIHByb3BlcnR5LXg4Ni0xLlN9IFwKKwkgICAge3tyZWFkZWxmIHst bn0gcHJvcGVydHktMy5yfX0gXAorCSAgICAicHJvcGVydHktMyIgXAorCV0g XAorCVtsaXN0IFwKKwkgICAgIkJ1aWxkIHByb3BlcnR5IDMgKC5vKSIgXAor CSAgICAiLXIgLW5vc3RkbGliIiBcCisJICAgICIiIFwKKwkgICAge3Bhc3Mu YyBwcm9wZXJ0eS14ODYtMS5TIHByb3BlcnR5LXN0YWNrLlN9IFwKKwkgICAg e3tyZWFkZWxmIHstbn0gcHJvcGVydHktMy5yfX0gXAorCSAgICAicHJvcGVy dHktMy5vIiBcCisJXSBcCisJW2xpc3QgXAorCSAgICAiQnVpbGQgcHJvcGVy dHkgMyAoLnNvKSIgXAorCSAgICAiLXNoYXJlZCIgXAorCSAgICAiLWZQSUMi IFwKKwkgICAge3Byb3BlcnR5LXg4Ni0xLlMgcGFzcy5jIHByb3BlcnR5LXN0 YWNrLlN9IFwKKwkgICAge3tyZWFkZWxmIHstbn0gcHJvcGVydHktMy5yfX0g XAorCSAgICAicHJvcGVydHktMy5zbyIgXAorCV0gXAorCVtsaXN0IFwKKwkg ICAgIkJ1aWxkIHByb3BlcnR5IDQiIFwKKwkgICAgIiIgXAorCSAgICAiIiBc CisJICAgIHtwYXNzLmMgcHJvcGVydHktc3RhY2suUyBwcm9wZXJ0eS14ODYt MS5TIHByb3BlcnR5LXg4Ni0yLlN9IFwKKwkgICAge3tyZWFkZWxmIHstbn0g cHJvcGVydHktNC5yfX0gXAorCSAgICAicHJvcGVydHktNCIgXAorCV0gXAor CVtsaXN0IFwKKwkgICAgIkJ1aWxkIHByb3BlcnR5IDQgKC5vKSIgXAorCSAg ICAiLXIgLW5vc3RkbGliIiBcCisJICAgICIiIFwKKwkgICAge3Bhc3MuYyBw cm9wZXJ0eS14ODYtMi5TIHByb3BlcnR5LXg4Ni0xLlMgcHJvcGVydHktc3Rh Y2suU30gXAorCSAgICB7e3JlYWRlbGYgey1ufSBwcm9wZXJ0eS00LnJ9fSBc CisJICAgICJwcm9wZXJ0eS00Lm8iIFwKKwldIFwKKwlbbGlzdCBcCisJICAg ICJCdWlsZCBwcm9wZXJ0eSA0ICguc28pIiBcCisJICAgICItc2hhcmVkIiBc CisJICAgICItZlBJQyIgXAorCSAgICB7cHJvcGVydHkteDg2LTIuUyBwcm9w ZXJ0eS14ODYtMS5TIHBhc3MuYyBwcm9wZXJ0eS1zdGFjay5TfSBcCisJICAg IHt7cmVhZGVsZiB7LW59IHByb3BlcnR5LTQucn19IFwKKwkgICAgInByb3Bl cnR5LTQuc28iIFwKKwldIFwKKwlbbGlzdCBcCisJICAgICJCdWlsZCBwcm9w ZXJ0eSA0ICgtV2wsLXosc3RhY2stc2l6ZT0wKSIgXAorCSAgICAiLVdsLC16 LHN0YWNrLXNpemU9MCIgXAorCSAgICAiIiBcCisJICAgIHtwYXNzLmMgcHJv cGVydHktc3RhY2suUyBwcm9wZXJ0eS14ODYtMS5TIHByb3BlcnR5LXg4Ni0y LlN9IFwKKwkgICAge3tyZWFkZWxmIHstbn0gcHJvcGVydHktNC5yfX0gXAor CSAgICAicHJvcGVydHktNCIgXAorCV0gXAorCVtsaXN0IFwKKwkgICAgIkJ1 aWxkIHByb3BlcnR5IDUiIFwKKwkgICAgIi1XbCwteixzdGFjay1zaXplPTB4 OTAwMDAwIiBcCisJICAgICIiIFwKKwkgICAge3Bhc3MuYyBwcm9wZXJ0eS1z dGFjay5TIHByb3BlcnR5LXg4Ni0xLlMgcHJvcGVydHkteDg2LTIuU30gXAor CSAgICB7e3JlYWRlbGYgey1ufSBwcm9wZXJ0eS01LnJ9fSBcCisJICAgICJw cm9wZXJ0eS01IiBcCisJXSBcCisJW2xpc3QgXAorCSAgICAiQnVpbGQgcHJv cGVydHkgNSAoLm8pIiBcCisJICAgICItciAtbm9zdGRsaWIgLVdsLC16LHN0 YWNrLXNpemU9MHg5MDAwMDAiIFwKKwkgICAgIiIgXAorCSAgICB7cGFzcy5j IHByb3BlcnR5LXg4Ni0yLlMgcHJvcGVydHkteDg2LTEuUyBwcm9wZXJ0eS1z dGFjay5TfSBcCisJICAgIHt7cmVhZGVsZiB7LW59IHByb3BlcnR5LTUucn19 IFwKKwkgICAgInByb3BlcnR5LTUubyIgXAorCV0gXAorCVtsaXN0IFwKKwkg ICAgIkJ1aWxkIHByb3BlcnR5IDUgKC5zbykiIFwKKwkgICAgIi1zaGFyZWQg LVdsLC16LHN0YWNrLXNpemU9MHg5MDAwMDAiIFwKKwkgICAgIi1mUElDIiBc CisJICAgIHtwcm9wZXJ0eS14ODYtMi5TIHByb3BlcnR5LXg4Ni0xLlMgcGFz cy5jIHByb3BlcnR5LXN0YWNrLlN9IFwKKwkgICAge3tyZWFkZWxmIHstbn0g cHJvcGVydHktNS5yfX0gXAorCSAgICAicHJvcGVydHktNS5zbyIgXAorCV0g XAorCVtsaXN0IFwKKwkgICAgIkJ1aWxkIHByb3BlcnR5LTYuc28iIFwKKwkg ICAgIi1zaGFyZWQiIFwKKwkgICAgIi1mUElDIiBcCisJICAgIHtwcm9wZXJ0 eS02YS5jIHByb3BlcnR5LTZjLlN9IFwKKwkgICAge3tyZWFkZWxmIHstbn0g cHJvcGVydHktNi5yfX0gXAorCSAgICAicHJvcGVydHktNi5zbyIgXAorCV0g XAorCVtsaXN0IFwKKwkgICAgIkJ1aWxkIHByb3BlcnR5LTYubyIgXAorCSAg ICAiLXIgLW5vc3RkbGliIiBcCisJICAgICIiIFwKKwkgICAge3Byb3BlcnR5 LTZiLmMgcHJvcGVydHktc3RhY2suU30gXAorCSAgICB7e3JlYWRlbGYgey1u fSBwcm9wZXJ0eS0yLnJ9fSBcCisJICAgICJwcm9wZXJ0eS02Lm8iIFwKKwld IFwKKwlbbGlzdCBcCisJICAgICJCdWlsZCBwcm9wZXJ0eS02IiBcCisJICAg ICItV2wsLS1hcy1uZWVkZWQgdG1wZGlyL3Byb3BlcnR5LTYubyB0bXBkaXIv cHJvcGVydHktNi5zbyIgXAorCSAgICB7IGR1bW15LnMgfSBcCisJICAgICIi IFwKKwkgICAge3tyZWFkZWxmIHstbn0gcHJvcGVydHktMi5yfX0gXAorCSAg ICAicHJvcGVydHktNiIgXAorCV0gXAorCVtsaXN0IFwKKwkgICAgIkJ1aWxk IHByb3BlcnR5IDdhICgubykiIFwKKwkgICAgIi1yIC1ub3N0ZGxpYiIgXAor CSAgICAiIiBcCisJICAgIHtwcm9wZXJ0eS11bnNvcnRlZC0xLlN9IFwKKwkg ICAge3tyZWFkZWxmIHstbn0gcHJvcGVydHktNy5yfX0gXAorCSAgICAicHJv cGVydHktN2EubyIgXAorCV0gXAorCVtsaXN0IFwKKwkgICAgIkJ1aWxkIHBy b3BlcnR5IDdiICgubykiIFwKKwkgICAgIi1yIC1ub3N0ZGxpYiIgXAorCSAg ICAiIiBcCisJICAgIHtwcm9wZXJ0eS11bnNvcnRlZC0yLlN9IFwKKwkgICAg e3tyZWFkZWxmIHstbn0gcHJvcGVydHktNy5yfX0gXAorCSAgICAicHJvcGVy dHktN2IubyIgXAorCV0gXAogICAgIF0KIAogICAgIHJ1bl9sZF9saW5rX2V4 ZWNfdGVzdHMgW2xpc3QgXApAQCAtODk4LDYgKzEwNjYsMTExIEBAIGlmIHsg W2lzbmF0aXZlXSAmJiBbd2hpY2ggJENDXSAhPSAwIH0gewogCSAgICAiZ290 cGNyZWwxIiBcCiAJICAgICJnb3RwY3JlbDEub3V0IiBcCiAJXSBcCisJW2xp c3QgXAorCSAgICAiUnVuIHByb3BlcnR5IDEiIFwKKwkgICAgIiIgXAorCSAg ICAiIiBcCisJICAgIHtwYXNzLmMgcHJvcGVydHktbm8tY29weS5TfSBcCisJ ICAgICJwcm9wZXJ0eS0xIiAicGFzcy5vdXQiIFwKKwldIFwKKwlbbGlzdCBc CisJICAgICJSdW4gcHJvcGVydHkgMSAoUElFKSIgXAorCSAgICAiLXBpZSIg XAorCSAgICAiIiBcCisJICAgIHtwYXNzLmMgcHJvcGVydHktbm8tY29weS5T fSBcCisJICAgICJwcm9wZXJ0eS0xLXBpZSIgInBhc3Mub3V0IiAiLWZQSUUi IFwKKwldIFwKKwlbbGlzdCBcCisJICAgICJSdW4gcHJvcGVydHkgMSAoc3Rh dGljKSIgXAorCSAgICAiLXN0YXRpYyIgXAorCSAgICAiIiBcCisJICAgIHtw YXNzLmMgcHJvcGVydHktbm8tY29weS5TfSBcCisJICAgICJwcm9wZXJ0eS0x LXN0YXRpYyIgInBhc3Mub3V0IiBcCisJXSBcCisJW2xpc3QgXAorCSAgICAi UnVuIHByb3BlcnR5IDIiIFwKKwkgICAgIiIgXAorCSAgICAiIiBcCisJICAg IHtwYXNzLmMgcHJvcGVydHktc3RhY2suU30gXAorCSAgICAicHJvcGVydHkt MiIgInBhc3Mub3V0IiBcCisJXSBcCisJW2xpc3QgXAorCSAgICAiUnVuIHBy b3BlcnR5IDIgKFBJRSkiIFwKKwkgICAgIi1waWUiIFwKKwkgICAgIiIgXAor CSAgICB7cGFzcy5jIHByb3BlcnR5LXN0YWNrLlN9IFwKKwkgICAgInByb3Bl cnR5LTItcGllIiAicGFzcy5vdXQiICItZlBJRSIgXAorCV0gXAorCVtsaXN0 IFwKKwkgICAgIlJ1biBwcm9wZXJ0eSAyIChzdGF0aWMpIiBcCisJICAgICIt c3RhdGljIiBcCisJICAgICIiIFwKKwkgICAge3Bhc3MuYyBwcm9wZXJ0eS1z dGFjay5TfSBcCisJICAgICJwcm9wZXJ0eS0zLXN0YXRpYyIgInBhc3Mub3V0 IiBcCisJXSBcCisJW2xpc3QgXAorCSAgICAiUnVuIHByb3BlcnR5IDMiIFwK KwkgICAgIiIgXAorCSAgICAiIiBcCisJICAgIHtwYXNzLmMgcHJvcGVydHkt c3RhY2suUyBwcm9wZXJ0eS14ODYtMS5TfSBcCisJICAgICJwcm9wZXJ0eS0z IiAicGFzcy5vdXQiIFwKKwldIFwKKwlbbGlzdCBcCisJICAgICJSdW4gcHJv cGVydHkgMyAoUElFKSIgXAorCSAgICAiLXBpZSIgXAorCSAgICAiIiBcCisJ ICAgIHtwYXNzLmMgcHJvcGVydHkteDg2LTEuUyBwcm9wZXJ0eS1zdGFjay5T fSBcCisJICAgICJwcm9wZXJ0eS0zLXBpZSIgInBhc3Mub3V0IiAiLWZQSUUi IFwKKwldIFwKKwlbbGlzdCBcCisJICAgICJSdW4gcHJvcGVydHkgMyAoc3Rh dGljKSIgXAorCSAgICAiLXN0YXRpYyIgXAorCSAgICAiIiBcCisJICAgIHtw cm9wZXJ0eS14ODYtMS5TIHBhc3MuYyBwcm9wZXJ0eS1zdGFjay5TfSBcCisJ ICAgICJwcm9wZXJ0eS0zLXN0YXRpYyIgInBhc3Mub3V0IiBcCisJXSBcCisJ W2xpc3QgXAorCSAgICAiUnVuIHByb3BlcnR5IDQiIFwKKwkgICAgIiIgXAor CSAgICAiIiBcCisJICAgIHtwYXNzLmMgcHJvcGVydHktc3RhY2suUyBwcm9w ZXJ0eS14ODYtMS5TIHByb3BlcnR5LXg4Ni0yLlN9IFwKKwkgICAgInByb3Bl cnR5LTQiICJwYXNzLm91dCIgXAorCV0gXAorCVtsaXN0IFwKKwkgICAgIlJ1 biBwcm9wZXJ0eSA0IChQSUUpIiBcCisJICAgICItcGllIiBcCisJICAgICIi IFwKKwkgICAge3Bhc3MuYyBwcm9wZXJ0eS14ODYtMi5TIHByb3BlcnR5LXg4 Ni0xLlMgcHJvcGVydHktc3RhY2suU30gXAorCSAgICAicHJvcGVydHktNC1w aWUiICJwYXNzLm91dCIgIi1mUElFIiBcCisJXSBcCisJW2xpc3QgXAorCSAg ICAiUnVuIHByb3BlcnR5IDQgKHN0YXRpYykiIFwKKwkgICAgIi1zdGF0aWMi IFwKKwkgICAgIiIgXAorCSAgICB7cHJvcGVydHkteDg2LTIuUyBwcm9wZXJ0 eS14ODYtMS5TIHBhc3MuYyBwcm9wZXJ0eS1zdGFjay5TfSBcCisJICAgICJw cm9wZXJ0eS00LXN0YXRpYyIgInBhc3Mub3V0IiBcCisJXSBcCisJW2xpc3Qg XAorCSAgICAiUnVuIHByb3BlcnR5IDUiIFwKKwkgICAgIi1XbCwteixzdGFj ay1zaXplPTB4OTAwMDAwIiBcCisJICAgICIiIFwKKwkgICAge3Bhc3MuYyBw cm9wZXJ0eS1zdGFjay5TIHByb3BlcnR5LXg4Ni0xLlMgcHJvcGVydHkteDg2 LTIuU30gXAorCSAgICAicHJvcGVydHktNSIgInBhc3Mub3V0IiBcCisJXSBc CisJW2xpc3QgXAorCSAgICAiUnVuIHByb3BlcnR5IDUgKFBJRSkiIFwKKwkg ICAgIi1waWUgLVdsLC16LHN0YWNrLXNpemU9MHg5MDAwMDAiIFwKKwkgICAg IiIgXAorCSAgICB7cGFzcy5jIHByb3BlcnR5LXg4Ni0yLlMgcHJvcGVydHkt eDg2LTEuUyBwcm9wZXJ0eS1zdGFjay5TfSBcCisJICAgICJwcm9wZXJ0eS01 LXBpZSIgInBhc3Mub3V0IiAiLWZQSUUiIFwKKwldIFwKKwlbbGlzdCBcCisJ ICAgICJSdW4gcHJvcGVydHkgNSAoc3RhdGljKSIgXAorCSAgICAiLXN0YXRp YyAtV2wsLXosc3RhY2stc2l6ZT0weDkwMDAwMCIgXAorCSAgICAiIiBcCisJ ICAgIHtwcm9wZXJ0eS14ODYtMi5TIHByb3BlcnR5LXg4Ni0xLlMgcGFzcy5j IHByb3BlcnR5LXN0YWNrLlN9IFwKKwkgICAgInByb3BlcnR5LTUtc3RhdGlj IiAicGFzcy5vdXQiIFwKKwldIFwKICAgICBdCiAKICAgICAjIFJ1bi10aW1l IHRlc3RzIHdoaWNoIHJlcXVpcmUgd29ya2luZyBpZnVuYyBhdHRyaWJ1dGUg c3VwcG9ydC4KLS0gCjIuOS4zCgo= --001a113a7db889ff41054c0823d6--