[OpenAFS] workaround for RedHat 8

Derrick J Brashear shadow@dementia.org
Thu, 3 Oct 2002 16:57:29 -0400 (EDT)


  This message is in MIME format.  The first part should be readable text,
  while the remaining parts are likely unreadable without MIME-aware tools.
  Send mail to mime@docserver.cac.washington.edu for more info.

--42002020-1449831134-1033678649=:2629
Content-Type: TEXT/PLAIN; charset=US-ASCII

Chaskiel Grundman wrote this patch, which basically figures out where the
sys_call_table is and uses it anyway.

It's evil. Use it if you like. I'm waiting for the first objector (to
this method) so I can laugh at them. If you provide your phone number I'll
be happy to actually call you and laugh at you for a while.



--42002020-1449831134-1033678649=:2629
Content-Type: TEXT/PLAIN; charset=US-ASCII; name="rh8-stable.diff"
Content-Transfer-Encoding: BASE64
Content-ID: <Pine.LNX.3.96L.1021003165729.2629f@scully.trafford.dementia.org>
Content-Description: 

ZGlmZiAteCBjb25maWd1cmUtbGliYWZzIC14IGNvbmZpZ3VyZSAteCBhY2xv
Y2FsLm00IC14IGNvbmZpZy5oaW4gLXJ1TiBvcGVuYWZzLTEuMi43LW9yaWcv
YWNjb25maWcuaCBvcGVuYWZzLTEuMi43L2FjY29uZmlnLmgNCi0tLSBvcGVu
YWZzLTEuMi43LW9yaWcvYWNjb25maWcuaAkyMDAyLTA5LTExIDAzOjAyOjE1
LjAwMDAwMDAwMCAtMDQwMA0KKysrIG9wZW5hZnMtMS4yLjcvYWNjb25maWcu
aAkyMDAyLTEwLTAzIDEyOjE5OjM3LjAwMDAwMDAwMCAtMDQwMA0KQEAgLTM2
LDYgKzM2LDcgQEANCiAjdW5kZWYgU1RSVUNUX0lOT0RFX0hBU19JX0RJUlRZ
X0RBVEFfQlVGRkVSUw0KICN1bmRlZiBTVFJVQ1RfSU5PREVfSEFTX0lfREVW
SUNFUw0KICN1bmRlZiBFWFBPUlRFRF9UQVNLTElTVF9MT0NLDQorI3VuZGVm
IEVYUE9SVEVEX1NZU19DQUxMX1RBQkxFDQogI3VuZGVmIENPTVBMRVRJT05f
SF9FWElTVFMNCiAjdW5kZWYgc3NpemVfdA0KIA0KZGlmZiAteCBjb25maWd1
cmUtbGliYWZzIC14IGNvbmZpZ3VyZSAteCBhY2xvY2FsLm00IC14IGNvbmZp
Zy5oaW4gLXJ1TiBvcGVuYWZzLTEuMi43LW9yaWcvYWNpbmNsdWRlLm00IG9w
ZW5hZnMtMS4yLjcvYWNpbmNsdWRlLm00DQotLS0gb3BlbmFmcy0xLjIuNy1v
cmlnL2FjaW5jbHVkZS5tNAkyMDAyLTA5LTI1IDIzOjQ4OjUyLjAwMDAwMDAw
MCAtMDQwMA0KKysrIG9wZW5hZnMtMS4yLjcvYWNpbmNsdWRlLm00CTIwMDIt
MTAtMDMgMTM6MDY6NDEuMDAwMDAwMDAwIC0wNDAwDQpAQCAtMTMwLDYgKzEz
MCwxMiBAQA0KIAkJCU9NSVRfRlJBTUVfUE9JTlRFUj0tZm9taXQtZnJhbWUt
cG9pbnRlcg0KIAkJIGZpDQogCQkgQUNfU1VCU1QoT01JVF9GUkFNRV9QT0lO
VEVSKQ0KKwkJIE9QRU5BRlNfR0NDX1NVUFBPUlRTX01BUkNIDQorCQkgQUNf
U1VCU1QoWDg2X0tPUFRTKQ0KKwkJIE9QRU5BRlNfR0NDX05FRURTX05PX1NU
UkVOR1RIX1JFRFVDRQ0KKwkJIE9QRU5BRlNfR0NDX05FRURTX05PX1NUUklD
VF9BTElBU0lORw0KKwkJIE9QRU5BRlNfR0NDX1NVUFBPUlRTX05PX0NPTU1P
Tg0KKwkJIEFDX1NVQlNUKExJTlVYX0dDQ19LT1BUUykNCiAJICAgICAgICAg
aWZkZWYoW09QRU5BRlNfQ09ORklHVVJFX0xJQkFGU10sDQogCSAgICAgICAg
ICAgW0xJTlVYX0JVSUxEX1ZOT0RFX0ZST01fSU5PREUoY29uZmlnLGFmcyld
LA0KIAkgICAgICAgICAgIFtMSU5VWF9CVUlMRF9WTk9ERV9GUk9NX0lOT0RF
KHNyYy9jb25maWcsc3JjL2Fmcy9MSU5VWCldDQpAQCAtMTQ0LDkgKzE1MCwy
MiBAQA0KIAkJIExJTlVYX0VYUE9SVFNfVEFTS0xJU1RfTE9DSw0KIAkJIExJ
TlVYX05FRURfUkhDT05GSUcNCiAJCSBMSU5VWF9XSElDSF9NT0RVTEVTDQor
CQkgaWYgdGVzdCAiJGFjX2N2X2xpbnV4X2NvbmZpZ19tb2R2ZXJzaW9ucyIg
PSAieG5vIjsgdGhlbg0KKwkJICAgQUNfTVNHX1dBUk4oW0Nhbm5vdCBkZXRl
cm1pbmUgc3lzX2NhbGxfdGFibGUgc3RhdHVzLiBhc3N1bWluZyBpdCdzIGV4
cG9ydGVkXSkNCisJCSBlbHNlDQorCQkgICBMSU5VWF9FWFBPUlRTX1NZU19D
QUxMX1RBQkxFDQorCQkgICBMSU5VWF9LQUxMU1lNUw0KKwkJICAgaWYgdGVz
dCAieCRhY19jdl9saW51eF9leHBvcnRzX3N5c19jYWxsX3RhYmxlIiA9ICJ4
bm8iIC1hIFwNCisJCQkgIngkYWNfY3ZfbGludXhfa2FsbHN5bXMiID0gInhu
byI7IHRoZW4NCisJCQlBQ19NU0dfRVJST1IoW25vIGF2YWlsYWJsZSBzeXNf
Y2FsbF90YWJsZSBhY2Nlc3MgbWV0aG9kXSkNCisJCSAgIGZpDQorCQkgZmkN
CiAJCSBpZiB0ZXN0ICJ4JGFjX2N2X2xpbnV4X2V4cG9ydHNfdGFza2xpc3Rf
bG9jayIgPSAieHllcyIgOyB0aGVuDQogCQkgIEFDX0RFRklORShFWFBPUlRF
RF9UQVNLTElTVF9MT0NLKQ0KIAkJIGZpDQorCQkgaWYgdGVzdCAieCRhY19j
dl9saW51eF9leHBvcnRzX3N5c19jYWxsX3RhYmxlIiA9ICJ4eWVzIjsgdGhl
bg0KKwkJICBBQ19ERUZJTkUoRVhQT1JURURfU1lTX0NBTExfVEFCTEUpDQor
CQkgZmkNCiAJCSBpZiB0ZXN0ICJ4JGFjX2N2X2xpbnV4X2NvbXBsZXRpb25f
aF9leGlzdHMiID0gInh5ZXMiIDsgdGhlbg0KIAkJICBBQ19ERUZJTkUoQ09N
UExFVElPTl9IX0VYSVNUUykNCiAJCSBmaQ0KZGlmZiAteCBjb25maWd1cmUt
bGliYWZzIC14IGNvbmZpZ3VyZSAteCBhY2xvY2FsLm00IC14IGNvbmZpZy5o
aW4gLXJ1TiBvcGVuYWZzLTEuMi43LW9yaWcvc3JjL2Fmcy9MSU5VWC9vc2lf
bW9kdWxlLmMgb3BlbmFmcy0xLjIuNy9zcmMvYWZzL0xJTlVYL29zaV9tb2R1
bGUuYw0KLS0tIG9wZW5hZnMtMS4yLjctb3JpZy9zcmMvYWZzL0xJTlVYL29z
aV9tb2R1bGUuYwkyMDAyLTA1LTAyIDExOjM4OjQ1LjAwMDAwMDAwMCAtMDQw
MA0KKysrIG9wZW5hZnMtMS4yLjcvc3JjL2Fmcy9MSU5VWC9vc2lfbW9kdWxl
LmMJMjAwMi0xMC0wMyAxMjoyNjowNC4wMDAwMDAwMDAgLTA0MDANCkBAIC00
MCwxMSArNDAsMTkgQEANCiBhc21saW5rYWdlIGludCAoKnN5c19raWxscCko
aW50IHBpZCwgaW50IHNpZ25hbCk7DQogYXNtbGlua2FnZSBsb25nICgqc3lz
X3NldGdyb3Vwc3ApKGludCBnaWRzZXRzaXplLCBnaWRfdCAqZ3JvdXBsaXN0
KTsNCiANCisjaWZkZWYgRVhQT1JURURfU1lTX0NBTExfVEFCTEUNCiAjaWZk
ZWYgQUZTX1NQQVJDNjRfTElOVVgyMF9FTlYNCiBleHRlcm4gdW5zaWduZWQg
aW50IHN5c19jYWxsX3RhYmxlW107ICAvKiBjaGFuZ2VkIHRvIHVpbnQgYmVj
YXVzZSBTUEFSQzY0IGhhcyBzeXNjYWx0YWJsZSBvZiAzMmJpdCBpdGVtcyAq
Lw0KICNlbHNlDQogZXh0ZXJuIHZvaWQgKiBzeXNfY2FsbF90YWJsZVtdOyAv
KiBzYWZlciBmb3Igb3RoZXIgbGludWNlcyAqLw0KICNlbmRpZg0KKyNlbHNl
IC8qIEVYUE9SVEVEX1NZU19DQUxMX1RBQkxFICovDQorI2lmZGVmIEFGU19T
UEFSQzY0X0xJTlVYMjBfRU5WDQorc3RhdGljIHVuc2lnbmVkIGludCAqc3lz
X2NhbGxfdGFibGU7ICAvKiBjaGFuZ2VkIHRvIHVpbnQgYmVjYXVzZSBTUEFS
QzY0IGhhcyBzeXNjYWx0YWJsZSBvZiAzMmJpdCBpdGVtcyAqLw0KKyNlbHNl
DQorc3RhdGljIHZvaWQgKiogc3lzX2NhbGxfdGFibGU7IC8qIHNhZmVyIGZv
ciBvdGhlciBsaW51Y2VzICovDQorI2VuZGlmDQorI2VuZGlmDQogZXh0ZXJu
IHN0cnVjdCBmaWxlX3N5c3RlbV90eXBlIGFmc19maWxlX3N5c3RlbTsNCiAN
CiBzdGF0aWMgbG9uZyBnZXRfcGFnZV9vZmZzZXQodm9pZCk7DQpAQCAtNzIs
NyArODAsMTEgQEANCiAjaWYgZGVmaW5lZChfX05SX3NldGdyb3VwczMyKQ0K
IGFzbWxpbmthZ2UgaW50ICgqc3lzMzJfc2V0Z3JvdXBzMzJwKShpbnQgZ2lk
c2V0c2l6ZSwgX19rZXJuZWxfZ2lkX3QzMiAqZ3JvdXBsaXN0KTsNCiAjZW5k
aWYNCisjaWZkZWYgRVhQT1JURURfU1lTX0NBTExfVEFCTEUNCiBleHRlcm4g
dW5zaWduZWQgaW50IHN5c19jYWxsX3RhYmxlMzJbXTsNCisjZWxzZQ0KK3N0
YXRpYyB1bnNpZ25lZCBpbnQgKnN5c19jYWxsX3RhYmxlMzI7DQorI2VuZGlm
DQogDQogYXNtbGlua2FnZSBpbnQgYWZzX3N5c2NhbGwzMihsb25nIHN5c2Nh
bGwsIGxvbmcgcGFybTEsIGxvbmcgcGFybTIsIGxvbmcgcGFybTMsDQogCQkJ
ICAgICBsb25nIHBhcm00LCBsb25nIHBhcm01KQ0KQEAgLTIwMCw2ICsyMTIs
MjEgQEANCiAjZW5kaWYNCiAjZW5kaWYNCiANCisjaWZuZGVmIEVYUE9SVEVE
X1NZU19DQUxMX1RBQkxFDQorICAgIGludCByZXQ7DQorICAgIHVuc2lnbmVk
IGxvbmcgdG9rZW47DQorICAgIGNoYXIgICAgICAqbW9kX25hbWU7DQorICAg
IHVuc2lnbmVkIGxvbmcgICAgbW9kX3N0YXJ0Ow0KKyAgICB1bnNpZ25lZCBs
b25nICAgIG1vZF9lbmQ7DQorICAgIGNoYXIgICAgICAqc2VjX25hbWU7DQor
ICAgIHVuc2lnbmVkIGxvbmcgICAgc2VjX3N0YXJ0Ow0KKyAgICB1bnNpZ25l
ZCBsb25nICAgIHNlY19lbmQ7DQorICAgIGNoYXIgICAgICAqc3ltX25hbWU7
DQorICAgIHVuc2lnbmVkIGxvbmcgICAgc3ltX3N0YXJ0Ow0KKyAgICB1bnNp
Z25lZCBsb25nICAgIHN5bV9lbmQ7DQorI2VuZGlmDQorDQorDQogDQogDQog
ICAgIC8qIG9idGFpbiBQQUdFX09GRlNFVCB2YWx1ZSAqLw0KQEAgLTIxMyw2
ICsyNDAsNTQgQEANCiAgICAgfQ0KICNlbmRpZg0KIA0KKyNpZm5kZWYgRVhQ
T1JURURfU1lTX0NBTExfVEFCTEUNCisgICAgcmV0PTE7DQorICAgIHRva2Vu
PTA7DQorICAgIHdoaWxlIChyZXQpIHsNCisgICAgCXN5bV9zdGFydD0wOw0K
KyAgICAJcmV0PWthbGxzeW1zX3N5bWJvbF90b19hZGRyZXNzKCJzeXNfY2Fs
bF90YWJsZSIsICZ0b2tlbiwgJm1vZF9uYW1lLA0KKwkJICAgIAkmbW9kX3N0
YXJ0LCAmbW9kX2VuZCwgJnNlY19uYW1lLCAmc2VjX3N0YXJ0LCAmc2VjX2Vu
ZCwNCisJCSAgICAJJnN5bV9uYW1lLCAmc3ltX3N0YXJ0LCAmc3ltX2VuZCk7
DQorCWlmIChyZXQgJiYgIXN0cmNtcChtb2RfbmFtZSwgImtlcm5lbCIpKQ0K
KwkJYnJlYWs7DQorICAgIH0NCisgICAgaWYgKCFyZXQgfHwgIXN5bV9zdGFy
dCkgew0KKwkgICAgcHJpbnRmKCJGYWlsZWQgdG8gZmluZCBhZGRyZXNzIG9m
IHN5c19jYWxsX3RhYmxlXG4iLCByZXQpOw0KKwkgICAgcmV0dXJuIC1FSU87
DQorICAgIH0NCisjaWYgMA0KKyAgICBwcmludGYoIiVzIGlzIGluIG1vZHVs
ZSAlcyBzZWN0aW9uICVzIG9mZnNldCAweCVseCBsZW5ndGggJWRcbiIsIHN5
bV9uYW1lLA0KKwkJICAgIG1vZF9uYW1lLCBzZWNfbmFtZSwgc3ltX3N0YXJ0
LCBzeW1fZW5kLXN5bV9zdGFydCk7DQorICAgIHN5c19jYWxsX3RhYmxlPSh2
b2lkICopc3ltX3N0YXJ0Ow0KKyAgICBpZiAoc3lzX2NhbGxfdGFibGVbX19O
Ul9vcGVuXSA9PSBzeXNfb3Blbikgew0KKwkgICAgcHJpbnRmKCJzeXNfY2Fs
bF90YWJsZSBzZWVtcyBvay4gc3lzX29wZW4gaXMgYXQgMHglbHhcbiIsDQor
CQkJICAgICh1bnNpZ25lZCBsb25nKXN5c19jYWxsX3RhYmxlW19fTlJfb3Bl
bl0pOw0KKyAgICB9IGVsc2Ugew0KKwkgICAgcHJpbnRmKCJzeXNfY2FsbF90
YWJsZSBpcyBub3Qgb2suIHN5c19vcGVuIGlzIGF0IDB4JWx4LCBidXQgd2Ug
c2VlIGl0IGF0IDB4JWx4XG4iLCAodW5zaWduZWQgbG9uZykodm9pZCAqKXN5
c19vcGVuLCAodW5zaWduZWQgbG9uZylzeXNfY2FsbF90YWJsZVtfX05SX29w
ZW5dKTsNCisgICAgfQ0KKyAgICByZXR1cm4gLUVJTzsNCisjZWxzZQ0KKyAg
ICBzeXNfY2FsbF90YWJsZT0odm9pZCAqKXN5bV9zdGFydDsNCisjZW5kaWYN
CisjIGlmZGVmIEFGU19TUEFSQzY0X0xJTlVYMjBfRU5WDQorICAgIHJldD0x
Ow0KKyAgICB0b2tlbj0wOw0KKyAgICB3aGlsZSAocmV0KSB7DQorICAgIAlz
eW1fc3RhcnQ9MDsNCisgICAgCXJldD1rYWxsc3ltc19zeW1ib2xfdG9fYWRk
cmVzcygic3lzX2NhbGxfdGFibGUzMiIsICZ0b2tlbiwgJm1vZF9uYW1lLA0K
KwkJICAgIAkmbW9kX3N0YXJ0LCAmbW9kX2VuZCwgJnNlY19uYW1lLCAmc2Vj
X3N0YXJ0LCAmc2VjX2VuZCwNCisJCSAgICAJJnN5bV9uYW1lLCAmc3ltX3N0
YXJ0LCAmc3ltX2VuZCk7DQorCWlmIChyZXQgJiYgIXN0cmNtcChtb2RfbmFt
ZSwgImtlcm5lbCIpKQ0KKwkJYnJlYWs7DQorICAgIH0NCisgICAgaWYgKCFy
ZXQgfHwgIXN5bV9zdGFydCkgew0KKwkgICAgcHJpbnRmKCJGYWlsZWQgdG8g
ZmluZCBhZGRyZXNzIG9mIHN5c19jYWxsX3RhYmxlMzJcbiIsIHJldCk7DQor
CSAgICByZXR1cm4gLUVJTzsNCisgICAgfQ0KKyAgICBzeXNfY2FsbF90YWJs
ZTMyPXN5bV9zdGFydDsNCisjZW5kaWYNCisjZW5kaWYNCisNCiAgICAgLyog
SW5pdGlhbGl6ZSBwb2ludGVycyB0byBrZXJuZWwgc3lzY2FsbHMuICovDQog
I2lmIGRlZmluZWQoQUZTX0lBNjRfTElOVVgyMF9FTlYpDQogICAgIGtlcm5l
bF9ncCA9ICgoc3RydWN0IGZwdHIgKilwcmludGspLT5ncDsNCmRpZmYgLXgg
Y29uZmlndXJlLWxpYmFmcyAteCBjb25maWd1cmUgLXggYWNsb2NhbC5tNCAt
eCBjb25maWcuaGluIC1ydU4gb3BlbmFmcy0xLjIuNy1vcmlnL3NyYy9jZi9s
aW51eC10ZXN0NC5tNCBvcGVuYWZzLTEuMi43L3NyYy9jZi9saW51eC10ZXN0
NC5tNA0KLS0tIG9wZW5hZnMtMS4yLjctb3JpZy9zcmMvY2YvbGludXgtdGVz
dDQubTQJMjAwMi0wOS0xMSAwMzowMjo1MS4wMDAwMDAwMDAgLTA0MDANCisr
KyBvcGVuYWZzLTEuMi43L3NyYy9jZi9saW51eC10ZXN0NC5tNAkyMDAyLTEw
LTAzIDExOjM5OjU4LjAwMDAwMDAwMCAtMDQwMA0KQEAgLTE0LDYgKzE0LDM4
IEBADQogQUNfTVNHX1JFU1VMVCgkYWNfY3ZfbGludXhfZXhwb3J0c190YXNr
bGlzdF9sb2NrKQ0KIENQUEZMQUdTPSIkc2F2ZV9DUFBGTEFHUyJdKQ0KIA0K
K0FDX0RFRlVOKExJTlVYX0VYUE9SVFNfU1lTX0NBTExfVEFCTEUsIFsNCitB
Q19NU0dfQ0hFQ0tJTkcoZm9yIGV4cG9ydGVkIHN5c19jYWxsX3RhYmxlKQ0K
K3NhdmVfQ1BQRkxBR1M9IiRDUFBGTEFHUyINCitDUFBGTEFHUz0iLUkke0xJ
TlVYX0tFUk5FTF9QQVRIfS9pbmNsdWRlIC1EX19LRVJORUxfXyAkQ1BQRkxB
R1MiDQorQUNfQ0FDSEVfVkFMKGFjX2N2X2xpbnV4X2V4cG9ydHNfc3lzX2Nh
bGxfdGFibGUsDQorWw0KK0FDX1RSWV9DT01QSUxFKA0KK1sjaW5jbHVkZSA8
bGludXgvbW9kdmVyc2lvbnMuaD5dLA0KK1sjaWZuZGVmIF9fdmVyX3N5c19j
YWxsX3RhYmxlDQorI2Vycm9yIHN5c19jYWxsX3RhYmxlIG5vdCBleHBvcnRl
ZA0KKyNlbmRpZl0sDQorYWNfY3ZfbGludXhfZXhwb3J0c19zeXNfY2FsbF90
YWJsZT15ZXMsDQorYWNfY3ZfbGludXhfZXhwb3J0c19zeXNfY2FsbF90YWJs
ZT1ubyldKQ0KK0FDX01TR19SRVNVTFQoJGFjX2N2X2xpbnV4X2V4cG9ydHNf
c3lzX2NhbGxfdGFibGUpDQorQ1BQRkxBR1M9IiRzYXZlX0NQUEZMQUdTIl0p
DQorDQorQUNfREVGVU4oTElOVVhfS0FMTFNZTVMsIFsNCitBQ19NU0dfQ0hF
Q0tJTkcoZm9yIGthbGxzeW1zIHN1cHBvcnQpDQorc2F2ZV9DUFBGTEFHUz0i
JENQUEZMQUdTIg0KK0NQUEZMQUdTPSItSSR7TElOVVhfS0VSTkVMX1BBVEh9
L2luY2x1ZGUgLURfX0tFUk5FTF9fICRDUFBGTEFHUyINCitBQ19DQUNIRV9W
QUwoYWNfY3ZfbGludXhfa2FsbHN5bXMsDQorWw0KK0FDX1RSWV9DT01QSUxF
KA0KK1sjaW5jbHVkZSA8bGludXgvY29uZmlnLmg+XSwNCitbI2lmbmRlZiBD
T05GSUdfS0FMTFNZTVMNCisjZXJyb3Igbm8ga2FsbHN5bXMNCisjZW5kaWZd
LA0KK2FjX2N2X2xpbnV4X2thbGxzeW1zPXllcywNCithY19jdl9saW51eF9r
YWxsc3ltcz1ubyldKQ0KK0FDX01TR19SRVNVTFQoJGFjX2N2X2xpbnV4X2th
bGxzeW1zKQ0KK0NQUEZMQUdTPSIkc2F2ZV9DUFBGTEFHUyJdKQ0KKw0KIEFD
X0RFRlVOKExJTlVYX0NPTVBMRVRJT05fSF9FWElTVFMsIFsNCiBBQ19NU0df
Q0hFQ0tJTkcoZm9yIGxpbnV4L2NvbXBsZXRpb24uaCBleGlzdGFuY2UpDQog
c2F2ZV9DUFBGTEFHUz0iJENQUEZMQUdTIg0KZGlmZiAteCBjb25maWd1cmUt
bGliYWZzIC14IGNvbmZpZ3VyZSAteCBhY2xvY2FsLm00IC14IGNvbmZpZy5o
aW4gLXJ1TiBvcGVuYWZzLTEuMi43LW9yaWcvc3JjL2NmL2xpbnV4LXRlc3Q1
Lm00IG9wZW5hZnMtMS4yLjcvc3JjL2NmL2xpbnV4LXRlc3Q1Lm00DQotLS0g
b3BlbmFmcy0xLjIuNy1vcmlnL3NyYy9jZi9saW51eC10ZXN0NS5tNAkxOTY5
LTEyLTMxIDE5OjAwOjAwLjAwMDAwMDAwMCAtMDUwMA0KKysrIG9wZW5hZnMt
MS4yLjcvc3JjL2NmL2xpbnV4LXRlc3Q1Lm00CTIwMDItMTAtMDMgMTI6MTk6
MDkuMDAwMDAwMDAwIC0wNDAwDQpAQCAtMCwwICsxLDcxIEBADQorDQorQUNf
REVGVU4oT1BFTkFGU19HQ0NfU1VQUE9SVFNfTUFSQ0gsIFsNCitBQ19NU0df
Q0hFQ0tJTkcoaWYgJENDIGFjY2VwdHMgLW1hcmNoPXBlbnRpdW0pDQorc2F2
ZV9DRkxBR1M9IiRDRkxBR1MiDQorQ0ZMQUdTPSItTUFSQ0g9cGVudGl1bSIN
CitBQ19DQUNIRV9WQUwob3BlbmFmc19nY2Nfc3VwcG9ydHNfbWFyY2gsWw0K
K0FDX1RSWV9DT01QSUxFKA0KK1tdLA0KK1tpbnQgeDtdLA0KK29wZW5hZnNf
Z2NjX3N1cHBvcnRzX21hcmNoPXllcywNCitvcGVuYWZzX2djY19zdXBwb3J0
c19tYXJjaD1ubyldKQ0KK0FDX01TR19SRVNVTFQoJG9wZW5hZnNfZ2NjX3N1
cHBvcnRzX21hcmNoKQ0KK2lmIHRlc3QgeCRvcGVuYWZzX2djY19zdXBwb3J0
c19tYXJjaCA9IHh5ZXM7IHRoZW4NCisgIFg4Nl9LT1BUUz0iLW1hcmNoPXBl
bnRpdW0iDQorZWxzZQ0KKyAgWDg2X0tPUFRTPSItbTQ4NiAtbWFsaWduLWxv
b3BzPTIgLW1hbGlnbi1qdW1wcz0yIC1tYWxpZ24tZnVuY3Rpb25zPTIiDQor
ZmkNCitDRkxBR1M9IiRzYXZlX0NGTEFHUyINCitdKQ0KKw0KK0FDX0RFRlVO
KE9QRU5BRlNfR0NDX05FRURTX05PX1NUUklDVF9BTElBU0lORywgWw0KK0FD
X01TR19DSEVDS0lORyhpZiAkQ0MgbmVlZHMgLWZuby1zdHJpY3QtYWxpYXNp
bmcpDQorc2F2ZV9DRkxBR1M9IiRDRkxBR1MiDQorQ0ZMQUdTPSItZm5vLXN0
cmljdC1hbGlhc2luZyINCitBQ19DQUNIRV9WQUwob3BlbmFmc19nY2NfbmVl
ZHNfbm9fc3RyaWN0X2FsaWFzaW5nLFsNCitBQ19UUllfQ09NUElMRSgNCitb
XSwNCitbaW50IHg7XSwNCitvcGVuYWZzX2djY19uZWVkc19ub19zdHJpY3Rf
YWxpYXNpbmc9eWVzLA0KK29wZW5hZnNfZ2NjX25lZWRzX25vX3N0cmljdF9h
bGlhc2luZz1ubyldKQ0KK0FDX01TR19SRVNVTFQoJG9wZW5hZnNfZ2NjX25l
ZWRzX25vX3N0cmljdF9hbGlhc2luZykNCitpZiB0ZXN0IHgkb3BlbmFmc19n
Y2NfbmVlZHNfbm9fc3RyaWN0X2FsaWFzaW5nID0geHllczsgdGhlbg0KKyAg
TElOVVhfR0NDX0tPUFRTPSIkTElOVVhfR0NDX0tPUFRTIC1mbm8tc3RyaWN0
LWFsaWFzaW5nIg0KK2ZpDQorQ0ZMQUdTPSIkc2F2ZV9DRkxBR1MiDQorXSkN
CisNCitBQ19ERUZVTihPUEVOQUZTX0dDQ19ORUVEU19OT19TVFJFTkdUSF9S
RURVQ0UsIFsNCitBQ19NU0dfQ0hFQ0tJTkcoaWYgJENDIG5lZWRzIC1mbm8t
c3RyZW5ndGgtcmVkdWNlKQ0KK3NhdmVfQ0ZMQUdTPSIkQ0ZMQUdTIg0KK0NG
TEFHUz0iLWZuby1zdHJlbmd0aC1yZWR1Y2UiDQorQUNfQ0FDSEVfVkFMKG9w
ZW5hZnNfZ2NjX25lZWRzX25vX3N0cmVuZ3RoX3JlZHVjZSxbDQorQUNfVFJZ
X0NPTVBJTEUoDQorW10sDQorW2ludCB4O10sDQorb3BlbmFmc19nY2NfbmVl
ZHNfbm9fc3RyZW5ndGhfcmVkdWNlPXllcywNCitvcGVuYWZzX2djY19uZWVk
c19ub19zdHJlbmd0aF9yZWR1Y2U9bm8pXSkNCitBQ19NU0dfUkVTVUxUKCRv
cGVuYWZzX2djY19uZWVkc19ub19zdHJlbmd0aF9yZWR1Y2UpDQoraWYgdGVz
dCB4JG9wZW5hZnNfZ2NjX25lZWRzX25vX3N0cmVuZ3RoX3JlZHVjZSA9IHh5
ZXM7IHRoZW4NCisgIExJTlVYX0dDQ19LT1BUUz0iJExJTlVYX0dDQ19LT1BU
UyAtZm5vLXN0cmVuZ3RoLXJlZHVjZSINCitmaQ0KK0NGTEFHUz0iJHNhdmVf
Q0ZMQUdTIg0KK10pDQorDQorQUNfREVGVU4oT1BFTkFGU19HQ0NfU1VQUE9S
VFNfTk9fQ09NTU9OLCBbDQorQUNfTVNHX0NIRUNLSU5HKGlmICRDQyBzdXBw
b3J0cyAtZm5vLWNvbW1vbikNCitzYXZlX0NGTEFHUz0iJENGTEFHUyINCitD
RkxBR1M9Ii1mbm8tY29tbW9uIg0KK0FDX0NBQ0hFX1ZBTChvcGVuYWZzX2dj
Y19zdXBwb3J0c19ub19jb21tb24sWw0KK0FDX1RSWV9DT01QSUxFKA0KK1td
LA0KK1tpbnQgeDtdLA0KK29wZW5hZnNfZ2NjX3N1cHBvcnRzX25vX2NvbW1v
bj15ZXMsDQorb3BlbmFmc19nY2Nfc3VwcG9ydHNfbm9fY29tbW9uPW5vKV0p
DQorQUNfTVNHX1JFU1VMVCgkb3BlbmFmc19nY2Nfc3VwcG9ydHNfbm9fY29t
bW9uKQ0KK2lmIHRlc3QgeCRvcGVuYWZzX2djY19zdXBwb3J0c19ub19jb21t
b24gPSB4eWVzOyB0aGVuDQorICBMSU5VWF9HQ0NfS09QVFM9IiRMSU5VWF9H
Q0NfS09QVFMgLWZuby1jb21tb24iDQorZmkNCitDRkxBR1M9IiRzYXZlX0NG
TEFHUyINCitdKQ0KKw0KZGlmZiAteCBjb25maWd1cmUtbGliYWZzIC14IGNv
bmZpZ3VyZSAteCBhY2xvY2FsLm00IC14IGNvbmZpZy5oaW4gLXJ1TiBvcGVu
YWZzLTEuMi43LW9yaWcvc3JjL2xpYmFmcy9NYWtlZmlsZVByb3RvLkxJTlVY
LmluIG9wZW5hZnMtMS4yLjcvc3JjL2xpYmFmcy9NYWtlZmlsZVByb3RvLkxJ
TlVYLmluDQotLS0gb3BlbmFmcy0xLjIuNy1vcmlnL3NyYy9saWJhZnMvTWFr
ZWZpbGVQcm90by5MSU5VWC5pbgkyMDAyLTA2LTA4IDAwOjQ3OjQyLjAwMDAw
MDAwMCAtMDQwMA0KKysrIG9wZW5hZnMtMS4yLjcvc3JjL2xpYmFmcy9NYWtl
ZmlsZVByb3RvLkxJTlVYLmluCTIwMDItMTAtMDMgMTI6MTk6NDYuMDAwMDAw
MDAwIC0wNDAwDQpAQCAtNTIsNDQgKzUyLDQxIEBADQogIyBTeXN0ZW0gc3Bl
Y2lmaWMgYnVpbGQgY29tbWFuZHMgYW5kIGZsYWdzDQogQ0MgPSBnY2MNCiBM
RCA9IGxkDQorR0NDX0tPUFRTPUBMSU5VWF9HQ0NfS09QVFNADQogIyAtV2Fs
bA0KIDxpMzg2X2xpbnV4MjIgaTM4Nl9saW51eDI0Pg0KLUNDRkxBR1MgPSAg
JChLREVCVUcpIC1PMiAkKEZPTUlUKSBcDQotCS1mbm8tc3RyZW5ndGgtcmVk
dWNlIC1waXBlIC1tYXJjaD1pNDg2IC1tYWxpZ24tbG9vcHM9MiAtbWFsaWdu
LWp1bXBzPTIgXA0KLQktbWFsaWduLWZ1bmN0aW9ucz0yDQorWDg2PUBYODZf
S09QVFNADQorQ0NGTEFHUyA9ICAkKEtERUJVRykgLU8yICQoRk9NSVQpICQo
R0NDX0tPUFRTKSAtcGlwZSAkKFg4NikNCiBERUZJTkVTID0gLURfX0tFUk5F
TF9fICAtRENQVT01ODYgLURLRVJORUwgLURfS0VSTkVMIC1ETU9EVUxFICR7
U01QX0RFRn0gJHtLREVGSU5FU30NCiA8YWxwaGFfbGludXhfMjIgYWxwaGFf
bGludXhfMjQ+DQotQ0NGTEFHUyA9ICQoS0RFQlVHKSAtTzIgJChGT01JVCkg
LWZuby1zdHJlbmd0aC1yZWR1Y2UgLXBpcGUgLW1uby1mcC1yZWdzIC1mZml4
ZWQtOA0KK0NDRkxBR1MgPSAkKEtERUJVRykgLU8yICQoRk9NSVQpICQoR0ND
X0tPUFRTKSAtcGlwZSAtbW5vLWZwLXJlZ3MgLWZmaXhlZC04DQogREVGSU5F
UyA9IC1EX19LRVJORUxfXyAtREtFUk5FTCAtRF9LRVJORUwgLURNT0RVTEUg
JHtTTVBfREVGfQ0KIDxzMzkwX2xpbnV4MjIgczM5MF9saW51eDI0Pg0KLUND
RkxBR1MgPSAgIC1PICQoRk9NSVQpIC1mbm8tc3RyZW5ndGgtcmVkdWNlIFwN
Ci0JLWZuby1zdHJpY3QtYWxpYXNpbmcgLWZzaWduZWQtY2hhciANCitDQ0ZM
QUdTID0gICAtTyAkKEZPTUlUKSAkKEdDQ19LT1BUUykgLWZzaWduZWQtY2hh
ciANCiBERUZJTkVTID0gLURfX0tFUk5FTF9fICAtRF9fczM5MF9fIC1ES0VS
TkVMIC1EX0tFUk5FTCAtRE1PRFVMRSAke1NNUF9ERUZ9DQogPHNwYXJjX2xp
bnV4MjIgc3BhcmNfbGludXgyND4NCiBMRCA9IGxkIC1tIGVsZjMyX3NwYXJj
DQotQ0NGTEFHUyA9ICAgJChLREVCVUcpIC1PMiAkKEZPTUlUKSBcDQotCS1m
bm8tc3RyZW5ndGgtcmVkdWNlIC1waXBlIC1tY3B1PXY4IC1tbm8tZnB1IC1m
Y2FsbC11c2VkLWc1IC1mY2FsbC11c2VkLWc3DQorQ0NGTEFHUyA9ICAgJChL
REVCVUcpIC1PMiAkKEZPTUlUKSAkKEdDQ19LT1BUUykgXA0KKwktcGlwZSAt
bWNwdT12OCAtbW5vLWZwdSAtZmNhbGwtdXNlZC1nNSAtZmNhbGwtdXNlZC1n
Nw0KIERFRklORVMgPSAtRF9fS0VSTkVMX18gIC1EQ1BVPXNwYXJjIC1ES0VS
TkVMIC1EX0tFUk5FTCAtRE1PRFVMRSAke1NNUF9ERUZ9DQogPHNwYXJjNjRf
bGludXgyMiBzcGFyYzY0X2xpbnV4MjQ+DQogQ0MgPSBzcGFyYzY0LWxpbnV4
LWdjYw0KIExEID0gbGQgLW0gZWxmNjRfc3BhcmMNCi1DQ0ZMQUdTID0gICAk
KEtERUJVRykgLU8yICQoRk9NSVQpIFwNCi0JLWZuby1zdHJlbmd0aC1yZWR1
Y2UgLXBpcGUgLW1jcHU9dWx0cmFzcGFyYyAtbTY0IC1tbm8tZnB1IC1tY21v
ZGVsPW1lZGxvdyAtZmZpeGVkLWc0IC1mY2FsbC11c2VkLWc1IC1mY2FsbC11
c2VkLWc3IC1Xbm8tc2lnbi1jb21wYXJlDQorQ0NGTEFHUyA9ICAgJChLREVC
VUcpIC1PMiAkKEZPTUlUKSAkKEdDQ19LT1BUUykgXA0KKwktcGlwZSAtbWNw
dT11bHRyYXNwYXJjIC1tNjQgLW1uby1mcHUgLW1jbW9kZWw9bWVkbG93IC1m
Zml4ZWQtZzQgLWZjYWxsLXVzZWQtZzUgLWZjYWxsLXVzZWQtZzcgLVduby1z
aWduLWNvbXBhcmUNCiBERUZJTkVTID0gLURfX0tFUk5FTF9fICAtRENQVT1z
cGFyYzY0IC1ES0VSTkVMIC1EX0tFUk5FTCAtRE1PRFVMRSAke1NNUF9ERUZ9
DQogPHBwY19saW51eDIyIHBwY19saW51eDI0Pg0KLUNDRkxBR1MgPSAgICQo
S0RFQlVHKSAtTzIgJChGT01JVCkgLWZuby1zdHJlbmd0aC1yZWR1Y2UgXA0K
LQktZm5vLXN0cmljdC1hbGlhc2luZyAtZnNpZ25lZC1jaGFyIC1tc29mdC1m
bG9hdCAtcGlwZSBcDQorQ0NGTEFHUyA9ICAgJChLREVCVUcpIC1PMiAkKEZP
TUlUKSAkKEdDQ19LT1BUUykgLWZzaWduZWQtY2hhciAtbXNvZnQtZmxvYXQg
LXBpcGUgXA0KIAktZm5vLWJ1aWx0aW4gLWZmaXhlZC1yMg0KIERFRklORVMg
PSAtRF9fS0VSTkVMX18gIC1EX19wb3dlcnBjX18gLURLRVJORUwgLURfS0VS
TkVMIC1ETU9EVUxFICR7U01QX0RFRn0NCiA8cGFyaXNjX2xpbnV4MjQ+DQot
Q0NGTEFHUyA9ICAgJChLREVCVUcpIC1PMiAkKEZPTUlUKSBcDQotCS1mbm8t
c3RyaWN0LWFsaWFzaW5nIC1mbm8tY29tbW9uIC1mbm8tc3RyZW5ndGgtcmVk
dWNlIFwNCi0gICAgICAgIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1mc2lnbmVk
LWNoYXIgLW1uby1zcGFjZS1yZWdzIC1tZmFzdC1pbmRpcmVjdC1jYWxscyBc
DQotICAgICAgICAtbWRpc2FibGUtZnByZWdzIC1mZnVuY3Rpb24tc2VjdGlv
bnMgLW1hcmNoPTEuMSAtbXNjaGVkdWxlPTcxMDANCitDQ0ZMQUdTID0gICAk
KEtERUJVRykgLU8yICQoRk9NSVQpICQoR0NDX0tPUFRTKSAtZnNpZ25lZC1j
aGFyIC1tbm8tc3BhY2UtcmVncyBcDQorCS1tZmFzdC1pbmRpcmVjdC1jYWxs
cyAtbWRpc2FibGUtZnByZWdzIC1mZnVuY3Rpb24tc2VjdGlvbnMgXA0KKwkt
bWFyY2g9MS4xIC1tc2NoZWR1bGU9NzEwMA0KIERFRklORVMgPSAtRF9fS0VS
TkVMX18gIC1EX19saW51eF9fIC1ES0VSTkVMIC1EX0tFUk5FTCAtRE1PRFVM
RSAke1NNUF9ERUZ9DQogPGlhNjRfbGludXgyND4NCi1DQ0ZMQUdTID0gICAk
KEtERUJVRykgLU8yICQoRk9NSVQpIC1mbm8tc3RyaWN0LWFsaWFzaW5nIC1m
bm8tY29tbW9uIC1waXBlIFwNCi0JLWZmaXhlZC1yMTMgLW1maXhlZC1yYW5n
ZT1mMTAtZjE1LGYzMi1mMTI3IC1mYWxpZ24tZnVuY3Rpb25zPTMyIC1tYi1z
dGVwDQorQ0NGTEFHUyA9ICAgJChLREVCVUcpIC1PMiAkKEZPTUlUKSAkKEdD
Q19LT1BUUykgLXBpcGUgLWZmaXhlZC1yMTMgXA0KKwkgLW1maXhlZC1yYW5n
ZT1mMTAtZjE1LGYzMi1mMTI3IC1mYWxpZ24tZnVuY3Rpb25zPTMyIC1tYi1z
dGVwDQogREVGSU5FUyA9IC1EX19LRVJORUxfXyAtREtFUk5FTCAtRF9LRVJO
RUwgJHtTTVBfREVGfSAtRE1PRFVMRQ0KIDxhbGw+DQogSU5DTFVERVMgPSAt
SS4gLUkuLi8gLUkke1RPUF9TUkNESVJ9L2NvbmZpZw0K
--42002020-1449831134-1033678649=:2629--