From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-3.4 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,FREEMAIL_FROM,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED, UNPARSEABLE_RELAY autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 26431 invoked from network); 19 Mar 2021 22:06:17 -0000 Received: from zero.zsh.org (2a02:898:31:0:48:4558:7a:7368) by inbox.vuxu.org with ESMTPUTF8; 19 Mar 2021 22:06:17 -0000 ARC-Seal: i=1; cv=none; a=rsa-sha256; d=zsh.org; s=rsa-20200801; t=1616191577; b=IaUob8gVtu9d7vFgKtF+6BdckMxIc85qUhzD7gsOC46n7LEY+1KuZ2QRHccdcpbqtws9drNQ1u 9Wk+CoAS99xQOLUc81ZgfqIHUO3wDEwsnmuVFK0AHwS2lpeJX6zngVsijgcqOZGmpoNtBzT7tE ApAbcPeEHU/lJC4vKBhUkRG5mSszPS0FfVOg11GsGHfRVhgRBQ4/cCOewgjzXS0dZ11oFzOjQA LXt6UHY8PqeHku3wfZCu4re+4FoO0p7/qXTPdLR3vTxBItnNsjMIU/b5Ty43pUzgYN6A7+yYNE tyzvIT+DHXhBCxlq0Sx5u3ncKlIFKumLprQVSXQNvYNMOw==; ARC-Authentication-Results: i=1; zsh.org; iprev=pass (mail-oi1-f170.google.com) smtp.remote-ip=209.85.167.170; dkim=pass header.d=gmail.com header.s=20161025 header.a=rsa-sha256; dmarc=pass header.from=gmail.com; arc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed; d=zsh.org; s=rsa-20200801; t=1616191577; bh=oM8ec/58CkyMghSqNz8ujurKvniR4XvdTXoMO3iAbLM=; h=List-Archive:List-Owner:List-Post:List-Unsubscribe:List-Subscribe:List-Help: List-Id:Sender:Content-Type:Cc:To:Subject:Message-ID:Date:From:In-Reply-To: References:MIME-Version:DKIM-Signature:DKIM-Signature; b=i/0MDnqRjCgVEpg0N21Dhuc0KD5ltL921HOTmPbpbwM4LF9NvT+TA5BWV6s+XvnrXYtiQb1RAT IqTIJkNKlfNi1NtMDb9O4MDt85QTDl9uXgiShwEb08EJZDC6CxZaHE44HQn7gJNFR/zmUaG5f3 aBDfDz4Wj6smjh2n5dH280U5sK+R9E1kkjdN3uvht+yn+GSBxoO8AckBhtYa5fTFkIiXOeDLB6 3t3sX8+N5kWjTU7NBH455sIjpDRjpDYdTe6ZyhtZydABSDVoFp1T2iEqFeXvXXcWlr0VHMVfAv RIDCxpiGZZzk77N8UHopMjXxZVNeoUnGe+60k/DB/D58Jg==; DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=zsh.org; s=rsa-20200801; h=List-Archive:List-Owner:List-Post:List-Unsubscribe: List-Subscribe:List-Help:List-Id:Sender:Content-Type:Cc:To:Subject:Message-ID :Date:From:In-Reply-To:References:MIME-Version:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID; bh=1Bsu/ES1DbGNABJIHYk2TeTSSEaHqdb0V0wE81/Xfuo=; b=od6noaW0R4PYXe2/M9qE5xsC2c v0yFtfzvLNPWFRpNeB/9l0/LoHHKXIjraf6I43QBscZbErdJ/7QItAX1QuQlw8JQdFpmCPYGf5N+R 9RS3qEijSIvKkRZ3l2mtVg+MWVohkYECzWHn8lRD+yM6za6yPpBdaEzbki3zktRqf3isQGRPAXixx zocj9gM0DE/BhHW3D1aSS2xg1LVd/ZFIfvrjnz24Ejg6rU8VjoFgBi6lFeGVCpsJGd341Q5zFoVeJ lIrLvr4/7qC+WIoCNv4pt99+wR8VqyzCskhdvleGoC1EVif20wbnK6JEjUNXgPniOyeYYcNQaNXsb GYZiKUag==; Received: from authenticated user by zero.zsh.org with local id 1lNNG2-000A28-Te; Fri, 19 Mar 2021 22:06:14 +0000 Authentication-Results: zsh.org; iprev=pass (mail-oi1-f170.google.com) smtp.remote-ip=209.85.167.170; dkim=pass header.d=gmail.com header.s=20161025 header.a=rsa-sha256; dmarc=pass header.from=gmail.com; arc=none Received: from mail-oi1-f170.google.com ([209.85.167.170]:36531) by zero.zsh.org with esmtps (TLS1.3:TLS_AES_128_GCM_SHA256:128) id 1lNNFh-0009sn-LX; Fri, 19 Mar 2021 22:05:54 +0000 Received: by mail-oi1-f170.google.com with SMTP id d133so6332333oib.3 for ; Fri, 19 Mar 2021 15:05:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=1Bsu/ES1DbGNABJIHYk2TeTSSEaHqdb0V0wE81/Xfuo=; b=mNU+2zGSIvUnYFbTfOyJh/X7Fo+1QFxipI+jw0vS1SlkQgMQAav+T3ZJMbVXyBM9Wm ryIQFCeEmviEzJ1UiG3JRq/Ga7ZshTCjjb8Je50/7pouLGY9TwLD0b+/CpPTgqtR1heb Ikw+kQptWmUK4Llrs3uzLbqsALZZUvfhwSTClHjq0OF5CXlR0q2OPRQFnxB6+mj/NNux ASA6XNqACyFdJswwGov2CyuPYxIS8nPenoSWNLQVWarT7A32cA5Y3ll9SOIOuavWPjUX 9OjSKxlq6Heyc+yGxCnPB9UlyZY3SPLNC+Nsxlgs8g4xFD160t0MVAq9Yxx+FKltrr9m q6/w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=1Bsu/ES1DbGNABJIHYk2TeTSSEaHqdb0V0wE81/Xfuo=; b=QbbhFlUBcY/YNbnSnXrUpYh82039T6DG4iEuwlWp0E6XIhoqckJcwuFKu+c28OTz/h XoPFh13VpGSOERn1vFxWxa8l1tD6DzT3EeXvwADeeV2ZS8wRHPHFmsD6UKENBkyh6nDk fnPkO5RPCNd04EGKoLX/4JOyC9VOrvAp0jTlkEbDlJu+uAJ0fzBG/tGvFPFThUm3rJMb nPbTb4S6FNvaORCIW9g18A19zoMzLhMSj4e+pAJzK3+AHDNqlS+YC050NX5V/ULRZ6iM 8ozRHb48I+F9bVY4zlCQIJASYViun293v/b5rdgJQUIHsjD/sFazeqo1idlBmAnojLKN cU0A== X-Gm-Message-State: AOAM531yEne9Sz0k8TGATpUxRNFPUPW+Qw1BbnamTM51xyIWNX3T6hYc 3IwWdS4bQdEnfb2TrgvuTzhB4eW9Og//xeqOgs6ODhze X-Google-Smtp-Source: ABdhPJxbBD1MFstGeG5or5FRCjflw5PRp1Ufk9QkNsa+8+skwVbASA0/ZdWWvKhcqBQrbWBYsHlj/wjn4BIfWAFyWW4= X-Received: by 2002:aca:5fc3:: with SMTP id t186mr2409735oib.69.1616191551426; Fri, 19 Mar 2021 15:05:51 -0700 (PDT) MIME-Version: 1.0 References: <3e3a3655-cd05-b0dd-7d26-28ca45c7845c@redhat.com> In-Reply-To: From: Christian K Date: Fri, 19 Mar 2021 23:05:15 +0100 Message-ID: Subject: Re: OpenStack CLI completion To: Marko Myllynen Cc: zsh-workers@zsh.org Content-Type: multipart/mixed; boundary="00000000000050995305bdeaeb46" X-Seq: 48192 Archived-At: X-Loop: zsh-workers@zsh.org Errors-To: zsh-workers-owner@zsh.org Precedence: list Precedence: bulk Sender: zsh-workers-request@zsh.org X-no-archive: yes List-Id: List-Help: List-Subscribe: List-Unsubscribe: List-Post: List-Owner: List-Archive: Archived-At: --00000000000050995305bdeaeb46 Content-Type: text/plain; charset="UTF-8" > > @Marko, I tried all clients I could find easily and could not find any > > suggestions including colons. I cannot handle an error I don't know how to > > throw. Please let me know if you remember an example. > I think I remember swift and perhaps one or two being somewhat different > that the rest. But it might be also that it was a client which has since > then become obsolete. Or perhaps it was added needlessly in the first place. swift should not be affected since it is in the "swift like" category and not new style. > Given that you've tested it with all recent client version I'd say it > should be safe to drop today. I'd prefer more testers. :) I found another small bug and fixed it. --00000000000050995305bdeaeb46 Content-Type: text/x-patch; charset="UTF-8"; name="0001-Fix-_openstack-completion-for-new-style-clients.patch" Content-Disposition: attachment; filename="0001-Fix-_openstack-completion-for-new-style-clients.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_kmgumzux0 RnJvbSBkNDA4NTMyZWI4NDk4OGQyZTU2NWY0YjA5NzU3MWI4MzJiOGVkMTcyIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBTeXBoZGlhcyA8c3lwaGRpYXMrZ2l0QGdtYWlsLmNvbT4KRGF0 ZTogVGh1LCAxOCBNYXIgMjAyMSAyMzoyMzoxNiArMDEwMApTdWJqZWN0OiBbUEFUQ0hdIEZpeCBf b3BlbnN0YWNrIGNvbXBsZXRpb24gZm9yIG5ldyBzdHlsZSBjbGllbnRzCk1JTUUtVmVyc2lvbjog MS4wCkNvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD1VVEYtOApDb250ZW50LVRyYW5z ZmVyLUVuY29kaW5nOiA4Yml0CgpJIGhhdmUgcmV3cml0dGVuIHRoZSBjb21wbGV0aW9uIGZ1bmN0 aW9uIGZvciBuZXcgc3R5bGUgY2xpZW50cy4gSXQgbm8gbG9uZ2VyCmRpZmZlcmVudGlhdGVzIGJl dHdlZW4gY29tbWFuZCBhbmQgc3ViIGNvbW1hbmQgc2luY2UgdGhpcyBsZWFkIHRvIGEgbGltaXRl ZApkZXB0aCBmb3IgY29tcGxldGlvbiBsb29rdXBzLiBUaGlzIGdldHMgcmlkIG9mIHRoZSBleHRy YSBnbG9iYWwgY2FjaGluZyB2YXJpYWJsZQpgX2NhY2hlX29wZW5zdGFja19jbG50X2NtZHNgLiAg SSB0cmllZCB0byBzdGF5IHRydWUgdG8gdGhlIHByZWZpeC1uZWVkZWQKc2V0dGluZy4KCkZpcnN0 IEkgcHJvY2VzcyB0aGUgd29yZHMgbGVmdCBvZiB0aGUgY3Vyc29yLiBgd29yZHNgIGRpZCBub3Qg cHJvdmlkZSB0aGlzCmdyYW51bGFyaXR5IEkgbmVlZGVkIHNvIEkgb3B0ZWQgdG8gcGFyc2UgYExC VUZGRVJgIGFsc28gZm9yIHNhdmluZyBhIHBhcnRpYWwKaW5wdXQvbWF0Y2ggZm9yIGxhdGVyLiBJ IHJlbW92ZSBgaGVscGAgc2luY2UgZXZlcnl0aGluZyBhZnRlciBpdCBpcyBub3JtYWwgKHN1YikK Y29tbWFuZCwgc28gbWF0Y2hlcyBhcmUgaWRlbnRpY2FsIHRvIHByb3BlciBjb21tYW5kcy4gQWxz byBJIGZpbHRlciBvdXQgZXZlcnkKZmxhZy9vcHRpb24uCgpUbyBmaW5kIHRoZSBwcm9wZXIgY29t cGxldGlvbiBvcHRpb25zIEkgdHJ5IG9uZSBsZXZlbCBhdCBhIHRpbWUuCiogJHNlcnZpY2UKKiAk c2VydmljZSAkc29tZV9jb21tYW5kCiogJHNlcnZpY2UgJHNvbWVfY29tbWFuZCAkc29tZV9jb21t YW5kX2Zvcl9zb21lX2NvbW1hbmQKKiBldGMuCllvdSBjb3VsZCBwcm9iYWJseSBkbyB0aGlzIGlu IHJldmVyc2UgdG8gc2F2ZSB0aW1lIGJ1dCBJIGRvbid0IHRoaW5rIGl0IGlzIHdvcnRoCnRoZSBl ZmZvcnQuCgpJIGFkZCB0aGUgZ2xvYmFsIG9wdGlvbnMgaWYgYC1gIGlzIHVzZWQgYXMgYSBwcmVm aXggYXQgdGhlIGN1cnJlbnQgcG9zaXRpb24uCgpDYXZlYXRzOgoqIEkga25vdyB0aGVyZSBhcmUg b3B0aW9ucyBsaWtlIGAtLWZpbGVgLiBUaGUgbmV3IGltcGxlbWVudGF0aW9uIGRvZXMgbm90IGhh bmRsZQogIHRoaXMg4oCTIG5laXRoZXIgZGlkIHRoZSBvbGQgb25lLiBGb3IgdGhpcyBsZXZlbCwg SSdkIHN1Z2dlc3QgdGhlIE9wZW5TdGFjayB0ZWFtCiAgdG8gcHJvdmlkZSBvZmZpY2lhbCB6c2gg Y29tcGxldGlvbnMKKiBJZ25vcmVzIGV2ZXJ5dGhpbmcgcmlnaHQgb2YgdGhlIGN1cnNvciBzbyB5 b3UgY2FuIGVuZCB1cCB3aXRoIGNvbW1hbmQKICBzdWdnZXN0aW9uIHRoYXQgYXJlIGFscmVhZHkg b24gdGhlIHJpZ2h0CiogYG9wZW5zdGFjayBjb21wbGV0ZWAgZ2V0cyBjb21wbGV0ZWQgbm93LCBv bGQgaW1wbGVtZW50YXRpb24gaWdub3JlZCBpdAotLS0KIENvbXBsZXRpb24vVW5peC9Db21tYW5k L19vcGVuc3RhY2sgfCAxMTcgKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0KIDEgZmlsZSBj aGFuZ2VkLCA2NCBpbnNlcnRpb25zKCspLCA1MyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9D b21wbGV0aW9uL1VuaXgvQ29tbWFuZC9fb3BlbnN0YWNrIGIvQ29tcGxldGlvbi9Vbml4L0NvbW1h bmQvX29wZW5zdGFjawppbmRleCBmY2I3MDRhYzguLmQ1NTY4NmI4MCAxMDA2NDQKLS0tIGEvQ29t cGxldGlvbi9Vbml4L0NvbW1hbmQvX29wZW5zdGFjaworKysgYi9Db21wbGV0aW9uL1VuaXgvQ29t bWFuZC9fb3BlbnN0YWNrCkBAIC0zNCw4ICszNCw2IEBAIGlmICgoICEgJCtfY2FjaGVfb3BlbnN0 YWNrX2NsbnRfb3B0cyApKTsgdGhlbgogICB0eXBlc2V0IC1nQSBfY2FjaGVfb3BlbnN0YWNrX2Ns bnRfb3B0cwogICB0eXBlc2V0IC1nQSBfY2FjaGVfb3BlbnN0YWNrX2NsbnRfY21kcwogICB0eXBl c2V0IC1nQSBfY2FjaGVfb3BlbnN0YWNrX2NsbnRfY21kc19vcHRzCi0gIHR5cGVzZXQgLWdBIF9j YWNoZV9vcGVuc3RhY2tfY2xudF9jbWRzX3N1YmNtZHMKLSAgdHlwZXNldCAtZ0EgX2NhY2hlX29w ZW5zdGFja19jbG50X2NtZHNfc3ViY21kX29wdHMKIGZpCiAKIGxvY2FsIC1hIGNvbm5fb3B0cwpA QCAtNjEsNjUgKzU5LDc4IEBAIGlmIFtbIC1uICR7Y2xudHNfY29tcGxfbmV3WyhyKSRzZXJ2aWNl XX0gXV07IHRoZW4KICAgICAjIFBvcHVsYXRlIGNhY2hlcyAtIGNsbnRfb3V0cHV0cyBpcyBjb21t YW5kIHJhdyBvdXRwdXQgdXNlZCBsYXRlcgogICAgIF9jYWNoZV9vcGVuc3RhY2tfY2xudF9vdXRw dXRzWyRzZXJ2aWNlXT0kezotIiQoJHNlcnZpY2UgJHsoUSljb25uX29wdHN9IGNvbXBsZXRlIDI+ L2Rldi9udWxsKSJ9CiAgICAgX2NhY2hlX29wZW5zdGFja19jbG50X29wdHNbJHNlcnZpY2VdPSR7 JHskeyR7KE0pJHskeyR7JHs9JHsoZikiJCgkc2VydmljZSBoZWxwIDI+L2Rldi9udWxsKSJ9fS9c W30vXF19L1w7fTojLVstMC05QS1aYS16XSp9Lyx9L1wufSUtLW9zLX0KLSAgICBfY2FjaGVfb3Bl bnN0YWNrX2NsbnRfY21kc1skc2VydmljZV09JHskeyR7JHtfY2FjaGVfb3BlbnN0YWNrX2NsbnRf b3V0cHV0c1skc2VydmljZV19LyogY21kcz1cJ30vXCcqfS9jb21wbGV0ZX0KICAgZmkKLSAgbG9j YWwgY21kIHN1YmNtZAotICAjIERldGVybWluZSB0aGUgY29tbWFuZAotICBmb3Igd29yZCBpbiAk e3dvcmRzOjF9OyBkbwotICAgIGxvY2FsIHM9JHtfY2FjaGVfb3BlbnN0YWNrX2NsbnRfY21kc1sk c2VydmljZV19Ci0gICAgW1sgJHNbKHdJKSR3b3JkXSAtZ3QgMCBdXSAmJiBjbWQ9JHdvcmQgJiYg YnJlYWsKLSAgZG9uZQotICAjIFBvcHVsYXRlIHRoZSBzdWJjb21tYW5kIGNhY2hlCi0gIGlmIFtb IC1uICRjbWQgJiYgLXogJF9jYWNoZV9vcGVuc3RhY2tfY2xudF9jbWRzX3N1YmNtZHNbJHNlcnZp Y2UkY21kXSBdXTsgdGhlbgotICAgICAgbG9jYWwgdD1jbWRzXyR7Y21kLy8tL199Ci0gICAgICBf Y2FjaGVfb3BlbnN0YWNrX2NsbnRfY21kc19zdWJjbWRzWyRzZXJ2aWNlJGNtZF09JHskeyR7X2Nh Y2hlX29wZW5zdGFja19jbG50X291dHB1dHNbJHNlcnZpY2VdfS8qICR0PVwnfS9cJyp9CisKKyAg IyBnZXQgd29ybGRzIGxlZnQgb2YgdGhlIGN1cnNlciBpbnRvIGFuIGFycmF5CisgIGxvY2FsIC1h IGxlZnRfd29yZHMKKyAgbGVmdF93b3Jkcz0oJHs9TEJVRkZFUn0pCisKKyAgIyBpZiBjdXJzZXIg aXMgZGlyZWN0bHkgYXQgYSB3b3JkIChubyBzcGFjZSBhdCB0aGUgZW5kKSwKKyAgIyBleGNsdWRl IHRoZSBsYXN0IHdvcmQgdG8gb2ZmZXIgcmlnaHQgbWF0Y2hlcworICAjIHRoZSBsYXN0IHdvcmQg Y291bGQgYmUgYSBwYXJ0aWFsIG1hdGNoIHRoYXQgaXMgbGF0ZXIgY2hlY2tlZCAocHJlZml4LW5l ZWRlZCkKKyAgbG9jYWwgcGFydGlhbD0iIgorICBpZiBbWyAiJHtMQlVGRkVSWy0xXX0iICE9ICIg IiBdXTsgdGhlbgorICAgIHBhcnRpYWw9JHsoQClsZWZ0X3dvcmRzWy0xXX0KKyAgICBsZWZ0X3dv cmRzPSgkeyhAKWxlZnRfd29yZHNbMSwkI2xlZnRfd29yZHMtMV19KQogICBmaQotICAjIERldGVy bWluZSB0aGUgc3ViY29tbWFuZAotICBpZiBbWyAtbiAkY21kIF1dOyB0aGVuCi0gICAgZm9yIHdv cmQgaW4gJHt3b3JkczoyfTsgZG8KLSAgICAgIGxvY2FsIHM9JHtfY2FjaGVfb3BlbnN0YWNrX2Ns bnRfY21kc19zdWJjbWRzWyRzZXJ2aWNlJGNtZF19Ci0gICAgICBbWyAkc1sod0kpJHdvcmRdIC1n dCAwIF1dICYmIHN1YmNtZD0kd29yZCAmJiBicmVhawotICAgIGRvbmUKLSAgICAjIFBvcHVsYXRl IHN1YmNvbW1hbmQgb3B0aW9uIGNhY2hlCi0gICAgaWYgW1sgLW4gJHN1YmNtZCAmJiAteiAkX2Nh Y2hlX29wZW5zdGFja19jbG50X2NtZHNfc3ViY21kX29wdHNbJHNlcnZpY2Uke2NtZH0tLSRzdWJj bWRdIF1dOyB0aGVuCi0gICAgICBsb2NhbCB0PWNtZHNfJHtjbWQvLy0vX31fJHtzdWJjbWQvLy0v X30KLSAgICAgIF9jYWNoZV9vcGVuc3RhY2tfY2xudF9jbWRzX3N1YmNtZF9vcHRzWyRzZXJ2aWNl JHtjbWR9LS0kc3ViY21kXT0keyR7JHtfY2FjaGVfb3BlbnN0YWNrX2NsbnRfb3V0cHV0c1skc2Vy dmljZV19LyogJHQ9XCd9L1wnKn0KLSAgICBmaQorICAjIHJlbW92ZSAkc2VydmljZQorICBsZWZ0 X3dvcmRzPSgke2xlZnRfd29yZHM6MX0pCisKKyAgIyBmaWx0ZXIgb3V0ICJoZWxwIgorICBpZiBb WyAkbGVmdF93b3Jkc1sxXSA9PSBoZWxwIF1dOyB0aGVuCisgICAgbGVmdF93b3Jkcz0oJHsoQCls ZWZ0X3dvcmRzWzIsJCNsZWZ0X3dvcmRzXX0pCiAgIGZpCi0gICMgU3BlY2lhbCB0cmVhdG1lbnQg Zm9yIHRoZSBoZWxwIGNvbW1hbmQKLSAgaWYgW1sgJGNtZCA9PSBoZWxwIF1dOyB0aGVuCi0gICAg ICBpZiBbWyAkd29yZHNbQ1VSUkVOVC0xXSA9PSAkY21kICYmICR3b3Jkc1tDVVJSRU5UXSAhPSAt KiBdXTsgdGhlbgotICAgICAgICAjIE9mZmVyIGNvbW1hbmRzCi0gICAgICAgIFtbIC1uICRfY2Fj aGVfb3BlbnN0YWNrX2NsbnRfY21kc1skc2VydmljZV0gXV0gJiYgX3ZhbHVlcyAtdyBvcHRpb24g JHsodSk9X2NhY2hlX29wZW5zdGFja19jbG50X2NtZHNbJHNlcnZpY2VdfSAmJiByZXQ9MAotICAg ICAgZWxpZiBbWyAkd29yZHNbQ1VSUkVOVC0yXSA9PSAkY21kICYmICR3b3Jkc1tDVVJSRU5ULTFd ICE9IC0qICYmICR3b3Jkc1tDVVJSRU5UXSAhPSAtKiBdXTsgdGhlbgotICAgICAgICAjIE9mZmVy IHN1YmNvbW1hbmRzCi0gICAgICAgIGxvY2FsIGNtZD0kd29yZHNbQ1VSUkVOVC0xXQotICAgICAg ICBsb2NhbCB0PWNtZHNfJHtjbWQvLy0vX30KLSAgICAgICAgW1sgLXogJF9jYWNoZV9vcGVuc3Rh Y2tfY2xudF9jbWRzX3N1YmNtZHNbJHNlcnZpY2UkY21kXSBdXSAmJiBfY2FjaGVfb3BlbnN0YWNr X2NsbnRfY21kc19zdWJjbWRzWyRzZXJ2aWNlJGNtZF09JHskeyR7X2NhY2hlX29wZW5zdGFja19j bG50X291dHB1dHNbJHNlcnZpY2VdfS8qICR0PVwnfS9cJyp9Ci0gICAgICAgIFtbIC1uICRfY2Fj aGVfb3BlbnN0YWNrX2NsbnRfY21kc19zdWJjbWRzWyRzZXJ2aWNlJGNtZF0gXV0gJiYgX3ZhbHVl cyAtdyBvcHRpb24gJHsodSk9X2NhY2hlX29wZW5zdGFja19jbG50X2NtZHNfc3ViY21kc1skc2Vy dmljZSRjbWRdfSAmJiByZXQ9MAotICAgICAgZWxzZQotICAgICAgICAjIEhhbmRsZSBoZWxwPFRB Qj4gcHJvcGVybHkKLSAgICAgICAgX3ZhbHVlcyAtdyBvcHRpb24gaGVscCAmJiByZXQ9MAotICAg ICAgZmkKLSAgIyBDbGllbnQgb3B0aW9ucwotICBlbGlmIFtbIC16ICRjbWQgJiYgJHdvcmRzW0NV UlJFTlRdID09IC0qIF1dOyB0aGVuCi0gICAgX3ZhbHVlcyAtdyBvcHRpb24gJHsodSk9X2NhY2hl X29wZW5zdGFja19jbG50X29wdHNbJHNlcnZpY2VdfSAmJiByZXQ9MAotICAjIENvbW1hbmRzCi0g IGVsaWYgW1sgLXogJGNtZCBdXTsgdGhlbgotICAgIGlmIFtbIC16ICRfY2FjaGVfb3BlbnN0YWNr X2NsbnRfY21kc1skc2VydmljZV0gXV07IHRoZW4KLSAgICAgIF9tZXNzYWdlICJtaXNzaW5nIGF1 dGhlbnRpY2F0aW9uIG9wdGlvbnMiCisKKyAgIyBmaWx0ZXIgb3V0IG9wdGlvbnMgKC0qKQorICBs ZWZ0X3dvcmRzPSgke2xlZnRfd29yZHMvLy0qfSkKKworICBsb2NhbCAtYSBzdWJjbWRfYXJyYXkg Y21kc19hcnJheSBjYWNoZV9rZXlfYXJyYXkgY2FjaGVfdmFsdWVzCisgIHN1YmNtZF9hcnJheT0o KQorICBjbWRzX2FycmF5PShjbWRzKQorICBjYWNoZV9rZXlfYXJyYXk9KCR7c2VydmljZX0pCisg IGNhY2hlX3ZhbHVlcz0oKQorICBsb2NhbCBjYWNoZV9rZXkgY21kcworICBjYWNoZV9rZXk9IiIK KyAgY21kcz0iIgorCisgICMgQ2hlY2sgZm9yIG1hdGNoZXMgb25lIGxldmVsIGF0IGEgdGltZQor ICAjIGV4YW1wbGU6ICIiIHNlcnZlciBjcmVhdGUKKyAgZm9yIHdvcmQgaW4gIiIgJHsoQClsZWZ0 X3dvcmRzfTsgZG8gICAgICAgICAgICAgICAgICAgIyBmaXJzdCBsb29wICBzZWNvbmQgbG9vcCAg ICAgICAgdGhpcmQgbG9vcAorICAgIHN1YmNtZF9hcnJheT0oJHsoQClzdWJjbWRfYXJyYXl9ICR7 d29yZH0pICAgICAgICAgICAjICgpICAgICAgICAgIChzZXJ2ZXIpICAgICAgICAgICAoc2VydmVy IGNyZWF0ZSkKKyAgICBjbWRzX2FycmF5PSgkeyhAKWNtZHNfYXJyYXl9ICR7d29yZH0pICAgICAg ICAgICAgICAgIyAoY21kcykgICAgICAoY21kcyBzZXJ2ZXIpICAgICAgKGNtZHMgc2VydmVyIGNy ZWF0ZSkKKyAgICBjbWRzPSR7JHsoajpfOiljbWRzX2FycmF5fS8tL199ICAgICAgICAgICAgICAg ICAgICAgIyAgY21kcyAgICAgICAgY21kc19vcGVuc3RhY2sgICAgIGNtZHNfc2VydmVyX2NyZWF0 ZQorICAgIGNhY2hlX2tleV9hcnJheT0oJHsoQCljYWNoZV9rZXlfYXJyYXl9ICR7d29yZH0pICAg ICAjIChvcGVuc3RhY2spIChvcGVuc3RhY2sgc2VydmVyKSAob3BlbnN0YWNrIHNlcnZlciBjcmVh dGUpCisgICAgY2FjaGVfa2V5PSR7JHsoajpfOiljYWNoZV9rZXlfYXJyYXl9Ly0vX30gICAgICAg ICAgICMgIG9wZW5zdGFjayAgIG9wZW5zdGFja19zZXJ2ZXIgICBvcGVuc3RhY2tfc2VydmVyX2Ny ZWF0ZQorCisgICAgIyBsb29rdXAgaWYgY3VycmVudCB3b3JkIGlzIGluIGNhY2hlX3ZhbHVlcyBv ZiBsYXN0IGVsZW1lbnRzCisgICAgaWYgW1sgJHtjYWNoZV92YWx1ZXNbKHdJKSR7d29yZH1dfSAt Z3QgMCB8fCAkd29yZCA9PSAiIiBdXTsgdGhlbgorICAgICAgX2NhY2hlX29wZW5zdGFja19jbG50 X2NtZHNbJHtjYWNoZV9rZXl9XT0keyR7JHtfY2FjaGVfb3BlbnN0YWNrX2NsbnRfb3V0cHV0c1sk e3NlcnZpY2V9XX0vKiAke2NtZHN9PVwnfS9cJyp9CiAgICAgZWxzZQotICAgICAgX3ZhbHVlcyAt dyBvcHRpb24gJHsodSk9X2NhY2hlX29wZW5zdGFja19jbG50X2NtZHNbJHNlcnZpY2VdfSAmJiBy ZXQ9MAorICAgICAgIyB1bmtub3duIHdvcmQ6IHNldCBjYWNoZV9rZXkgdG8gbGFzdCBjYWNoZV9r ZXkgYW5kIGJyZWFrCisgICAgICBjYWNoZV9rZXk9JHskeyhqOl86KSR7Y2FjaGVfa2V5X2FycmF5 OjA6JHsjY2FjaGVfa2V5X2FycmF5fS0xfX0vLS9ffQorICAgICAgYnJlYWsKICAgICBmaQotICAj IFN1YmNvbW1hbmRzCi0gIGVsaWYgW1sgLXogJHN1YmNtZCBdXTsgdGhlbgotICAgIFtbIC1uICRf Y2FjaGVfb3BlbnN0YWNrX2NsbnRfY21kc19zdWJjbWRzWyRzZXJ2aWNlJGNtZF0gXV0gJiYgX3Zh bHVlcyAtdyBvcHRpb24gJHsodSk9X2NhY2hlX29wZW5zdGFja19jbG50X2NtZHNfc3ViY21kc1sk c2VydmljZSRjbWRdfSAmJiByZXQ9MAotICAjIFN1YmNvbW1hbmQgb3B0aW9ucworICAgICMgc2V0 IGNhY2hlX3ZhbHVlcyBmb3IgbmV4dCBsb29wCisgICAgY2FjaGVfdmFsdWVzPSR7X2NhY2hlX29w ZW5zdGFja19jbG50X2NtZHNbJHtjYWNoZV9rZXl9XX0KKyAgZG9uZQorCisgICMgUG9wdWxhdGUg dGhlIGNvbW1hbmQgY2FjaGUKKyAgaWYgW1sgLXogJF9jYWNoZV9vcGVuc3RhY2tfY2xudF9jbWRz WyR7Y2FjaGVfa2V5fV0gXV07IHRoZW4KKyAgICBfbWVzc2FnZSAibWlzc2luZyBhdXRoZW50aWNh dGlvbiBvcHRpb25zIgogICBlbHNlCi0gICAgeyAhIHpzdHlsZSAtVCAiOmNvbXBsZXRpb246JHtj dXJjb250ZXh0fTpvcHRpb25zIiBwcmVmaXgtbmVlZGVkIHx8IFtbIC1wcmVmaXggLSBdXSB9ICYm IFwKLSAgICAgIFtbIC1uICRfY2FjaGVfb3BlbnN0YWNrX2NsbnRfY21kc19zdWJjbWRfb3B0c1sk c2VydmljZSR7Y21kfS0tJHN1YmNtZF0gXV0gJiYgX3ZhbHVlcyAtdyBvcHRpb24gJHsodSk9X2Nh Y2hlX29wZW5zdGFja19jbG50X2NtZHNfc3ViY21kX29wdHNbJHNlcnZpY2Uke2NtZH0tLSRzdWJj bWRdLy9cOi9cXFw6fSAmJiByZXQ9MAorICAgICMgYWRkIGdsb2JhbCBvcHRpb25zIHRvIGNvbXBs ZXRpb24gbGlzdCBpZiBjdXJyZW50IHdvcmQgc3RhcnQgd2l0aCAtKgorICAgIGxvY2FsIGV4dHJh X29wdHMKKyAgICBpZiBbWyAkd29yZHNbQ1VSUkVOVF0gPT0gLSogXV07IHRoZW47CisgICAgICBl eHRyYV9vcHRzPSR7X2NhY2hlX29wZW5zdGFja19jbG50X29wdHNbJHNlcnZpY2VdfQorICAgIGZp CisKKyAgICB7ICEgenN0eWxlIC1UICI6Y29tcGxldGlvbjoke2N1cmNvbnRleHR9Om9wdGlvbnMi IHByZWZpeC1uZWVkZWQgXAorICAgICAgICAgIHx8IFtbIC1uICIke3BhcnRpYWx9IiAmJiAkeyR7 X2NhY2hlX29wZW5zdGFja19jbG50X2NtZHNbJHtjYWNoZV9rZXl9XX1bKEl3KSR7cGFydGlhbH0q XX0gLWd0IDAgfHwgLXByZWZpeCAtIF1dIH0gXAorICAgICAgJiYgX3ZhbHVlcyAtdyBvcHRpb24g JHsodSk9X2NhY2hlX29wZW5zdGFja19jbG50X2NtZHNbJHtjYWNoZV9rZXl9XX0gJHsodSk9ZXh0 cmFfb3B0c30gXAorICAgICAgJiYgcmV0PTAKICAgZmkKIAorCiAjIE9sZCBzdHlsZSBjbGllbnRz CiBlbGlmIFtbIC1uICR7Y2xudHNfY29tcGxfb2xkWyhyKSRzZXJ2aWNlXX0gXV07IHRoZW4KICAg aWYgW1sgLXogJF9jYWNoZV9vcGVuc3RhY2tfY2xudF9jbWRzWyRzZXJ2aWNlXSBdXTsgdGhlbgot LSAKMi4zMC4xCgo= --00000000000050995305bdeaeb46--