[PATCH v3 2/9] grub-core: Update kernel image generation

Nicholas Vinson <[email protected]> Fri, 13 Feb 2026 20:05:02 -0500
Newsgroups org.gnu.grub-devel
Message-ID <cb5bba6fd5c04cd7cb9ca2f1bd8d2eb3b66a405f.1771028573.git.nvinson234@gmail.com>
VGhlIGkzODYtcGMga2VybmVsIGltYWdlIGZhaWxzIHRvIGJ1aWxkIGJlY2F1c2Ugb2YgY2hhbmdl
cyBtYWRlIHRvCmFkZHJlc3MgbGQubGxkLTIxIGFuZCBuZXdlciBsaW5raW5nIGlzc3Vlcy4gU3Bl
Y2lmaWNhbGx5LCB3aXRoCmxkLmxsZC0yMSwgaWYgeW91IHRyeSB0byBzZXQgdGhlIHRleHQgc2Vj
dGlvbiBhZGRyZXNzIGJlbG93IGltYWdlIGJhc2UKYWRkcmVzcyB3aGVuIGxpbmtpbmcgYSBub24t
cmVsb2NhdGFibGUgYmluYXJ5LCBsZC5sbGQgd2lsIGZhaWwgdG8gbGluay4KClN3aXRjaGluZyB0
byB1c2luZyBhIGN1c3RvbWl6ZWQgbGlua2VyIHNjcmlwdCBzb2x2ZXMgdGhlIGlzc3VlIGFuZCBp
cyBhCm1vcmUgcm9ib3N0IHNvbHV0aW9uIHRvIHN1cHBvcnRpbmcgbXVsdGlwbGUgbGlua2VycyB0
aGFuIGF0dGVtcHRpbmcgdG8KZmluZCBhIHNldCBvZiBjb21tYW5kLWxpbmUgZmxhZ3MgdGhhdCBz
YXRpc2lmaWVkIGFsbCBzdXBwb3J0ZWQgbGlua2VycwphbmQgbGlua3MgdGhlIGtlcm5lbCBwcm9w
ZXJseS4gSW4gdGhlIHdvcnN0IGNhc2UsIGNvbnRpbnVlZCB1c2Ugb2YKY29tbWFuZC1saW5lIGZs
YWdzIGNvdWxkIHJlc3VsdCBpbiBoYXZpbmcgdG8gY3JlYXRlIGNvZGUgYnJhbmNoZXMgdG8Kc3Vw
cG9ydCB2YXJpb3VzIGxpbmtlcnMuCgpGb3IgZXhhbXBsZSwgd2hlbiBkZWFsaW5nIHdpdGgganVz
dCBsZC5iZmQgYW5kIGxkLmxsZCwgdGhlIGJlaGF2aW9yYWwKZGlmZmVyZW5jZXMgYmV0d2VlbiB0
aGUgdHdvIG1hZGUgZmluZGluZyBhIHByb3BlciBzdWJzZXQgb2YgZmxhZ3MgdGhhdAp3b3JrZWQg
aW1wb3NzaWJsZS4gVGhlIHByZXZpb3VzIGF0dGVtcHQgZHJvcHBlZCAtVHRleHQgZm9yIC0taW1h
Z2UtYmFzZSwKd2hpY2ggaGFzIGJlZW4gcHJvdmVuIG5vdCB0byB3b3JrLiBUaGUgc2ltcGxlc3Qg
Y29ycmVjdGlvbiwKLVdsLC0taW1hZ2UtYmFzZT0wIC1XbCwtVHRleHQsIGRpZCBub3Qgd29yayBi
ZWNhdXNlIHRoYXQgb3B0aW9uIHJlc3VsdGVkCmluIGEgR1JVQiBrZXJuZWwgdGhhdCBlbnRlcmVk
IGludG8gYSB0aWdodCBpbmZpbml0ZSByZWZyZXNoIGxvb3AuCgpNb3Jlb3ZlciwgbGQubGxkIGRv
ZXMgbm90IG9yZGVyIHRoZSBzZWN0aW9ucyB0aGUgc2FtZSB3YXkgbGQuYmZkIGRvZXMsCmFuZCB0
aGF0IHJlc3VsdHMgaW4gb2JqZWN0IGZpbGVzIHdpdGggZ2FwcyBvciBob2xlcyB3aGVuIHNlY3Rp
b25zIGFyZQpzdHJpcHBlZC4gSSBzdXNwZWN0LCBidXQgZGlkIG5vdCBpbnZlc3RpZ2F0ZSwgdGhh
dCB0aGlzIHBsYXlzIGEgcm9sZSBpbgp0aGUgaW5maW5pdGUgcmVmcmVzaCBsb29wIEkgbWVudGlv
bmVkIGVhcmxpZXIuCgpUaGUgZWFzaWVzdCB3YXkgdG8gcmVzb2x2ZSBhbGwgdGhpcyBpcyB0byB1
c2UgY3VzdG9taXplZCBsaW5rZXIgc2NyaXB0cy4KVGhlc2Ugc2NyaXB0cywgYnkgZGVmYXVsdCwg
b3ZlcnJpZGUgYW55IGRlZmF1bHQgY29uZmlndXJhdGlvbiB0aGUgbGlua2VyCndvdWxkIG90aGVy
d2lzZSBpbXBvc2UsIGFsbG93IGZvciBjb21wbGV0ZSBjb250cm9sIGluIGFsaWduaW5nIHNlY3Rp
b25zLAphbmQgYWxsb3dzIEdSVUIgdG8gc3BlY2lmeSB3aGVyZSBpbiB0aGUgbG9hZCBzZWdtZW50
IGVhY2ggc2VjdGlvbiBnb2VzLgoKVGhpcyBjaGFuZ2UgZG9lcyByZXF1aXJlIGxpbmtlcnMgdG8g
c3VwcG9ydCB0aGUgLS1kZWZzeW0gZmxhZywgd2hpY2gKcmVxdWlyZXMgaXRzIGFyZ3VtZW50IHRv
IGJlIG9mIHRoZSBmb3JtICdzeW09YWRkcmVzcycgYXMgJ3N5bSBhZGRyZXNzJwppcyBub3Qgc3Vw
cG9ydGVkLgoKU2lnbmVkLW9mZi1ieTogTmljaG9sYXMgVmluc29uIDxudmluc29uMjM0QGdtYWls
LmNvbT4KLS0tCiBjb25mL01ha2VmaWxlLmV4dHJhLWRpc3QgICAgfCAgMSArCiBjb25mL2kzODYt
cGMta2VybmVsLmxkcyAgICAgfCA1MSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrCiBncnViLWNvcmUvTWFrZWZpbGUuY29yZS5kZWYgfCAzMSArKysrKysrKysrKy0tLS0tLS0t
LS0tCiAzIGZpbGVzIGNoYW5nZWQsIDY4IGluc2VydGlvbnMoKyksIDE1IGRlbGV0aW9ucygtKQog
Y3JlYXRlIG1vZGUgMTAwNjQ0IGNvbmYvaTM4Ni1wYy1rZXJuZWwubGRzCgpkaWZmIC0tZ2l0IGEv
Y29uZi9NYWtlZmlsZS5leHRyYS1kaXN0IGIvY29uZi9NYWtlZmlsZS5leHRyYS1kaXN0CmluZGV4
IGQyMmI2Yzg2Mi4uODkyZGY4MjA4IDEwMDY0NAotLS0gYS9jb25mL01ha2VmaWxlLmV4dHJhLWRp
c3QKKysrIGIvY29uZi9NYWtlZmlsZS5leHRyYS1kaXN0CkBAIC0xNyw2ICsxNyw3IEBAIEVYVFJB
X0RJU1QgKz0gZG9jcy9ncnViLmNmZwogRVhUUkFfRElTVCArPSBkb2NzL29zZGV0ZWN0LmNmZwog
CiBFWFRSQV9ESVNUICs9IGNvbmYvaTM4Ni1jeWd3aW4taW1nLWxkLnNjCitFWFRSQV9ESVNUICs9
IGNvbmYvaTM4Ni1wYy1rZXJuZWwubGRzCiAKIEVYVFJBX0RJU1QgKz0gZ3J1Yi1jb3JlL01ha2Vm
aWxlLmNvcmUuZGVmCiBFWFRSQV9ESVNUICs9IGdydWItY29yZS9NYWtlZmlsZS5nY3J5LmRlZgpk
aWZmIC0tZ2l0IGEvY29uZi9pMzg2LXBjLWtlcm5lbC5sZHMgYi9jb25mL2kzODYtcGMta2VybmVs
LmxkcwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAuLmQ0MGM3NzM2YwotLS0g
L2Rldi9udWxsCisrKyBiL2NvbmYvaTM4Ni1wYy1rZXJuZWwubGRzCkBAIC0wLDAgKzEsNTEgQEAK
K0VOVFJZKF9zdGFydCkKKworLyoKKyAqIEFsaWduIHNlY3Rpb25zIHRvIGEgMTYtYnl0ZSBib3Vu
ZGFyeS4gVGhpcyBndWFyYW50ZWVzIEFCSSBjb21wYXRpYmlsaXR5IHdpdGgKKyAqIEMgZ2VuZXJh
dGVkIGNvZGUKKyAqLworU0VDVElPTl9BTElHTiA9IDB4MTA7CisKK1BIRFJTIHsKKyAgICB0ZXh0
IFBUX0xPQUQgRkxBR1MoNykgLyogUEZfUiB8IFBGX1cgfCBQRl9YICovOworfQorCitTRUNUSU9O
UworeworICAgIC8qCisgICAgICogU2V0IHNlY3Rpb24gYWxpZ25tZW50IHRvIDEuIFRoaXMgYWxs
b3dzIHNlY3Rpb25zIHRvIGJlIGFsaWduZWQgd2l0aG91dAorICAgICAqIGNyZWF0aW5nIGhvbGVz
IGluIHRoZSBWTUEgc3BhY2Ugb3IgZ2FwcyBpbiB0aGUgZmlsZS4KKyAgICAgKi8KKyAgICAuID0g
X2dydWJfdGV4dF9iYXNlOworICAgIC50ZXh0IEFMSUdOKDB4MSkgOiB7CisgICAgICAgIF9zdGFy
dCA9IC47CisgICAgICAgICooLnRleHQgLnRleHQuKikKKyAgICAgICAgLiA9IEFMSUdOKFNFQ1RJ
T05fQUxJR04pOworICAgIH0gOnRleHQKKyAgICAucm9kYXRhIEFMSUdOKDB4MSkgOiB7CisgICAg
ICAgICooLnJvZGF0YSAucm9kYXRhLiopCisgICAgICAgIC4gPSBBTElHTihTRUNUSU9OX0FMSUdO
KTsKKyAgICB9IDp0ZXh0CisgICAgLm1vZHVsZV9saWNlbnNlIEFMSUdOKDB4MSkgOiB7CisgICAg
ICAgICooLm1vZHVsZV9saWNlbnNlKQorICAgICAgICAuID0gQUxJR04oU0VDVElPTl9BTElHTik7
CisgICAgfSA6dGV4dAorICAgIC5kYXRhIEFMSUdOKDB4MSkgOiB7CisgICAgICAgICooLmRhdGEg
LmRhdGEuKikKKyAgICAgICAgLiA9IEFMSUdOKFNFQ1RJT05fQUxJR04pOworICAgICAgICBfZWRh
dGEgPSAuOworICAgIH0gOnRleHQKKyAgICAuYnNzIEFMSUdOKDB4MSkgOiB7CisgICAgICAgIF9f
YnNzX3N0YXJ0ID0gLjsKKyAgICAgICAgKiguYnNzIC5ic3MuKikKKyAgICAgICAgKihDT01NT04p
CisgICAgICAgIC4gPSBBTElHTihTRUNUSU9OX0FMSUdOKTsKKyAgICAgICAgX2VuZCA9IC47Cisg
ICAgfSA6dGV4dAorICAgIC9ESVNDQVJELyA6IHsKKyAgICAgICAgKiguaW50ZXJwKQorICAgICAg
ICAqKC5ub3RlKikKKyAgICAgICAgKiguY29tbWVudCkKKyAgICAgICAgKiguYnVpbGQtaWQpCisg
ICAgfQorfQpkaWZmIC0tZ2l0IGEvZ3J1Yi1jb3JlL01ha2VmaWxlLmNvcmUuZGVmIGIvZ3J1Yi1j
b3JlL01ha2VmaWxlLmNvcmUuZGVmCmluZGV4IDBjZjE1NTEyOC4uMWE5MWU1M2Q2IDEwMDY0NAot
LS0gYS9ncnViLWNvcmUvTWFrZWZpbGUuY29yZS5kZWYKKysrIGIvZ3J1Yi1jb3JlL01ha2VmaWxl
LmNvcmUuZGVmCkBAIC0xMCw2ICsxMCw3IEBAIHRyYW5zZm9ybV9kYXRhID0gewogICBpbnN0YWxs
ZGlyID0gbm9pbnN0OwogICBuYW1lID0gZ2VubW9kLnNoOwogICBjb21tb24gPSBnZW5tb2Quc2gu
aW47CisgIGkzODZfcGNfbGRmbGFncyA9ICckKFRBUkdFVF9JTUdfTERGTEFHUyknOwogfTsKIAog
dHJhbnNmb3JtX2RhdGEgPSB7CkBAIC04MiwyMSArODMsMjEgQEAga2VybmVsID0gewogICByaXNj
djY0X2VmaV9zdHJpcGZsYWdzICAgPSAnLS1zdHJpcC11bm5lZWRlZCAtSyBzdGFydCAtUiAubm90
ZSAtUiAuY29tbWVudCAtUiAubm90ZS5nbnUuZ29sZC12ZXJzaW9uIC1SIC5laF9mcmFtZSc7CiAK
ICAgaTM4Nl9wY19sZGZsYWdzICAgICAgICAgID0gJyQoVEFSR0VUX0lNR19MREZMQUdTKSc7Ci0g
IGkzODZfcGNfbGRmbGFncyAgICAgICAgICA9ICckKFRBUkdFVF9JTUdfQkFTRV9MRE9QVCksMHg5
MDAwJzsKKyAgaTM4Nl9wY19sZGZsYWdzICAgICAgICAgID0gJyQoVEFSR0VUX0lNR19CQVNFX0xE
T1BUKSQoVEFSR0VUX0lNR19CQVNFX0xET1BUX0FSR19TRVApMHg5MDAwJzsKICAgaTM4Nl9xZW11
X2xkZmxhZ3MgICAgICAgID0gJyQoVEFSR0VUX0lNR19MREZMQUdTKSc7Ci0gIGkzODZfcWVtdV9s
ZGZsYWdzICAgICAgICA9ICckKFRBUkdFVF9JTUdfQkFTRV9MRE9QVCksMHg5MDAwJzsKKyAgaTM4
Nl9xZW11X2xkZmxhZ3MgICAgICAgID0gJyQoVEFSR0VUX0lNR19CQVNFX0xET1BUKSQoVEFSR0VU
X0lNR19CQVNFX0xET1BUX0FSR19TRVApMHg5MDAwJzsKICAgaTM4Nl9jb3JlYm9vdF9sZGZsYWdz
ICAgID0gJyQoVEFSR0VUX0lNR19MREZMQUdTKSc7Ci0gIGkzODZfY29yZWJvb3RfbGRmbGFncyAg
ICA9ICckKFRBUkdFVF9JTUdfQkFTRV9MRE9QVCksMHg5MDAwJzsKKyAgaTM4Nl9jb3JlYm9vdF9s
ZGZsYWdzICAgID0gJyQoVEFSR0VUX0lNR19CQVNFX0xET1BUKSQoVEFSR0VUX0lNR19CQVNFX0xE
T1BUX0FSR19TRVApMHg5MDAwJzsKICAgaTM4Nl9tdWx0aWJvb3RfbGRmbGFncyAgID0gJyQoVEFS
R0VUX0lNR19MREZMQUdTKSc7Ci0gIGkzODZfbXVsdGlib290X2xkZmxhZ3MgICA9ICckKFRBUkdF
VF9JTUdfQkFTRV9MRE9QVCksMHg5MDAwJzsKKyAgaTM4Nl9tdWx0aWJvb3RfbGRmbGFncyAgID0g
JyQoVEFSR0VUX0lNR19CQVNFX0xET1BUKSQoVEFSR0VUX0lNR19CQVNFX0xET1BUX0FSR19TRVAp
MHg5MDAwJzsKICAgaTM4Nl9pZWVlMTI3NV9sZGZsYWdzICAgID0gJyQoVEFSR0VUX0lNR19MREZM
QUdTKSc7Ci0gIGkzODZfaWVlZTEyNzVfbGRmbGFncyAgICA9ICckKFRBUkdFVF9JTUdfQkFTRV9M
RE9QVCksMHgxMDAwMCc7CisgIGkzODZfaWVlZTEyNzVfbGRmbGFncyAgICA9ICckKFRBUkdFVF9J
TUdfQkFTRV9MRE9QVCkkKFRBUkdFVF9JTUdfQkFTRV9MRE9QVF9BUkdfU0VQKTB4MTAwMDAnOwog
ICBpMzg2X3hlbl9sZGZsYWdzICAgICAgICAgPSAnJChUQVJHRVRfSU1HX0xERkxBR1MpJzsKLSAg
aTM4Nl94ZW5fbGRmbGFncyAgICAgICAgID0gJyQoVEFSR0VUX0lNR19CQVNFX0xET1BUKSwwJzsK
KyAgaTM4Nl94ZW5fbGRmbGFncyAgICAgICAgID0gJyQoVEFSR0VUX0lNR19CQVNFX0xET1BUKSQo
VEFSR0VUX0lNR19CQVNFX0xET1BUX0FSR19TRVApMCc7CiAgIHg4Nl82NF94ZW5fbGRmbGFncyAg
ICAgICA9ICckKFRBUkdFVF9JTUdfTERGTEFHUyknOwogICB4ODZfNjRfeGVuX2xkZmxhZ3MgICAg
ICAgPSAnJChUQVJHRVRfSU1HX0JBU0VfTERPUFQpLDAnOwogICBpMzg2X3hlbl9wdmhfbGRmbGFn
cyAgICAgPSAnJChUQVJHRVRfSU1HX0xERkxBR1MpJzsKLSAgaTM4Nl94ZW5fcHZoX2xkZmxhZ3Mg
ICAgID0gJyQoVEFSR0VUX0lNR19CQVNFX0xET1BUKSwweDEwMDAwMCc7CisgIGkzODZfeGVuX3B2
aF9sZGZsYWdzICAgICA9ICckKFRBUkdFVF9JTUdfQkFTRV9MRE9QVCkkKFRBUkdFVF9JTUdfQkFT
RV9MRE9QVF9BUkdfU0VQKTB4MTAwMDAwJzsKIAogICBtaXBzX2xvb25nc29uX2xkZmxhZ3MgICAg
PSAnLVdsLC1UdGV4dCwweDgwMjAwMDAwJzsKICAgcG93ZXJwY19pZWVlMTI3NV9sZGZsYWdzID0g
Jy1XbCwtVHRleHQsMHgyMDAwMDAnOwpAQCAtNDUwLDEwICs0NTEsMTAgQEAgaW1hZ2UgPSB7CiAg
IHNwYXJjNjRfaWVlZTEyNzUgPSBib290L3NwYXJjNjQvaWVlZTEyNzUvYm9vdC5TOwogCiAgIGkz
ODZfcGNfbGRmbGFncyA9ICckKFRBUkdFVF9JTUdfTERGTEFHUyknOwotICBpMzg2X3BjX2xkZmxh
Z3MgPSAnJChUQVJHRVRfSU1HX0JBU0VfTERPUFQpLDB4N0MwMCc7CisgIGkzODZfcGNfbGRmbGFn
cyA9ICckKFRBUkdFVF9JTUdfQkFTRV9MRE9QVCkkKFRBUkdFVF9JTUdfQkFTRV9MRE9QVF9BUkdf
U0VQKTB4N0MwMCc7CiAKICAgaTM4Nl9xZW11X2xkZmxhZ3MgPSAnJChUQVJHRVRfSU1HX0xERkxB
R1MpJzsKLSAgaTM4Nl9xZW11X2xkZmxhZ3MgPSAnJChUQVJHRVRfSU1HX0JBU0VfTERPUFQpLCQo
R1JVQl9CT09UX01BQ0hJTkVfTElOS19BRERSKSc7CisgIGkzODZfcWVtdV9sZGZsYWdzID0gJyQo
VEFSR0VUX0lNR19CQVNFX0xET1BUKSQoVEFSR0VUX0lNR19CQVNFX0xET1BUX0FSR19TRVApJChH
UlVCX0JPT1RfTUFDSElORV9MSU5LX0FERFIpJzsKICAgaTM4Nl9xZW11X2NjYXNmbGFncyA9ICct
REdSVUJfQk9PVF9NQUNISU5FX0xJTktfQUREUj0kKEdSVUJfQk9PVF9NQUNISU5FX0xJTktfQURE
UiknOwogCiAgIC8qIFRoZSBlbnRyeSBwb2ludCBmb3IgYS5vdXQgYmluYXJpZXMgb24gc3BhcmM2
NCBzdGFydHMKQEAgLTQ3OCw3ICs0NzksNyBAQCBpbWFnZSA9IHsKICAgY3BwZmxhZ3MgPSAnLURI
WUJSSURfQk9PVD0xJzsKICAgCiAgIGkzODZfcGNfbGRmbGFncyA9ICckKFRBUkdFVF9JTUdfTERG
TEFHUyknOwotICBpMzg2X3BjX2xkZmxhZ3MgPSAnJChUQVJHRVRfSU1HX0JBU0VfTERPUFQpLDB4
N0MwMCc7CisgIGkzODZfcGNfbGRmbGFncyA9ICckKFRBUkdFVF9JTUdfQkFTRV9MRE9QVCkkKFRB
UkdFVF9JTUdfQkFTRV9MRE9QVF9BUkdfU0VQKTB4N0MwMCc7CiAKICAgb2JqY29weWZsYWdzID0g
Jy1PIGJpbmFyeSc7CiAgIGVuYWJsZSA9IGkzODZfcGM7CkBAIC00ODksNyArNDkwLDcgQEAgaW1h
Z2UgPSB7CiAKICAgaTM4Nl9wYyA9IGJvb3QvaTM4Ni9wYy9jZGJvb3QuUzsKICAgaTM4Nl9wY19s
ZGZsYWdzID0gJyQoVEFSR0VUX0lNR19MREZMQUdTKSc7Ci0gIGkzODZfcGNfbGRmbGFncyA9ICck
KFRBUkdFVF9JTUdfQkFTRV9MRE9QVCksMHg3QzAwJzsKKyAgaTM4Nl9wY19sZGZsYWdzID0gJyQo
VEFSR0VUX0lNR19CQVNFX0xET1BUKSQoVEFSR0VUX0lNR19CQVNFX0xET1BUX0FSR19TRVApMHg3
QzAwJzsKIAogICBzcGFyYzY0X2llZWUxMjc1ID0gYm9vdC9zcGFyYzY0L2llZWUxMjc1L2Jvb3Qu
UzsKIApAQCAtNTA5LDcgKzUxMCw3IEBAIGltYWdlID0gewogICBpMzg2X3BjID0gYm9vdC9pMzg2
L3BjL3B4ZWJvb3QuUzsKIAogICBpMzg2X3BjX2xkZmxhZ3MgPSAnJChUQVJHRVRfSU1HX0xERkxB
R1MpJzsKLSAgaTM4Nl9wY19sZGZsYWdzID0gJyQoVEFSR0VUX0lNR19CQVNFX0xET1BUKSwweDdD
MDAnOworICBpMzg2X3BjX2xkZmxhZ3MgPSAnJChUQVJHRVRfSU1HX0JBU0VfTERPUFQpJChUQVJH
RVRfSU1HX0JBU0VfTERPUFRfQVJHX1NFUCkweDdDMDAnOwogCiAgIG9iamNvcHlmbGFncyA9ICct
TyBiaW5hcnknOwogICBlbmFibGUgPSBpMzg2X3BjOwpAQCAtNTIwLDcgKzUyMSw3IEBAIGltYWdl
ID0gewogICBpMzg2X3BjID0gYm9vdC9pMzg2L3BjL2Rpc2tib290LlM7CiAKICAgaTM4Nl9wY19s
ZGZsYWdzID0gJyQoVEFSR0VUX0lNR19MREZMQUdTKSc7Ci0gIGkzODZfcGNfbGRmbGFncyA9ICck
KFRBUkdFVF9JTUdfQkFTRV9MRE9QVCksMHg4MDAwJzsKKyAgaTM4Nl9wY19sZGZsYWdzID0gJyQo
VEFSR0VUX0lNR19CQVNFX0xET1BUKSQoVEFSR0VUX0lNR19CQVNFX0xET1BUX0FSR19TRVApMHg4
MDAwJzsKIAogICBzcGFyYzY0X2llZWUxMjc1ID0gYm9vdC9zcGFyYzY0L2llZWUxMjc1L2Rpc2ti
b290LlM7CiAgIHNwYXJjNjRfaWVlZTEyNzVfbGRmbGFncyA9ICctV2wsLVR0ZXh0PTB4NDIwMCc7
CkBAIC01MzYsNyArNTM3LDcgQEAgaW1hZ2UgPSB7CiAgIGkzODZfcGMgPSBib290L2kzODYvcGMv
bG54Ym9vdC5TOwogCiAgIGkzODZfcGNfbGRmbGFncyA9ICckKFRBUkdFVF9JTUdfTERGTEFHUykn
OwotICBpMzg2X3BjX2xkZmxhZ3MgPSAnJChUQVJHRVRfSU1HX0JBU0VfTERPUFQpLDB4NjAwMCc7
CisgIGkzODZfcGNfbGRmbGFncyA9ICckKFRBUkdFVF9JTUdfQkFTRV9MRE9QVCkkKFRBUkdFVF9J
TUdfQkFTRV9MRE9QVF9BUkdfU0VQKTB4NjAwMCc7CiAKICAgb2JqY29weWZsYWdzID0gJy1PIGJp
bmFyeSc7CiAgIGVuYWJsZSA9IGkzODZfcGM7CkBAIC01NzgsNyArNTc5LDcgQEAgaW1hZ2UgPSB7
CiAgIGkzODZfcGNfbm9kaXN0ID0gcnNfZGVjb2Rlci5oOwogCiAgIG9iamNvcHlmbGFncyA9ICct
TyBiaW5hcnknOwotICBsZGZsYWdzID0gJyQoVEFSR0VUX0lNR19MREZMQUdTKSAkKFRBUkdFVF9J
TUdfQkFTRV9MRE9QVCksMHg4MjAwJzsKKyAgbGRmbGFncyA9ICckKFRBUkdFVF9JTUdfTERGTEFH
UykgJChUQVJHRVRfSU1HX0JBU0VfTERPUFQpJChUQVJHRVRfSU1HX0JBU0VfTERPUFRfQVJHX1NF
UCkweDgyMDAnOwogICBlbmFibGUgPSBpMzg2X3BjOwogfTsKIAotLSAKMi41My4wCgoKX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KR3J1Yi1kZXZlbCBtYWls
aW5nIGxpc3QKR3J1Yi1kZXZlbEBnbnUub3JnCmh0dHBzOi8vbGlzdHMuZ251Lm9yZy9tYWlsbWFu
L2xpc3RpbmZvL2dydWItZGV2ZWwK