From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms0.migadu.com with LMTPS id OMulFdUp7mDaeQAAgWs5BA (envelope-from ) for ; Wed, 14 Jul 2021 02:03:33 +0200 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0 with LMTPS id +D5nEdUp7mAhRwAA1q6Kng (envelope-from ) for ; Wed, 14 Jul 2021 00:03:33 +0000 Received: from mail.notmuchmail.org (nmbug.tethera.net [IPv6:2607:5300:201:3100::1657]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id C9A6ECC78 for ; Wed, 14 Jul 2021 02:03:32 +0200 (CEST) Received: from nmbug.tethera.net (localhost [127.0.0.1]) by mail.notmuchmail.org (Postfix) with ESMTP id C2F17290F9; Tue, 13 Jul 2021 20:03:07 -0400 (EDT) Received: from fethera.tethera.net (fethera.tethera.net [IPv6:2607:5300:60:c5::1]) by mail.notmuchmail.org (Postfix) with ESMTP id C9AD5290D4 for ; Tue, 13 Jul 2021 20:02:48 -0400 (EDT) Received: by fethera.tethera.net (Postfix, from userid 1001) id C1FAB5FD21; Tue, 13 Jul 2021 20:02:48 -0400 (EDT) Received: (nullmailer pid 804665 invoked by uid 1000); Wed, 14 Jul 2021 00:02:42 -0000 From: David Bremner To: notmuch@notmuchmail.org Cc: David Bremner Subject: [PATCH 08/11] lib/parse-sexp: handle most fields Date: Tue, 13 Jul 2021 21:02:36 -0300 Message-Id: <20210714000239.804384-9-david@tethera.net> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20210714000239.804384-1-david@tethera.net> References: <20210714000239.804384-1-david@tethera.net> MIME-Version: 1.0 Message-ID-Hash: 55MIOK2CXMS4C7O5MRMDG72W4D7BPVAN X-Message-ID-Hash: 55MIOK2CXMS4C7O5MRMDG72W4D7BPVAN X-MailFrom: bremner@tethera.net X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-notmuch.notmuchmail.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; suspicious-header X-Mailman-Version: 3.2.1 Precedence: list List-Id: "Use and development of the notmuch mail system." List-Help: List-Post: List-Subscribe: List-Unsubscribe: Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 X-Migadu-Flow: FLOW_IN ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1626221013; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:list-id:list-help: list-unsubscribe:list-subscribe:list-post; bh=XjrnfqznRaV0pMUybQmPq1G2OSM914wl4OVG3laVEkM=; b=YUUk/Sp6Ybzh3LplSm6xc/ERUe+WZlhR1rO4nREs0NLJKzRaXoN0zB3yOZl5tTPEJGkCs4 t784dorLDAbOTuNWafmIVlnbWUjfOKWIvpSmjBIY4ZTrGZVhhdAWkDNK+hlarHqk/g9kYM 0nbag6kkeMc9kYnNfqB8DAH7tyHZzXClLFZeVoXjQCXD+3AWF0VEWn8ki0myOdzTUzSmt8 frAVEOlFn/5o2AFP8GptIo0Q4JbGCAUSzzHkG5ddhOItPgc5FIib5bUsuZUly7EL2JF1zX O7BBVcJEmqi0fmhtxiVAxdyU5OyeOY6l94IbiL6lusAjibW6MmS++KqNPr5aWA== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1626221013; a=rsa-sha256; cv=none; b=BzINWYCcRHVjIPW3Af4ar1/VWpF0JATKGRCWgjhnNwbz9jB0ps2Ux7QcCdzFjufYCnJjnm okAKtTz4pFOcpK5FeORl+tqsE4pZr1iXNn7BahAsEL5Cwz7p8t4UO2V7Llimah7Ql9Kcoc Cr8zISvw75XC+tIfDOVje/nRrps4w+BrJIH+eOGY2WoR3++T5BZ8WelkiGRGHhvEQwTMhL 1Ys/HNGc4NWYT+i4FhBjEs0HTghmPF0pRioaWdj98SMq/QRDPzUn5YTj2SXOf196Ih1UUJ 5GHISyslHZdXwrSAYsgGpEia7tR+DNbolVYvK6MEWEeXd4zVWXzuoH/5gbVrCw== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of notmuch-bounces@notmuchmail.org designates 2607:5300:201:3100::1657 as permitted sender) smtp.mailfrom=notmuch-bounces@notmuchmail.org X-Migadu-Spam-Score: -0.98 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of notmuch-bounces@notmuchmail.org designates 2607:5300:201:3100::1657 as permitted sender) smtp.mailfrom=notmuch-bounces@notmuchmail.org X-Migadu-Queue-Id: C9A6ECC78 X-Spam-Score: -0.98 X-Migadu-Scanner: scn0.migadu.com X-TUID: lksQmdYMswQM ZGF0ZSBhbmQgcXVlcnkgd2lsbCBuZWVkIHRvIGJlIGhhbmRsZWQgc2VwZXJhdGVseSBiZWNhdXNl IHRoZXkgZG8gbm90DQpmaXQgdGhlIHBhdHRlcm4gb2YgY29tYmluaW5nIGEgYnVuY2ggb2YgdGVy bXMgd2l0aCBhbiBvcGVyYXRvci4NCi0tLQ0KIGxpYi9wYXJzZS1zZXhwLmNjICAgICAgICAgfCAg MTMgKysrKw0KIHRlc3QvVDA4MS1zZXhwci1zZWFyY2guc2ggfCAxNDMgKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKy0NCiAyIGZpbGVzIGNoYW5nZWQsIDE1MyBpbnNlcnRpb25z KCspLCAzIGRlbGV0aW9ucygtKQ0KDQpkaWZmIC0tZ2l0IGEvbGliL3BhcnNlLXNleHAuY2MgYi9s aWIvcGFyc2Utc2V4cC5jYw0KaW5kZXggMjZkNGVlMWYuLjgxYmY1Y2VlIDEwMDY0NA0KLS0tIGEv bGliL3BhcnNlLXNleHAuY2MNCisrKyBiL2xpYi9wYXJzZS1zZXhwLmNjDQpAQCAtMjMsNyArMjMs MjAgQEAgdHlwZWRlZiBzdHJ1Y3QgIHsNCiANCiBzdGF0aWMgX3NleHBfZmllbGRfdCBmaWVsZHNb XSA9DQogew0KKyAgICB7ICJhdHRhY2htZW50IiwgICAgIFhhcGlhbjo6UXVlcnk6Ok9QX1BIUkFT RSB9LA0KKyAgICB7ICJib2R5IiwgICAgICAgICAgIFhhcGlhbjo6UXVlcnk6Ok9QX1BIUkFTRSB9 LA0KKyAgICB7ICJmcm9tIiwgICAgICAgICAgIFhhcGlhbjo6UXVlcnk6Ok9QX1BIUkFTRSB9LA0K KyAgICB7ICJmb2xkZXIiLCAgICAgICAgIFhhcGlhbjo6UXVlcnk6Ok9QX09SIH0sDQorICAgIHsg ImlkIiwgICAgICAgICAgICAgWGFwaWFuOjpRdWVyeTo6T1BfT1IgfSwNCisgICAgeyAiaXMiLCAg ICAgICAgICAgICBYYXBpYW46OlF1ZXJ5OjpPUF9BTkQgfSwNCisgICAgeyAibWlkIiwgICAgICAg ICAgICBYYXBpYW46OlF1ZXJ5OjpPUF9PUiB9LA0KKyAgICB7ICJtaW1ldHlwZSIsICAgICAgIFhh cGlhbjo6UXVlcnk6Ok9QX1BIUkFTRSB9LA0KKyAgICB7ICJwYXRoIiwgICAgICAgICAgIFhhcGlh bjo6UXVlcnk6Ok9QX09SIH0sDQorICAgIHsgInByb3BlcnR5IiwgICAgICAgWGFwaWFuOjpRdWVy eTo6T1BfQU5EIH0sDQogICAgIHsgInN1YmplY3QiLCAgICAgICAgWGFwaWFuOjpRdWVyeTo6T1Bf UEhSQVNFIH0sDQorICAgIHsgInRhZyIsICAgICAgICAgICAgWGFwaWFuOjpRdWVyeTo6T1BfQU5E IH0sDQorICAgIHsgInRocmVhZCIsICAgICAgICAgWGFwaWFuOjpRdWVyeTo6T1BfT1IgfSwNCisg ICAgeyAidG8iLCAgICAgICAgICAgICBYYXBpYW46OlF1ZXJ5OjpPUF9QSFJBU0UgfSwNCiAgICAg eyB9DQogfTsNCiANCmRpZmYgLS1naXQgYS90ZXN0L1QwODEtc2V4cHItc2VhcmNoLnNoIGIvdGVz dC9UMDgxLXNleHByLXNlYXJjaC5zaA0KaW5kZXggNjM2OWU0ODMuLjllZTlkZTdiIDEwMDc1NQ0K LS0tIGEvdGVzdC9UMDgxLXNleHByLXNlYXJjaC5zaA0KKysrIGIvdGVzdC9UMDgxLXNleHByLXNl YXJjaC5zaA0KQEAgLTE5LDE3ICsxOSwxMTAgQEAgZm9yIHF1ZXJ5IGluICcob3IpJyAnKG5vdCAo KSknICcobm90IChub3QpKScgJyhub3QgKGFuZCkpJyBcDQogICAgIHRlc3RfZXhwZWN0X2VxdWFs X2ZpbGUgL2Rldi9udWxsIE9VVFBVVA0KIGRvbmUNCiANCi10ZXN0X2JlZ2luX3N1YnRlc3QgIlNl YXJjaCBieSBzdWJqZWN0Ig0KK3Rlc3RfYmVnaW5fc3VidGVzdCAiU2VhcmNoIGJ5ICdhdHRhY2ht ZW50JyINCitub3RtdWNoIHNlYXJjaCBhdHRhY2htZW50Om5vdG11Y2gtaGVscC5wYXRjaCA+IEVY UEVDVEVEDQorbm90bXVjaCBzZWFyY2ggLS1xdWVyeS1zeW50YXg9c2V4cCAnKGF0dGFjaG1lbnQg bm90bXVjaC1oZWxwLnBhdGNoKScgPiBPVVRQVVQNCit0ZXN0X2V4cGVjdF9lcXVhbF9maWxlIEVY UEVDVEVEIE9VVFBVVA0KKw0KK3Rlc3RfYmVnaW5fc3VidGVzdCAiU2VhcmNoIGJ5ICdib2R5JyIN CithZGRfbWVzc2FnZSAnW3N1YmplY3RdPSJib2R5IHNlYXJjaCInICdbZGF0ZV09IlNhdCwgMDEg SmFuIDIwMDAgMTI6MDA6MDAgLTAwMDAiJyBbYm9keV09Ym9keXNlYXJjaHRlc3QNCitvdXRwdXQ9 JChub3RtdWNoIHNlYXJjaCAtLXF1ZXJ5LXN5bnRheD1zZXhwICcoYm9keSBib2R5c2VhcmNodGVz dCknIHwgbm90bXVjaF9zZWFyY2hfc2FuaXRpemUpDQordGVzdF9leHBlY3RfZXF1YWwgIiRvdXRw dXQiICJ0aHJlYWQ6WFhYICAgMjAwMC0wMS0wMSBbMS8xXSBOb3RtdWNoIFRlc3QgU3VpdGU7IGJv ZHkgc2VhcmNoIChpbmJveCB1bnJlYWQpIg0KKw0KK3Rlc3RfYmVnaW5fc3VidGVzdCAiU2VhcmNo IGJ5ICdib2R5JyAocGhyYXNlKSINCithZGRfbWVzc2FnZSAnW3N1YmplY3RdPSJib2R5IHNlYXJj aCAocGhyYXNlKSInICdbZGF0ZV09IlNhdCwgMDEgSmFuIDIwMDAgMTI6MDA6MDAgLTAwMDAiJyAn W2JvZHldPSJib2R5IHNlYXJjaCAocGhyYXNlKSInDQorYWRkX21lc3NhZ2UgJ1tzdWJqZWN0XT0i bmVnYXRpdmUgcmVzdWx0IicgJ1tkYXRlXT0iU2F0LCAwMSBKYW4gMjAwMCAxMjowMDowMCAtMDAw MCInICdbYm9keV09IlRoaXMgcGhyYXNlIHNob3VsZCBub3QgbWF0Y2ggdGhlIGJvZHkgc2VhcmNo IicNCitvdXRwdXQ9JChub3RtdWNoIHNlYXJjaCAtLXF1ZXJ5LXN5bnRheD1zZXhwICcoYm9keSBi b2R5IHNlYXJjaCBwaHJhc2UpJyB8IG5vdG11Y2hfc2VhcmNoX3Nhbml0aXplKQ0KK3Rlc3RfZXhw ZWN0X2VxdWFsICIkb3V0cHV0IiAidGhyZWFkOlhYWCAgIDIwMDAtMDEtMDEgWzEvMV0gTm90bXVj aCBUZXN0IFN1aXRlOyBib2R5IHNlYXJjaCAocGhyYXNlKSAoaW5ib3ggdW5yZWFkKSINCisNCit0 ZXN0X2JlZ2luX3N1YnRlc3QgIlNlYXJjaCBieSAnYm9keScgKHV0Zi04KToiDQorYWRkX21lc3Nh Z2UgJ1tzdWJqZWN0XT0idXRmOC1tZXNzYWdlLWJvZHktc3ViamVjdCInICdbZGF0ZV09IlNhdCwg MDEgSmFuIDIwMDAgMTI6MDA6MDAgLTAwMDAiJyAnW2JvZHldPSJtZXNzYWdlIGJvZHkgdXRmODog YsO2ZMO9IicNCitvdXRwdXQ9JChub3RtdWNoIHNlYXJjaCAtLXF1ZXJ5LXN5bnRheD1zZXhwICco Ym9keSBiw7Zkw70pJyB8IG5vdG11Y2hfc2VhcmNoX3Nhbml0aXplKQ0KK3Rlc3RfZXhwZWN0X2Vx dWFsICIkb3V0cHV0IiAidGhyZWFkOlhYWCAgIDIwMDAtMDEtMDEgWzEvMV0gTm90bXVjaCBUZXN0 IFN1aXRlOyB1dGY4LW1lc3NhZ2UtYm9keS1zdWJqZWN0IChpbmJveCB1bnJlYWQpIg0KKw0KK3Rl c3RfYmVnaW5fc3VidGVzdCAiU2VhcmNoIGJ5ICdmcm9tJyINCithZGRfbWVzc2FnZSAnW3N1Ympl Y3RdPSJzZWFyY2ggYnkgZnJvbSInICdbZGF0ZV09IlNhdCwgMDEgSmFuIDIwMDAgMTI6MDA6MDAg LTAwMDAiJyBbZnJvbV09c2VhcmNoYnlmcm9tDQorb3V0cHV0PSQobm90bXVjaCBzZWFyY2ggLS1x dWVyeS1zeW50YXg9c2V4cCAnKGZyb20gc2VhcmNoYnlmcm9tKScgfCBub3RtdWNoX3NlYXJjaF9z YW5pdGl6ZSkNCit0ZXN0X2V4cGVjdF9lcXVhbCAiJG91dHB1dCIgInRocmVhZDpYWFggICAyMDAw LTAxLTAxIFsxLzFdIHNlYXJjaGJ5ZnJvbTsgc2VhcmNoIGJ5IGZyb20gKGluYm94IHVucmVhZCki DQorDQordGVzdF9iZWdpbl9zdWJ0ZXN0ICJTZWFyY2ggYnkgJ2Zyb20nIChhZGRyZXNzKSINCith ZGRfbWVzc2FnZSAnW3N1YmplY3RdPSJzZWFyY2ggYnkgZnJvbSAoYWRkcmVzcykiJyAnW2RhdGVd PSJTYXQsIDAxIEphbiAyMDAwIDEyOjAwOjAwIC0wMDAwIicgW2Zyb21dPXNlYXJjaGJ5ZnJvbUBl eGFtcGxlLmNvbQ0KK291dHB1dD0kKG5vdG11Y2ggc2VhcmNoIC0tcXVlcnktc3ludGF4PXNleHAg Jyhmcm9tIHNlYXJjaGJ5ZnJvbUBleGFtcGxlLmNvbSknIHwgbm90bXVjaF9zZWFyY2hfc2FuaXRp emUpDQordGVzdF9leHBlY3RfZXF1YWwgIiRvdXRwdXQiICJ0aHJlYWQ6WFhYICAgMjAwMC0wMS0w MSBbMS8xXSBzZWFyY2hieWZyb21AZXhhbXBsZS5jb207IHNlYXJjaCBieSBmcm9tIChhZGRyZXNz KSAoaW5ib3ggdW5yZWFkKSINCisNCit0ZXN0X2JlZ2luX3N1YnRlc3QgIlNlYXJjaCBieSAnZnJv bScgKG5hbWUpIg0KK2FkZF9tZXNzYWdlICdbc3ViamVjdF09InNlYXJjaCBieSBmcm9tIChuYW1l KSInICdbZGF0ZV09IlNhdCwgMDEgSmFuIDIwMDAgMTI6MDA6MDAgLTAwMDAiJyAnW2Zyb21dPSJT ZWFyY2ggQnkgRnJvbSBOYW1lIDx0ZXN0QGV4YW1wbGUuY29tPiInDQorb3V0cHV0PSQobm90bXVj aCBzZWFyY2ggLS1xdWVyeS1zeW50YXg9c2V4cCAnKGZyb20gIlNlYXJjaCBCeSBGcm9tIE5hbWUi KScgfCBub3RtdWNoX3NlYXJjaF9zYW5pdGl6ZSkNCit0ZXN0X2V4cGVjdF9lcXVhbCAiJG91dHB1 dCIgInRocmVhZDpYWFggICAyMDAwLTAxLTAxIFsxLzFdIFNlYXJjaCBCeSBGcm9tIE5hbWU7IHNl YXJjaCBieSBmcm9tIChuYW1lKSAoaW5ib3ggdW5yZWFkKSINCisNCit0ZXN0X2JlZ2luX3N1YnRl c3QgIlNlYXJjaCBieSAnZnJvbScgKG5hbWUgYW5kIGFkZHJlc3MpIg0KK291dHB1dD0kKG5vdG11 Y2ggc2VhcmNoIC0tcXVlcnktc3ludGF4PXNleHAgJyhmcm9tICJTZWFyY2ggQnkgRnJvbSBOYW1l IDx0ZXN0QGV4YW1wbGUuY29tPiIpJyB8IG5vdG11Y2hfc2VhcmNoX3Nhbml0aXplKQ0KK3Rlc3Rf ZXhwZWN0X2VxdWFsICIkb3V0cHV0IiAidGhyZWFkOlhYWCAgIDIwMDAtMDEtMDEgWzEvMV0gU2Vh cmNoIEJ5IEZyb20gTmFtZTsgc2VhcmNoIGJ5IGZyb20gKG5hbWUpIChpbmJveCB1bnJlYWQpIg0K Kw0KK2FkZF9tZXNzYWdlICdbZGlyXT1iYWQnICdbc3ViamVjdF09IlRvIHRoZSBib25lIicNCith ZGRfbWVzc2FnZSAnW2Rpcl09LicgJ1tzdWJqZWN0XT0iVG9wIGxldmVsIicNCithZGRfbWVzc2Fn ZSAnW2Rpcl09YmFkL25ld3MnICdbc3ViamVjdF09IkJlYXJzIicNCitta2RpciAtcCAiJHtNQUlM X0RJUn0vZHVwbGljYXRlL2JhZC9uZXdzIg0KK2NwICIkZ2VuX21zZ19maWxlbmFtZSIgIiR7TUFJ TF9ESVJ9L2R1cGxpY2F0ZS9iYWQvbmV3cyINCisNCithZGRfbWVzc2FnZSAnW2Rpcl09dGhpbmdz JyAnW3N1YmplY3RdPSJUaGVzZSBhcmUgYSBmZXciJw0KK2FkZF9tZXNzYWdlICdbZGlyXT10aGlu Z3MvZmF2b3JpdGUnICdbc3ViamVjdF09IlJhaW5kcm9wcywgd2hpc2tlcnMsIGtldHRsZXMiJw0K K2FkZF9tZXNzYWdlICdbZGlyXT10aGluZ3MvYmFkJyAnW3N1YmplY3RdPSJCaXRlcywgc3Rpbmdz LCBzYWQgZmVlbGluZ3MiJw0KKw0KK3Rlc3RfYmVnaW5fc3VidGVzdCAiU2VhcmNoIGJ5ICdmb2xk ZXInIChtdWx0aXBsZSkiDQorb3V0cHV0PSQobm90bXVjaCBzZWFyY2ggLS1xdWVyeS1zeW50YXg9 c2V4cCAnKGZvbGRlciBiYWQgYmFkL25ld3MgdGhpbmdzL2JhZCknIHwgbm90bXVjaF9zZWFyY2hf c2FuaXRpemUpDQordGVzdF9leHBlY3RfZXF1YWwgIiRvdXRwdXQiICJ0aHJlYWQ6WFhYICAgMjAw MS0wMS0wNSBbMS8xXSBOb3RtdWNoIFRlc3QgU3VpdGU7IFRvIHRoZSBib25lIChpbmJveCB1bnJl YWQpDQordGhyZWFkOlhYWCAgIDIwMDEtMDEtMDUgWzEvMSgyKV0gTm90bXVjaCBUZXN0IFN1aXRl OyBCZWFycyAoaW5ib3ggdW5yZWFkKQ0KK3RocmVhZDpYWFggICAyMDAxLTAxLTA1IFsxLzFdIE5v dG11Y2ggVGVzdCBTdWl0ZTsgQml0ZXMsIHN0aW5ncywgc2FkIGZlZWxpbmdzIChpbmJveCB1bnJl YWQpIg0KKw0KK3Rlc3RfYmVnaW5fc3VidGVzdCAiU2VhcmNoIGJ5ICdmb2xkZXInOiB0b3AgbGV2 ZWwuIg0KK25vdG11Y2ggc2VhcmNoIGZvbGRlcjonIiInID4gRVhQRUNURUQNCitub3RtdWNoIHNl YXJjaCAtLXF1ZXJ5LXN5bnRheD1zZXhwICcoZm9sZGVyICIiKScgID4gT1VUUFVUDQordGVzdF9l eHBlY3RfZXF1YWxfZmlsZSBFWFBFQ1RFRCBPVVRQVVQNCisNCit0ZXN0X2JlZ2luX3N1YnRlc3Qg IlNlYXJjaCBieSAnaWQnIg0KK2FkZF9tZXNzYWdlICdbc3ViamVjdF09InNlYXJjaCBieSBpZCIn ICdbZGF0ZV09IlNhdCwgMDEgSmFuIDIwMDAgMTI6MDA6MDAgLTAwMDAiJw0KK291dHB1dD0kKG5v dG11Y2ggc2VhcmNoIC0tcXVlcnktc3ludGF4PXNleHAgIihpZCAke2dlbl9tc2dfaWR9KSIgfCBu b3RtdWNoX3NlYXJjaF9zYW5pdGl6ZSkNCit0ZXN0X2V4cGVjdF9lcXVhbCAiJG91dHB1dCIgInRo cmVhZDpYWFggICAyMDAwLTAxLTAxIFsxLzFdIE5vdG11Y2ggVGVzdCBTdWl0ZTsgc2VhcmNoIGJ5 IGlkIChpbmJveCB1bnJlYWQpIg0KKw0KK3Rlc3RfYmVnaW5fc3VidGVzdCAiU2VhcmNoIGJ5ICdp ZCcgKG9yKSINCithZGRfbWVzc2FnZSAnW3N1YmplY3RdPSJzZWFyY2ggYnkgaWQiJyAnW2RhdGVd PSJTYXQsIDAxIEphbiAyMDAwIDEyOjAwOjAwIC0wMDAwIicNCitvdXRwdXQ9JChub3RtdWNoIHNl YXJjaCAtLXF1ZXJ5LXN5bnRheD1zZXhwICIoaWQgbm9uLWV4aXN0ZW50LW1pZCAke2dlbl9tc2df aWR9KSIgfCBub3RtdWNoX3NlYXJjaF9zYW5pdGl6ZSkNCit0ZXN0X2V4cGVjdF9lcXVhbCAiJG91 dHB1dCIgInRocmVhZDpYWFggICAyMDAwLTAxLTAxIFsxLzFdIE5vdG11Y2ggVGVzdCBTdWl0ZTsg c2VhcmNoIGJ5IGlkIChpbmJveCB1bnJlYWQpIg0KKw0KK3Rlc3RfYmVnaW5fc3VidGVzdCAiU2Vh cmNoIGJ5ICdpcycgKG11bHRpcGxlKSINCitub3RtdWNoIHRhZyAtaW5ib3ggdGFnOnNlYXJjaGJ5 dGFnDQorbm90bXVjaCBzZWFyY2ggaXM6aW5ib3ggQU5EIGlzOnVucmVhZCB8IG5vdG11Y2hfc2Vh cmNoX3Nhbml0aXplID4gRVhQRUNURUQNCitub3RtdWNoIHNlYXJjaCAtLXF1ZXJ5LXN5bnRheD1z ZXhwICcoaXMgaW5ib3ggdW5yZWFkKScgfCBub3RtdWNoX3NlYXJjaF9zYW5pdGl6ZSA+IE9VVFBV VA0KK25vdG11Y2ggdGFnICtpbmJveCB0YWc6c2VhcmNoYnl0YWcNCit0ZXN0X2V4cGVjdF9lcXVh bF9maWxlIEVYUEVDVEVEIE9VVFBVVA0KKw0KK3Rlc3RfYmVnaW5fc3VidGVzdCAiU2VhcmNoIGJ5 ICdtaWQnIg0KK2FkZF9tZXNzYWdlICdbc3ViamVjdF09InNlYXJjaCBieSBtaWQiJyAnW2RhdGVd PSJTYXQsIDAxIEphbiAyMDAwIDEyOjAwOjAwIC0wMDAwIicNCitvdXRwdXQ9JChub3RtdWNoIHNl YXJjaCAtLXF1ZXJ5LXN5bnRheD1zZXhwICIobWlkICR7Z2VuX21zZ19pZH0pIiB8IG5vdG11Y2hf c2VhcmNoX3Nhbml0aXplKQ0KK3Rlc3RfZXhwZWN0X2VxdWFsICIkb3V0cHV0IiAidGhyZWFkOlhY WCAgIDIwMDAtMDEtMDEgWzEvMV0gTm90bXVjaCBUZXN0IFN1aXRlOyBzZWFyY2ggYnkgbWlkIChp bmJveCB1bnJlYWQpIg0KKw0KK3Rlc3RfYmVnaW5fc3VidGVzdCAiU2VhcmNoIGJ5ICdtaWQnIChv cikiDQorYWRkX21lc3NhZ2UgJ1tzdWJqZWN0XT0ic2VhcmNoIGJ5IG1pZCInICdbZGF0ZV09IlNh dCwgMDEgSmFuIDIwMDAgMTI6MDA6MDAgLTAwMDAiJw0KK291dHB1dD0kKG5vdG11Y2ggc2VhcmNo IC0tcXVlcnktc3ludGF4PXNleHAgIihtaWQgbm9uLWV4aXN0ZW50LW1pZCAke2dlbl9tc2dfaWR9 KSIgfCBub3RtdWNoX3NlYXJjaF9zYW5pdGl6ZSkNCit0ZXN0X2V4cGVjdF9lcXVhbCAiJG91dHB1 dCIgInRocmVhZDpYWFggICAyMDAwLTAxLTAxIFsxLzFdIE5vdG11Y2ggVGVzdCBTdWl0ZTsgc2Vh cmNoIGJ5IG1pZCAoaW5ib3ggdW5yZWFkKSINCisNCit0ZXN0X2JlZ2luX3N1YnRlc3QgIlNlYXJj aCBieSAnbWltZXR5cGUnIg0KK25vdG11Y2ggc2VhcmNoIG1pbWV0eXBlOnRleHQvaHRtbCA+IEVY UEVDVEVEDQorbm90bXVjaCBzZWFyY2ggLS1xdWVyeS1zeW50YXg9c2V4cCAnKG1pbWV0eXBlIHRl eHQgaHRtbCknICA+IE9VVFBVVA0KK3Rlc3RfZXhwZWN0X2VxdWFsX2ZpbGUgRVhQRUNURUQgT1VU UFVUDQorDQordGVzdF9iZWdpbl9zdWJ0ZXN0ICJTZWFyY2ggYnkgJ3N1YmplY3QnIg0KIGFkZF9t ZXNzYWdlIFtzdWJqZWN0XT1zdWJqZWN0c2VhcmNodGVzdCAnW2RhdGVdPSJTYXQsIDAxIEphbiAy MDAwIDEyOjAwOjAwIC0wMDAwIicNCiBvdXRwdXQ9JChub3RtdWNoIHNlYXJjaCAtLXF1ZXJ5LXN5 bnRheD1zZXhwICcoc3ViamVjdCBzdWJqZWN0c2VhcmNodGVzdCknIHwgbm90bXVjaF9zZWFyY2hf c2FuaXRpemUpDQogdGVzdF9leHBlY3RfZXF1YWwgIiRvdXRwdXQiICJ0aHJlYWQ6WFhYICAgMjAw MC0wMS0wMSBbMS8xXSBOb3RtdWNoIFRlc3QgU3VpdGU7IHN1YmplY3RzZWFyY2h0ZXN0IChpbmJv eCB1bnJlYWQpIg0KIA0KLXRlc3RfYmVnaW5fc3VidGVzdCAiU2VhcmNoIGJ5IHN1YmplY3QgKGNh c2UgaW5zZW5zaXRpdmUpIg0KK3Rlc3RfYmVnaW5fc3VidGVzdCAiU2VhcmNoIGJ5ICdzdWJqZWN0 JyAoY2FzZSBpbnNlbnNpdGl2ZSkiDQogbm90bXVjaCBzZWFyY2ggdGFnOmluYm94IGFuZCBzdWJq ZWN0Om1haWxkaXIgfCBub3RtdWNoX3NlYXJjaF9zYW5pdGl6ZSA+IEVYUEVDVEVEDQogbm90bXVj aCBzZWFyY2ggLS1xdWVyeS1zeW50YXg9c2V4cCAnKHN1YmplY3QgTWFpbGRpciknIHwgbm90bXVj aF9zZWFyY2hfc2FuaXRpemUgPiBPVVRQVVQNCiB0ZXN0X2V4cGVjdF9lcXVhbF9maWxlIEVYUEVD VEVEIE9VVFBVVA0KIA0KLXRlc3RfYmVnaW5fc3VidGVzdCAiU2VhcmNoIGJ5IHN1YmplY3QgKHV0 Zi04KToiDQordGVzdF9iZWdpbl9zdWJ0ZXN0ICJTZWFyY2ggYnkgJ3N1YmplY3QnICh1dGYtOCk6 Ig0KIGFkZF9tZXNzYWdlIFtzdWJqZWN0XT11dGY4LXPDvGJqw6ljdCAnW2RhdGVdPSJTYXQsIDAx IEphbiAyMDAwIDEyOjAwOjAwIC0wMDAwIicNCiBvdXRwdXQ9JChub3RtdWNoIHNlYXJjaCAtLXF1 ZXJ5LXN5bnRheD1zZXhwICcoc3ViamVjdCB1dGY4IHPDvGJqw6ljdCknIHwgbm90bXVjaF9zZWFy Y2hfc2FuaXRpemUpDQogdGVzdF9leHBlY3RfZXF1YWwgIiRvdXRwdXQiICJ0aHJlYWQ6WFhYICAg MjAwMC0wMS0wMSBbMS8xXSBOb3RtdWNoIFRlc3QgU3VpdGU7IHV0Zjgtc8O8YmrDqWN0IChpbmJv eCB1bnJlYWQpIg0KQEAgLTQyLDQgKzEzNSw0OCBAQCB0ZXN0X2JlZ2luX3N1YnRlc3QgIlNlYXJj aCBieSAnc3ViamVjdCcgKHV0Zi04LCBxdW90ZWQgc3RyaW5nKToiDQogb3V0cHV0PSQobm90bXVj aCBzZWFyY2ggLS1xdWVyeS1zeW50YXg9c2V4cCAnKHN1YmplY3QgInV0Zjggc8O8YmrDqWN0Iikn IHwgbm90bXVjaF9zZWFyY2hfc2FuaXRpemUpDQogdGVzdF9leHBlY3RfZXF1YWwgIiRvdXRwdXQi ICJ0aHJlYWQ6WFhYICAgMjAwMC0wMS0wMSBbMS8xXSBOb3RtdWNoIFRlc3QgU3VpdGU7IHV0Zjgt c8O8YmrDqWN0IChpbmJveCB1bnJlYWQpIg0KIA0KK3Rlc3RfYmVnaW5fc3VidGVzdCAiU2VhcmNo IGJ5ICd0YWcnIg0KK2FkZF9tZXNzYWdlICdbc3ViamVjdF09InNlYXJjaCBieSB0YWciJyAnW2Rh dGVdPSJTYXQsIDAxIEphbiAyMDAwIDEyOjAwOjAwIC0wMDAwIicNCitub3RtdWNoIHRhZyArc2Vh cmNoYnl0YWcgaWQ6JHtnZW5fbXNnX2lkfQ0KK291dHB1dD0kKG5vdG11Y2ggc2VhcmNoIC0tcXVl cnktc3ludGF4PXNleHAgJyh0YWcgc2VhcmNoYnl0YWcpJyB8IG5vdG11Y2hfc2VhcmNoX3Nhbml0 aXplKQ0KK3Rlc3RfZXhwZWN0X2VxdWFsICIkb3V0cHV0IiAidGhyZWFkOlhYWCAgIDIwMDAtMDEt MDEgWzEvMV0gTm90bXVjaCBUZXN0IFN1aXRlOyBzZWFyY2ggYnkgdGFnIChpbmJveCBzZWFyY2hi eXRhZyB1bnJlYWQpIg0KKw0KK3Rlc3RfYmVnaW5fc3VidGVzdCAiU2VhcmNoIGJ5ICd0YWcnICht dWx0aXBsZSkiDQorbm90bXVjaCB0YWcgLWluYm94IHRhZzpzZWFyY2hieXRhZw0KK25vdG11Y2gg c2VhcmNoIHRhZzppbmJveCBBTkQgdGFnOnVucmVhZCB8IG5vdG11Y2hfc2VhcmNoX3Nhbml0aXpl ID4gRVhQRUNURUQNCitub3RtdWNoIHNlYXJjaCAtLXF1ZXJ5LXN5bnRheD1zZXhwICcodGFnIGlu Ym94IHVucmVhZCknIHwgbm90bXVjaF9zZWFyY2hfc2FuaXRpemUgPiBPVVRQVVQNCitub3RtdWNo IHRhZyAraW5ib3ggdGFnOnNlYXJjaGJ5dGFnDQordGVzdF9leHBlY3RfZXF1YWxfZmlsZSBFWFBF Q1RFRCBPVVRQVVQNCisNCit0ZXN0X2JlZ2luX3N1YnRlc3QgIlNlYXJjaCBieSAndGFnJyBhbmQg J3N1YmplY3QnIg0KK25vdG11Y2ggc2VhcmNoIHRhZzppbmJveCBhbmQgc3ViamVjdDptYWlsZGly IHwgbm90bXVjaF9zZWFyY2hfc2FuaXRpemUgPiBFWFBFQ1RFRA0KK25vdG11Y2ggc2VhcmNoIC0t cXVlcnktc3ludGF4PXNleHAgJyhhbmQgKHRhZyBpbmJveCkgKHN1YmplY3QgbWFpbGRpcikpJyB8 IG5vdG11Y2hfc2VhcmNoX3Nhbml0aXplID4gT1VUUFVUDQordGVzdF9leHBlY3RfZXF1YWxfZmls ZSBFWFBFQ1RFRCBPVVRQVVQNCisNCit0ZXN0X2JlZ2luX3N1YnRlc3QgIlNlYXJjaCBieSAndGhy ZWFkJyINCithZGRfbWVzc2FnZSAnW3N1YmplY3RdPSJzZWFyY2ggYnkgdGhyZWFkIicgJ1tkYXRl XT0iU2F0LCAwMSBKYW4gMjAwMCAxMjowMDowMCAtMDAwMCInDQordGhyZWFkX2lkPSQobm90bXVj aCBzZWFyY2ggaWQ6JHtnZW5fbXNnX2lkfSB8IHNlZCAtZSAicy90aHJlYWQ6XChbYS1mMC05XSpc KS4qL1wxLyIpDQorb3V0cHV0PSQobm90bXVjaCBzZWFyY2ggLS1xdWVyeS1zeW50YXg9c2V4cCAi KHRocmVhZCAke3RocmVhZF9pZH0pIiB8IG5vdG11Y2hfc2VhcmNoX3Nhbml0aXplKQ0KK3Rlc3Rf ZXhwZWN0X2VxdWFsICIkb3V0cHV0IiAidGhyZWFkOlhYWCAgIDIwMDAtMDEtMDEgWzEvMV0gTm90 bXVjaCBUZXN0IFN1aXRlOyBzZWFyY2ggYnkgdGhyZWFkIChpbmJveCB1bnJlYWQpIg0KKw0KK3Rl c3RfYmVnaW5fc3VidGVzdCAiU2VhcmNoIGJ5ICd0byciDQorYWRkX21lc3NhZ2UgJ1tzdWJqZWN0 XT0ic2VhcmNoIGJ5IHRvIicgJ1tkYXRlXT0iU2F0LCAwMSBKYW4gMjAwMCAxMjowMDowMCAtMDAw MCInIFt0b109c2VhcmNoYnl0bw0KK291dHB1dD0kKG5vdG11Y2ggc2VhcmNoIC0tcXVlcnktc3lu dGF4PXNleHAgJyh0byBzZWFyY2hieXRvKScgfCBub3RtdWNoX3NlYXJjaF9zYW5pdGl6ZSkNCit0 ZXN0X2V4cGVjdF9lcXVhbCAiJG91dHB1dCIgInRocmVhZDpYWFggICAyMDAwLTAxLTAxIFsxLzFd IE5vdG11Y2ggVGVzdCBTdWl0ZTsgc2VhcmNoIGJ5IHRvIChpbmJveCB1bnJlYWQpIg0KKw0KK3Rl c3RfYmVnaW5fc3VidGVzdCAiU2VhcmNoIGJ5ICd0bycgKGFkZHJlc3MpIg0KK2FkZF9tZXNzYWdl ICdbc3ViamVjdF09InNlYXJjaCBieSB0byAoYWRkcmVzcykiJyAnW2RhdGVdPSJTYXQsIDAxIEph biAyMDAwIDEyOjAwOjAwIC0wMDAwIicgW3RvXT1zZWFyY2hieXRvQGV4YW1wbGUuY29tDQorb3V0 cHV0PSQobm90bXVjaCBzZWFyY2ggLS1xdWVyeS1zeW50YXg9c2V4cCAnKHRvIHNlYXJjaGJ5dG9A ZXhhbXBsZS5jb20pJyB8IG5vdG11Y2hfc2VhcmNoX3Nhbml0aXplKQ0KK3Rlc3RfZXhwZWN0X2Vx dWFsICIkb3V0cHV0IiAidGhyZWFkOlhYWCAgIDIwMDAtMDEtMDEgWzEvMV0gTm90bXVjaCBUZXN0 IFN1aXRlOyBzZWFyY2ggYnkgdG8gKGFkZHJlc3MpIChpbmJveCB1bnJlYWQpIg0KKw0KK3Rlc3Rf YmVnaW5fc3VidGVzdCAiU2VhcmNoIGJ5ICd0bycgKG5hbWUpIg0KK2FkZF9tZXNzYWdlICdbc3Vi amVjdF09InNlYXJjaCBieSB0byAobmFtZSkiJyAnW2RhdGVdPSJTYXQsIDAxIEphbiAyMDAwIDEy OjAwOjAwIC0wMDAwIicgJ1t0b109IlNlYXJjaCBCeSBUbyBOYW1lIDx0ZXN0QGV4YW1wbGUuY29t PiInDQorb3V0cHV0PSQobm90bXVjaCBzZWFyY2ggLS1xdWVyeS1zeW50YXg9c2V4cCAnKHRvICJT ZWFyY2ggQnkgVG8gTmFtZSIpJyB8IG5vdG11Y2hfc2VhcmNoX3Nhbml0aXplKQ0KK3Rlc3RfZXhw ZWN0X2VxdWFsICIkb3V0cHV0IiAidGhyZWFkOlhYWCAgIDIwMDAtMDEtMDEgWzEvMV0gTm90bXVj aCBUZXN0IFN1aXRlOyBzZWFyY2ggYnkgdG8gKG5hbWUpIChpbmJveCB1bnJlYWQpIg0KKw0KK3Rl c3RfYmVnaW5fc3VidGVzdCAiU2VhcmNoIGJ5ICd0bycgKG5hbWUgYW5kIGFkZHJlc3MpIg0KK291 dHB1dD0kKG5vdG11Y2ggc2VhcmNoIC0tcXVlcnktc3ludGF4PXNleHAgJyh0byAiU2VhcmNoIEJ5 IFRvIE5hbWUgPHRlc3RAZXhhbXBsZS5jb20+IiknIHwgbm90bXVjaF9zZWFyY2hfc2FuaXRpemUp DQordGVzdF9leHBlY3RfZXF1YWwgIiRvdXRwdXQiICJ0aHJlYWQ6WFhYICAgMjAwMC0wMS0wMSBb MS8xXSBOb3RtdWNoIFRlc3QgU3VpdGU7IHNlYXJjaCBieSB0byAobmFtZSkgKGluYm94IHVucmVh ZCkiDQorDQorDQogdGVzdF9kb25lDQotLSANCjIuMzAuMg0=