Windows2003-3790/inetcore/outlookexpress/msoeres/example.eml
2020-09-30 16:53:55 +02:00

275 lines
21 KiB
Plaintext

Content-Type: text/html
Content-Transfer-Encoding: base64
PCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9XM0MvL0RURCBIVE1MIDQuMCBUcmFuc2l0aW9uYWwv
L0VOIj4NCjxIVE1MPjxIRUFEPg0KPE1FVEEgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PXdp
bmRvd3MtMTI1MiIgaHR0cC1lcXVpdj1Db250ZW50LVR5cGU+DQo8U1RZTEU+LnRpdGxlIHsNCglD
T0xPUjogYmx1ZTsgRklMVEVSOiBnbG93KENvbG9yPXJlZCwgU3RyZW5ndGg9MSk7IEZPTlQtU0la
RTogNTBwdDsgUE9TSVRJT046IGFic29sdXRlOyBWSVNJQklMSVRZOiBoaWRkZW47IGZvbnQtZmFj
ZTogJ2FyaWFsLCBhcmlhbCBibGFjaywgc2FucyBzZXJpZicNCn0NCi5zdWJUaXRsZSB7DQoJQ09M
T1I6IGJsYWNrOyBGT05ULVNUWUxFOiBpdGFsaWM7IEZPTlQtV0VJR0hUOiBib2xkOyBIRUlHSFQ6
IDE0ZW07IFBPU0lUSU9OOiBhYnNvbHV0ZTsgV0lEVEg6IDEwMGVtDQp9DQoubmFtZSB7DQoJQ09M
T1I6IHJlZDsgRk9OVC1XRUlHSFQ6IGJvbGQ7IEhFSUdIVDogMTRlbTsgUE9TSVRJT046IGFic29s
dXRlOyBXSURUSDogMTAwZW0NCn0NCjwvU1RZTEU+DQoNCjxTQ1JJUFQgaWQ9Y2xpZW50RXZlbnRI
YW5kbGVyc0pTIGxhbmd1YWdlPWphdmFzY3JpcHQ+DQo8IS0tDQp2YXIgZ19hcnJheU5hbWVzID0g
Ww0KCS8vIERldg0KCVsNCgkJIlN0ZXZlbiBCYWlsZXkiLA0KCQkiTmVpbCBCcmVuY2giLA0KCQki
UmF5bW9uZCBDaGVuZyIsDQoJCSJDaHJpcyBFdmFucyIsDQoJCSJKdXN0aW4gRmVycmFyaSIsDQoJ
CSJHcmVnIEZyaWVkbWFuIiwNCgkJIkRhdmUgSGF3cyIsDQoJCSJQYXVsIEhpZ2luYm90aGFtIiwN
CgkJIk1pY2hhZWwgTGkiLA0KCQkiVmlrcmFtIE1hZGFuIiwNCgkJIkJyZXR0IE1hcmwiLA0KCQki
QnJpYW4gTW9vcmUiLA0KCQkiU2hhaGVlZGEgUGFydmVlbiIsDQoJCSJKaW0gU2NoYWFkIiwNCgkJ
IlN0ZXZlIFNlcmR5IiwNCgkJIkphc29uIFNvdWJpZXIiLA0KCQkiSmFzb24gU3RhamljaCIsDQoJ
CSJZdXJpIFN0YXJpa292Ig0KCV0sDQoJLy8gVGVzdA0KCVsNCgkJIkdheWFuYSBCYWdkYXNhcnlh
biIsDQoJCSJKb2huIEJvd3NlciIsDQoJCSJNYXJrIEJveWNlIiwNCgkJIkJyYWQgQnV0bGVyIiwN
CgkJIkZyYW5rIENhc3RlbCIsDQoJCSJNYXR0IENsZW1lbnRzIiwNCgkJIkNocmlzIERyZWhlciIs
DQoJCSJMb25uaWUgRmVyZ3Vzb24iLA0KCQkiU3VzYW4gSGlnZ3MiLA0KCQkiUmFjaGVsIEl3YW1v
dG8iLA0KCQkiR2FyeSBKdXJnZW5zZW4iLA0KCQkiQ3JhaWcgS29lZ2VsIiwNCgkJIkdvcmRvbiBN
Y0Vscm95IiwNCgkJIkJ1cm5zeSBNY05hbWVlIiwNCgkJIkRhbmllbCBNdXJkb2NrIiwNCgkJIlJh
bmQgTXlsZXMiLA0KCQkiQ29saW4gT3JmZmVyIiwNCgkJIldvbiBSbyIsDQoJCSJDdXJ0IFN0aWxs
IiwNCgkJIktlcnJ5IFdlc3RmYWxsIg0KCV0sDQoJLy8gUE0NCglbDQoJCSJMYXVyZW4gQW50b25v
ZmYiLA0KCQkiQ2F0aGVsaWpuZSBCZXJ0ZWxzIiwNCgkJIlNhcmFoIEZ1ZWxsaW5nIiwNCgkJIkdl
b3JnZSBIYXRvdW4iLA0KCQkiQ2hyaXN0b3BoZXIgU2FnZXIiLA0KCQkiSm9obiBUYWZveWEiLA0K
CQkiQW5uIFRvb2tlIiwNCgkJIkRlYnJhIEwuIFdlaXNzbWFuIg0KCV0sDQoJLy8gSW50ZXJuYXRp
b25hbA0KCVsNCgkJIk1hamQgQWJiYXIiLA0KCQkiQWhtZWQgQWJkZWwtaGFkeSBIZWxhbCIsDQoJ
CSJWZXJvbmljYSBCcm9uZHVtIiwNCgkJIkphbWVzIENhcnJvbGwiLA0KCQkiQ2hhcm4gR29vayBD
aG9uZyIsDQoJCSJHYXZpbiBEZW1wc2V5IiwNCgkJIktlbiBGaXR6Z2VyYWxkIiwNCgkJIlNob3No
YW5uYWggRm9yYmVzIiwNCgkJIlJlbmUgRnVsbGVyIiwNCgkJIll1dWtpIEhhc2hpbW90byIsDQoJ
CSJIYWppbWUgSGlyb3NlIiwNCgkJIk1ha290byBJd2FvaGppIiwNCgkJIkVyaWMgS2FvIiwNCgkJ
Ikhpcm9zaGkgS2FtYXRhIiwNCgkJIkphZSBId2FuIEtpbSIsDQoJCSJKaSBZb3VuZyBLaW0iLA0K
CQkiQ2hhcmxlcyBMYXUiLA0KCQkiSm9obiBNY0Nvbm5lbGwiLA0KCQkiTG9yaSBBbm4gTWVkbGV5
IiwNCgkJIlZhbGVyaWUgTWVycmlsbCIsDQoJCSJUZXJ1eXVraSBNaWhhc2hpIiwNCgkJIlRpdHRp
IFJpbmdzdHJvbSIsDQoJCSJNb2hhbWVkIFNhZGVrIiwNCgkJIlRlb21hbiBTbWl0aCIsDQoJCSJS
ZXJrYm9vbiBTdXdhbmFzdWsiLA0KCQkiVGFrYW8gU3V6dWtpIiwNCgkJIkFsaWNlIFRzdW5nIiwN
CgkJIkdlbm5hZHkgV2V4bGVyIiwNCgkJIk1pa2kgWW9zaGlkYSINCgldLA0KCS8vIE90aGVyDQoJ
Ww0KCQkiKlVzZXIgQXNzaXN0YW5jZTxCUj4iLA0KCQkiTWFyY2lhIENoYXJsdG9uPEJSPiIsDQoJ
CSJTdXphbm5lIENoaWxlczxCUj4iLA0KCQkiS2VsbHkgSG9ybjxCUj4iLA0KCQkiTmFuY3kgUmFp
a2VuPEJSPiIsDQoJCSJKb24gU3RlaW5lcjxCUj4iLA0KCQkiRGlhbmUgU3RpZWxzdHJhPEJSPiIs
DQoJCSJSb2JlcnQgU3Rvcnk8QlI+IiwNCgkJIipIb3RtYWlsIFNlcnZlcjxCUj4iLA0KCQkiU2hh
eW5lIEJyYWRsZXk8QlI+IiwNCgkJIlJpY2sgSG9semxpPEJSPiIsDQoJCSJSb2xhbmQgVG9rdW1p
PEJSPiIsDQoJCSJEYXZlIFRvbmc8QlI+IiwNCgkJIipNYW5hZ2VtZW50IGFuZCBBZG1pbmlzdHJh
dGlvbjxCUj4iLA0KCQkiQmxha2UgSXJ2aW5nPEJSPiIsDQoJCSJKb2huIEx1ZHdpZzxCUj4iLA0K
CQkiR2VvcmdpYSBNYXJyYTxCUj4iLA0KCQkiSmFuaWNlIE1jS2VldmVyPEJSPiIsDQoJCSIqTWFy
a2V0aW5nIGFuZCBQcm9kdWN0IFBsYW5uaW5nPEJSPiIsDQoJCSJLaW0gQWtlcnM8QlI+IiwNCgkJ
IkVkIEdyYWN6eWs8QlI+IiwNCgkJIipXaXRoIHRoYW5rcyB0by4uLjxCUj4iLA0KCQkiRXJpYyBC
ZXJtYW48QlI+IiwNCgkJIk1heCBDaGlja2VyaW5nPEJSPiIsDQoJCSJLZWl0aCBDbGFudG9uPEJS
PiIsDQoJCSJEYXZpZCBIZWNrZXJtYW48QlI+IiwNCgkJIkVyaWMgSG9ydml0ejxCUj4iLA0KCQki
QW5keSBKYWNvYnM8QlI+IiwNCgkJIk1hcmsgTGl1bTxCUj4iLA0KCQkiQ2hyaXMgTWVlazxCUj4i
LA0KCQkiRGFycmVuIE1pdGNoZWxsPEJSPiIsDQoJCSJKb2huIFBsYXR0PEJSPiIsDQoJCSJQaGls
IFJvZ2FuPEJSPiIsDQoJCSJSb2JlcnQgUm91bnRod2FpdGU8QlI+IiwNCgkJIk1laHJhbiBTYWhh
bWk8QlI+IiwNCgkJIlJpY2hhcmQgU2h1cGFrPEJSPiIsDQogICAgICAgICJCcnlhbiBUdXR0bGU8
QlI+Ig0KCV0NCl07DQp2YXIgZ19hcnJheVNheWluZ3MgPSBbDQoJIpNMb29rISBUaGUgUmVkIENo
YWlyIGlzIGJhY2shlCIsDQoJIpNJdCdzIDxCPmFsbDwvQj4gZ29vZC6UIiwNCgkik09FIFJvY2tz
IZQiLA0KCSJBY3RpdmVEQj8gLi4uIE5haC4iLA0KCSJIb3RTdG9yZT8uLi4gTm9wZS4iLA0KCSJP
cGllREI/Li4uIE5vdCBxdWl0ZS4uLiIsDQoJIlRCRERCPy4uLiBIaGhtbW1tLi4uIiwNCgkiRGly
ZWN0REIuLi4gT0ssIGZvciBub3cuIiwNCgkik1dobydzIHlvdXIgZGFkZHk/lCIsDQoJIkZhYmlv
IHRoZSBicmluZ2VyIG9mIE1vcmFsZSIsDQoJIlRpbWUgdG8gdGFrZSB0aGUgbW91c2UgZm9yIGEg
d2Fsay4uLiIsDQoJIpNDb2ZmZWU/lCIsDQoJIpNIZXkhIEkgZ290IHRoZSBmaW5nZXIhlCIsDQoJ
IpNJIG11c3QgYmUgYWxpZW4gc21hcnQhlCIsDQoJIpNTbyBJIGhhdmUgdGhpcyBpZGVhLi4uIFdl
IGhhdmUgdGhpcyBnb3JpbGxhLi4ulCIsDQoJIpNUaGlzIG9uZSdzIG5vdCBqdXN0IHN1cGVyIGhv
dCwgaXQncyBwbGFzbWEgaG90LpQiLA0KCSI8SU1HIFNSQz0ncG1oZWFkLmdpZic+IiwNCgkik1ll
YWgsIGJhYnkhlCIsDQoJIpNBcyBhIHNoYXJlaG9sZGVyLCBJIGFtIGFwcGFsbGVkLpQiLA0KCSJT
cGVjaWFsIHRoYW5rcyB0byBSZW1vLCBTcGFja2xlciwgS2FnZSwgV2VlbmllLCBSb29raWUgYW5k
IFNpdHRpbmcgRHVjay4iLA0KCSKTSGlzIGNhciB3YXMgc3RvbGVuLi4uIEFnYWluIT+UIiwNCgki
k1doYXQgdGhlIColISMgaXMgYW4gLk9EUyBmaWxlP5QiLA0KCSJTbm93Ym9hcmRpbmcgc2Vhc29u
IGlzIG9wZW4hIiwNCgkik0l0J3MgdGhlIFJlZFdlc3QgbGlmZXN0eWxlLpQiLA0KCSKTSXQgbXVz
dCBiZSBhIFRyaWRlbnQgYnVnLpQiLA0KCSKTVmVyZGFuYSBvciBUYWhvbWE/lCIsDQoJIkNvbnRy
YXJ5IHRvIHBvcHVsYXIgYmVsaWVmOiIsDQoJIk9FIDxCPndvbid0PC9iPiBnaXZlIHlvdXIgZXgt
Z2lybGZyaWVuZCB5b3VyIG5ldyBwaG9uZSBudW1iZXIuIiwNCgkiT0UgPGI+d29uJ3Q8L2I+IG1p
eCBLb29sLUFpZCBpbnRvIHlvdXIgZmlzaHRhbmsuIiwNCgkiT0UgPGI+d29udCd0PC9iPiBraWNr
IHlvdXIgZG9nLiIsDQoJIpNEdWRlISBUaGF0IGlzIHNvb29vIGNvb2whlCIsDQoJIlNwZWNpYWwg
VGhhbmtzIHRvLi4uIiwNCgkiVGhlIHBlb3BsZSB0aGF0IG1hZGUgaXQgaW50byB3b3JrIGJlZm9y
ZSAxMWFtIiwNCgkiV2hvZXZlciBkZWNpZGVkIHRoZSBwZXJmLWZvcmsgd2FzIGEgZ29vZCBpZGVh
Ig0KXTsNCg0KdmFyIFBJID0gTWF0aC5QSTsNCnZhciBjb3MgPSBNYXRoLmNvczsNCnZhciBzaW4g
PSBNYXRoLnNpbjsNCnZhciBhYnMgPSBNYXRoLmFiczsNCnZhciByYW5kID0gTWF0aC5yYW5kb207
DQp2YXIgcm91bmQgPSBNYXRoLnJvdW5kOw0KDQp2YXIgZ19kaXN0RGVsdGEgPSAwOw0KdmFyIGdf
dGltZURlbHRhID0gNTA7DQp2YXIgZ19uYW1lQ29sb3IgPSAwOw0KDQp2YXIgZ19tYXhUaXRsZVdp
ZHRoRGl2MiA9IDA7DQp2YXIgZ19tYXhUaXRsZUhlaWdodERpdjIgPSAwOw0KdmFyIGdfbWF4VGl0
bGVIZWlnaHQgPSAwOw0KDQp2YXIgZ19udW1TdGVwc1RvR3JvdyA9IDIwOw0KdmFyIGdfTGFyZ2VG
b250U2l6ZSA9IDI0Ow0KdmFyIGdfU2l6ZUdyb3dEZWx0YSA9ICgxMDAgLSBnX0xhcmdlRm9udFNp
emUpIC8gZ19udW1TdGVwc1RvR3JvdzsNCnZhciBnX1NpemVTaHJpbmtEZWx0YSA9IC1nX0xhcmdl
Rm9udFNpemUgLyBnX251bVN0ZXBzVG9Hcm93Ow0KDQp2YXIgZ19pQ2xpY2tlZEluZGV4ID0gMDsN
Cg0KdmFyIGdfYXJyYXlTaXplID0gNTsNCnZhciBnX3RpdGxlQXJyYXkgPSBbZ19hcnJheVNpemVd
Ow0KDQp2YXIgU2hvb3RhZ2FpbjsNCnZhciBjbGlja1ZhbGlkID0gdHJ1ZTsNCnZhciBzdG9wVmFs
aWQgPSBmYWxzZTsNCnZhciBjU2F5aW5nID0gMDsNCg0KdmFyIGdfdGltZU91dElEOw0KdmFyIGdf
dGltZU91dE9FaXNtczsNCg0KZnVuY3Rpb24gU3RhcnRQYWdlKCkgew0KCWZvciAoaSA9IDA7IGkg
PCA1OyBpKyspIHsNCgkJZ190aXRsZUFycmF5W2ldLnN0eWxlLnZpc2liaWxpdHkgPSAidmlzaWJs
ZSI7DQoJfQ0KCWNsaWNrVmFsaWQgPSB0cnVlOw0KCXN0b3BWYWxpZCA9IGZhbHNlOw0KCWdfQ2Fu
U2hvd09FaXNtcyA9IHRydWU7DQoJbG9nby5zdHlsZS52aXNpYmlsaXR5ID0gInZpc2libGUiOw0K
CUluaXRPYmplY3RzKCk7DQoJUG9zVGl0bGVzKCk7DQp9DQoNCmZ1bmN0aW9uIE9uTG9hZCgpIHsN
CglnX3RpdGxlQXJyYXlbMF0gPSB0aXRsZURldjsNCglnX3RpdGxlQXJyYXlbMV0gPSB0aXRsZVRz
dDsNCglnX3RpdGxlQXJyYXlbMl0gPSB0aXRsZVBNczsNCglnX3RpdGxlQXJyYXlbM10gPSB0aXRs
ZUludDsNCglnX3RpdGxlQXJyYXlbNF0gPSB0aXRsZU90aDsNCgkNCglmb3IgKGk9MDsgaSA8IGdf
YXJyYXlTaXplOyBpKyspIHsNCgkJdmFyIGUgPSBnX3RpdGxlQXJyYXlbaV07DQoJCWlmIChnX21h
eFRpdGxlV2lkdGhEaXYyIDwgZS5jbGllbnRXaWR0aC8yKQ0KCQkJZ19tYXhUaXRsZVdpZHRoRGl2
MiA9IGUuY2xpZW50V2lkdGgvMjsNCgkJaWYgKGdfbWF4VGl0bGVIZWlnaHREaXYyIDwgZS5jbGll
bnRIZWlnaHQvMil7DQoJCQlnX21heFRpdGxlSGVpZ2h0ID0gZS5jbGllbnRIZWlnaHQ7DQoJCQln
X21heFRpdGxlSGVpZ2h0RGl2MiA9IGdfbWF4VGl0bGVIZWlnaHQvMjsNCgkJfQ0KCX0NCglTdGFy
dFBhZ2UoKTsNCn0NCg0KZnVuY3Rpb24gR2V0WENlbnRlcigpIHtyZXR1cm4gKChkb2N1bWVudC5i
b2R5LmNsaWVudFdpZHRoKS8yKTt9DQpmdW5jdGlvbiBHZXRZQ2VudGVyKCkge3JldHVybiAoKGRv
Y3VtZW50LmJvZHkuY2xpZW50SGVpZ2h0KS8yKTt9DQoNCmZ1bmN0aW9uIEdldE1heERpc3QoeENl
bnRlciwgeUNlbnRlcikgew0KCXJldHVybiAoKHhDZW50ZXIgLSBnX21heFRpdGxlV2lkdGhEaXYy
KSA+ICh5Q2VudGVyIC0gZ19tYXhUaXRsZUhlaWdodERpdjIpKSA/IA0KCQkJeUNlbnRlciAtIGdf
bWF4VGl0bGVIZWlnaHREaXYyOiANCgkJCXhDZW50ZXIgLSBnX21heFRpdGxlV2lkdGhEaXYyOw0K
fQ0KDQpmdW5jdGlvbiBTZXRYWVBvcyAoZSwgeENlbnRlciwgeUNlbnRlciwgbWF4RGlzdCl7DQoJ
dmFyIGFjdERpc3Q7DQoJdmFyIHZhckFtb3VudDsNCgl2YXIgZG9jSGVpZ2h0ID0gZG9jdW1lbnQu
Ym9keS5jbGllbnRXaWR0aDsNCg0KCWFjdERpc3QgPSBjb3MoZS5yYWRpYW5zKjYuMCk7DQoJZS5z
dHlsZS5wb3NMZWZ0ID0geENlbnRlciAtIGUuY2xpZW50V2lkdGgvMi4wICsgbWF4RGlzdCphY3RE
aXN0KmNvcyhlLnJhZGlhbnMpOw0KCWUuc3R5bGUucG9zVG9wID0geUNlbnRlciAtIGUuY2xpZW50
SGVpZ2h0LzIuMCArIG1heERpc3QqYWN0RGlzdCpzaW4oZS5yYWRpYW5zKTsNCgl2YXIgcmFuZDEg
PSAyNSooKGNvcyhlLnJhZGlhbnMpKSArIDIpOw0KCWUuc3R5bGUuZm9udFNpemUgPSAocmFuZDE+
NTAgPyA1MCA6IHJhbmQxKTsNCglpZiAoIWUuc3RheW9udG9wKXsNCgkJZS5zdHlsZS56SW5kZXgg
PSAoKHJhbmQxIDwgMzcpID8gMSA6IDMpOw0KCX0NCgl2YXJBbW91bnQgPSBhYnMoYWN0RGlzdCkg
KiAyNTU7DQoJaWYgKHZhckFtb3VudCA+IDI1NSkNCgkJdmFyQW1vdW50ID0gMjU1Ow0KCXZhckFt
b3VudCA9ICh2YXJBbW91bnQgPDwgOCkgKyAoKDI1NSAtIHZhckFtb3VudCkgPDwgMTYpOw0KCWUu
ZmlsdGVycy5nbG93LkNvbG9yID0gdmFyQW1vdW50Ow0KCWUucmFkaWFucyArPSBlLmFuZ2xlRGVs
dGE7DQp9DQoNCmZ1bmN0aW9uIEluaXRPYmplY3RzKCkgew0KCXZhciBhbmdsZSA9IDAuMDsNCgl2
YXIgeENlbnRlciA9IEdldFhDZW50ZXIoKTsNCgl2YXIgeUNlbnRlciA9IEdldFlDZW50ZXIoKTsN
Cgl2YXIgbWF4RGlzdCA9IEdldE1heERpc3QoeENlbnRlciwgeUNlbnRlcik7DQoNCglsb2dvLnN0
eWxlLnBvc0xlZnQgPSB4Q2VudGVyLTE1MDsNCglsb2dvLnN0eWxlLnBvc1RvcCA9IHlDZW50ZXIt
NTA7DQoNCglmb3IgKGk9MDsgaSA8IGdfYXJyYXlTaXplOyBpKyspIHsNCgkJdmFyIGUgPSBnX3Rp
dGxlQXJyYXlbaV07DQoJCQ0KCQllLnN0YXlvbnRvcCA9IGZhbHNlOw0KCQllLnJhZGlhbnMgPSBh
bmdsZTsNCgkJZS5zdHlsZS5mb250U2l6ZSA9IGdfTGFyZ2VGb250U2l6ZTsNCgkJZS54RGVsdGEg
PSAwOw0KCQllLnlEZWx0YSA9IDA7DQoJCWUuZm9udERlbHRhID0gMDsNCgkJZS5mTW91c2VPdmVy
ID0gZmFsc2U7DQoJCWUuYW5nbGVEZWx0YSA9ICguMDA0KlBJKSArIC4wMDUgKyAoLjAxKihyYW5k
KCktLjUpKTsNCgkJU2V0WFlQb3MoZSwgeENlbnRlciwgeUNlbnRlciwgbWF4RGlzdCk7ICAgICAN
CgkJYW5nbGUgKz0gMi4wKlBJKnJhbmQoKTsNCgl9DQp9DQoNCmZ1bmN0aW9uIFBvc1RpdGxlcygp
IHsNCgl2YXIgeENlbnRlciA9IEdldFhDZW50ZXIoKTsNCgl2YXIgeUNlbnRlciA9IEdldFlDZW50
ZXIoKTsNCgl2YXIgbWF4RGlzdCA9IEdldE1heERpc3QoeENlbnRlciwgeUNlbnRlcik7DQoNCglm
b3IgKGk9MDsgaSA8IGdfYXJyYXlTaXplOyBpKyspIHsNCgkJdmFyIGUgPSBnX3RpdGxlQXJyYXlb
aV07DQoJCVNldFhZUG9zKGUsIHhDZW50ZXIsIHlDZW50ZXIsIG1heERpc3QpOyAgICAgDQoJCWUu
cmFkaWFucyArPSBlLmFuZ2xlRGVsdGE7DQoJfQ0KCWdfdGltZU91dElEID0gc2V0VGltZW91dCgi
UG9zVGl0bGVzKCkiLCBnX3RpbWVEZWx0YSk7DQp9DQoNCmZ1bmN0aW9uIEdyb3dFbGVtZW50cyh0
aW1lcykgew0KCWZvciAoaT0wOyBpIDwgZ19hcnJheVNpemU7IGkrKykgew0KCQl2YXIgZSA9IGdf
dGl0bGVBcnJheVtpXTsNCgkJdmFyIG5ld0xlZnQgPSBlLnN0eWxlLnBvc0xlZnQgKyBlLnhEZWx0
YTsNCgkJdmFyIG5ld1RvcCA9IGUuc3R5bGUucG9zVG9wICsgZS55RGVsdGE7DQoJCWUuc3R5bGUu
cG9zTGVmdCA9IG5ld0xlZnQ7DQoJCWUuc3R5bGUucG9zVG9wID0gbmV3VG9wOw0KCQllLnN0eWxl
LmZvbnRTaXplID0gZ19MYXJnZUZvbnRTaXplICsgKGdfbnVtU3RlcHNUb0dyb3cgLSB0aW1lcykq
ZS5mb250RGVsdGE7DQoJfQ0KDQoJaWYgKHRpbWVzID4gMikgew0KCQlnX3RpbWVPdXRJRCA9IHNl
dFRpbWVvdXQoIkdyb3dFbGVtZW50cygiICsgKHRpbWVzIC0gMSkgKyAiKSIsIGdfdGltZURlbHRh
KTsNCgl9IGVsc2Ugew0KCQlPbkdyb3dGaW5pc2goKTsNCgl9DQp9DQoNCmZ1bmN0aW9uIEZvY3Vz
T25DbGlja2VkKCkgew0KCXZhciB4Q2VudGVyID0gR2V0WENlbnRlcigpOw0KCXZhciB5Q2VudGVy
ID0gR2V0WUNlbnRlcigpOw0KCQ0KCUNsb3NlT0Vpc21zKHRydWUpOw0KCWdfQ2FuU2hvd09FaXNt
cyA9IGZhbHNlOw0KDQoJZm9yIChpPTA7IGkgPCBnX2FycmF5U2l6ZTsgaSsrKSB7DQoJCXZhciBl
ID0gZ190aXRsZUFycmF5W2ldOw0KCQlpZiAoaSA9PSBnX2lDbGlja2VkSW5kZXgpIHsNCgkJCWUu
eERlbHRhID0gLWUuc3R5bGUucG9zTGVmdCAvIGdfbnVtU3RlcHNUb0dyb3c7DQoJCQllLnlEZWx0
YSA9IC1lLnN0eWxlLnBvc1RvcCAvIGdfbnVtU3RlcHNUb0dyb3c7DQoJCQllLmZvbnREZWx0YSA9
IGdfU2l6ZUdyb3dEZWx0YTsNCgkJfQ0KCQllbHNlIHsNCgkJCWUueERlbHRhID0gKHhDZW50ZXIg
LSBlLnN0eWxlLnBvc0xlZnQpIC8gZ19udW1TdGVwc1RvR3JvdzsNCgkJCWUueURlbHRhID0gKHlD
ZW50ZXIgLSBlLnN0eWxlLnBvc1RvcCkgLyBnX251bVN0ZXBzVG9Hcm93Ow0KCQkJZS5mb250RGVs
dGEgPSBnX1NpemVTaHJpbmtEZWx0YTsNCgkJCWUuZmlsdGVycy5nbG93LmNvbG9yID0gMDsNCgkJ
fQ0KCX0NCg0KCWdfdGltZU91dElEID0gc2V0VGltZW91dCgiR3Jvd0VsZW1lbnRzKCIgKyBnX251
bVN0ZXBzVG9Hcm93ICsgIikiLCBnX3RpbWVEZWx0YSk7DQp9DQoNCmZ1bmN0aW9uIFNsb3dFckRv
d24ob2JqKSB7DQoJaWYgKCFvYmouZk1vdXNlT3Zlcikgew0KCQlvYmouZk1vdXNlT3ZlciA9IHRy
dWU7DQoJCW9iai5zdGF5b250b3AgPSB0cnVlOw0KCQlvYmouYW5nbGVEZWx0YSAvPSA0Ow0KCQlv
Ymoub3JpZ0luZGV4ID0gb2JqLnN0eWxlLnpJbmRleDsNCgkJb2JqLnN0eWxlLnpJbmRleCA9IDc7
DQoJCW9iai5vcmlnQ29sb3IgPSBvYmouc3R5bGUuY29sb3I7DQoJCW9iai5zdHlsZS5jb2xvciA9
ICJyZWQiOw0KCX0NCn0NCg0KZnVuY3Rpb24gU3BlZWRFclVwKG9iaikgew0KCWlmIChvYmouZk1v
dXNlT3Zlcikgew0KCQlvYmouZk1vdXNlT3ZlciA9IGZhbHNlOw0KCQlvYmouc3RheW9udG9wID0g
ZmFsc2U7DQoJCW9iai5hbmdsZURlbHRhICo9IDQ7DQoJCW9iai5zdHlsZS5jb2xvciA9IG9iai5v
cmlnQ29sb3I7DQoJCW9iai5zdHlsZS56SW5kZXggPSBvYmoub3JpZ0luZGV4Ow0KCX0NCn0NCg0K
ZnVuY3Rpb24gT25PYmpDbGljayhpbmRleCkgew0KCWlmIChjbGlja1ZhbGlkKSB7DQoJCWNsZWFy
VGltZW91dChnX3RpbWVPdXRJRCk7DQoJCWdfaUNsaWNrZWRJbmRleCA9IGluZGV4Ow0KCQlGb2N1
c09uQ2xpY2tlZCgpOw0KCX0NCglpZiAoc3RvcFZhbGlkKSB7ICAgIA0KCQljbGVhclRpbWVvdXQo
U2hvb3RhZ2Fpbik7DQoJCWdfaUNsaWNrZWRJbmRleCA9IGluZGV4Ow0KCQlJbmRpdk5hbWUuc3R5
bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOw0KCQlzZXRUaW1lb3V0KCJTdGFydFBhZ2UoKTsiLCAx
MDAwKTsNCgl9DQoJCQ0KfQ0KDQpmdW5jdGlvbiBPbkdyb3dGaW5pc2goKSB7DQoJY2xpY2tWYWxp
ZCA9IGZhbHNlOw0KCWZvciAoaSA9IDA7IGkgPCA1OyBpKyspIHsNCgkJaWYgKGkgIT0gZ19pQ2xp
Y2tlZEluZGV4KQ0KCQkJZ190aXRsZUFycmF5W2ldLnN0eWxlLnZpc2liaWxpdHkgPSAiaGlkZGVu
IjsgDQoJfQ0KCWxvZ28uZmlsdGVyc1swXS5hcHBseSgpOw0KCWxvZ28uc3R5bGUudmlzaWJpbGl0
eSA9ICJoaWRkZW4iOw0KCWxvZ28uZmlsdGVyc1swXS5wbGF5KCk7DQoJc2V0VGltZW91dCgiTmFt
ZURpc3BsYXkoMCk7IiwgMjUwMCk7DQoJDQp9DQoNCmZ1bmN0aW9uIE5hbWVTaG9vdCh4aW5jciwg
eWluY3IsIG1heFNoaWZ0LCBpbmRleCkgew0KCXZhciBmVmVydCA9ICh5aW5jciAhPSAwKTsNCgl2
YXIgcGVyY2VudDsNCgl2YXIgbmV3Q29sb3I7DQoJdmFyIGJWYWw7DQoJdmFyIHJldmVyc2UgPSBm
YWxzZTsNCgkNCglJbmRpdk5hbWUuc3R5bGUucG9zTGVmdCArPSB4aW5jcjsNCglJbmRpdk5hbWUu
c3R5bGUucG9zVG9wICs9IHlpbmNyOw0KCQ0KCWlmIChmVmVydCkgew0KCQlwZXJjZW50ID0gYWJz
KEluZGl2TmFtZS5zdHlsZS5wb3NUb3ApL21heFNoaWZ0Ow0KCQlpZiAoeWluY3IgPiAwKQ0KCQkJ
cmV2ZXJzZSA9IHRydWU7DQoJfQ0KCWVsc2Ugew0KCQlwZXJjZW50ID0gYWJzKEluZGl2TmFtZS5z
dHlsZS5wb3NMZWZ0KS9tYXhTaGlmdDsNCgkJaWYgKHhpbmNyID4gMCkNCgkJCXJldmVyc2UgPSB0
cnVlOw0KCX0NCglpZiAocmV2ZXJzZSkNCgkJcGVyY2VudCA9IDEuMC1wZXJjZW50Ow0KCQkNCgli
VmFsID0gcm91bmQoMjU1KnBlcmNlbnQpOw0KDQoJc3dpdGNoIChnX25hbWVDb2xvcikgew0KCQlj
YXNlIDA6IG5ld0NvbG9yID0gYlZhbDw8MTY7IGJyZWFrOw0KCQljYXNlIDE6IG5ld0NvbG9yID0g
YlZhbDw8ODsgYnJlYWs7DQoJCWNhc2UgMjogbmV3Q29sb3IgPSAoYlZhbDw8MTYpICsgKGJWYWw8
PDgpOyBicmVhazsNCgkJY2FzZSAzOiBuZXdDb2xvciA9IGJWYWw7IGJyZWFrOw0KCQljYXNlIDQ6
IG5ld0NvbG9yID0gKGJWYWw8PDE2KSArIGJWYWw7IGJyZWFrOw0KCQljYXNlIDU6IG5ld0NvbG9y
ID0gKGJWYWw8PDgpICsgYlZhbDsgYnJlYWs7DQoJCWNhc2UgNjogbmV3Q29sb3IgPSAoYlZhbDw8
MTYpICsgKGJWYWw8PDgpICsgYlZhbDsgYnJlYWs7DQoJfSAgIA0KCQ0KCUluZGl2TmFtZS5zdHls
ZS5jb2xvciA9IG5ld0NvbG9yOw0KCUluZGl2TmFtZS5zdHlsZS5mb250U2l6ZSA9IHJvdW5kKDgw
KnBlcmNlbnQpOw0KCWlmIChwZXJjZW50ID4gMC4wNSl7DQoJCVNob290YWdhaW4gPSBzZXRUaW1l
b3V0KCJOYW1lU2hvb3QoIiArIHhpbmNyICsgIiwgIiArIHlpbmNyICsgIiwgIiArIG1heFNoaWZ0
ICsgIiwgIiArIGluZGV4ICsgIikiLCAyNSk7DQoJfQ0KCWVsc2Ugew0KCQlnX25hbWVDb2xvciA9
IChnX25hbWVDb2xvcisxKSAlIDY7DQoJCU5hbWVEaXNwbGF5KGluZGV4KzEpDQoJfQ0KfQ0KCQ0K
ZnVuY3Rpb24gTG9nb0NsaWNrZWQoKSB7DQoJaWYgKGdfQ2FuU2hvd09FaXNtcykgDQoJeyAgIA0K
CQlnX0NhblNob3dPRWlzbXMgPSBmYWxzZTsNCgkJU2hvd09FaXNtcygpOw0KCX0NCn0gICAgICAg
DQoNCmZ1bmN0aW9uIFNob3dPRWlzbXMoKSB7DQoJaWYgKGNTYXlpbmcgPCBnX2FycmF5U2F5aW5n
cy5sZW5ndGgpIHsNCgkJSW5kaXZTYXlpbmcuaW5uZXJIVE1MID0gZ19hcnJheVNheWluZ3NbY1Nh
eWluZ107DQoJCXZhciBoZWlnaHQgPSBJbmRpdlNheWluZy5jbGllbnRIZWlnaHQ7DQoJCQ0KCQl2
YXIgSG9yaXpQb3MgPSAocmFuZCgpKihkb2N1bWVudC5ib2R5LmNsaWVudFdpZHRoLUluZGl2U2F5
aW5nLmNsaWVudFdpZHRoKSk7DQoJCXZhciBWZXJ0UG9zID0gKHJhbmQoKSooZG9jdW1lbnQuYm9k
eS5jbGllbnRIZWlnaHQtbG9nby5oZWlnaHQtaGVpZ2h0KjIpKTsNCgkJDQoJCWlmIChWZXJ0UG9z
ID4gKGxvZ28uc3R5bGUucG9zVG9wIC0gaGVpZ2h0KSkNCgkJCVZlcnRQb3MgKz0gbG9nby5oZWln
aHQgKyBoZWlnaHQ7DQoJCQ0KCQlJbmRpdlNheWluZy5zdHlsZS5wb3NUb3AgPSBWZXJ0UG9zOw0K
CQlJbmRpdlNheWluZy5zdHlsZS5wb3NMZWZ0ID0gSG9yaXpQb3M7DQoJCUluZGl2U2F5aW5nLmZp
bHRlcnNbMF0uYXBwbHkoKTsNCgkJSW5kaXZTYXlpbmcuc3R5bGUudmlzaWJpbGl0eSA9ICJ2aXNp
YmxlIjsNCgkJSW5kaXZTYXlpbmcuZmlsdGVyc1swXS5wbGF5KCk7DQoJCWNTYXlpbmcrKzsNCgkJ
Z190aW1lT3V0T0Vpc21zID0gc2V0VGltZW91dCgiQ2xvc2VPRWlzbXMoZmFsc2UpOyIsIDIwMDAp
Ow0KCX0NCgllbHNlIHsNCgkJY1NheWluZyA9IDA7DQoJCWdfQ2FuU2hvd09FaXNtcyA9IHRydWU7
DQoJfQ0KfQ0KCQ0KZnVuY3Rpb24gQ2xvc2VPRWlzbXMoc3RvcEN5Y2xlKSB7DQoJaWYgKHN0b3BD
eWNsZSkgew0KCQlnX0NhblNob3dPRWlzbXMgPSB0cnVlOw0KCQljU2F5aW5nID0gMDsNCgkJSW5k
aXZTYXlpbmcuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOw0KCQljbGVhclRpbWVvdXQoZ190
aW1lT3V0T0Vpc21zKTsNCgl9DQoJZWxzZSB7DQoJCUluZGl2U2F5aW5nLmZpbHRlcnNbMF0uYXBw
bHkoKTsNCgkJSW5kaXZTYXlpbmcuc3R5bGUudmlzaWJpbGl0eSA9ICJoaWRkZW4iOw0KCQlJbmRp
dlNheWluZy5maWx0ZXJzWzBdLnBsYXkoKTsNCgkJZ190aW1lT3V0T0Vpc21zID0gc2V0VGltZW91
dCgiU2hvd09FaXNtcygpIiwgMjAwMCk7DQoJfSAgIA0KfQ0KCQ0KZnVuY3Rpb24gTmFtZURpc3Bs
YXkoaW5kZXgpIHsNCgl2YXIgd2lkdGggPSBkb2N1bWVudC5ib2R5LmNsaWVudFdpZHRoOw0KCXZh
ciBoZWlnaHQgPSBkb2N1bWVudC5ib2R5LmNsaWVudEhlaWdodDsNCgl2YXIgbmFtZXMgPSBnX2Fy
cmF5TmFtZXNbZ19pQ2xpY2tlZEluZGV4XTsNCglzdG9wVmFsaWQgPSB0cnVlOw0KCWlmIChpbmRl
eCA8IG5hbWVzLmxlbmd0aCl7DQoJCUluZGl2TmFtZS5zdHlsZS52aXNpYmlsaXR5ID0gInZpc2li
bGUiOw0KCQlpZiAobmFtZXNbaW5kZXhdLmNoYXJBdCgwKSAhPSAiKiIpIHsNCgkJCUluZGl2TmFt
ZS5vdXRlckhUTUwgPSAiPERJViBpZD1JbmRpdk5hbWUgY2xhc3MgPSBuYW1lPiIgKyBuYW1lc1tp
bmRleF0gKyAiPC9ESVY+IjsNCgkJfQ0KCQllbHNlIHsNCgkJCXZhciB0U3RyID0gbmFtZXNbaW5k
ZXhdLnN1YnN0cmluZygxLG5hbWVzW2luZGV4XS5sZW5ndGgpOw0KCQkJSW5kaXZOYW1lLm91dGVy
SFRNTCA9ICI8RElWIGlkPUluZGl2TmFtZSBjbGFzcyA9IHN1YlRpdGxlPiIgKyB0U3RyICsgIjwv
RElWPiI7DQoJCX0NCgkJDQoJCUVkZ2VTdGFydCA9IHJvdW5kKGFicyhyYW5kKCkqNC0uNSkpOw0K
CQlpZiAoRWRnZVN0YXJ0ID4gMykNCgkJCUVkZ2VTdGFydCA9IDM7DQoJCQkNCgkJc3dpdGNoKEVk
Z2VTdGFydCkgew0KCQkJY2FzZSAwOiBJbmRpdk5hbWUuc3R5bGUucG9zVG9wID0gKHJhbmQoKSoo
aGVpZ2h0LTI1MCkpKzEyNTsNCgkJCQkJSW5kaXZOYW1lLnN0eWxlLnBvc0xlZnQgPSB3aWR0aDsN
CgkJCQkJTmFtZVNob290KC0xMCwgMCwgd2lkdGgrMTUwLCBpbmRleCk7DQoJCQkJCWJyZWFrOw0K
CQkJY2FzZSAxOiBJbmRpdk5hbWUuc3R5bGUucG9zTGVmdCA9IChyYW5kKCkqKHdpZHRoLTMwMCkp
Ow0KCQkJCQlJbmRpdk5hbWUuc3R5bGUucG9zVG9wID0gaGVpZ2h0Ow0KCQkJCQlOYW1lU2hvb3Qo
MCwgLTEwLCBoZWlnaHQrMTUwLCBpbmRleCk7DQoJCQkJCWJyZWFrOw0KCQkJY2FzZSAyOiBJbmRp
dk5hbWUuc3R5bGUucG9zVG9wID0gKHJhbmQoKSooaGVpZ2h0LTI1MCkpKzEyNTsNCgkJCQkJSW5k
aXZOYW1lLnN0eWxlLnBvc0xlZnQgPSAwOw0KCQkJCQlOYW1lU2hvb3QoMTAsIDAsIHdpZHRoKzE1
MCwgaW5kZXgpOw0KCQkJCQlicmVhazsNCgkJCWNhc2UgMzogSW5kaXZOYW1lLnN0eWxlLnBvc0xl
ZnQgPSAocmFuZCgpKih3aWR0aC0zMDApKTsNCgkJCQkJSW5kaXZOYW1lLnN0eWxlLnBvc1RvcCA9
IDA7DQoJCQkJCU5hbWVTaG9vdCgwLCAxMCwgaGVpZ2h0KzE1MCwgaW5kZXgpOw0KCQkJCQlicmVh
azsNCgkJfQ0KCX0NCgllbHNlIHsNCgkJc3RvcFZhbGlkID0gZmFsc2U7DQoJCUluZGl2TmFtZS5z
dHlsZS52aXNpYmlsaXR5ID0gImhpZGRlbiI7DQoJCXNldFRpbWVvdXQoIlN0YXJ0UGFnZSgpOyIs
IDMwMDApOw0KCX0NCn0NCgkJCQkNCmZ1bmN0aW9uIEhpZGUoaXRlbSkgew0KCWl0ZW0uc3R5bGUu
dmlzaWJpbGl0eSA9ICJoaWRkZW4iOw0KCVN0YXJ0UGFnZSgpOw0KfQ0KLy8tLT4NCg0KPC9TQ1JJ
UFQ+DQoNCjxTQ1JJUFQgZm9yPXdpbmRvdyBldmVudD1vbnJlc2l6ZT4NCg0KCXZhciB4Q2VudGVy
ID0gR2V0WENlbnRlcigpOw0KCXZhciB5Q2VudGVyID0gR2V0WUNlbnRlcigpOw0KDQoJbG9nby5z
dHlsZS5wb3NMZWZ0ID0geENlbnRlci0xNTA7DQoJbG9nby5zdHlsZS5wb3NUb3AgPSB5Q2VudGVy
LTUwOw0KDQo8L1NDUklQVD4NCg0KPE1FVEEgY29udGVudD0iTVNIVE1MIDUuMDAuMjAxMi4yMzAw
IiBuYW1lPUdFTkVSQVRPUj48L0hFQUQ+DQo8Qk9EWSBiZ0NvbG9yPXdoaXRlIGxhbmd1YWdlPWph
dmFzY3JpcHQgb25sb2FkPU9uTG9hZCgpPjwhLS1TdGFydCBNYWluIHRpdGxlcy0tPg0KPERJViBj
bGFzcz10aXRsZSBpZD10aXRsZURldiBvbmNsaWNrPU9uT2JqQ2xpY2soMCkgb25tb3VzZW91dD1T
cGVlZEVyVXAodGhpcykgDQpvbm1vdXNlb3Zlcj1TbG93RXJEb3duKHRoaXMpPkRldmVsb3BlcnM8
L0RJVj4NCjxESVYgY2xhc3M9dGl0bGUgaWQ9dGl0bGVUc3Qgb25jbGljaz1Pbk9iakNsaWNrKDEp
IG9ubW91c2VvdXQ9U3BlZWRFclVwKHRoaXMpIA0Kb25tb3VzZW92ZXI9U2xvd0VyRG93bih0aGlz
KT5UZXN0ZXJzPC9ESVY+DQo8RElWIGNsYXNzPXRpdGxlIGlkPXRpdGxlUE1zIG9uY2xpY2s9T25P
YmpDbGljaygyKSBvbm1vdXNlb3V0PVNwZWVkRXJVcCh0aGlzKSANCm9ubW91c2VvdmVyPVNsb3dF
ckRvd24odGhpcyk+UHJvZ3JhbTxCUj5NYW5hZ2VyczwvRElWPg0KPERJViBjbGFzcz10aXRsZSBp
ZD10aXRsZUludCBvbmNsaWNrPU9uT2JqQ2xpY2soMykgb25tb3VzZW91dD1TcGVlZEVyVXAodGhp
cykgDQpvbm1vdXNlb3Zlcj1TbG93RXJEb3duKHRoaXMpPkludGVybmF0aW9uYWw8L0RJVj4NCjxE
SVYgY2xhc3M9dGl0bGUgaWQ9dGl0bGVPdGggb25jbGljaz1Pbk9iakNsaWNrKDQpIG9ubW91c2Vv
dXQ9U3BlZWRFclVwKHRoaXMpIA0Kb25tb3VzZW92ZXI9U2xvd0VyRG93bih0aGlzKT5TcGVjaWFs
PEJSPlRoYW5rcyBUbzwvRElWPjxJTUcgaWQ9bG9nbyANCm9uY2xpY2s9TG9nb0NsaWNrZWQoKSBz
cmM9InJlczovL21zb2VyZXMuZGxsL29lbG9nby5naWYiIA0Kc3R5bGU9IkZJTFRFUjogcmV2ZWFs
VHJhbnMoVHJhbnNpdGlvbj0yMywgRHVyYXRpb249Mi41KTsgTEVGVDogMHB4OyBQT1NJVElPTjog
YWJzb2x1dGU7IFRPUDogMHB4OyBaLUlOREVYOiAyIj4gDQo8IS0tU3RhcnQgbmFtZXMgc2VjdGlv
bi0tPg0KPERJViBpZD1JbmRpdk5hbWUgc3R5bGU9IlZJU0lCSUxJVFk6IGhpZGRlbiI+PC9ESVY+
DQo8RElWIGlkPUluZGl2U2F5aW5nIA0Kc3R5bGU9IkNPTE9SOiByZWQ7IEZJTFRFUjogcmV2ZWFs
VHJhbnMoVHJhbnNpdGlvbj0xMiwgRHVyYXRpb249MSk7IEZPTlQtU0laRTogMjRwdDsgRk9OVC1X
RUlHSFQ6IGJvbGQ7IExFRlQ6IDBweDsgUE9TSVRJT046IGFic29sdXRlOyBUT1A6IDBweDsgVklT
SUJJTElUWTogaGlkZGVuOyBaLUlOREVYOiA4Ij48L0RJVj48L0JPRFk+PC9IVE1MPg0K