From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 6F00F158041 for ; Tue, 20 Feb 2024 06:24:37 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id C6404E29B7; Tue, 20 Feb 2024 06:24:33 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 611BAE29B5 for ; Tue, 20 Feb 2024 06:24:33 +0000 (UTC) Received: by mail-yb1-f169.google.com with SMTP id 3f1490d57ef6-d9b9adaf291so3278571276.1 for ; Mon, 19 Feb 2024 22:24:32 -0800 (PST) X-Gm-Message-State: AOJu0YwtcMomsKPd6aPXTmuljH+QJ8tOkkk7qFH+UZAIhRXoLXSWvgOi gsrQPEkrNLfSSDdUasMhMKcifOMyb8zfUQ86yEciHQgYBgV6BDdTBF0y1kPp6Qf+AnQ8h2EnGcg 8KMl++FVcPtAuMHvkOuf2gf+EeXI= X-Google-Smtp-Source: AGHT+IGZXfnb7qs6aGbufAWxkDGBtmWlosQLsU+i3MEHkrrjX89aOMeoGhmjZJ+EHIlClWbwIam5rrTFVaHHcvGfHoo= X-Received: by 2002:a05:6902:2501:b0:dcc:7ae6:12d9 with SMTP id dt1-20020a056902250100b00dcc7ae612d9mr13026062ybb.13.1708410270582; Mon, 19 Feb 2024 22:24:30 -0800 (PST) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-dev@lists.gentoo.org Reply-to: gentoo-dev@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply MIME-Version: 1.0 References: <20240220043235.3889132-1-eschwartz93@gmail.com> <20240220043235.3889132-2-eschwartz93@gmail.com> In-Reply-To: From: Mike Gilbert Date: Tue, 20 Feb 2024 01:24:19 -0500 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [gentoo-dev] [PATCH 1/3] meson.eclass: wire up LTO support directly into the meson options To: gentoo-dev@lists.gentoo.org Content-Type: multipart/mixed; boundary="0000000000004f23940611ca435c" X-Archives-Salt: 9b537b4a-8d2c-4142-8767-baa568568282 X-Archives-Hash: 098e1ffc9a208ef4496751f138cfbe23 --0000000000004f23940611ca435c Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Tue, Feb 20, 2024 at 1:09=E2=80=AFAM Eli Schwartz wrote: > > On 2/20/24 12:58 AM, Mike Gilbert wrote: > > On Mon, Feb 19, 2024 at 11:26=E2=80=AFPM Eli Schwartz wrote: > >> > >> meson's builtin LTO support allows meson to introspect whether LTO is > >> enabled and do some fancy things, such as forcing LTO off for a single > >> target that is known to be special(ly bad) and not support LTO. > > > > Please make sure to test this change with a multilib-enabled ebuild > > with multiple ABIs enabled. I suspect the filter-lto call will cause > > differing results for the ABIs after the first. > > > > If that is the case, we may need to declare the relevant FLAGS > > variables with "local -x". > > > >>> Configuring source in > /var/tmp/portage/app-arch/zstd-1.5.5-r1/work/zstd-1.5.5/build/meson ... > * abi_x86_32.x86: running multilib-minimal_abi_src_configure > meson setup --libdir lib --localstatedir /var/lib --prefix /usr > --sysconfdir /etc --wrap-mode nodownload --build.pkg-config-path > /usr/share/pkgconfig:/usr/share/pkgconfig --pkg-config-path > /usr/share/pkgconfig:/usr/share/pkgconfig --native-file > /var/tmp/portage/app-arch/zstd-1.5.5-r1/temp/meson.i686-pc-linux-gnu.x86.= ini > -Db_pch=3Dfalse -Dwerror=3Dfalse -Db_lto=3Dtrue -Db_lto_threads=3D4 > -Dbuildtype=3Dplain -Ddefault_library=3Dshared -Dbin_programs=3Dfalse > -Dbin_contrib=3Dfalse -Dbin_tests=3Dfalse -Dzlib=3Ddisabled -Dlzma=3Ddisa= bled > -Dlz4=3Ddisabled --native-file > /var/tmp/portage/app-arch/zstd-1.5.5-r1/temp/meson.i686-pc-linux-gnu.x86.= ini.local > /var/tmp/portage/app-arch/zstd-1.5.5-r1/work/zstd-1.5.5/build/meson > /var/tmp/portage/app-arch/zstd-1.5.5-r1/work/zstd-1.5.5/build/meson-abi_x= 86_32.x86 > [...] > Native files : > /var/tmp/portage/app-arch/zstd-1.5.5-r1/temp/meson.i686-pc-linux-gnu.x86.= ini > > /var/tmp/portage/app-arch/zstd-1.5.5-r1/temp/meson.i686-pc-linux-gnu.x86.= ini.local > b_lto : true > b_lto_threads : 4 > > > > > * abi_x86_64.amd64: running multilib-minimal_abi_src_configure > meson setup --libdir lib64 --localstatedir /var/lib --prefix /usr > --sysconfdir /etc --wrap-mode nodownload --build.pkg-config-path > /usr/share/pkgconfig --pkg-config-path /usr/share/pkgconfig > --native-file > /var/tmp/portage/app-arch/zstd-1.5.5-r1/temp/meson.x86_64-pc-linux-gnu.am= d64.ini > -Db_pch=3Dfalse -Dwerror=3Dfalse -Db_lto=3Dtrue -Db_lto_threads=3D4 > -Dbuildtype=3Dplain -Ddefault_library=3Dshared -Dbin_programs=3Dtrue > -Dbin_contrib=3Dtrue -Dbin_tests=3Dfalse -Dzlib=3Denabled -Dlzma=3Denable= d > -Dlz4=3Ddisabled --native-file > /var/tmp/portage/app-arch/zstd-1.5.5-r1/temp/meson.x86_64-pc-linux-gnu.am= d64.ini.local > /var/tmp/portage/app-arch/zstd-1.5.5-r1/work/zstd-1.5.5/build/meson > /var/tmp/portage/app-arch/zstd-1.5.5-r1/work/zstd-1.5.5/build/meson-abi_x= 86_64.amd64 > [...] > Native files : > /var/tmp/portage/app-arch/zstd-1.5.5-r1/temp/meson.x86_64-pc-linux-gnu.am= d64.ini > > /var/tmp/portage/app-arch/zstd-1.5.5-r1/temp/meson.x86_64-pc-linux-gnu.am= d64.ini.local > b_lto : true > b_lto_threads : 4 I'm afraid I get different results. Build log attached. Happy to help figure this out tomorrow. To test, I applied this patch and ran this: ABI_X86=3D"32 x32 64" CFLAGS=3D"-O2 -pipe -march=3Damdfam10 -flto=3D2" ebui= ld zstd-1.5.5-r1.ebuild clean configure --0000000000004f23940611ca435c Content-Type: text/x-log; charset="x-binaryenc"; name="app-arch:zstd-1.5.5-r1:20240220-061809.log" Content-Disposition: attachment; filename="app-arch:zstd-1.5.5-r1:20240220-061809.log" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_lstzbcs90 G1szMm0gKiAbWzM5OzQ5OzAwbVBhY2thZ2U6ICAgIGFwcC1hcmNoL3pzdGQtMS41LjUtcjE6MC8x ChtbMzJtICogG1szOTs0OTswMG1SZXBvc2l0b3J5OiBnZW50b28KG1szMm0gKiAbWzM5OzQ5OzAw bU1haW50YWluZXI6IGJhc2Utc3lzdGVtQGdlbnRvby5vcmcKG1szMm0gKiAbWzM5OzQ5OzAwbVVT RTogICAgICAgIGFiaV94ODZfMzIgYWJpX3g4Nl82NCBhYmlfeDg2X3gzMiBhbWQ2NCBlbGliY19n bGliYyBrZXJuZWxfbGludXggbHptYSB6bGliChtbMzJtICogG1szOTs0OTswMG1GRUFUVVJFUzog ICBjY2FjaGUgbmV0d29yay1zYW5kYm94IHByZXNlcnZlLWxpYnMgc2FuZGJveCB1c2VycHJpdiB1 c2Vyc2FuZGJveAobWzMybSAqIBtbMzk7NDk7MDBtUGFja2FnZTogICAgYXBwLWFyY2gvenN0ZC0x LjUuNS1yMTowLzEKG1szMm0gKiAbWzM5OzQ5OzAwbVJlcG9zaXRvcnk6IGdlbnRvbwobWzMybSAq IBtbMzk7NDk7MDBtTWFpbnRhaW5lcjogYmFzZS1zeXN0ZW1AZ2VudG9vLm9yZwobWzMybSAqIBtb Mzk7NDk7MDBtVVNFOiAgICAgICAgYWJpX3g4Nl8zMiBhYmlfeDg2XzY0IGFiaV94ODZfeDMyIGFt ZDY0IGVsaWJjX2dsaWJjIGtlcm5lbF9saW51eCBsem1hIHpsaWIKG1szMm0gKiAbWzM5OzQ5OzAw bUZFQVRVUkVTOiAgIGNjYWNoZSBuZXR3b3JrLXNhbmRib3ggcHJlc2VydmUtbGlicyBzYW5kYm94 IHVzZXJwcml2IHVzZXJzYW5kYm94Cj4+PiBVbnBhY2tpbmcgc291cmNlLi4uCj4+PiBVbnBhY2tp bmcgenN0ZC0xLjUuNS50YXIuZ3ogdG8gL3gvcG9ydGFnZS9hcHAtYXJjaC96c3RkLTEuNS41LXIx L3dvcmsKPj4+IFNvdXJjZSB1bnBhY2tlZCBpbiAveC9wb3J0YWdlL2FwcC1hcmNoL3pzdGQtMS41 LjUtcjEvd29yawo+Pj4gUHJlcGFyaW5nIHNvdXJjZSBpbiAveC9wb3J0YWdlL2FwcC1hcmNoL3pz dGQtMS41LjUtcjEvd29yay96c3RkLTEuNS41L2J1aWxkL21lc29uIC4uLgogG1szMm0qG1swbSBB cHBseWluZyB6c3RkLTEuNS40LW5vLWZpbmQtdmFsZ3JpbmQucGF0Y2ggLi4uChtbQRtbOTJDIBtb MzQ7MDFtWyAbWzMyOzAxbW9rG1szNDswMW0gXRtbMG0KPj4+IFNvdXJjZSBwcmVwYXJlZC4KPj4+ IENvbmZpZ3VyaW5nIHNvdXJjZSBpbiAveC9wb3J0YWdlL2FwcC1hcmNoL3pzdGQtMS41LjUtcjEv d29yay96c3RkLTEuNS41L2J1aWxkL21lc29uIC4uLgogG1szMm0qG1swbSBhYmlfeDg2XzMyLng4 NjogcnVubmluZyBtdWx0aWxpYi1taW5pbWFsX2FiaV9zcmNfY29uZmlndXJlCm1lc29uIHNldHVw IC0tbGliZGlyIGxpYiAtLWxvY2Fsc3RhdGVkaXIgL3Zhci9saWIgLS1wcmVmaXggL3VzciAtLXN5 c2NvbmZkaXIgL2V0YyAtLXdyYXAtbW9kZSBub2Rvd25sb2FkIC0tYnVpbGQucGtnLWNvbmZpZy1w YXRoIC91c3Ivc2hhcmUvcGtnY29uZmlnOi91c3Ivc2hhcmUvcGtnY29uZmlnIC0tcGtnLWNvbmZp Zy1wYXRoIC91c3Ivc2hhcmUvcGtnY29uZmlnOi91c3Ivc2hhcmUvcGtnY29uZmlnIC0tbmF0aXZl LWZpbGUgL3gvcG9ydGFnZS9hcHAtYXJjaC96c3RkLTEuNS41LXIxL3RlbXAvbWVzb24uaTY4Ni1w Yy1saW51eC1nbnUueDg2LmluaSAtRGJfcGNoPWZhbHNlIC1Ed2Vycm9yPWZhbHNlIC1EYl9sdG89 dHJ1ZSAtRGJfbHRvX3RocmVhZHM9MiAtLWJ1aWxkdHlwZSBwbGFpbiAtRGRlZmF1bHRfbGlicmFy eT1zaGFyZWQgLURiaW5fcHJvZ3JhbXM9ZmFsc2UgLURiaW5fY29udHJpYj1mYWxzZSAtRGJpbl90 ZXN0cz1mYWxzZSAtRHpsaWI9ZGlzYWJsZWQgLURsem1hPWRpc2FibGVkIC1EbHo0PWRpc2FibGVk IC0tbmF0aXZlLWZpbGUgL3gvcG9ydGFnZS9hcHAtYXJjaC96c3RkLTEuNS41LXIxL3RlbXAvbWVz b24uaTY4Ni1wYy1saW51eC1nbnUueDg2LmluaS5sb2NhbCAveC9wb3J0YWdlL2FwcC1hcmNoL3pz dGQtMS41LjUtcjEvd29yay96c3RkLTEuNS41L2J1aWxkL21lc29uIC94L3BvcnRhZ2UvYXBwLWFy Y2gvenN0ZC0xLjUuNS1yMS93b3JrL3pzdGQtMS41LjUvYnVpbGQvbWVzb24tYWJpX3g4Nl8zMi54 ODYKVGhlIE1lc29uIGJ1aWxkIHN5c3RlbQpWZXJzaW9uOiAxLjMuMQpTb3VyY2UgZGlyOiAveC9w b3J0YWdlL2FwcC1hcmNoL3pzdGQtMS41LjUtcjEvd29yay96c3RkLTEuNS41L2J1aWxkL21lc29u CkJ1aWxkIGRpcjogL3gvcG9ydGFnZS9hcHAtYXJjaC96c3RkLTEuNS41LXIxL3dvcmsvenN0ZC0x LjUuNS9idWlsZC9tZXNvbi1hYmlfeDg2XzMyLng4NgpCdWlsZCB0eXBlOiBuYXRpdmUgYnVpbGQK UHJvZ3JhbSBHZXRac3RkTGlicmFyeVZlcnNpb24ucHkgZm91bmQ6IFlFUyAoL3Vzci9iaW4vcHl0 aG9uMy4xMiAveC9wb3J0YWdlL2FwcC1hcmNoL3pzdGQtMS41LjUtcjEvd29yay96c3RkLTEuNS41 L2J1aWxkL21lc29uL0dldFpzdGRMaWJyYXJ5VmVyc2lvbi5weSkKUHJvamVjdCBuYW1lOiB6c3Rk ClByb2plY3QgdmVyc2lvbjogMS41LjUKQyBjb21waWxlciBmb3IgdGhlIGhvc3QgbWFjaGluZTog eDg2XzY0LXBjLWxpbnV4LWdudS1nY2MgLW0zMiAtbWZwbWF0aD1zc2UgKGdjYyAxMy4yLjEgIng4 Nl82NC1wYy1saW51eC1nbnUtZ2NjIChHZW50b28gMTMuMi4xX3AyMDI0MDExMy1yMSBwMTIpIDEz LjIuMSAyMDI0MDExMyIpCkMgbGlua2VyIGZvciB0aGUgaG9zdCBtYWNoaW5lOiB4ODZfNjQtcGMt bGludXgtZ251LWdjYyAtbTMyIC1tZnBtYXRoPXNzZSBsZC5iZmQgMi40MQpDKysgY29tcGlsZXIg Zm9yIHRoZSBob3N0IG1hY2hpbmU6IHg4Nl82NC1wYy1saW51eC1nbnUtZysrIC1tMzIgLW1mcG1h dGg9c3NlIChnY2MgMTMuMi4xICJ4ODZfNjQtcGMtbGludXgtZ251LWcrKyAoR2VudG9vIDEzLjIu MV9wMjAyNDAxMTMtcjEgcDEyKSAxMy4yLjEgMjAyNDAxMTMiKQpDKysgbGlua2VyIGZvciB0aGUg aG9zdCBtYWNoaW5lOiB4ODZfNjQtcGMtbGludXgtZ251LWcrKyAtbTMyIC1tZnBtYXRoPXNzZSBs ZC5iZmQgMi40MQpIb3N0IG1hY2hpbmUgY3B1IGZhbWlseTogeDg2Ckhvc3QgbWFjaGluZSBjcHU6 IGk2ODYKTGlicmFyeSBtIGZvdW5kOiBZRVMKUnVuLXRpbWUgZGVwZW5kZW5jeSB0aHJlYWRzIGZv dW5kOiBZRVMKRGVwZW5kZW5jeSB6bGliIHNraXBwZWQ6IGZlYXR1cmUgemxpYiBkaXNhYmxlZApE ZXBlbmRlbmN5IGxpYmx6bWEgc2tpcHBlZDogZmVhdHVyZSBsem1hIGRpc2FibGVkCkRlcGVuZGVu Y3kgbGlibHo0IHNraXBwZWQ6IGZlYXR1cmUgbHo0IGRpc2FibGVkCkNvbXBpbGVyIGZvciBDIHN1 cHBvcnRzIGFyZ3VtZW50cyAtV3VuZGVmOiBZRVMgCkNvbXBpbGVyIGZvciBDIHN1cHBvcnRzIGFy Z3VtZW50cyAtV3NoYWRvdzogWUVTIApDb21waWxlciBmb3IgQyBzdXBwb3J0cyBhcmd1bWVudHMg LVdjYXN0LWFsaWduOiBZRVMgCkNvbXBpbGVyIGZvciBDIHN1cHBvcnRzIGFyZ3VtZW50cyAtV2Nh c3QtcXVhbDogWUVTIApDb21waWxlciBmb3IgQyBzdXBwb3J0cyBhcmd1bWVudHMgLVdzdHJpY3Qt cHJvdG90eXBlczogWUVTIApDb21waWxlciBmb3IgQysrIHN1cHBvcnRzIGFyZ3VtZW50cyAtV3Vu ZGVmOiBZRVMgCkNvbXBpbGVyIGZvciBDKysgc3VwcG9ydHMgYXJndW1lbnRzIC1Xc2hhZG93OiBZ RVMgCkNvbXBpbGVyIGZvciBDKysgc3VwcG9ydHMgYXJndW1lbnRzIC1XY2FzdC1hbGlnbjogWUVT IApDb21waWxlciBmb3IgQysrIHN1cHBvcnRzIGFyZ3VtZW50cyAtV2Nhc3QtcXVhbDogWUVTIApN ZXNzYWdlOiBFbmFibGUgbGVnYWN5IHN1cHBvcnQgYmFjayB0byB2ZXJzaW9uIDAuNQpNZXNzYWdl OiBFbmFibGUgbXVsdGktdGhyZWFkaW5nIHN1cHBvcnQKRm91bmQgcGtnLWNvbmZpZzogWUVTICgv dXNyL2Jpbi94ODZfNjQtcGMtbGludXgtZ251LXBrZy1jb25maWcpIDIuMS4wCkJ1aWxkIHRhcmdl dHMgaW4gcHJvamVjdDogMgoKenN0ZCAxLjUuNQoKICBVc2VyIGRlZmluZWQgb3B0aW9ucwogICAg TmF0aXZlIGZpbGVzICAgICAgICAgOiAveC9wb3J0YWdlL2FwcC1hcmNoL3pzdGQtMS41LjUtcjEv dGVtcC9tZXNvbi5pNjg2LXBjLWxpbnV4LWdudS54ODYuaW5pCiAgICAgICAgICAgICAgICAgICAg ICAgICAgIC94L3BvcnRhZ2UvYXBwLWFyY2gvenN0ZC0xLjUuNS1yMS90ZW1wL21lc29uLmk2ODYt cGMtbGludXgtZ251Lng4Ni5pbmkubG9jYWwKICAgIGJ1aWxkLnBrZ19jb25maWdfcGF0aDogL3Vz ci9zaGFyZS9wa2djb25maWc6L3Vzci9zaGFyZS9wa2djb25maWcKICAgIGJ1aWxkdHlwZSAgICAg ICAgICAgIDogcGxhaW4KICAgIGRlZmF1bHRfbGlicmFyeSAgICAgIDogc2hhcmVkCiAgICBsaWJk aXIgICAgICAgICAgICAgICA6IGxpYgogICAgbG9jYWxzdGF0ZWRpciAgICAgICAgOiAvdmFyL2xp YgogICAgcGtnX2NvbmZpZ19wYXRoICAgICAgOiAvdXNyL3NoYXJlL3BrZ2NvbmZpZzovdXNyL3No YXJlL3BrZ2NvbmZpZwogICAgcHJlZml4ICAgICAgICAgICAgICAgOiAvdXNyCiAgICBzeXNjb25m ZGlyICAgICAgICAgICA6IC9ldGMKICAgIHdlcnJvciAgICAgICAgICAgICAgIDogZmFsc2UKICAg IHdyYXBfbW9kZSAgICAgICAgICAgIDogbm9kb3dubG9hZAogICAgYl9sdG8gICAgICAgICAgICAg ICAgOiB0cnVlCiAgICBiX2x0b190aHJlYWRzICAgICAgICA6IDIKICAgIGJfcGNoICAgICAgICAg ICAgICAgIDogZmFsc2UKICAgIGJpbl9jb250cmliICAgICAgICAgIDogZmFsc2UKICAgIGJpbl9w cm9ncmFtcyAgICAgICAgIDogZmFsc2UKICAgIGJpbl90ZXN0cyAgICAgICAgICAgIDogZmFsc2UK ICAgIGx6NCAgICAgICAgICAgICAgICAgIDogZGlzYWJsZWQKICAgIGx6bWEgICAgICAgICAgICAg ICAgIDogZGlzYWJsZWQKICAgIHpsaWIgICAgICAgICAgICAgICAgIDogZGlzYWJsZWQKCkZvdW5k IG5pbmphLTEuMTEuMSBhdCAvdXNyL2Jpbi9uaW5qYQogG1szMm0qG1swbSBhYmlfeDg2X3gzMi54 MzI6IHJ1bm5pbmcgbXVsdGlsaWItbWluaW1hbF9hYmlfc3JjX2NvbmZpZ3VyZQptZXNvbiBzZXR1 cCAtLWxpYmRpciBsaWJ4MzIgLS1sb2NhbHN0YXRlZGlyIC92YXIvbGliIC0tcHJlZml4IC91c3Ig LS1zeXNjb25mZGlyIC9ldGMgLS13cmFwLW1vZGUgbm9kb3dubG9hZCAtLWJ1aWxkLnBrZy1jb25m aWctcGF0aCAvdXNyL3NoYXJlL3BrZ2NvbmZpZzovdXNyL3NoYXJlL3BrZ2NvbmZpZyAtLXBrZy1j b25maWctcGF0aCAvdXNyL3NoYXJlL3BrZ2NvbmZpZzovdXNyL3NoYXJlL3BrZ2NvbmZpZyAtLW5h dGl2ZS1maWxlIC94L3BvcnRhZ2UvYXBwLWFyY2gvenN0ZC0xLjUuNS1yMS90ZW1wL21lc29uLng4 Nl82NC1wYy1saW51eC1nbnV4MzIueDMyLmluaSAtRGJfcGNoPWZhbHNlIC1Ed2Vycm9yPWZhbHNl IC1EYl9sdG89ZmFsc2UgLS1idWlsZHR5cGUgcGxhaW4gLURkZWZhdWx0X2xpYnJhcnk9c2hhcmVk IC1EYmluX3Byb2dyYW1zPWZhbHNlIC1EYmluX2NvbnRyaWI9ZmFsc2UgLURiaW5fdGVzdHM9ZmFs c2UgLUR6bGliPWRpc2FibGVkIC1EbHptYT1kaXNhYmxlZCAtRGx6ND1kaXNhYmxlZCAtLW5hdGl2 ZS1maWxlIC94L3BvcnRhZ2UvYXBwLWFyY2gvenN0ZC0xLjUuNS1yMS90ZW1wL21lc29uLng4Nl82 NC1wYy1saW51eC1nbnV4MzIueDMyLmluaS5sb2NhbCAveC9wb3J0YWdlL2FwcC1hcmNoL3pzdGQt MS41LjUtcjEvd29yay96c3RkLTEuNS41L2J1aWxkL21lc29uIC94L3BvcnRhZ2UvYXBwLWFyY2gv enN0ZC0xLjUuNS1yMS93b3JrL3pzdGQtMS41LjUvYnVpbGQvbWVzb24tYWJpX3g4Nl94MzIueDMy ClRoZSBNZXNvbiBidWlsZCBzeXN0ZW0KVmVyc2lvbjogMS4zLjEKU291cmNlIGRpcjogL3gvcG9y dGFnZS9hcHAtYXJjaC96c3RkLTEuNS41LXIxL3dvcmsvenN0ZC0xLjUuNS9idWlsZC9tZXNvbgpC dWlsZCBkaXI6IC94L3BvcnRhZ2UvYXBwLWFyY2gvenN0ZC0xLjUuNS1yMS93b3JrL3pzdGQtMS41 LjUvYnVpbGQvbWVzb24tYWJpX3g4Nl94MzIueDMyCkJ1aWxkIHR5cGU6IG5hdGl2ZSBidWlsZApQ cm9ncmFtIEdldFpzdGRMaWJyYXJ5VmVyc2lvbi5weSBmb3VuZDogWUVTICgvdXNyL2Jpbi9weXRo b24zLjEyIC94L3BvcnRhZ2UvYXBwLWFyY2gvenN0ZC0xLjUuNS1yMS93b3JrL3pzdGQtMS41LjUv YnVpbGQvbWVzb24vR2V0WnN0ZExpYnJhcnlWZXJzaW9uLnB5KQpQcm9qZWN0IG5hbWU6IHpzdGQK UHJvamVjdCB2ZXJzaW9uOiAxLjUuNQpDIGNvbXBpbGVyIGZvciB0aGUgaG9zdCBtYWNoaW5lOiB4 ODZfNjQtcGMtbGludXgtZ251LWdjYyAtbXgzMiAoZ2NjIDEzLjIuMSAieDg2XzY0LXBjLWxpbnV4 LWdudS1nY2MgKEdlbnRvbyAxMy4yLjFfcDIwMjQwMTEzLXIxIHAxMikgMTMuMi4xIDIwMjQwMTEz IikKQyBsaW5rZXIgZm9yIHRoZSBob3N0IG1hY2hpbmU6IHg4Nl82NC1wYy1saW51eC1nbnUtZ2Nj IC1teDMyIGxkLmJmZCAyLjQxCkMrKyBjb21waWxlciBmb3IgdGhlIGhvc3QgbWFjaGluZTogeDg2 XzY0LXBjLWxpbnV4LWdudS1nKysgLW14MzIgKGdjYyAxMy4yLjEgIng4Nl82NC1wYy1saW51eC1n bnUtZysrIChHZW50b28gMTMuMi4xX3AyMDI0MDExMy1yMSBwMTIpIDEzLjIuMSAyMDI0MDExMyIp CkMrKyBsaW5rZXIgZm9yIHRoZSBob3N0IG1hY2hpbmU6IHg4Nl82NC1wYy1saW51eC1nbnUtZysr IC1teDMyIGxkLmJmZCAyLjQxCkhvc3QgbWFjaGluZSBjcHUgZmFtaWx5OiB4ODZfNjQKSG9zdCBt YWNoaW5lIGNwdTogeDg2XzY0CkxpYnJhcnkgbSBmb3VuZDogWUVTClJ1bi10aW1lIGRlcGVuZGVu Y3kgdGhyZWFkcyBmb3VuZDogWUVTCkRlcGVuZGVuY3kgemxpYiBza2lwcGVkOiBmZWF0dXJlIHps aWIgZGlzYWJsZWQKRGVwZW5kZW5jeSBsaWJsem1hIHNraXBwZWQ6IGZlYXR1cmUgbHptYSBkaXNh YmxlZApEZXBlbmRlbmN5IGxpYmx6NCBza2lwcGVkOiBmZWF0dXJlIGx6NCBkaXNhYmxlZApDb21w aWxlciBmb3IgQyBzdXBwb3J0cyBhcmd1bWVudHMgLVd1bmRlZjogWUVTIApDb21waWxlciBmb3Ig QyBzdXBwb3J0cyBhcmd1bWVudHMgLVdzaGFkb3c6IFlFUyAKQ29tcGlsZXIgZm9yIEMgc3VwcG9y dHMgYXJndW1lbnRzIC1XY2FzdC1hbGlnbjogWUVTIApDb21waWxlciBmb3IgQyBzdXBwb3J0cyBh cmd1bWVudHMgLVdjYXN0LXF1YWw6IFlFUyAKQ29tcGlsZXIgZm9yIEMgc3VwcG9ydHMgYXJndW1l bnRzIC1Xc3RyaWN0LXByb3RvdHlwZXM6IFlFUyAKQ29tcGlsZXIgZm9yIEMrKyBzdXBwb3J0cyBh cmd1bWVudHMgLVd1bmRlZjogWUVTIApDb21waWxlciBmb3IgQysrIHN1cHBvcnRzIGFyZ3VtZW50 cyAtV3NoYWRvdzogWUVTIApDb21waWxlciBmb3IgQysrIHN1cHBvcnRzIGFyZ3VtZW50cyAtV2Nh c3QtYWxpZ246IFlFUyAKQ29tcGlsZXIgZm9yIEMrKyBzdXBwb3J0cyBhcmd1bWVudHMgLVdjYXN0 LXF1YWw6IFlFUyAKTWVzc2FnZTogRW5hYmxlIGxlZ2FjeSBzdXBwb3J0IGJhY2sgdG8gdmVyc2lv biAwLjUKTWVzc2FnZTogRW5hYmxlIG11bHRpLXRocmVhZGluZyBzdXBwb3J0CkZvdW5kIHBrZy1j b25maWc6IFlFUyAoL3Vzci9iaW4veDg2XzY0LXBjLWxpbnV4LWdudS1wa2ctY29uZmlnKSAyLjEu MApCdWlsZCB0YXJnZXRzIGluIHByb2plY3Q6IDIKCnpzdGQgMS41LjUKCiAgVXNlciBkZWZpbmVk IG9wdGlvbnMKICAgIE5hdGl2ZSBmaWxlcyAgICAgICAgIDogL3gvcG9ydGFnZS9hcHAtYXJjaC96 c3RkLTEuNS41LXIxL3RlbXAvbWVzb24ueDg2XzY0LXBjLWxpbnV4LWdudXgzMi54MzIuaW5pCiAg ICAgICAgICAgICAgICAgICAgICAgICAgIC94L3BvcnRhZ2UvYXBwLWFyY2gvenN0ZC0xLjUuNS1y MS90ZW1wL21lc29uLng4Nl82NC1wYy1saW51eC1nbnV4MzIueDMyLmluaS5sb2NhbAogICAgYnVp bGQucGtnX2NvbmZpZ19wYXRoOiAvdXNyL3NoYXJlL3BrZ2NvbmZpZzovdXNyL3NoYXJlL3BrZ2Nv bmZpZwogICAgYnVpbGR0eXBlICAgICAgICAgICAgOiBwbGFpbgogICAgZGVmYXVsdF9saWJyYXJ5 ICAgICAgOiBzaGFyZWQKICAgIGxpYmRpciAgICAgICAgICAgICAgIDogbGlieDMyCiAgICBsb2Nh bHN0YXRlZGlyICAgICAgICA6IC92YXIvbGliCiAgICBwa2dfY29uZmlnX3BhdGggICAgICA6IC91 c3Ivc2hhcmUvcGtnY29uZmlnOi91c3Ivc2hhcmUvcGtnY29uZmlnCiAgICBwcmVmaXggICAgICAg ICAgICAgICA6IC91c3IKICAgIHN5c2NvbmZkaXIgICAgICAgICAgIDogL2V0YwogICAgd2Vycm9y ICAgICAgICAgICAgICAgOiBmYWxzZQogICAgd3JhcF9tb2RlICAgICAgICAgICAgOiBub2Rvd25s b2FkCiAgICBiX2x0byAgICAgICAgICAgICAgICA6IGZhbHNlCiAgICBiX3BjaCAgICAgICAgICAg ICAgICA6IGZhbHNlCiAgICBiaW5fY29udHJpYiAgICAgICAgICA6IGZhbHNlCiAgICBiaW5fcHJv Z3JhbXMgICAgICAgICA6IGZhbHNlCiAgICBiaW5fdGVzdHMgICAgICAgICAgICA6IGZhbHNlCiAg ICBsejQgICAgICAgICAgICAgICAgICA6IGRpc2FibGVkCiAgICBsem1hICAgICAgICAgICAgICAg ICA6IGRpc2FibGVkCiAgICB6bGliICAgICAgICAgICAgICAgICA6IGRpc2FibGVkCgpGb3VuZCBu aW5qYS0xLjExLjEgYXQgL3Vzci9iaW4vbmluamEKIBtbMzJtKhtbMG0gYWJpX3g4Nl82NC5hbWQ2 NDogcnVubmluZyBtdWx0aWxpYi1taW5pbWFsX2FiaV9zcmNfY29uZmlndXJlCm1lc29uIHNldHVw IC0tbGliZGlyIGxpYjY0IC0tbG9jYWxzdGF0ZWRpciAvdmFyL2xpYiAtLXByZWZpeCAvdXNyIC0t c3lzY29uZmRpciAvZXRjIC0td3JhcC1tb2RlIG5vZG93bmxvYWQgLS1idWlsZC5wa2ctY29uZmln LXBhdGggL3Vzci9zaGFyZS9wa2djb25maWcgLS1wa2ctY29uZmlnLXBhdGggL3Vzci9zaGFyZS9w a2djb25maWcgLS1uYXRpdmUtZmlsZSAveC9wb3J0YWdlL2FwcC1hcmNoL3pzdGQtMS41LjUtcjEv dGVtcC9tZXNvbi54ODZfNjQtcGMtbGludXgtZ251LmFtZDY0LmluaSAtRGJfcGNoPWZhbHNlIC1E d2Vycm9yPWZhbHNlIC1EYl9sdG89ZmFsc2UgLS1idWlsZHR5cGUgcGxhaW4gLURkZWZhdWx0X2xp YnJhcnk9c2hhcmVkIC1EYmluX3Byb2dyYW1zPXRydWUgLURiaW5fY29udHJpYj10cnVlIC1EYmlu X3Rlc3RzPWZhbHNlIC1EemxpYj1lbmFibGVkIC1EbHptYT1lbmFibGVkIC1EbHo0PWRpc2FibGVk IC0tbmF0aXZlLWZpbGUgL3gvcG9ydGFnZS9hcHAtYXJjaC96c3RkLTEuNS41LXIxL3RlbXAvbWVz b24ueDg2XzY0LXBjLWxpbnV4LWdudS5hbWQ2NC5pbmkubG9jYWwgL3gvcG9ydGFnZS9hcHAtYXJj aC96c3RkLTEuNS41LXIxL3dvcmsvenN0ZC0xLjUuNS9idWlsZC9tZXNvbiAveC9wb3J0YWdlL2Fw cC1hcmNoL3pzdGQtMS41LjUtcjEvd29yay96c3RkLTEuNS41L2J1aWxkL21lc29uLWFiaV94ODZf NjQuYW1kNjQKVGhlIE1lc29uIGJ1aWxkIHN5c3RlbQpWZXJzaW9uOiAxLjMuMQpTb3VyY2UgZGly OiAveC9wb3J0YWdlL2FwcC1hcmNoL3pzdGQtMS41LjUtcjEvd29yay96c3RkLTEuNS41L2J1aWxk L21lc29uCkJ1aWxkIGRpcjogL3gvcG9ydGFnZS9hcHAtYXJjaC96c3RkLTEuNS41LXIxL3dvcmsv enN0ZC0xLjUuNS9idWlsZC9tZXNvbi1hYmlfeDg2XzY0LmFtZDY0CkJ1aWxkIHR5cGU6IG5hdGl2 ZSBidWlsZApQcm9ncmFtIEdldFpzdGRMaWJyYXJ5VmVyc2lvbi5weSBmb3VuZDogWUVTICgvdXNy L2Jpbi9weXRob24zLjEyIC94L3BvcnRhZ2UvYXBwLWFyY2gvenN0ZC0xLjUuNS1yMS93b3JrL3pz dGQtMS41LjUvYnVpbGQvbWVzb24vR2V0WnN0ZExpYnJhcnlWZXJzaW9uLnB5KQpQcm9qZWN0IG5h bWU6IHpzdGQKUHJvamVjdCB2ZXJzaW9uOiAxLjUuNQpDIGNvbXBpbGVyIGZvciB0aGUgaG9zdCBt YWNoaW5lOiB4ODZfNjQtcGMtbGludXgtZ251LWdjYyAoZ2NjIDEzLjIuMSAieDg2XzY0LXBjLWxp bnV4LWdudS1nY2MgKEdlbnRvbyAxMy4yLjFfcDIwMjQwMTEzLXIxIHAxMikgMTMuMi4xIDIwMjQw MTEzIikKQyBsaW5rZXIgZm9yIHRoZSBob3N0IG1hY2hpbmU6IHg4Nl82NC1wYy1saW51eC1nbnUt Z2NjIGxkLmJmZCAyLjQxCkMrKyBjb21waWxlciBmb3IgdGhlIGhvc3QgbWFjaGluZTogeDg2XzY0 LXBjLWxpbnV4LWdudS1nKysgKGdjYyAxMy4yLjEgIng4Nl82NC1wYy1saW51eC1nbnUtZysrIChH ZW50b28gMTMuMi4xX3AyMDI0MDExMy1yMSBwMTIpIDEzLjIuMSAyMDI0MDExMyIpCkMrKyBsaW5r ZXIgZm9yIHRoZSBob3N0IG1hY2hpbmU6IHg4Nl82NC1wYy1saW51eC1nbnUtZysrIGxkLmJmZCAy LjQxCkhvc3QgbWFjaGluZSBjcHUgZmFtaWx5OiB4ODZfNjQKSG9zdCBtYWNoaW5lIGNwdTogeDg2 XzY0CkxpYnJhcnkgbSBmb3VuZDogWUVTClJ1bi10aW1lIGRlcGVuZGVuY3kgdGhyZWFkcyBmb3Vu ZDogWUVTCkZvdW5kIHBrZy1jb25maWc6IFlFUyAoL3Vzci9iaW4veDg2XzY0LXBjLWxpbnV4LWdu dS1wa2ctY29uZmlnKSAyLjEuMApSdW4tdGltZSBkZXBlbmRlbmN5IHpsaWIgZm91bmQ6IFlFUyAx LjMuMQpSdW4tdGltZSBkZXBlbmRlbmN5IGxpYmx6bWEgZm91bmQ6IFlFUyA1LjQuNgpEZXBlbmRl bmN5IGxpYmx6NCBza2lwcGVkOiBmZWF0dXJlIGx6NCBkaXNhYmxlZApDb21waWxlciBmb3IgQyBz dXBwb3J0cyBhcmd1bWVudHMgLVd1bmRlZjogWUVTIApDb21waWxlciBmb3IgQyBzdXBwb3J0cyBh cmd1bWVudHMgLVdzaGFkb3c6IFlFUyAKQ29tcGlsZXIgZm9yIEMgc3VwcG9ydHMgYXJndW1lbnRz IC1XY2FzdC1hbGlnbjogWUVTIApDb21waWxlciBmb3IgQyBzdXBwb3J0cyBhcmd1bWVudHMgLVdj YXN0LXF1YWw6IFlFUyAKQ29tcGlsZXIgZm9yIEMgc3VwcG9ydHMgYXJndW1lbnRzIC1Xc3RyaWN0 LXByb3RvdHlwZXM6IFlFUyAKQ29tcGlsZXIgZm9yIEMrKyBzdXBwb3J0cyBhcmd1bWVudHMgLVd1 bmRlZjogWUVTIApDb21waWxlciBmb3IgQysrIHN1cHBvcnRzIGFyZ3VtZW50cyAtV3NoYWRvdzog WUVTIApDb21waWxlciBmb3IgQysrIHN1cHBvcnRzIGFyZ3VtZW50cyAtV2Nhc3QtYWxpZ246IFlF UyAKQ29tcGlsZXIgZm9yIEMrKyBzdXBwb3J0cyBhcmd1bWVudHMgLVdjYXN0LXF1YWw6IFlFUyAK TWVzc2FnZTogRW5hYmxlIGxlZ2FjeSBzdXBwb3J0IGJhY2sgdG8gdmVyc2lvbiAwLjUKTWVzc2Fn ZTogRW5hYmxlIG11bHRpLXRocmVhZGluZyBzdXBwb3J0CkhhcyBoZWFkZXIgImV4ZWNpbmZvLmgi IHNraXBwZWQ6IGZlYXR1cmUgYmFja3RyYWNlIGRpc2FibGVkCkJ1aWxkIHRhcmdldHMgaW4gcHJv amVjdDogNwoKenN0ZCAxLjUuNQoKICBVc2VyIGRlZmluZWQgb3B0aW9ucwogICAgTmF0aXZlIGZp bGVzICAgICAgICAgOiAveC9wb3J0YWdlL2FwcC1hcmNoL3pzdGQtMS41LjUtcjEvdGVtcC9tZXNv bi54ODZfNjQtcGMtbGludXgtZ251LmFtZDY0LmluaQogICAgICAgICAgICAgICAgICAgICAgICAg ICAveC9wb3J0YWdlL2FwcC1hcmNoL3pzdGQtMS41LjUtcjEvdGVtcC9tZXNvbi54ODZfNjQtcGMt bGludXgtZ251LmFtZDY0LmluaS5sb2NhbAogICAgYnVpbGQucGtnX2NvbmZpZ19wYXRoOiAvdXNy L3NoYXJlL3BrZ2NvbmZpZwogICAgYnVpbGR0eXBlICAgICAgICAgICAgOiBwbGFpbgogICAgZGVm YXVsdF9saWJyYXJ5ICAgICAgOiBzaGFyZWQKICAgIGxpYmRpciAgICAgICAgICAgICAgIDogbGli NjQKICAgIGxvY2Fsc3RhdGVkaXIgICAgICAgIDogL3Zhci9saWIKICAgIHBrZ19jb25maWdfcGF0 aCAgICAgIDogL3Vzci9zaGFyZS9wa2djb25maWcKICAgIHByZWZpeCAgICAgICAgICAgICAgIDog L3VzcgogICAgc3lzY29uZmRpciAgICAgICAgICAgOiAvZXRjCiAgICB3ZXJyb3IgICAgICAgICAg ICAgICA6IGZhbHNlCiAgICB3cmFwX21vZGUgICAgICAgICAgICA6IG5vZG93bmxvYWQKICAgIGJf bHRvICAgICAgICAgICAgICAgIDogZmFsc2UKICAgIGJfcGNoICAgICAgICAgICAgICAgIDogZmFs c2UKICAgIGJpbl9jb250cmliICAgICAgICAgIDogdHJ1ZQogICAgYmluX3Byb2dyYW1zICAgICAg ICAgOiB0cnVlCiAgICBiaW5fdGVzdHMgICAgICAgICAgICA6IGZhbHNlCiAgICBsejQgICAgICAg ICAgICAgICAgICA6IGRpc2FibGVkCiAgICBsem1hICAgICAgICAgICAgICAgICA6IGVuYWJsZWQK ICAgIHpsaWIgICAgICAgICAgICAgICAgIDogZW5hYmxlZAoKRm91bmQgbmluamEtMS4xMS4xIGF0 IC91c3IvYmluL25pbmphCj4+PiBTb3VyY2UgY29uZmlndXJlZC4K --0000000000004f23940611ca435c--