From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pg1-x534.google.com (mail-pg1-x534.google.com [IPv6:2607:f8b0:4864:20::534]) by sourceware.org (Postfix) with ESMTPS id 86F9B3858407 for ; Wed, 8 Nov 2023 16:01:11 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 86F9B3858407 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=embecosm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=embecosm.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 86F9B3858407 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2607:f8b0:4864:20::534 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1699459273; cv=none; b=KTI8EcqQ7fp9HraAl1Qn/wfjllyL4MOVV0s2OilqexSC/gR2GiiGICyGvpQYRQoUiRDrjiII+T/cOopa8gLSQUqfHPvxT2cjTHuIx/kMTtarWZ5lPy3mmTXJE15tnt+spbXOX7o+wh2cYzEw67CzLjqKZSDJOu9VPz7T1m20C7k= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1699459273; c=relaxed/simple; bh=exUnorqcktQ9fgBzS91+JdnV2mzjM3xWno/+2XXRqus=; h=DKIM-Signature:MIME-Version:From:Date:Message-ID:Subject:To; b=qM+Wx9bmWtQuooRnM+lKHJWZSFKXBxpcVM+/FtqFL5tSQLKPr+4or2RkXXwaTRAX61rNRuL67tIJWeCvYDpuKOIg0c7bpUolSrZSP8qJUUBqVGKYnJi/xMp6m2C/UF2NAv66w94dKAcoRx9nLOMAZ9deIt61hijkEL44H16vyYY= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-pg1-x534.google.com with SMTP id 41be03b00d2f7-5b8f68ba4e5so4521244a12.1 for ; Wed, 08 Nov 2023 08:01:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=embecosm.com; s=google; t=1699459270; x=1700064070; darn=gcc.gnu.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=95ZXQdh4rx3L0ZTLSLhA3LNJ9NvNQ0FKJlsvjiDWxOI=; b=UjzyBrlVKd0JTM7X7ZiN3iBL9g1uZ4KPmgpThpKscyZ0K48PoCs2uUzLFoIkHsEK5T JPmL32/KofHPkNiEpCO6/b4Tzwz53UvyfUkWg5RXy8tEjMybnzYewWNE+/6Jo3jWWuG+ HL/+TYUtEDMCH1dXN5Fh1XD6k22+4X8X1rxY48gTEV/sEE11AIMO2zjDt4V0jnuxDz+U OqGgSfpQJ70naLTYDE1PkGDcSFgduSx2eKol3zlN6VMsN5lN91koqhXBMO1iv/zWcTBo a7oJPGy9m1+2+cSTYQK/njor6yzsHyGGUucxPwVlLfwIz4moID8YFcVoCx2vcx0Pqk09 MpKQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1699459270; x=1700064070; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=95ZXQdh4rx3L0ZTLSLhA3LNJ9NvNQ0FKJlsvjiDWxOI=; b=XodRjDDSfw0cteJoLt6Oid0NjUSl7CXae7SxNhOcPJ3itG5OWf3EapUp129s4nd7Cq nJ1KHJWVDhrKq8VFOOpDNG35TEa75GILFMabqomFc+CQGM0keJbOP2zL+cxt0J/dp8Kf KBe7Y3OhJ0YZBEif3n9tO2aWHy8QULTQ9yMbxVX7pMGiV/egIQir2MC9RKpKRY93IPka g4yLcNDsRPf9Z/ie3MOb7Bm8w29wcV9aXuYMdpP5rHYwBJZPqPhkVY3fz+pPW165w+n+ +j0je0/GK69fCFWIzMcB7CFQGuCuvEhPgfXQa4mpzMp5z8/AyR5O1IUR8csyBCIkGvog Mlng== X-Gm-Message-State: AOJu0YwVEC0K9SXxlPQwadG7wEkLfszG0JTPkemOBe6wByUxgEXWDlpZ nZmedUfJZ6wPa/F9LCMoUTpAHU3gdSSvXASI27X3JQ== X-Google-Smtp-Source: AGHT+IFeQ/kFLyp+EL7v+OsVzoV8GFviqNvw422FY9JtvvXmuht3sGS0jtFE5vAzpp54JoyNF82Wjs+K/C98YdgmJ1Y= X-Received: by 2002:a17:90b:4b86:b0:280:1695:7b5 with SMTP id lr6-20020a17090b4b8600b00280169507b5mr2012187pjb.12.1699459270564; Wed, 08 Nov 2023 08:01:10 -0800 (PST) MIME-Version: 1.0 References: <2501e6a4-6f02-429f-8497-226a6b22403c@gmail.com> In-Reply-To: From: Joern Rennecke Date: Wed, 8 Nov 2023 16:00:58 +0000 Message-ID: Subject: RFA: make scan-assembler* ignore LTO sections (Was: Re: committed [RISC-V]: Harden test scan patterns) To: Jeff Law Cc: Vineet Gupta , GCC Patches Content-Type: multipart/mixed; boundary="0000000000002220960609a63280" X-Spam-Status: No, score=-9.8 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,GIT_PATCH_0,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: --0000000000002220960609a63280 Content-Type: text/plain; charset="UTF-8" On Fri, 29 Sept 2023 at 14:54, Jeff Law wrote: > ... Joern can you post a follow-up manual twiddle so > that other ports can follow your example and avoid this problem? > > THanks, > > jeff The attached patch makes the scan-assembler* directives ignore the LTO sections. Regression tested (using QEMU) for riscv-sim riscv-sim/-march=rv32gcv_zfh/-mabi=ilp32d/-ftree-vectorize/--param=riscv-autovec-preference=scalable riscv-sim/-march=rv32imac/-mabi=ilp32 riscv-sim/-march=rv64gcv_zfh_zvfh_zba_zbb_zbc_zicond_zicboz_zawrs/-mabi=lp64d/-ftree-vectorize/--param=riscv-autovec-preference=scalable riscv-sim/-march=rv64imac/-mabi=lp64 --0000000000002220960609a63280 Content-Type: text/plain; charset="US-ASCII"; name="scanasm-diff-5.txt" Content-Disposition: attachment; filename="scanasm-diff-5.txt" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lopxzjjv0 MjAyMy0xMS0wOCAgSm9lcm4gUmVubmVja2UgIDxqb2Vybi5yZW5uZWNrZUBlbWJlY29zbS5jb20+ CgpnY2MvdGVzdHN1aXRlLwoJKiBsaWIvc2NhbmFzbS5leHAgKHNjYW4tYXNzZW1ibGVyLXRpbWVz KTogRGlzcmVnYXJkIExUTyBzZWN0aW9ucy4KCShzY2FuLWFzc2VtYmxlci1kZW0sIHNjYW4tYXNz ZW1ibGVyLWRlbS1ub3QpOiBMaWtld2lzZS4KCShkZy1zY2FuKTogTGlrZXdpc2UsIGlmIG5hbWUg c3RhcnRzIHdpdGggc2Nhbi1hc3NlbWJsZXIuCgkoc2Nhbi1yYXctYXNzZW1ibGVyKTogTmV3IHBy b2MuCgkqIGdjYy5kZy9wcjYxODY4LmM6IFVzZSBzY2FuLXJhdy1hc3NlbWJsZXIuCgkqIGdjYy5k Zy9zY2FudGVzdC1sdG8uYzogTmV3IHRlc3QuCmdjYy8KCSogZG9jL3NvdXJjZWJ1aWxkLnRleGkg KFNjYW4gdGhlIGFzc2VtYmx5IG91dHB1dCk6IERvY3VtZW50IGNoYW5nZS4KCmRpZmYgLS1naXQg YS9nY2MvZG9jL3NvdXJjZWJ1aWxkLnRleGkgYi9nY2MvZG9jL3NvdXJjZWJ1aWxkLnRleGkKaW5k ZXggOGJmNzAxNDYxZWMuLjVhMzRhMTBlNmMyIDEwMDY0NAotLS0gYS9nY2MvZG9jL3NvdXJjZWJ1 aWxkLnRleGkKKysrIGIvZ2NjL2RvYy9zb3VyY2VidWlsZC50ZXhpCkBAIC0zMjc2LDIxICszMjc2 LDI4IEBAIFBhc3NlcyBpZiBAdmFye3JlZ2V4cH0gZG9lcyBub3QgbWF0Y2ggdGV4dCBpbiB0aGUg ZmlsZSBnZW5lcmF0ZWQgYnkKIAogQHRhYmxlIEBjb2RlCiBAaXRlbSBzY2FuLWFzc2VtYmxlciBA dmFye3JlZ2V4fSBbQHsgdGFyZ2V0L3hmYWlsIEB2YXJ7c2VsZWN0b3J9IEB9XQotUGFzc2VzIGlm IEB2YXJ7cmVnZXh9IG1hdGNoZXMgdGV4dCBpbiB0aGUgdGVzdCdzIGFzc2VtYmxlciBvdXRwdXQu CitQYXNzZXMgaWYgQHZhcntyZWdleH0gbWF0Y2hlcyB0ZXh0IGluIHRoZSB0ZXN0J3MgYXNzZW1i bGVyIG91dHB1dCwKK2V4Y2x1ZGluZyBMVE8gc2VjdGlvbnMuCisKK0BpdGVtIHNjYW4tcmF3LWFz c2VtYmxlciBAdmFye3JlZ2V4fSBbQHsgdGFyZ2V0L3hmYWlsIEB2YXJ7c2VsZWN0b3J9IEB9XQor UGFzc2VzIGlmIEB2YXJ7cmVnZXh9IG1hdGNoZXMgdGV4dCBpbiB0aGUgdGVzdCdzIGFzc2VtYmxl ciBvdXRwdXQsCitpbmNsdWRpbmcgTFRPIHNlY3Rpb25zLgogCiBAaXRlbSBzY2FuLWFzc2VtYmxl ci1ub3QgQHZhcntyZWdleH0gW0B7IHRhcmdldC94ZmFpbCBAdmFye3NlbGVjdG9yfSBAfV0KLVBh c3NlcyBpZiBAdmFye3JlZ2V4fSBkb2VzIG5vdCBtYXRjaCB0ZXh0IGluIHRoZSB0ZXN0J3MgYXNz ZW1ibGVyIG91dHB1dC4KK1Bhc3NlcyBpZiBAdmFye3JlZ2V4fSBkb2VzIG5vdCBtYXRjaCB0ZXh0 IGluIHRoZSB0ZXN0J3MgYXNzZW1ibGVyIG91dHB1dCwKK2V4Y2x1ZGluZyBMVE8gc2VjdGlvbnMu CiAKIEBpdGVtIHNjYW4tYXNzZW1ibGVyLXRpbWVzIEB2YXJ7cmVnZXh9IEB2YXJ7bnVtfSBbQHsg dGFyZ2V0L3hmYWlsIEB2YXJ7c2VsZWN0b3J9IEB9XQogUGFzc2VzIGlmIEB2YXJ7cmVnZXh9IGlz IG1hdGNoZWQgZXhhY3RseSBAdmFye251bX0gdGltZXMgaW4gdGhlIHRlc3QncwotYXNzZW1ibGVy IG91dHB1dC4KK2Fzc2VtYmxlciBvdXRwdXQsIGV4Y2x1ZGluZyBMVE8gc2VjdGlvbnMuCiAKIEBp dGVtIHNjYW4tYXNzZW1ibGVyLWRlbSBAdmFye3JlZ2V4fSBbQHsgdGFyZ2V0L3hmYWlsIEB2YXJ7 c2VsZWN0b3J9IEB9XQotUGFzc2VzIGlmIEB2YXJ7cmVnZXh9IG1hdGNoZXMgdGV4dCBpbiB0aGUg dGVzdCdzIGRlbWFuZ2xlZCBhc3NlbWJsZXIgb3V0cHV0LgorUGFzc2VzIGlmIEB2YXJ7cmVnZXh9 IG1hdGNoZXMgdGV4dCBpbiB0aGUgdGVzdCdzIGRlbWFuZ2xlZCBhc3NlbWJsZXIgb3V0cHV0LAor ZXhjbHVkaW5nIExUTyBzZWN0aW9ucy4KIAogQGl0ZW0gc2Nhbi1hc3NlbWJsZXItZGVtLW5vdCBA dmFye3JlZ2V4fSBbQHsgdGFyZ2V0L3hmYWlsIEB2YXJ7c2VsZWN0b3J9IEB9XQogUGFzc2VzIGlm IEB2YXJ7cmVnZXh9IGRvZXMgbm90IG1hdGNoIHRleHQgaW4gdGhlIHRlc3QncyBkZW1hbmdsZWQg YXNzZW1ibGVyCi1vdXRwdXQuCitvdXRwdXQsIGV4Y2x1ZGluZyBMVE8gc2VjdGlvbnMuCiAKIEBp dGVtIHNjYW4tYXNzZW1ibGVyLXN5bWJvbC1zZWN0aW9uIEB2YXJ7ZnVuY3Rpb25zfSBAdmFye3Nl Y3Rpb259IFtAeyB0YXJnZXQveGZhaWwgQHZhcntzZWxlY3Rvcn0gQH1dCiBQYXNzZXMgaWYgQHZh cntmdW5jdGlvbnN9IGFyZSBhbGwgaW4gQHZhcntzZWN0aW9ufS4gIFRoZSBjYWxsZXIgbmVlZHMg dG8KZGlmZiAtLWdpdCBhL2djYy90ZXN0c3VpdGUvZ2NjLmRnL3ByNjE4NjguYyBiL2djYy90ZXN0 c3VpdGUvZ2NjLmRnL3ByNjE4NjguYwppbmRleCA0YTdlOGY2YWUyZC4uNTJhYjc4Mzg2NDMgMTAw NjQ0Ci0tLSBhL2djYy90ZXN0c3VpdGUvZ2NjLmRnL3ByNjE4NjguYworKysgYi9nY2MvdGVzdHN1 aXRlL2djYy5kZy9wcjYxODY4LmMKQEAgLTcsNCArNyw0IEBAIGludCBtYWluICgpCiAgIGZvbyAo MTAwKTsKICAgcmV0dXJuIDA7CiB9Ci0vKiB7IGRnLWZpbmFsIHsgc2Nhbi1hc3NlbWJsZXIgIlwu Z251XC5sdG8uKi4xMjM0NSIgfSB9ICovCisvKiB7IGRnLWZpbmFsIHsgc2Nhbi1yYXctYXNzZW1i bGVyICJcLmdudVwubHRvLiouMTIzNDUiIH0gfSAqLwpkaWZmIC0tZ2l0IGEvZ2NjL3Rlc3RzdWl0 ZS9saWIvc2NhbmFzbS5leHAgYi9nY2MvdGVzdHN1aXRlL2xpYi9zY2FuYXNtLmV4cAppbmRleCA1 ZGY4MDMyNWRmZi4uMTZiNTE5OGQzOGIgMTAwNjQ0Ci0tLSBhL2djYy90ZXN0c3VpdGUvbGliL3Nj YW5hc20uZXhwCisrKyBiL2djYy90ZXN0c3VpdGUvbGliL3NjYW5hc20uZXhwCkBAIC03OSw2ICs3 OSwxMiBAQCBwcm9jIGRnLXNjYW4geyBuYW1lIHBvc2l0aXZlIHRlc3RjYXNlIG91dHB1dF9maWxl IG9yaWdfYXJncyB9IHsKICAgICB9CiAgICAgc2V0IHRleHQgW3JlYWQgJGZkXQogICAgIGNsb3Nl ICRmZAorICAgIGlmIHsgW3N0cmluZyBjb21wYXJlIC1sZW5ndGggMTQgJG5hbWUgc2Nhbi1hc3Nl bWJsZXJdID09IDAgfSB7CisgICAgICAjIFJlbW92ZSBMVE8gc2VjdGlvbnMuCisgICAgICAjID8/ PyBTb21laG93LCAuKj8gaXMgc3RpbGwgZ3JlZWR5LgorICAgICAgIyByZWdzdWIgLWFsbCB7KF58 XG4pW1s6c3BhY2U6XV0qXC5zZWN0aW9uW1s6c3BhY2U6XV0qXC5nbnVcLmx0b18uKj9cbig/PVtb OnNwYWNlOl1dKlwudGV4dFxuKX0gJHRleHQge1wxfSB0ZXh0CisgICAgICByZWdzdWIgLWFsbCB7 KF58XG4pW1s6c3BhY2U6XV0qXC5zZWN0aW9uW1s6c3BhY2U6XV0qXC5nbnVcLmx0b18oPzpbXlxu XSpcbig/IVtbOnNwYWNlOl1dKlwuKHNlY3Rpb258dGV4dHxkYXRhfGJzcykpKSpbXlxuXSpcbn0g JHRleHQge1wxfSB0ZXh0CisgICAgfQogCiAgICAgc2V0IG1hdGNoIFtyZWdleHAgLS0gJHBhdHRl cm4gJHRleHRdCiAgICAgaWYgeyAkbWF0Y2ggPT0gJHBvc2l0aXZlIH0gewpAQCAtMTA4LDYgKzEx NCwxNiBAQCBwcm9jIHNjYW4tYXNzZW1ibGVyIHsgYXJncyB9IHsKIAogc2V0X3JlcXVpcmVkX29w dGlvbnNfZm9yIHNjYW4tYXNzZW1ibGVyCiAKK3Byb2Mgc2Nhbi1yYXctYXNzZW1ibGVyIHsgYXJn cyB9IHsKKyAgICBzZXQgdGVzdGNhc2UgW3Rlc3RuYW1lLWZvci1zdW1tYXJ5XQorICAgICMgVGhl IG5hbWUgbWlnaHQgaW5jbHVkZSBhIGxpc3Qgb2Ygb3B0aW9uczsgZXh0cmFjdCB0aGUgZmlsZSBu YW1lLgorICAgIHNldCBmaWxlbmFtZSBbbGluZGV4ICR0ZXN0Y2FzZSAwXQorICAgIHNldCBvdXRw dXRfZmlsZSAiW2ZpbGUgcm9vdG5hbWUgW2ZpbGUgdGFpbCAkZmlsZW5hbWVdXS5zIgorICAgIGRn LXNjYW4gInNjYW4tcmF3LWFzc2VtYmxlciIgMSAkdGVzdGNhc2UgJG91dHB1dF9maWxlICRhcmdz Cit9CisKK3NldF9yZXF1aXJlZF9vcHRpb25zX2ZvciBzY2FuLXJhdy1hc3NlbWJsZXIKKwogIyBD aGVjayB0aGF0IGEgcGF0dGVybiBpcyBub3QgcHJlc2VudCBpbiB0aGUgLnMgZmlsZSBwcm9kdWNl ZCBieSB0aGUKICMgY29tcGlsZXIuICBTZWUgZGctc2NhbiBmb3IgZGV0YWlscy4KIApAQCAtNDg3 LDYgKzUwMyw3IEBAIHByb2Mgc2Nhbi1hc3NlbWJsZXItdGltZXMgeyBhcmdzIH0gewogICAgIHNl dCBmZCBbb3BlbiAkb3V0cHV0X2ZpbGUgcl0KICAgICBzZXQgdGV4dCBbcmVhZCAkZmRdCiAgICAg Y2xvc2UgJGZkCisgICAgcmVnc3ViIC1hbGwgeyhefFxuKVtbOnNwYWNlOl1dKlwuc2VjdGlvbltb OnNwYWNlOl1dKlwuZ251XC5sdG9fKD86W15cbl0qXG4oPyFbWzpzcGFjZTpdXSpcLihzZWN0aW9u fHRleHR8ZGF0YXxic3MpKSkqW15cbl0qXG59ICR0ZXh0IHtcMX0gdGV4dAogCiAgICAgc2V0IHJl c3VsdF9jb3VudCBbbGxlbmd0aCBbcmVnZXhwIC1pbmxpbmUgLWFsbCAtLSAkcGF0dGVybiAkdGV4 dF1dCiAgICAgaWYgeyRyZXN1bHRfY291bnQgPT0gJHRpbWVzfSB7CkBAIC01NDgsNiArNTY1LDcg QEAgcHJvYyBzY2FuLWFzc2VtYmxlci1kZW0geyBhcmdzIH0gewogCiAgICAgc2V0IG91dHB1dCBb cmVtb3RlX2V4ZWMgaG9zdCAiJGN4eGZpbHQiICIiICIkb3V0cHV0X2ZpbGUiXQogICAgIHNldCB0 ZXh0IFtsaW5kZXggJG91dHB1dCAxXQorICAgIHJlZ3N1YiAtYWxsIHsoXnxcbilbWzpzcGFjZTpd XSpcLnNlY3Rpb25bWzpzcGFjZTpdXSpcLmdudVwubHRvXyg/OlteXG5dKlxuKD8hW1s6c3BhY2U6 XV0qXC4oc2VjdGlvbnx0ZXh0fGRhdGF8YnNzKSkpKlteXG5dKlxufSAkdGV4dCB7XDF9IHRleHQK IAogICAgIGlmIFtyZWdleHAgLS0gJHBhdHRlcm4gJHRleHRdIHsKIAlwYXNzICIkdGVzdGNhc2Ug c2Nhbi1hc3NlbWJsZXItZGVtICRwcF9wYXR0ZXJuIgpAQCAtNjA0LDYgKzYyMiw3IEBAIHByb2Mg c2Nhbi1hc3NlbWJsZXItZGVtLW5vdCB7IGFyZ3MgfSB7CiAKICAgICBzZXQgb3V0cHV0IFtyZW1v dGVfZXhlYyBob3N0ICIkY3h4ZmlsdCIgIiIgIiRvdXRwdXRfZmlsZSJdCiAgICAgc2V0IHRleHQg W2xpbmRleCAkb3V0cHV0IDFdCisgICAgcmVnc3ViIC1hbGwgeyhefFxuKVtbOnNwYWNlOl1dKlwu c2VjdGlvbltbOnNwYWNlOl1dKlwuZ251XC5sdG9fKD86W15cbl0qXG4oPyFbWzpzcGFjZTpdXSpc LihzZWN0aW9ufHRleHR8ZGF0YXxic3MpKSkqW15cbl0qXG59ICR0ZXh0IHtcMX0gdGV4dAogCiAg ICAgaWYgIVtyZWdleHAgLS0gJHBhdHRlcm4gJHRleHRdIHsKIAlwYXNzICIkdGVzdGNhc2Ugc2Nh bi1hc3NlbWJsZXItZGVtLW5vdCAkcHBfcGF0dGVybiIKZGlmZiAtLWdpdCBhL2djYy90ZXN0c3Vp dGUvZ2NjLmRnL3NjYW50ZXN0LWx0by5jIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MuZGcvc2NhbnRlc3Qt bHRvLmMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjVmOGFiYWY3N2Yz Ci0tLSAvZGV2L251bGwKKysrIGIvZ2NjL3Rlc3RzdWl0ZS9nY2MuZGcvc2NhbnRlc3QtbHRvLmMK QEAgLTAsMCArMSw5IEBACisvKiB7IGRnLW9wdGlvbnMgIi1PMiAtZmx0byIgfSAqLworCit2b2lk IGZvbyAoKQoreworfQorCisvKiBDaGVjayB0aGF0IHNjYW4tYXNzZW1ibGVyKiBkaXJlY3RpdmVz IHNraXAgdGhlIExUTyBzZWN0aW9uLiAgKi8KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxl ci1ub3QgImFzY2lpIiB9IH0gKi8KKy8qIHsgZGctZmluYWwgeyBzY2FuLWFzc2VtYmxlci10aW1l cyAiYXNjaWkiIDAgfSB9ICovCg== --0000000000002220960609a63280--