I am using ports oops on a 4.5-stable freebsd which compiled with db4 support.
I just simply copy the default configuration oops.cfg.sample as oops.cfg, and modify something such as dns etc. when I modified networks_acl for group teacher. The problem come up.It doesn't work at all. oopsctl chkconfig seems no error. what's wrong with my configuration?
thanks a lot.

=============================================================
�����¶��ţ���VIP���䣡
������վ���� ӯ���������Σ�
���׿��� ��һ����������
MTI3LzgKMjAyLjExNS4zMi8yNAoyMDIuMTE1LjM5LjI1MC8zMgo=
IyMKIyAgbmFtZXNlcnZlcnMuIFVzZSB5b3VyIG93biwgbm90IG91ci4KIyMgCgpuYW1lc2Vy
dmVyIDIwMi4xMTUuMzIuMzYJCm5hbWVzZXJ2ZXIgMjAyLjExNS4zMi4zOQoKIyMKIyAgUG9y
dHMgYW5kIGFkZHJlc3MgdG8gdXNlIGZvciBIVFRQIGFuZCBJQ1AKIyMKCiNiaW5kCQlpcF9h
ZGRyfGhvc3RuYW1lCmh0dHBfcG9ydAk5MDgwCmljcF9wb3J0CTMxMzAKCiMjCiMjIENoYW5n
ZSBldWlkIHRvIHRoYXQgdXNlcgojIwojIyBXQVJOSU5HOiBpZiB5b3UgdXNlICd1c2VyaWQs
IHRoZW4geW91ICdyZWNvbmZpZ3VyZSB3aWxsIG5vdCBiZSBhYmxlIHRvCiMjCSAgICBvcGVu
IG5ldyBzb2NrZXRzIG9uIHJlc2VydmVkICg8IDEwMjQpIHBvcnRzIGFuZCB3aWxsIG5vdCBi
ZSBhYmxlCiMjCSAgICB0byByZXR1cm4gdG8gb3JpZ2luYWwgdXNlcmlkLgojIwojdXNlcmlk
CW9vcHMKCiMjCiMjIENoYW5nZSByb290IGRpcmVjdG9yeS4gSWYgZG9uJ3Qga25vdyBleGFj
dGx5IHdoYXQgYXJlIHlvdSBkb2luZyAtCiMjIGxlYXZlIGNvbW1lbnRlZC4KI2Nocm9vdAkJ
Pz8/CgojIwojICBMb2dmaWxlIC0ganVzdCBkZWJ1ZyBvdXRwdXQKIyAgV2hlbiB1c2VkIGlu
IGZvcm0gJ2ZpbGVuYW1lIFt7TiBTfV0gW1t1bl1idWZmZXJlZF0nCiMgIHdpbGwgYmUgcm90
YXRlZCBhdXRvbWF0aWNhbGx5ICh1cCB0byBOIGZpbGVzIHVwIHRvIFMgYnl0ZXMgaW4gc2l6
ZSkKIyMKI2xvZ2ZpbGUJCS9kZXYvdHR5CiNsb2dmaWxlCS91c3IvbG9jYWwvb29wcy9sb2dz
L29vcHMubG9nIHsgMyAxbSB9IHVuYnVmZmVyZWQKbG9nZmlsZQkJL2Rldi9jb25zb2xlCiMj
CiMgIEFjY2Vzc2xvZyAtIHRoZSBzYW1lIGFzIGZvciBzcXVpZC4gUmUgcm90YXRpbmcgLSBz
ZWUgbm90ZSBmb3IgbG9nZmlsZQojIwojYWNjZXNzbG9nCS9kZXYvdHR5CiNhY2Nlc3Nsb2cJ
L3Vzci9sb2NhbC9vb3BzL2xvZ3MvYWNjZXNzLmxvZwphY2Nlc3Nsb2cJL2Rldi9jb25zb2xl
CgojIwojICBQaWRmaWxlLiBmb3Iga2lsbCAtMSBgY2F0IG9vcHMucGlkYCBhbmQgZm9yIGxv
Y2tpbmcuCiMjCnBpZGZpbGUJCS92YXIvcnVuL29vcHMvb29wcy5waWQKCiMjCiMgU3RhdGlz
dGljcyBmaWxlIC0gb25jZSBwZXIgbWludXRlIGZsdXNoIHNvbWUgc3RhdGlzdGljcyB0byB0
aGlzIGZpbGUKIyMKc3RhdGlzdGljcwkvdmFyL3J1bi9vb3BzL29vcHNfc3RhdGZpbGUKCiMj
CiMgIGljb25zIC0gd2hlcmUgdG8gZmluZCBsaW5rLmdpZiwgZGlyLmdpZiwgYmluYXJ5Lmdp
ZiBhbmQgc28gb24gKGZvciAKIyAgZnRwIGxpc3RzKS4gSWYgb21pdHRlZCAtIG5hbWUgb2Yg
cnVubmluZyBob3N0IHdpbGwgYmUgdXNlZC4gQnV0CiMgIHVzaW5nIGV4cGxpY2l0IG5hbWVz
IGlzIGJldHRlciB3YXkuCiMjCgojaWNvbnMtaG9zdAlzczUucGFjby5uZXQKI2ljb25zLXBv
cnQJODAKI2ljb25zLXBhdGgJaWNvbnMKCiMjCiMgIFdoZW4gdG90YWwgb2JqZWN0IHZvbHVt
ZSBpbiBtZW1vcnkgZ3JvdyBvdmVyIHRoaXMgKHRoaXMgbWVhbgojICB0aGF0IGNhY2hhYmxl
IGRhdGEgZnJvbSBuZXR3b3JrIGNhbWUgZmFzdGVyIHRoZW4gd2UgY2FuIHNhdmUgb24gZGlz
aykKIyAgZHJvcCBvYmplY3RzICh3aXRob3V0IGF0dGVtcHQgdG8gc2F2ZSBvbiBkaXNrKS4K
IyMKbWVtX21heAkJNjRtCgojIwojICBIaW50LCBob3cgbXVjaCBjYWNoZWQgb2JqZWN0cyBr
ZWVwIGluIG1lbW9yeS4KIyAgV2hlbiB0b3RhbCBhbW91bnQgYmVjb21lIGxhcmdlciB0aGVu
IHRoaXMgbGltaXQgLSBzdGFydAojICBzd2FwaW5nIGNhY2hhYmxlIG9iamVjdHMgdG8gZGlz
awojIwpsb19tYXJrCQk4bQoKIyMKIyBzdGFydCByYW5kb20gZWFybHkgZHJvcCB3aGVuIG51
bWJlciBvZiBjbGllbnRzIHJlYWNoIHNvbWUgbGV2ZWwuCiMgdGhpcyBjYW4gcHJvdGVjdCB5
b3UgYWdhaW5zdCBhdHRhY2tzIGFuZCBhZ2FpbnN0IHNpdHVhdGlvbiB3aGVuCiMgb29wcyBj
YW50IGhhbmRsZSB0b28gbXVjaCBjb25uZWN0aW9ucy4gQnkgZGVmYXVsdCAtIDAgKG9yIG5v
IGxpbWl0cykuCiMjCiNzdGFydF9yZWQJMAoKIyMKIyByZWZ1c2UgYW55IGNvbm5lY3Rpb24g
d2hlbiBudW1iZXIgb2YgYWxyZWFkeSBjb25uZWN0ZWQgY2xpZW50cyByZWFjaCBzb21lCiMg
bGV2ZWwuIEJ5IGRlZmF1bHQgLSAwIChvciBubyBsaW1pdHMpLgojIwojcmVmdXNlX2F0CTAK
CiMjCiMgIGlmIGRvY3VtZW50IGNvbnRhaW4gbm8gRXhwaXJlczogdGhlbiBleHBpcmUgYWZ0
ZXIgKGluIGRheXMpCiMgIGZ0cC1leHBpcmUtdmFsdWUgLSBleHBpcmUgdGltZSBmb3IgZnRw
IChpbiBkYXlzKQojIwpkZWZhdWx0LWV4cGlyZS12YWx1ZSAgICA3CmZ0cC1leHBpcmUtdmFs
dWUJNwoKIyMKIyAgaWYgeW91IHdhbnQgZXhwaXJlc3RhcnQgYW5kIHJ1biBvbmx5IGF0IHNv
bWUgdGltZSBpbnRlcnZhbHMsCiMgIHRoZW4gdXNlIG5leHQgaW5zdHJ1Y3Rpb24KIyMKI2V4
cGlyZXRpbWUJU3VuOlNhdCAwMTAwOjA3MDAKCiMjCiMgTWF4aW11bSBleHBpdGUgdGltZSAt
IGRvYyB3aWxsIG5vdCBrZWVwIGluIGNhY2hlIG1vcmUgdGhlbgojIHRoaXMgbnVtYmVyIG9m
IGRheXMgKGV4Y2VwdCBpZiBkZWZhaXVsdC1leHBpcmUtdmFsdWUgdXNlZCBmb3IgdGhpcyBk
b2N1bWVueSkKIyMKbWF4LWV4cGlyZS12YWx1ZSAgICAgICAgMzAKCiMjCiMgaW4gd2hpY2gg
cHJvcG9ydGlvbiB0aW1lIHBhc3NlZCBzaW5jZSBsYXN0IGRvY3VtZW50IG1vZGlmaWNhdGlv
bgojIHdpbGwgYWNjb3VudGVkIGluIGV4cGlyZSB0aW1lLiBGb3IgZXhhbXBsZSwgaWYgbGFz
dC1tb2RpZmllZC1mYWN0b3I9NQojIGFuZCB0aGVyZSB3YXMgcGFzc2VkIDEwIGRheXMgc2lu
Y2UgZG9jdW1lbnQgbW9kaWZpY2F0aW9uLCB0aGVuIGV4cGlyYXRpb24KIyB3aWxsIGJlIHNl
dHRlZCB0byAyIGRheXMgaW4gZnV0dXJlIChidXQgbm8gbm9yZSB0aGVuIG1heC1leHBpcmUt
dmFsdWUpCiMjCmxhc3QtbW9kaWZpZWQtZmFjdG9yCTUKCiMjCiMgSWYgeW91IHdhbnQgbm90
IGNhY2hlIHJlcGxpZXMgd2l0aG91dCBMYXN0LU1vZGlmaWVkOgojIHVuY29tbWVudCBuZXh0
IGxpbmUuCiMjCiNkb250X2NhY2hlX3dpdGhvdXRfbGFzdF9tb2RpZmllZAoKIyAgcnVuIGV4
cGlyZSBldmVyeSAoIGluIGhvdXJzICkKIyMKZGVmYXVsdC1leHBpcmUtaW50ZXJ2YWwgMQoK
IyMKIyAgaWNwX3RpbWVvdXQgLSBob3cgbG9uZyB0byB3YWl0IGljcCByZXBseSBmcm9tIHBl
ZXIgKGluIG1zLCBlLmcgMTAwMCA9IDFzZWMpCiMjCmljcF90aW1lb3V0CTEwMDAKCiMjCiMg
IHN0YXJ0IGRpc2sgY2FjaGUgY2xlYW51cCB3aGVuIGZyZWUgc3BhY2Ugd2lsbCBiZSAoaW4g
JSUpCiMgIEFzIG9uIHRoZSB2ZXJ5IGxhcmdlIHN0b3JhZ2VzIDElIGlzIGxhcmdlIHNwYWNl
ICgxJSBmcm9tIDlHIGlzCiMgIDkwTSksIHRoZW4gb24gc3VjaCBzdG9yYWdlcyB5b3UgY2Fu
IHNldCBib3RoIGRpc2stbG93LWZyZWUgYW5kCiMgIGRpc2stb2stZnJlZSB0byAwLiBPb3Bz
IHdpbGwgc3RhcnQgY2xlYW51cCBpZiBpdCBoYXZlIGxlc3MgdGhlbiAyNTYKIyAgZnJlZSBi
bG9ja3MoMU0pLCBhbmQgc3RvcCB3aGVuIGl0IHJlYWNoIDUxMiBicmVlIGJsb2NrcygyTSku
CiMjCmRpc2stbG93LWZyZWUJMwoKIyMKIyAgc3RvcCBkaXNrIGNhY2hlIGNsZWFudXAgd2hl
biBmcmVlIHNwYWNlIHdpbGwgYmUgKGluICUlKQojIwpkaXNrLW9rLWZyZWUJNQoKIyMKIyAg
Rm9yY2VfaHR0cDExIC0gdHVybiBvbiBodHRwLzEuMSBmb3IgZWFjaCByZXF1ZXN0IHRvIGRv
Y3VtZW50IHNlcnZlcgojICBUaGlzIG9wdGlvbiByZXF1aXJlZCBpZiBtb2R1bGUgJ3Zhcnkn
IHVzZWQuCiMjCmZvcmNlX2h0dHAxMQoKIyMKIyAgQWx3YXlzIGNoZWNrIGRvY3VtZW50IGZy
ZXNobmVzcywgZXZlbiBpdCBpcyBub3Qgc3RhbGUgb3IgZXhwaXJlZAojICBUaGlzIGZvcmNl
IE9vcHMgYmVoYXZlIGxpa2Ugc3F1aWQgLSBmaXJzdCBjaGVjayBjYWNoZWQgZG9jLCB0aGVu
IHNlbmQKIyMKI2Fsd2F5c19jaGVja19mcmVzaG5lc3MKCiMjCiMgIElmIHVzZXItcmVxdWVz
dG9yIGFib3J0ZWQgY29ubmVjdGlvbiB0byBwcm94eSwgYnV0IHRoZXJlIHdhcyByZWNlaXZl
ZCBtb3JlCiMgIHRoZW4gc29tZSBwZXJjZW50IG90IHRoZSBkb2N1bWVudCAtIHRoZW4gY29u
dGludWUuCiMgIGRlZmF1bHQgdmFsdWUgLSA3NSUKIyMKZm9yY2VfY29tcGxldGlvbiA3NQoK
IyMKIyAgbWF4aW11bSBzaXplIG9mIHRoZSBvYmplY3Qgd2Ugd2lsbCBjYWNoZQojIwptYXhy
ZXNpZGVudAkxbQoKI2luc2VydF94X2ZvcndhcmRlZF9mb3IJeWVzCiNpbnNlcnRfdmlhCQl5
ZXMKaW5zZXJ0X3hfZm9yd2FyZGVkX2ZvciBubwppbnNlcnRfdmlhICAgICAgICAgICAgIG5v
CmZldGNoX3dpdGhfY2xpZW50X3NwZWVkIHllcwoKIyMKIyAgSWYgaG9zdCBoYXZlIHNldmVy
YWwgaW50ZXJmYWNlcyBvciBhbGlhc2VzLCB1c2UgZXhhY3RseQojICB0aGlzIG5hbWUgd2hl
biBjb25uZWN0aW5nIHRvIHNlcnZlcjoKIyMKI2Nvbm5lY3QtZnJvbQlwcm94eS5wYWNvLm5l
dAoKIyMKIwlBQ0xzIC0gY3VycmVudGx5OiB1cmxyZWdleCwgdXJscGF0aCwgdXNlcmNoYXJz
ZXQKIwkJcG9ydCwgZHN0ZG9tLCBkc3Rkb21fcmVnZXgsIHNyY19pcCwgdGltZQojCQllYWNo
IGFjbCBjYW4gYmUgbG9hZGVkIGZyb20gZmlsZS4KIyMKI2FjbAlDQUNIRUFCTEVDR0kJdXJs
cmVnZXgJaHR0cDovL3d3d1wudG9wcGluZ1wuY29tXC51YS9jZ2ktYmluL3BpbmdzdGF0XC5j
Z2lcPzA3MjE5OTEzMTgyNgojYWNsCVdXV1BBQ08JCXVybHJlZ2V4CXd3d1wucGFjb1wubmV0
CiNhY2wJTk9fUkxICQl1cmxyZWdleAl6aXBwZXIKI2FjbAlSRVdSSVRFUE9SVFMJdXJscmVn
ZXgJKHd3dy5qb2IucnV8d3d3LnNhbGUucnUpCiNhY2wJUkVXUklURUhPU1RTCXVybHJlZ2V4
CSh3d3cuYXNtLnJ1fHppcHBlclwucGFjbykKI2FjbAlXSU5VU0VSCQl1c2VyY2hhcnNldAl3
aW5kb3dzLTEyNTEKI2FjbAlET1NVU0VSCQl1c2VyY2hhcnNldAlpYm04NjYKI2FjbAlVTklY
VVNFUgl1c2VyY2hhcnNldAlrb2k4LXIKI2FjbAlSVVMJCWRzdGRvbQkJcnUgc3UKI2FjbAlV
S1IJCWRzdGRvbQkJdWEKI2FjbAlCQURQT1JUUwlwb3J0CQlbMDo3OV0sMTEwLDEzOCwxMzks
NTEzLFs2MDAwOjYwMTBdCiNhY2wJQkFERE9NQUlOCWRzdGRvbQkJYmFkZG9tYWluMS5jb20g
YmFkZG9tYWluMi5jb20KI2FjbAlCQURET01SRUdFWAlkc3Rkb21fcmVnZXgJYmFkZG9tYWlu
XC4oKGNvbSl8KG9yZykpCmFjbAlMT0NBTF9ORVRXT1JLUwlzcmNfaXAJCWluY2x1ZGU6L3Vz
ci9sb2NhbC9ldGMvb29wcy9hY2xfbG9jYWxfbmV0d29ya3MKYWNsCUJBRE5FVFdPUktTCXNy
Y19pcAkJMTkyLjE2OC4xMC8yNAojYWNsCVdPUktUSU1FCXRpbWUJCU1vbixUdWU6RnJpIDA5
MDA6MTgwMAojYWNsCUhUTUxTCQljb250ZW50X3R5cGUJdGV4dC9odG1sCiNhY2wJVVNFUlMJ
CXVzZXJuYW1lCWpvZQphY2wJTVNJRQkJaGVhZGVyX3N1YnN0cgl1c2VyLWFnZW50IE1TSUUK
YWNsCUFETUlOUwkJc3JjX2lwCQkxMjcuMC4wLjEKYWNsCVBVUkdFCQltZXRob2QJCVBVUkdF
CmFjbAlDT05ORUNUCQltZXRob2QJCUNPTk5FQ1QKYWNsCVNTTFBPUlQJCXBvcnQJCTQ0MwoK
IyMKIwlhY2xfZGVueSBbIV1BQ0wgWyFdQUNMIC4uLgojCWRlbnkgYWNjZXNzIGZvciBjb21i
aW5lZCBhY2wKIyMKYWNsX2RlbnkgUFVSR0UgIUFETUlOUwphY2xfZGVueSBDT05ORUNUICFT
U0xQT1JUCgojIwojICBOZXZlciBjYWNoZSBvYmplY3RzIHdpdGggVVJMLCBjb250YWluaW5n
IG5leHQgc3RyaW5ncyBpbiBwYXRoCiMjCnN0b3BfY2FjaGUJPwpzdG9wX2NhY2hlCWNnaS1i
aW4KCiMjCiMJc3RvcF9jYWNoZV9hY2wgWyFdQUNMIFshXUFDTCAuLi4KIwlTdG9wIGNhY2hl
IHVzaW5nIEFDTAojIwojc3RvcF9jYWNoZV9hY2wJV1dXUEFDTwoKIyMKIwlyZWZyZXNoX3Bh
dHRlcm4gQUNMTkFNRSBtaW4gcGVyY2VudCBtYXgKIwknbWluJyBhbmQgJ21heCcgYXJlIGxp
bWl0cyBiZXR3ZWVuIEV4cGl0ZSB0aW1lIHdpbGwgYmUgYXNzaWduZWQKIwlJZmYgZG9jdW1l
bnQgaGF2ZSBubyBleHBpcmU6IGhlYWRlciBhbmQgaGF2ZSBMYXN0LU1vZGlmaWVkOiBoZWFk
ZXIKIwl3ZSB3aWxsIHVzZSAncGVyY2VudCcgdG8gZXN0aW1hdGUgaG93IGZhciBpbiB0aGUg
ZnV0dXJlIGRvY3VtZW50IHdpbGwKIwliZSBleHBpcmVkLgojIwojcmVmcmVzaF9wYXR0ZXJu
CUNBQ0hFQUJMRUNHSQkyMCA1MCUgMjAwCiNyZWZyZXNoX3BhdHRlcm4JV1dXUEFDTwkJMCAw
JSAwCgojIwojCWJpbmRfYWNsIHtob3N0bmFtZXxpcH0gWyFdQUNMIFshXUFDTCAuLi4KIwli
aW5kIHRvIGdpdmVuIGFkZHJlc3Mgd2hlbiBjb25uZWN0aW5nIHRvIHNlcnZlcgojCWlmIHJl
cXVlc3QgbWF0Y2ggQUNMTkFNRQojIwojYmluZF9hY2wJb3V0bmFtZTEgUlVTCiNiaW5kX2Fj
bAlvdXRuYW1lMiBVS1IKCiMjCiMgIEFsd2F5cyBjaGVjayBkb2N1bWVudCBmcmVzaG5lc3Ms
IGJ1dCBub3cgb24gYWNsIGJhc2lzLgojIFlvdSBjYW4gaGF2ZSBzZXZlcmFsIHN1Y2ggbGlu
ZXMuCiMjIFRoaXMgZXhhbXBsZSB3aWxsIGZvcmNlIHRvIGNoZWNrIGZyZXNobmVzcyBvbmx5
IGZvciBodG1sIGRvY3VtZW50cy4KI2Fsd2F5c19jaGVja19mcmVzaG5lc3NfYWNsCUhUTUxT
CgojIwojIGxpbmUgJ3BhcmVudCAuLi4uJyB3aWxsIGZvcmNlIGFsbCBjb25uZWN0aW9ucyAo
ZXhjZXB0IHRvIGRlc3RpbmF0aW9ucwojIGluIGxvY2FsLWRvbWFpbiBvciBsb2NhbC1uZXR3
b3JrcykgZ28gdGhyb3VnaCBwYXJlbnQgaG9zdAojIwojcGFyZW50CQlwcm94eS5wYWNvLm5l
dCAzMTI4CgojIwojIHBhcmVudF9hdXRoCWxvZ2luOnBhc3N3b3JkCiMgaWYgeW91ciBwYXJl
bnQgcmVxdWlyZSBsb2dpbi9wYXNzd29yZCBmcm9tIHlvdXIgcHJveHkKIyMKI3BhcmVudF9h
dXRoCWxvZ2luOnBhc3N3b3JkCgojIElDUCBwZWVyJ3MKI3BlZXIJCXByb3h5LnBhY28ubmV0
CTMxMjggICAgICAgICAzMTMwIHsKIyMgICAgICAgICAgICAgIF5eXiBwZWVyIG5hbWUgICBe
aHR0cCBwb3J0ICAgXmljcCBwb3J0CiMjCQlpY3AgcG9ydCBjYW4gYmUgMCwgaW4gd2hpY2gg
Y2FzZSB3ZSBhc3N1bWUgdGhpcyBpcyBub24taWNwCiMjCQlwcm94eS4gV2UgYXNzdW1lIHRo
YXQgbm9uLWljcCBwZWVyIGFjdCBsaWtlIHBhcmVudCB3aGljaAojIwkJYW5zd2VyIE1JU1Mg
YWxsIHRoIGV0aW1lLiBJZiB0aGlzIHBlZXIgcmVmdXNlZCBjb25uZWN0aW9uCiMjCQl0aGVu
IGl0IGdvZXMgZG93biBmb3IgNjAgc2Vjb25kcyAtIGl0IGRvZXNuJ3QgdGFrZSBwYXJ0IGlu
CiMjCQlhbnkgcGVlci1yZWxhdGVkIGRlY2lzaW9ucy4KIwkJc2libGluZyA7CiMjIGlmIHRo
aXMgcGVlciByZXF1aXJlIGxvZ2luL3Bhc3N3b3JkIGZyb20geW91ciBwcm94eQojCQlteV9h
dXRoCW15X2xvZ2luOm15X3Bhc3N3b3JkOwojIyB3ZSB3aWxsIHNlbmQgcmVxdWVzdHMgZm9y
IHRoZXNlIGRvbWFpbnMKIwkJYWxsb3cJZHN0ZG9tYWluICogOwojIyB3ZSB3aWxsIE5PVCBz
ZW5kIHJlcXVlc3RzIGZvciB0aGVzZSBkb21haW5zCiMJCWRlbnkJZHN0ZG9tYWluICogOwoj
IyB3ZSB3aWxsIHNlbmQgb25seSByZXF1ZXN0cyBtYXRjaGVkIHRvIHRoaXMgYWNsCiMJCXBl
ZXJfYWNjZXNzCVshXUFDTDEgWyFdQUNMMgojIyBpZiAoYW5kIG9ubHkgaWYpIHBlZXIgaXMg
bm90IGljcC1jYXBhYmxlLCB0aGVuICwgaW4gY2FzZSBvZiBmYWlsIHdlCiMjIGxlYXZlIGZh
aWxlZCBwZWVyIGFsb25lIGZvciB0aGUgZG93bl90aW1lb3V0IGludGVydmFsIChpbiBzZWNv
bmRzKS4KIyMgVGhlbiB3ZSB3aWxsIHRyeSBhZ2FpbgojCQlkb3duX3RpbWVvdXQJNjAgOwoj
fQoKI3BlZXIJCXByb3h5Lmd1Lm5ldAk4MCAzMTMwIHsKIwkJcGFyZW50IDsKIwkJYWxsb3cJ
ZHN0ZG9tYWluICogOwojCQlkZW55CWRzdGRvbWFpbiBwYWNvLm5ldCBvZGVzc2EudWEgOwoj
fQoKIyMKIyAgTmV2ZXIgdXNlICJwYXJlbnQiIHdoZW4gY29ubmVjdGluZyB0byBzZXJ2ZXIg
aW4gdGhlc2UgZG9tYWlucwojIwpsb2NhbC1kb21haW4Jc2N1LmVkdS5jbgpsb2NhbC1kb21h
aW4JZWR1LmNuCgpsb2NhbC1uZXR3b3JrcwkyMDIuMTE1LzE2IDIwMi4xMTIvMTYKCiMKIyBH
cm91cHMKIwoKZ3JvdXAJdGVhY2hlcgl7CiMjCiMJWW91IGNhbiBkZXNjcmliZSBncm91cCBp
cCBhZHJlc3NlcyBoZXJlLCBvciB1c2luZyBzcmNfaXAgYWNsJ3MKIwl3aXRoIG5ldHdvcmtz
X2FjbCBkaXJlY3RpdmUuCiMJbmV0d29ya3NfYWNsIGFsd2F5cyBoYXZlIGhpZ2hlciBwcmVm
ZXJlbmNlIChjaGVja2VkIGZpcnN0KSBhbmQKIwlhcmUgY2hlY2tlZCBpbiB0aGUgb3JkZXIg
b2YgYXBwZWFyYW5jZS4KIwlJZiBob3N0IHdpbCBub3QgZmFsbCBpbiBhbnkgbmV0d29ya3Nf
YWNsIC0gd2UgY2hlY2sgaW4gbmV0d29ya3MuCiMgICAgICAgbmV0d29ya3MgYXJlIG9yZGVy
ZWQgYnkgbWFza2xlbiAtIGxvbmdlc3QgbWFza3MobW9zdCBzcGVjaWZpYyBuZXR3b3JrcykK
IwlhcmUgY2hlY2tlZCBmaXJzdC4KIyMKCW5ldHdvcmtzCTEyNy84IDIwMi4xMTUvMTYgMjEx
LjgzLzE2OwoJCgluZXR3b3Jrc19hY2wJTE9DQUxfTkVUV09SS1MgIUJBRF9ORVRXT1JLUyA7
CgliYWRwb3J0cwlbMDo3OV0sMTEwLDEzOCwxMzksNTEzLFs2MDAwOjYwMTBdIDsKCW1pc3MJ
CWFsbG93OwojIwojIGRlbnl0aW1lIC0gd2hlbiBkZW55IGFjY2VzcyB0byBwcm94eSBzZXJ2
ZXIgZm9yIHRoaXMgZ3JvdXAKIyMKIwlkZW55dGltZQlTYXQsU3VuCQkwNjQyOjEwMDAKIwlk
ZW55dGltZQlNb24sVGh1OkZyaSxTdW4JMDkwMDoyMTAwCiMjCiMgQXV0aGVudGljYXRpb24g
bW9kdWxlcyBmb3IgdGhpcyBncm91cCAoc2VwcmF0ZWQgYnkgc3BhY2UpCiMjCiMJYXV0aF9t
b2RzCXBhc3N3ZF9maWxlOwojCWF1dGhfbW9kcyBwYW07CgojIwojIFVSTC1SZWRpcmVjdG9y
IChwb3JubywgYWQuIGZpbHRlcmluZykgbW9kdWxlcyBmb3IgdGhpcyBncm91cCAoc2VwYXJh
dGUgYnkKIyBzcGFjZSkKIyBOT1RFOiBtb2R1bGVzIHJlZGlyIGFuZCBmYXN0cmVkaXIgY2Fu
IHVzZSBzZXZlcmFsIGNvbmZpZ3MsIG9uZSBwZXIgZ3JvdXAuCiMgICAgICAgdXNlIG5leHQg
Zm9ybTogcmVkaXJfbW9kcyByZWRpci8xOwojCQkgIGFuZCAgcmVkaXJfbW9kcyByZWRpci8y
OwojCQlpbiB0aGUgZ3JvdXBzIHNlY3Rpb24uCiMJWW91IGFsc28gaGF2ZSB0byBoYXZlIGNv
cnJlc3BvbmRlbnQgbW9kdWxlIHJlZGlyLzEgey4uLn0gYW5kCiMJcmVkaXIvMiB7Li4ufSBz
ZWN0aW9ucy4KIyMKIwlyZWRpcl9tb2RzCXJlZGlyOwoKCiMjCiMgbGltaXQgd2hvbGUgZ3Jv
dXAgdG8gOEtieXRlcyBwZXIgc2VjCiMjCiMJYmFuZHdpZHRoCThrOwoKIyMKIyBsaW1pdCBl
YWNoIGhvc3QgOEtieXRlcyBwZXIgc2VjCiMjCiMJcGVyX2lwX2J3CThrOwoKIyMKIyBsaW1p
dCBjb25uZWN0aW9ucyBudW1iZXIgZnJvbSBlYWNoIGhvc3QKIyMKIwlwZXJfaXBfY29ubgk4
OwoKIyMKIyBDb25uZWN0IGZyb20gc3BlY2lmaWVkIGlwIGFkZHJlc3MgZm9yIGdyb3VwLgoj
IFlvdSBjYW4gYmUgdXNlIHRoZSBpcCBhZGRyZXNzIG9yIGhvc3QgbmFtZS4KIyMKIwljb25u
ZWN0X2Zyb20JPGlwLWFkZHI+OwoKIyMKIyBsaW1pdCByZXF1ZXN0IHJhdGUgZnJvbSB0aGlz
IGdyb3VwIChyZXF1ZXN0cyBwZXIgc2Vjb25kKS4gVGhpcyBpcyBjcnVkZSwKIyBhbmQgbXVz
dCBiZSB1c2VkIGFzIGxhc3QgcmVzb3J0CiMjCiMJbWF4cmVxcmF0ZQkxMDA7CgojIwojIGlj
cCBhY2wgLi4uCiMjCiMJaWNwIHsKIwkJYWxsb3cJZHN0ZG9tYWluICogOwojCX0KCiMjCiMg
aHR0cCBhY2wKIyMKCWh0dHAgewojIwojIGh0dHAgYWNscyBjYW4gYmUgaW4gZm9ybSAnYWxs
b3cgZHN0ZG9tYWluIGRvbWFpbm5hbWUgZG9tYWlubmFtZSAuLi4gZG9tYWlubmFtZSA7CiMg
ICAgICAgICAgICAgICBvciBpbiBmb3JtICdhbGxvdyBkc3Rkb21haW4gaW5jbHVkZTpmaWxl
bmFtZSA7CiMJCSAgICAgICAgICAgIHdoZXJlIGZpbGVuYW1lIC0gbmFtZSBvZiB0aGUgZmls
ZSwgd2hpY2ggY29udGFpbgojCQkJCSAgZG9tYWlubmFtZXMgKG9uZSBwZXIgbGluZSwgIyAt
IGNvbW1lbnQgbGluZSk7CiMgICAgICAgICAgIHRoZSBzYW1lIHJ1bGVzIGZvciAnZGVueScK
IyMKCQlhbGxvdwlkc3Rkb21haW4gKiA7Cgl9Cn0KCmdyb3VwCXdvcmxkCXsKCW5ldHdvcmtz
CTAvMDsKCWJhZHBvcnRzCVswOjc5XSwxMTAsMTM4LDEzOSw1MTMsWzYwMDA6NjAxMF07Cglo
dHRwIHsKCQlkZW55CWRzdGRvbWFpbiAqIDsKCX0KCWljcCB7CgkJZGVueQlkc3Rkb21haW4g
KiA7Cgl9Cn0KCiMjCiMgIFN0b3JhZ2Ugc2VjdGlvbgojICBDaGFuZ2UgdGhpcyBmb3IgeW91
ciBvd24gc2l0dWF0aW9uLiBPb3BzIGNhbiB3b3JrIHdpdGhvdXQKIyAgc3RvcmFnZXMgKHVz
aW5nIG9ubHkgaW4tbWVtb3J5IGNhY2hlKS4KIyMKCiMjCiMgIFN0b3JhZ2UgZGVzY3JpcHRp
b24gKGNhbiBiZSBzZXZlcmFsKQojICBwYXRoIC0gZmlsZW5hbWUgb2Ygc3RvcmFnZS4gY2Fu
IGJlIHJhdyBkZXZpY2UgKGJlIGNhcmVmdWxsISkKIyAgc2l6ZSAtIHNpemUgKG9mIHN0b3Jh
Z2UgZmlsZSkuIENhbiBiZSBzbXRobmcgbGlrZSAxMDBrIG9yIDIwMG0gb3IgNGcKIyAgU2l6
ZSB1c2VkIG9ubHkgZHVyaWcgZm9ybWF0IHByb2Nlc3MgKG9vcHMgLXopLgojIwoKc3RvcmFn
ZSB7CglwYXRoIC91c3IvbG9jYWwvb29wcy9zdG9yYWdlcy9vb3BzX3N0b3JhZ2UgOwojCVNp
emUgb2YgdGhlIHN0b3JhZ2UuIENhbiBiZSBpbiBieXRlcyBvciAnYXV0bycuIEF1dG8gaXMK
Iwl1c2VmdWxsIGZvciBwcmUtY3JlYXRlZCBzdG9yYWdlcyBvciBkaXNrIHNsaWNlcy4KIwlO
T1RFOiAnc2l6ZSBhdXRvJyB3b24ndCB3b3JrIGZvciBMaW51eCBvbiBkaXNrIHNsaWNlcy4K
IwlUbyB1c2UgbGFyZ2UgKCA+IDJHICkgZmlsZXMgcnVuIGNvbmZpZ3VyZSB3aXRoIC0tZW5h
YmxlLWxhcmdlLWZpbGVzCgoJc2l6ZSAyMG0gOwoKIwlZb3UgaGF2ZSB0byB1c2UgJ29mZnNl
dCcgaW4gdGhlIGNhc2UgeW91ciByYXcgZGV2aWNlIChvciBzbGljZSkKIwlyZXF1aXJlIHRo
YXQuIEZvciBleGFtcGxlIGlmIHlvdSB1c2UgZW50aXJlIGRpc2sgYXMgc3RvcmFnZQojCXVu
ZGVyIEFJWCBhbmQgU29hbHJpcy9TcGFyYyAtIHlvdSBoYXZlIHRvIHNraXAgZmlyc3QgYmxv
Y2sKIwl3aGljaCBjb250YWluIGRpc2sgbGFiZWwgKHRoYXQgaXMgc3RvcmFnZSB3aWxsIHN0
YXJ0IGZyb20KIwluZXh0IDUxMiBzZWN0b3IuCiMJb2Zmc2V0CTUxMjsKfQoKI3N0b3JhZ2Ug
ewojCXBhdGggL3Vzci9sb2NhbC9vb3BzL3N0b3JhZ2VzL29vcHNfc3RvcmFnZTEgOwojCXNp
emUgNjAwbSA7CiN9Cgptb2R1bGUgbGFuZyB7CgoJZGVmYXVsdF9jaGFyc2V0CWtvaTgtcgoK
CSMgUmVjb2RlIHRhYmxlcyBhbmQgb3RoZXIgY2hhcnNldCBzdHVmZgoJQ2hhcnNldFJlY29k
ZVRhYmxlIHdpbmRvd3MtMTI1MSAvdXNyL2xvY2FsL2V0Yy9vb3BzL3RhYmxlcy9rb2ktd2lu
LnRhYgoJQ2hhcnNldFJlY29kZVRhYmxlIElTTy04ODU5LTUgL3Vzci9sb2NhbC9ldGMvb29w
cy90YWJsZXMva29pLWlzby50YWIKCUNoYXJzZXRSZWNvZGVUYWJsZSBpYm04NjYgL3Vzci9s
b2NhbC9ldGMvb29wcy90YWJsZXMva29pLWFsdC50YWIKCUNoYXJzZXRBZ2VudCB3aW5kb3dz
LTEyNTEgQUlSX01vc2FpYyBJV0VORy8xIE1TSUUgV2luTW9zYWljIChXaW5kb3dzIChXaW5O
VDsKCUNoYXJzZXRBZ2VudCB3aW5kb3dzLTEyNTEgKFdpbjE2OyAoV2luOTU7IChXaW45ODsg
KDE2LWJpdCkgT3BlcmEvMy4wCglDaGFyc2V0QWdlbnQgaWJtODY2IERvc0x5bnggTHlueDIv
T1MvMgp9Cgptb2R1bGUgZXJyIHsKCSMgZXJyb3IgcmVwb3J0aW5nIG1vZHVsZQoKCSMgdGVt
cGxhdGUKCXRlbXBsYXRlIC91c3IvbG9jYWwvZXRjL29vcHMvZXJyX3RlbXBsYXRlLmh0bWwK
CgkjIExhbmd1YWdlIHRvIHVzZSB3aGVuIGdlbmVyYXRlIEVycm9yIG1lc3NhZ2VzCglsYW5n
IHJ1Cn0KCm1vZHVsZSBwYXNzd2RfZmlsZSB7CgkjIHBhc3N3b3JkIHByb3h5LWF1dGhlbnRp
Y2F0aW9uIG1vZHVsZQoJIwoJIyBkZWZhdWx0IHJlYWxtLCBzY2hlbWUgYW5kIHBhc3N3ZCBm
aWxlCgkjIHRoZSBvbmx5IHRoaW5nIHlvdSByZWFsbHkgd2FudCB0byBjaGFuZ2UgaXMgJ2Zp
bGUnIGFuZCAndGVtcGxhdGUnCgkjIHlvdSBkb24ndCBoYXZlIHRvIHJlY29uZmlndXJlIG9v
cHMgaWYgeW91IG9ubHkKCSMgY2hhbmdlIGNvbnRlbnQgcGFzc3dkIGZpbGUgb3IgdGVtcGxh
dGU6IG9vcHMgYXV0aG9tYXRpY2FsbHkKCSMgcmVsb2FkIGZpbGUKCglyZWFsbQkJb29wcwoJ
c2NoZW1lCQlCYXNpYwoJZmlsZQkJL3Vzci9sb2NhbC9ldGMvb29wcy9wYXNzd2QKCXRlbXBs
YXRlCS91c3IvbG9jYWwvZXRjL29vcHMvYXV0aF90ZW1wbGF0ZS5odG1sCn0KCm1vZHVsZSBw
YW0gewoJcmVhbG0JCW9vcHMKCXNjaGVtZQkJQmFzaWMKCXNlcnZpY2UJCW9vcHMKCXRlbXBs
YXRlCS91c3IvbG9jYWwvZXRjL29vcHMvYXV0aF90ZW1wbGF0ZS5odG1sCn0KCm1vZHVsZSBw
YXNzd2RfcGdzcWwgewoJIyBwcm94eSBhdXRoZW50aWNhdGlvbiB1c2luZyBwb3N0Z3Jlc3Fs
CgkjICJJdmFuIEIuIFllbG5pa292IiA8YmFoZWtAa2hzcHUucnU+CgkjCgkjIGhvc3QgLSBo
b3N0IHdoZXJlIGRhdGFiYXNlIGxpdmUsCgkjIHVzZXIscGFzc3dvcmQgLSBsb2dpbiBhbmQg
cGFzc3dvcmQgZm9yIGRhdGFiYXNlIGFjY2VzcwoJIyBkYXRhYmFzZSAtIGRhdGFiYXNlIG5h
bWUKCSMgc2VsZWN0IC0gZmlsZSB3aXRoIHJlcXVlc3QgYm9keQoJIyB0ZW1wbGF0ZSAtIGZp
bGUgd2l0aCBodG1sIGRvYyB3aGljaCB1c2VyIHdpbGwgcmVjZWl2ZQoJIwkgICAgIGR1cmlu
ZyBhdXRoZW50aWNhdGlvbgogICAgICAgIHNjaGVtZSAgICAgICAgICBCYXNpYwogICAgICAg
IHJlYWxtICAgICAgICAgICBvb3BzCiAgICAgICAgaG9zdCAgICAgICAgICAgIDxob3N0IGFk
ZHJlc3MvbmFtZT4KICAgICAgICB1c2VyICAgICAgICAgICAgPGRhdGFiYXNlX3VzZXI+CiAg
ICAgICAgcGFzc3dvcmQgICAgICAgIDx1c2VyX3Bhc3N3b3JkPgogICAgICAgIGRhdGFiYXNl
ICAgICAgICA8ZGF0YWJhc2VfbmFtZT4KICAgICAgICBzZWxlY3QgICAgICAgICAgL3Vzci9s
b2NhbC9ldGMvb29wcy9zZWxlY3Quc3FsCiAgICAgICAgdGVtcGxhdGUgICAgICAgIC91c3Iv
bG9jYWwvZXRjL29vcHMvYXV0aF90ZW1wbGF0ZS5odG1sCn0KCm1vZHVsZSBwYXNzd2RfbXlz
cWwgewoJIyBwcm94eSBhdXRoZW50aWNhdGlvbiB1c2luIG15c3FsCgkjICJJdmFuIEIuIFll
bG5pa292IiA8YmFoZWtAa2hzcHUucnU+CgkjCgkjIGxvb2sgcGFzc3dkX3Bnc3FsIGRlc2Ny
aXB0aW9uCgkjCiAgICAgICAgc2NoZW1lICAgICAgICAgIEJhc2ljCiAgICAgICAgcmVhbG0g
ICAgICAgICAgIG9vcHMKICAgICAgICBob3N0ICAgICAgICAgICAgPGhvc3QgYWRkcmVzcy9u
YW1lPgogICAgICAgIHVzZXIgICAgICAgICAgICA8ZGF0YWJhc2VfdXNlcj4KICAgICAgICBw
YXNzd29yZCAgICAgICAgPHVzZXJfcGFzc3dvcmQ+CiAgICAgICAgZGF0YWJhc2UgICAgICAg
IDxkYXRhYmFzZV9uYW1lPgogICAgICAgIHNlbGVjdCAgICAgICAgICAvdXNyL2xvY2FsL2V0
Yy9vb3BzL3NlbGVjdC5zcWwKICAgICAgICB0ZW1wbGF0ZSAgICAgICAgL3Vzci9sb2NhbC9l
dGMvb29wcy9hdXRoX3RlbXBsYXRlLmh0bWwKfQoKIyBZb3UgY2FuIHNldmVyYWwgKHVwIHRv
IDE1KSByZWRpciBjb25maWdzOgojIG1vZHVsZSByZWRpci8xIHsKIwkuLi4KIyB9CiMgbW9k
dWxlIHJlZGlyLzIgewojCS4uLgojIH0KIyAuLi4KIwojIFN1Y2ggbmFtZXMgKHJlZGlyL04p
IGNhbiBiZSB1c2VkIGluIHJlZGlyX21vZHMgc3RhdGVtZW50cyBpbiBncm91cAojIGRlc2Ny
aXB0aW9uCgptb2R1bGUgcmVkaXIgewoJIyBmaWxlIC0gcmVnZXggcnVsZXMuCgkjIGVhY2gg
bGluZSBjb25zaXN0IG9mIG9uZSBvciB0d28gZmllbGRzIChzZXBhcmF0ZWQgd2l0aCB3aGl0
ZSBzcGFjZSkKCSMgMS4gcmVndWxhciBleHByZXNzaW9uCgkjIDIuIHJlZGlyZWN0LWxvY2F0
aW9uCgkjIGlmIHJlcXVlc3RlZCAoYnkgY2xpZW50KSB1cmwgbWF0Y2ggcmVnZXggdGhlbgoJ
IyBpZiB3ZSBoYXZlIHJlZGlyZWN0LXVybCB0aGVuIHdlIHNlbmQgJzMwMiBNb3ZlZCBUZW1w
b3JhcnknIHRvCgkjIAlyZWRpcmVjdC1sb2NhdGlvbgoJIyBpZiB3ZSBoYXZlIG5vIHJlZGly
ZWN0LWxvY2F0aW9uIChpLmUuIHdlIGhhdmUgbm8gMi1uZCBmaWVsZCkKCSMgCXRoZW4gd2Ug
c2VuZCB0ZW1wbGF0ZS5odG1sICglUiB3aWxsIGJlIHN1YnN0aXR1dGVkIGJ5IHJ1bGUpCgkj
ICAgIG9yIHNvbWUgZGVmYXVsdCBtZXNzYWdlIGlmIHdlIGhhdmUgbm8gdGVtcGxhdGUuCgkj
IHlvdSBkb24ndCBoYXZlIHRvIHJlY29uZmlndXJlIG9vcHMgZWFjaCB0aW1lCgkjIHlvdSBl
ZGl0IHJ1bGVzIG9yIHRlbXBsYXRlLCB0aGV5IHdpbGwgYmUgcmVsb2FkZWQgYXV0aG9tYXRp
Y2FsbHkKCglmaWxlCQkvdXNyL2xvY2FsL2V0Yy9vb3BzL3JlZGlyX3J1bGVzCgl0ZW1wbGF0
ZQkvdXNyL2xvY2FsL2V0Yy9vb3BzL3JlZGlyX3RlbXBsYXRlLmh0bWwKIyMJbW9kZSBjb250
cm9sIHdpbGwgcmVkaXIgcmV3cml0ZSB1cmwgb3Igc2VuZCBMb2NhdGlvbjogaGVhZGVyCiMj
CXdpdGggbmV3IGxvY2F0aW9uLiBWYWx1ZXMgYXJlICdyZXdyaXRlJyBvciAnYm91bmNlJwoj
CW1vZGUJCXJld3JpdGUKCgkjIFRoaXMgbW9kdWxlIGNhbiBwcm9jZXNzIHJlcXVlc3RzIHdo
aWNoIGNvbWUgb24gaHR0cF9wb3J0CgkjIGFuZC9vciBvbiBkaWZmZXJlbnQgcG9ydC4gRm9y
IGV4YW1wbGUsIHlvdSB3aXNoIG9vcHMKCSMgYmluZCBvbiB0d28gcG9ydHMgLSAzMTI4IGFu
ZCAzMTI5LCBhbmQgYWxsIHJlcXVlc3RzIHdoaWNoIGNvbWUgb24KCSMgcG9ydCAzMTI5IG11
c3QgcGFzcyB0aHJvdWdoIGZpbHRlcnMsIGFuZCByZXF1ZXN0cyB3aGljaCBjb21lIG9uIHBv
cnQKCSMgMzEyOCAoY29tbW9uIGh0dHBfcG9ydCkgLSBub3QuIFRoZW4geW91IGhhdmUgdG8g
dW5jb21tZW50IG5leHQgbGluZQoJIyBteXBvcnQgMzEyOQoJIyB3aGljaCBtZWFucyBleGFj
dGx5OiBiaW5kIG9vcHMgdG8gYWRkaXRpb25hbCBwb3J0IDMxMjkgYW5kIHByb2Nlc3MKCSMg
cmVxdWVzdHMgd2hpY2ggY29tZSBvbiB0aGlzIHBvcnQuCgkjIG15cG9ydCBjYW4gYmUgaW4g
dGhlIG5leHQgZm9ybToKCSMgbXlwb3J0IFt7aG9zdG5hbWV8aXBfYWRkcn06XXBvcnQKfQoK
bW9kdWxlIG9vcHNjdGwgewoJIyBwYXRoIHRvIG9vcHNjdGwgdW5peCBzb2NrZXQKCXNvY2tl
dF9wYXRoCS92YXIvcnVuL29vcHMvb29wc2N0bAoJIyB0aW1lIHRvIGF1dG8tcmVmcmVzaCBw
YWdlIChzZWNvbmRzKQogICAgICAgIGh0bWxfcmVmcmVzaCAgICAzMDAKfQoKIyMKIyMgVGhp
cyBtb2R1bGUgaGFkbmxlICdWYXJ5JyBoZWFkZXIgLSBpdCB3YXMgd3JpdHRlbiB0byBiZXR0
ZXIgc3VwcG9ydAojIyBSdXNzaWFuIEFwYWNoZQojIwptb2R1bGUJdmFyeSB7Cgl1c2VyLWFn
ZW50CWJ5X2NoYXJzZXQKCWFjY2VwdC1jaGFyc2V0CWlnbm9yZQp9CgojIwojIyBXV1cgLWFj
Y2VsZXJhdG9yLiBUbyB1c2UgLSBhZGQgd29yZCBhY2NlbCB0bwojIyByZWRpcl9tb2RzIGxp
bmUgZm9yCiMjIHRoZSBncm91cCAnd29ybGQnIGRlc2NyaXB0aW9uCiMjIFlvdSB3aWxsIGZp
bmQgbW9yZSBkZXNjcmlwdGlvbiBvZiB0aGlzIG1vZHVsZSBpbiBzdXBwbGllZCBhY2NlbF9t
YXBzIGZpbGUKIyMKI21vZHVsZQlhY2NlbCB7CiMgbXlwb3J0IGNhbiBoYXZlIG5leHQgZm9y
bToKIyBteXBvcnQgW3tob3N0bmFtZXxpcF9hZGRyfTpdcG9ydCAuLi4KIwlteXBvcnQJCQk4
MAojIwojIGFjY2VzcyBjYW4gaGF2ZSBuZXh0IGZvcm06CiMgYWNjZXNzIFt7aG9zdG5hbWV8
aXBfYWRkcn06XXBvcnQgLi4uCiMgSWYgdGhpcyBkaXJlY3RpdmUgaXMgc2V0LCB0aGVuIGlu
Y29taW5nIHBhY2tldHMgd2lsbCBiZSBjaGVja2VkIAojIGZvciBtb2R1bGUgImFjY2VsIiwg
YWNjb3JkaW5nIHRvIHRoaXMgZGlyZWN0aXZlLCBub3QgIm15cG9ydHMiLiAKIyBJbiB0aGlz
IGNhc2UgIm9vcHMiIHdpbGwgb3BlbiBzb2NrZXRzIGFjY29yZGluZyB0byAibXlwb3J0cyIK
IyBhcyB3ZWxsIGFzIHdoZW4gcnVsZSAiYWNjZXNzIiBpcyBtaXNzZWQuIFRoaXMgaXMgbmVl
ZGVkIHdoZW4gZGVzdGluYXRpb24gCiMgb2YgaW5jb21pbmcgcGFja2V0IGRvZXNuJ3QgbWF0
Y2ggIm9vcHMiIGJpbmRpbmdzICxmb3IgZXhhbXBsZSB3aGVuIHdlJ3JlIAojIGZvcndhcmRp
bmcgcGFja2V0cyB1c2luZyBmaXJld2FsbC4gCiMKIyBUaGlzIGFsbG93cyB1cyB0byBwcm9k
dWNlIHRoZSBmb2xsb3dpbmcgY29uc3RydWN0aW9uIDoKIyBmaXJld2FsbDogZm9yd2FyZCBu
ZXR3b3JrIDgwLTg1IC0+IGlwOjgwCiMgb29wczogbXlwb3J0IGlwOjgwCiMgb29wczogYWNj
ZXNzIDgwIDgxIDgyIDgzIDg0IDg1CiMgKGluIHRoaXMgY2FzZSAib29wcyIgd2lsbCBiaW5k
IG9ubHkgdG8gaXA6ODAgYWNjb3JkaW5nIHRvIHJ1bGUgIm15cG9ydHMiKQojIwojCWFjY2Vz
cwkJCTgwIDgxCiMKIyMKIyBhbGxvdyBhY2Nlc3MgdG8gcHJveHkgdGhyb3VnaCBhY2NlbCBt
b2R1bGUuCiMgRGVueSB3aWxsIHN0b3AgcHJveHkgdGhyb3VnaCBhY2NlbCBjb21wbGV0ZWx5
LCByZWdhcmRsZXNzCiMgb2YgYW55IG90aGVyIGFjY2VzcyBydWxlcwojIwojCXByb3h5X3Jl
cXVlc3RzCQlkZW55CiMKIyMKIwlGaWxlIHdpdGggbWFwcyBhbmQgb3RoZXIgY29uZmlnIGRp
cmVjdGl2ZXMKIwlDaGVja2VkIG9uY2UgcGVyIG1pbnV0ZS4gTm8gbmVlZCB0byByZXN0YXJ0
IG9vcHMgaWYgbWFwcyBjaGFuZ2VkCiMjCiMJZmlsZQkJCS91c3IvbG9jYWwvZXRjL29vcHMv
YWNjZWxfbWFwcwojfQoKIyMKIyMgVHJhbnNwYXJlbnQgcHJveHkuIFRvIHVzZSAtIGFkZCB3
b3JkICd0cmFuc3BhcmVudCcgaW50bwojIyByZWRpcl9tb2RzIGxpbmUgZm9yIHlvdXIgZ3Jv
dXAuCiMjIGluIHRoZSB5b3VyIGxvY2FsIChvciBhbnkgb3RoZXIpIGdyb3VwIGRlc2NyaXB0
aW9uCiMjCiNtb2R1bGUJdHJhbnNwYXJlbnQgewojIG15cG9ydCBjYW4gaGF2ZSBuZXh0IGZv
cm06CiMgbXlwb3J0IFt7aG9zdG5hbWV8aXBfYWRkcn06XXBvcnQgLi4uCiMJbXlwb3J0CQkJ
MzEyOAojCWJyb2tlbl9icm93c2VycwkJTVNJRQojfQoKIyMKIyMgJWggLQkJCXJlbW90ZSBp
cCBhZGRyZXNzCiMjICVBIC0JCQlsb2NhbCBpcCBhZGRyZXNzCiMjICVkIC0JCQlpcCBhZGRy
ZXNzIG9mIHNvdXJjZSAocGVlciBvciBkb2N1bWVudCBzZXJ2ZXIpCiMjICVsIC0JCQlyZW1v
dGUgbG9nbmFtZSBmcm9tIGlkZW50ZCAobm90IHN1cG9ydGVkIG5vdykKIyMgJVUgLQkJCXJl
bW90ZSB1c2VyIChmcm9tICdBdXRob3JpemF0aW9uJyBoZWFkZXIpCiMjICV1IC0JCQlyZW1v
dGUgdXNlciAoZnJvbSBwcm94eS1hdXRoKQojIyAle2Zvcm1hdH10IC0JCXRpbWUgd2l0aCBv
cHRpb25hbCB7Zm9ybWF0fSAoZm9yIHN0cmZ0aW1lKQojIyAldCAtCQkJdGltZSB3aXRoIHN0
YW5kYXJkIGZvcm1hdCAlZC8lYi8lWTolVCAlWgojIyAlciAtCQkJcmVxdWVzdCBsaW5lCiMj
ICVzIC0JCQlzdGF0dXMgY29kZQojIyAlYiAtCQkJYnl0ZXMgcmVjZWl2ZWQKIyMgJXtoZWFk
ZXJ9aSAtCQl2YWx1ZSBvZiBoZWFkZXIgaW4gcmVxdWVzdAojIyAlbSAtCQkJSElUL01JU1MK
IyMgJWsgLQkJCWhpZXJhcmNoeSAoRElSRUNUL05PTkUvLi4uKQojIwojIyBkaXJlY3RpdmUg
YnVmZmVyZWQgY2FuIGJlIGZvbGxvd2VkIGJ5IHNpemUgb2YgdGhlIGJ1ZmZlciwKIyMgbGlr
ZSAnYnVmZmVyZWQgMzIwMDAnCiMjCiNtb2R1bGUgY3VzdG9tbG9nIHsKIwlwYXRoCS91c3Iv
bG9jYWwvb29wcy9sb2dzL2FjY2Vzc19jdXN0b20xCiMJZm9ybWF0CSIlaCAlbCAldSAldCBc
IiVyXCIgJT5zICViIgojICBzcXVpZCBodHRwZCBtb2RlIGxvZyBlbXVsYXRpb24KIwlmb3Jt
YXQJIiVoICV1ICVsICV0IFwiJXJcIiAlcyAlYiAlbTolayIKIwlidWZmZXJlZAojCXBhdGgJ
L3Vzci9sb2NhbC9vb3BzL2xvZ3MvYWNjZXNzX2N1c3RvbTIKIwlmb3JtYXQJIiVoLT4lQSAl
bCAldSBbJXRdIFwiJXJcIiAlcyAlYiBcIiV7VXNlci1BZ2VudH1pXCIiCiN9Cgptb2R1bGUJ
YmVya2VsZXlfZGIgewogICAgIyMKICAgICMgIGRiaG9tZSAtIGRpcmVjdG9yeSB3aGVyZSBh
bGwgREIgaW5kZXhlcyByZXNpZGUuIFVzZSBmdWxsIHBhdGgKICAgICMJICAgIHRoaXMgZGly
ZWN0b3J5IG11c3QgZXhpc3QuCiAgICAjICBkYm5hbWUgLSBmaWxlbmFtZSBmb3IgaW5kZXgg
ZmlsZS4gVXNlIGp1c3QgZmlsZW5hbWUgKG5vIGZ1bGwgcGF0aCkKICAgICMjCgoJZGJob21l
CS91c3IvbG9jYWwvb29wcy9EQgoJZGJuYW1lCWRidXJsCgogICAgIyMKICAgICMgIFRoaXMg
cGFyYW1ldGVyIHNwZWNpZmllcyBpbnRlcm5hbCBjYWNoZSBzaXplIG9mIEJlcmtlbGV5REIu
CiAgICAjICBJbmNyZWFzZSB0aGlzIHBhcmFtZXRlciBmb3IgYmVzdCBwZXJmb3JtYW5jZSAo
aWYgeW91IGhhdmUgYSBsb3Qgb2YgbWVtb3J5KS4KICAgICMgIEZvciBleGFtcGxlOiAgZGJf
Y2FjaGVfbWVtCTY0bQogICAgIyAgRGVmYXVsdCBhbmQgbWluaW11bSB2YWx1ZToJNG0KICAg
ICMKICAgICMgIFRoaXMgbWVtb3J5IHBvb2wgaXMgbm90IHBhcnQgb2YgbWVtb3J5IHBvb2ws
IHNwZWNpZmllZCBieSBtZW1fbWF4IHBhcmFtZXRlci4KICAgICMgIFdBUk5JTkc6IHRoZSBh
bW91bnQgb2YgUkFNIHVzZWQgYnkgb29wcyB3aWxsIGJlIGluY3JlYXNlZCBieSB0aGUgdmFs
dWUgb2YKICAgICMgIHRoaXMgcGFyYW1ldGVyLgogICAgIyMKICAgICNkYl9jYWNoZV9tZW0J
NG0KCn0KCiNtb2R1bGUJZ2lnYWJhc2VfZGIgewojICAgIFRoaXMgbW9kdWxlIGVuYWJsZSBH
aWdhQkFTRSBhcyBkYXRhYmFzZSBlbmdpbmUuCiMgICAgWW91IGNhbiB1c2UgYmVya2VsZXlf
ZGIgb3IgZ2lnYWJhc2VfZGIsIG5vdCBib3RoLgojICAgIEFsc28sIGltcG9ydGFudCBub3Rp
Y2UgLSBpbmRleGVzIGNyZWF0ZWQgd2l0aCBkaWZmZXJlbnQgbW9kdWxlcwojICAgIGFyZSBu
b3QgY29tcGF0aWJsZS4KIyAgICAjIwojICAgICMgIGRiaG9tZSAtIGRpcmVjdG9yeSB3aGVy
ZSBhbGwgREIgaW5kZXhlcyByZXNpZGUuIFVzZSBmdWxsIHBhdGgKIyAgICAjCSAgICB0aGlz
IGRpcmVjdG9yeSBtdXN0IGV4aXN0LgojICAgICMgIGRibmFtZSAtIGZpbGVuYW1lIGZvciBp
bmRleCBmaWxlLiBVc2UganVzdCBmaWxlbmFtZSAobm8gZnVsbCBwYXRoKQojICAgICMjCiMK
IwlkYmhvbWUJL3Vzci9sb2NhbC9vb3BzL0RCCiMJZGJuYW1lCWdkYnVybAojCiMgICAgIyMK
IyAgICAjICBUaGlzIHBhcmFtZXRlciBzcGVjaWZpZXMgaW50ZXJuYWwgY2FjaGUgc2l6ZSBv
ZiBCZXJrZWxleURCLgojICAgICMgIEluY3JlYXNlIHRoaXMgcGFyYW1ldGVyIGZvciBiZXN0
IHBlcmZvcm1hbmNlIChpZiB5b3UgaGF2ZSBhIGxvdCBvZiBtZW1vcnkpLgojICAgICMgIEZv
ciBleGFtcGxlOiAgZGJfY2FjaGVfbWVtCTY0bQojICAgICMgIERlZmF1bHQgYW5kIG1pbmlt
dW0gdmFsdWU6CTRtCiMgICAgIwojICAgICMgIFRoaXMgbWVtb3J5IHBvb2wgaXMgbm90IHBh
cnQgb2YgbWVtb3J5IHBvb2wsIHNwZWNpZmllZCBieSBtZW1fbWF4IHBhcmFtZXRlci4KIyAg
ICAjICBXQVJOSU5HOiB0aGUgYW1vdW50IG9mIFJBTSB1c2VkIGJ5IG9vcHMgd2lsbCBiZSBp
bmNyZWFzZWQgYnkgdGhlIHZhbHVlIG9mCiMgICAgIyAgdGhpcyBwYXJhbWV0ZXIuCiMgICAg
IyMKIyAgICAjZGJfY2FjaGVfbWVtCTRtCiMKI30KCiNtb2R1bGUgd2NjcDIgewojIENhY2hl
IGlkZW50aXR5LgojIElwIGFkZHJlc3MgdW5kZXIgd2hpY2ggeW91ciBjYWNoZSB3aWxsIGJl
IHZpc2libGUuCiMgWW91IHNob3VsZCBzZXQgaXQgb25seSBpbiBjYXNlIG9vcHMgY2FuJ3Qg
ZGV0ZXJtaW5lIGl0J3MgSVAgaW4gb3RoZXIgb3RoZXIgd2F5CiMJaWRlbnRpdHkgIHByb3h5
LnlvdXJkb21haW4udGxkCiMKIyBTZXJ2aWNlIGdyb3VwLgojIExvb2sgQ2lzY28gZG9jdW1l
bnRhdGlvbiB3aGF0IHNlcnZpY2UgZ3JvdXAgaXMuCiMgSSB0d28gd29yZHMgLSB0aGlzIGlz
IGdyb3VwIG9mIGNhY2hlcyBhbmQgcm91dGVycyB3aGljaCBoYW5kbGUgdHJhbnNwYXJlbnRs
eQojIHNvbWUga2luZCBvZiB0cmFmZmljLiBUbyBpbnRlcmNlcHQgd3d3IHJlcXVlc3RzIGZy
b20geW91ciB1c2VycyB1c2UKIyBuZXh0ICdzZXJ2aWNlLWdyb3VwJyBkZWZpbml0aW9uCiMK
IyAgICAgICAgc2VydmljZS1ncm91cCB3ZWItY2FjaGUKIwojIFJvdXRlcnMgZm9yIHRoaXMg
c2VydmljZSBncm91cC4KIyBIZXJlIHlvdSBsaXN0IGlwLWFkZHJlc3NlcyBvZiByb3V0ZXJz
IGluIHNlcnZpY2UgZ3JvdXAuCiMgVG8gYXZvaWQgcHJvYmxlbXMgbGlzdCBhZGRyZXNzZXMg
ZnJvbSB3aGljaCBjaXNjbyB3aWxsIHJlcGx5IC0gdGhhdCBpcwojIGFkZHJlc3Mgb2YgaW50
ZXJmYWNlIHdoaWNoIGlzIGRpcmVjdGVkIHRvIGNhY2hlLiBZb3UgY2FuIGRlc2NyaWJlIHNl
dmVyYWwKIyAodXAgdG8gMzIpIHJvdXRlcnMuCiMKIyAgICAgICAgcm91dGVyICAxMC4xMC4x
MC4xCiMKI30K


Дати відповідь електронним листом