[kronolith] Kronolith Errors

Rodolfo Segleau segleaur@mechanus.org
Fri, 6 Sep 2002 00:49:28 -0500


This message is in MIME format.

---------------------- multipart/mixed attachment
> ----- Message from segleaur@mechanus.org ---------
>     Date: Fri,  6 Sep 2002 00:30:08 -0500
>     From: Rodolfo Segleau <segleaur@mechanus.org>
> Reply-To: Rodolfo Segleau <segleaur@mechanus.org>
>  Subject: Re: [kronolith] Kronolith Errors
>       To: kronolith@lists.horde.org
> 
> > ----- Message from mike@graftonhall.co.nz ---------
> >     Date: Fri,  6 Sep 2002 17:25:17 +1200
> >     From: Mike Cochrane <mike@graftonhall.co.nz>
> > Reply-To: Mike Cochrane <mike@graftonhall.co.nz>
> >  Subject: Re: [kronolith] Kronolith Errors
> >       To: kronolith@lists.horde.org
> >
> > it's refering to the line in the HTML. right click the page and send us
> that
> > line from the html document.
> >
> > - Mike :-)
> >
> 
> LOL, i found it (had to auto-select the encoding for the page for IE to
> display
> the html - silly IE.. )... anyway, it seems that it really does not
> like "ticks" (') in the description field... this is the code around line
> 100:
> 
> You can see where the problem is.... a cautionary note, perhaps?
> 
> Cheers,
> 
> Rodolfo
> 

OK, so I took the tick out, but the error is still there. Attached is the HTML 
source of that page... when I checked out what line 100, char 86 was, it seems 
to be a \n character (it breaks out a new line in vi...). Seems strange that 
there's a new line in the parsed HTML code when in the db it's a string... 


Cheers, 

Rodolfo
---------------------- multipart/mixed attachment
PCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFs
Ly9FTiIgIkRURC94aHRtbDEtdHJhbnNpdGlvbmFsLmR0ZCI+DQo8IS0tIEtyb25vbGl0aDogQ29w
eXJpZ2h0IDIwMDAsIFRoZSBIb3JkZSBQcm9qZWN0LiBLcm9ub2xpdGggaXMgdW5kZXIgdGhlIEdQ
TC4gLS0+DQo8IS0tIEhvcmRlIFByb2plY3Q6IGh0dHA6Ly9ob3JkZS5vcmcvIHwgS3Jvbm9saXRo
OiBodHRwOi8vaG9yZGUub3JnL2tyb25vbGl0aC8gLS0+DQo8IS0tICAgICAgICAgR05VIFB1Ymxp
YyBMaWNlbnNlOiBodHRwOi8vd3d3LmZzZi5vcmcvY29weWxlZnQvZ3BsLmh0bWwgICAgICAgICAg
LS0+DQo8aHRtbCBsYW5nPSJlbi1HQiI+PGhlYWQ+DQo8dGl0bGU+Q2FsZW5kYXIgOjogQ2FsZW5k
YXJzPC90aXRsZT4NCjxsaW5rIGhyZWY9Ii9jc3MucGhwP3RoZW1lPSZhcHA9a3Jvbm9saXRoIiBy
ZWw9InN0eWxlc2hlZXQiIHR5cGU9InRleHQvY3NzIiAvPjwvaGVhZD4NCg0KPGJvZHk+DQo8c2Ny
aXB0IGxhbmd1YWdlPSJKYXZhU2NyaXB0IiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiIHNyYz0iL2ph
dmFzY3JpcHQucGhwP2ZpbGU9Z290by5pbmMmYW1wO2FwcD1rcm9ub2xpdGgiPjwvc2NyaXB0Pg0K
PGRpdiBpZD0iZ290byIgY2xhc3M9ImNvbnRyb2wiIHN0eWxlPSJwb3NpdGlvbjphYnNvbHV0ZTt2
aXNpYmlsaXR5OmhpZGRlbjtsZWZ0OjUwcHg7dG9wOjUwcHg7cGFkZGluZzoxcHgiPjwvZGl2Pg0K
PHRhYmxlIGJvcmRlcj0iMCIgY2VsbHBhZGRpbmc9IjIiIGNlbGxzcGFjaW5nPSIwIiB3aWR0aD0i
MTAwJSI+DQo8dHI+PHRkIGNsYXNzPSJtZW51Ij48dGFibGUgYm9yZGVyPSIwIiB3aWR0aD0iMTAw
JSI+PHRyPg0KDQo8dGQgYWxpZ249ImNlbnRlciIgbm93cmFwPSJub3dyYXAiIHZhbGlnbj0iYm90
dG9tIj48YSBocmVmPSIva3Jvbm9saXRoL21vbnRoLnBocCIgb25tb3VzZW91dD0id2luZG93LnN0
YXR1cz0nJzsiIG9ubW91c2VvdmVyPSJ3aW5kb3cuc3RhdHVzPSdUb2RheSc7IHJldHVybiB0cnVl
OyIgY2xhc3M9Im1lbnVpdGVtIj48aW1nIHNyYz0iL2tyb25vbGl0aC9ncmFwaGljcy90b2RheS5n
aWYiIGJvcmRlcj0iMCIgYWx0PSJUb2RheSIgdGl0bGU9IlRvZGF5IiAvPjxiciAvPlRvZGF5PC9h
PiZuYnNwOzwvdGQ+DQo8dGQgYWxpZ249ImNlbnRlciIgbm93cmFwPSJub3dyYXAiIHZhbGlnbj0i
Ym90dG9tIj48YSBocmVmPSIjIiBvbmNsaWNrPSJvcGVuR290bygnMTAzMTI4ODQwMCcpOyByZXR1
cm4gZmFsc2U7IiBvbm1vdXNlb3V0PSJ3aW5kb3cuc3RhdHVzPScnOyIgb25tb3VzZW92ZXI9Indp
bmRvdy5zdGF0dXM9J0dvdG8nOyByZXR1cm4gdHJ1ZTsiIGNsYXNzPSJtZW51aXRlbSI+PGltZyBz
cmM9Ii9rcm9ub2xpdGgvZ3JhcGhpY3MvZ290by5naWYiIGJvcmRlcj0iMCIgYWx0PSJHb3RvIiB0
aXRsZT0iR290byIgLz48YnIgLz5Hb3RvPC9hPiZuYnNwOzwvdGQ+DQo8dGQgYWxpZ249ImNlbnRl
ciIgbm93cmFwPSJub3dyYXAiIHZhbGlnbj0iYm90dG9tIj48YSBocmVmPSIva3Jvbm9saXRoL2Rh
eS5waHA/dGltZXN0YW1wPTEwMzEyODg0MDAiIG9ubW91c2VvdXQ9IndpbmRvdy5zdGF0dXM9Jyc7
IiBvbm1vdXNlb3Zlcj0id2luZG93LnN0YXR1cz0nRGF5JzsgcmV0dXJuIHRydWU7IiBjbGFzcz0i
bWVudWl0ZW0iPjxpbWcgc3JjPSIva3Jvbm9saXRoL2dyYXBoaWNzL2RheXZpZXcuZ2lmIiBib3Jk
ZXI9IjAiIGFsdD0iRGF5IiB0aXRsZT0iRGF5IiAvPjxiciAvPkRheTwvYT4mbmJzcDs8L3RkPg0K
PHRkIGFsaWduPSJjZW50ZXIiIG5vd3JhcD0ibm93cmFwIiB2YWxpZ249ImJvdHRvbSI+PGEgaHJl
Zj0iL2tyb25vbGl0aC93b3Jrd2Vlay5waHA/dGltZXN0YW1wPTEwMzEyODg0MDAiIG9ubW91c2Vv
dXQ9IndpbmRvdy5zdGF0dXM9Jyc7IiBvbm1vdXNlb3Zlcj0id2luZG93LnN0YXR1cz0nV29yayBX
ZWVrJzsgcmV0dXJuIHRydWU7IiBjbGFzcz0ibWVudWl0ZW0iPjxpbWcgc3JjPSIva3Jvbm9saXRo
L2dyYXBoaWNzL3dvcmt3ZWVrdmlldy5naWYiIGJvcmRlcj0iMCIgYWx0PSJXb3JrIFdlZWsiIHRp
dGxlPSJXb3JrIFdlZWsiIC8+PGJyIC8+V29yayBXZWVrPC9hPiZuYnNwOzwvdGQ+DQo8dGQgYWxp
Z249ImNlbnRlciIgbm93cmFwPSJub3dyYXAiIHZhbGlnbj0iYm90dG9tIj48YSBocmVmPSIva3Jv
bm9saXRoL3dlZWsucGhwP3RpbWVzdGFtcD0xMDMxMjg4NDAwIiBvbm1vdXNlb3V0PSJ3aW5kb3cu
c3RhdHVzPScnOyIgb25tb3VzZW92ZXI9IndpbmRvdy5zdGF0dXM9J1dlZWsnOyByZXR1cm4gdHJ1
ZTsiIGNsYXNzPSJtZW51aXRlbSI+PGltZyBzcmM9Ii9rcm9ub2xpdGgvZ3JhcGhpY3Mvd2Vla3Zp
ZXcuZ2lmIiBib3JkZXI9IjAiIGFsdD0iV2VlayIgdGl0bGU9IldlZWsiIC8+PGJyIC8+V2Vlazwv
YT4mbmJzcDs8L3RkPg0KPHRkIGFsaWduPSJjZW50ZXIiIG5vd3JhcD0ibm93cmFwIiB2YWxpZ249
ImJvdHRvbSI+PGEgaHJlZj0iL2tyb25vbGl0aC9tb250aC5waHA/dGltZXN0YW1wPTEwMzEyODg0
MDAiIG9ubW91c2VvdXQ9IndpbmRvdy5zdGF0dXM9Jyc7IiBvbm1vdXNlb3Zlcj0id2luZG93LnN0
YXR1cz0nTW9udGgnOyByZXR1cm4gdHJ1ZTsiIGNsYXNzPSJtZW51aXRlbSI+PGltZyBzcmM9Ii9r
cm9ub2xpdGgvZ3JhcGhpY3MvbW9udGh2aWV3LmdpZiIgYm9yZGVyPSIwIiBhbHQ9Ik1vbnRoIiB0
aXRsZT0iTW9udGgiIC8+PGJyIC8+TW9udGg8L2E+Jm5ic3A7PC90ZD4NCjx0ZCBhbGlnbj0iY2Vu
dGVyIiBub3dyYXA9Im5vd3JhcCIgdmFsaWduPSJib3R0b20iPjxhIGhyZWY9Ii9rcm9ub2xpdGgv
YWRkZXZlbnQucGhwP3RpbWVzdGFtcD0xMDMxMjg4NDAwIiBvbm1vdXNlb3V0PSJ3aW5kb3cuc3Rh
dHVzPScnOyIgb25tb3VzZW92ZXI9IndpbmRvdy5zdGF0dXM9J05ldyBFdmVudCc7IHJldHVybiB0
cnVlOyIgY2xhc3M9Im1lbnVpdGVtIj48aW1nIHNyYz0iL2tyb25vbGl0aC9ncmFwaGljcy9uZXcu
Z2lmIiBib3JkZXI9IjAiIGFsdD0iTmV3IEV2ZW50IiB0aXRsZT0iTmV3IEV2ZW50IiAvPjxiciAv
Pk5ldyBFdmVudDwvYT4mbmJzcDs8L3RkPg0KPHRkIGFsaWduPSJjZW50ZXIiIG5vd3JhcD0ibm93
cmFwIiB2YWxpZ249ImJvdHRvbSI+PGEgaHJlZj0iL2tyb25vbGl0aC9wcmVmcy5waHAiIG9ubW91
c2VvdXQ9IndpbmRvdy5zdGF0dXM9Jyc7IiBvbm1vdXNlb3Zlcj0id2luZG93LnN0YXR1cz0nT3B0
aW9ucyc7IHJldHVybiB0cnVlOyIgY2xhc3M9Im1lbnVpdGVtIj48aW1nIHNyYz0iL2dyYXBoaWNz
L3ByZWZzLmdpZiIgYm9yZGVyPSIwIiBhbHQ9Ik9wdGlvbnMiIHRpdGxlPSJPcHRpb25zIiAvPjxi
ciAvPk9wdGlvbnM8L2E+Jm5ic3A7PC90ZD4NCjx0ZCBhbGlnbj0iY2VudGVyIiBub3dyYXA9Im5v
d3JhcCIgdmFsaWduPSJib3R0b20iPjxhIGhyZWY9Ii9rcm9ub2xpdGgvZGF0YS5waHA/dGltZXN0
YW1wPTEwMzEyODg0MDAiIG9ubW91c2VvdXQ9IndpbmRvdy5zdGF0dXM9Jyc7IiBvbm1vdXNlb3Zl
cj0id2luZG93LnN0YXR1cz0nSW1wb3J0L0V4cG9ydCc7IHJldHVybiB0cnVlOyIgY2xhc3M9Im1l
bnVpdGVtIj48aW1nIHNyYz0iL2dyYXBoaWNzL2RhdGEuZ2lmIiBib3JkZXI9IjAiIGFsdD0iSW1w
b3J0L0V4cG9ydCIgdGl0bGU9IkltcG9ydC9FeHBvcnQiIC8+PGJyIC8+SW1wb3J0L0V4cG9ydDwv
YT4mbmJzcDs8L3RkPg0KPHRkIGFsaWduPSJjZW50ZXIiIG5vd3JhcD0ibm93cmFwIiB2YWxpZ249
ImJvdHRvbSI+PGEgaHJlZj0iL3Byb2JsZW0ucGhwP3JldHVybl91cmw9aHR0cCUzQSUyRiUyRndl
Ym1haWwubWVjaGFudXMub3JnJTJGa3Jvbm9saXRoJTJGc2hhcmVzJTJGcHJlZnMucGhwIiBvbm1v
dXNlb3V0PSJ3aW5kb3cuc3RhdHVzPScnOyIgb25tb3VzZW92ZXI9IndpbmRvdy5zdGF0dXM9J1By
b2JsZW0/JzsgcmV0dXJuIHRydWU7IiBjbGFzcz0ibWVudWl0ZW0iPjxpbWcgc3JjPSIvZ3JhcGhp
Y3MvcHJvYmxlbS5naWYiIGJvcmRlcj0iMCIgYWx0PSJQcm9ibGVtPyIgdGl0bGU9IlByb2JsZW0/
IiAvPjxiciAvPlByb2JsZW0/PC9hPiZuYnNwOzwvdGQ+DQo8dGQgYWxpZ249ImNlbnRlciIgbm93
cmFwPSJub3dyYXAiIHZhbGlnbj0iYm90dG9tIj48YSBocmVmPSJqYXZhc2NyaXB0Om9wZW5faGVs
cF93aW4oJ2tyb25vbGl0aCcpOyIgb25tb3VzZW91dD0id2luZG93LnN0YXR1cz0nJzsiIG9ubW91
c2VvdmVyPSJ3aW5kb3cuc3RhdHVzPSdIZWxwJzsgcmV0dXJuIHRydWU7IiBjbGFzcz0ibWVudWl0
ZW0iPjxpbWcgc3JjPSIvZ3JhcGhpY3MvbWFudWFsLmdpZiIgYm9yZGVyPSIwIiBhbHQ9IkhlbHAi
IHRpdGxlPSJIZWxwIiAvPjxiciAvPkhlbHA8L2E+Jm5ic3A7PC90ZD4NCjx0ZCB3aWR0aD0iMTAw
JSI+Jm5ic3A7PC90ZD48IS0tIHNwYWNlciAtLT4NCg0KPHRkIGFsaWduPSJjZW50ZXIiIG5vd3Jh
cD0ibm93cmFwIiB2YWxpZ249ImJvdHRvbSI+PGEgaHJlZj0iL2tyb25vbGl0aC9tb250aC5waHAi
IG9ubW91c2VvdXQ9IndpbmRvdy5zdGF0dXM9Jyc7IiBvbm1vdXNlb3Zlcj0id2luZG93LnN0YXR1
cz0nVmlldyc7IHJldHVybiB0cnVlOyIgY2xhc3M9Im1lbnVpdGVtIj48aW1nIHNyYz0iL2tyb25v
bGl0aC9ncmFwaGljcy9rcm9ub2xpdGguZ2lmIiBib3JkZXI9IjAiIGFsdD0iVmlldyIgdGl0bGU9
IlZpZXciIC8+PGJyIC8+VmlldzwvYT4mbmJzcDs8L3RkPg0KPHRkIGNsYXNzPSJsaWdodCIgYWxp
Z249InJpZ2h0Ij4NCjxmb3JtIGFjdGlvbj0iL2tyb25vbGl0aC9tb250aC5waHAiIG1ldGhvZD0i
cG9zdCIgbmFtZT0ibWVudSI+DQo8c2VsZWN0IG5hbWU9InNoYXJlaWQiIG9uY2hhbmdlPSJqYXZh
c2NyaXB0OnNoYXJlU3VibWl0KCkiPg0KIDxvcHRpb24gdmFsdWU9IjU4NzNiNTM3MmEzMDQ5ZGNj
OTRmZGI3YzYzNTk5NWFhIiBzZWxlY3RlZD0ic2VsZWN0ZWQiPk1lY2hhbnVzLm9yZyBHbG9iYWwg
Q2FsZW5kYXI8L29wdGlvbj4NCiA8b3B0aW9uIHZhbHVlPSJzZWdsZWF1ckBtZWNoYW51cy5vcmci
Pk15IENhbGVuZGFyPC9vcHRpb24+DQo8L3NlbGVjdD4NCjwvZm9ybT4NCjxzY3JpcHQgbGFuZ3Vh
Z2U9IkphdmFTY3JpcHQiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQo8IS0tDQp2YXIgbG9hZGlu
ZzsNCmZ1bmN0aW9uIHNoYXJlU3VibWl0KGNsZWFyKQ0Kew0KICAgIGlmIChkb2N1bWVudC5tZW51
LnNoYXJlaWRbZG9jdW1lbnQubWVudS5zaGFyZWlkLnNlbGVjdGVkSW5kZXhdLnZhbHVlICE9ICcn
KSB7DQogICAgICAgIGlmIChsb2FkaW5nID09IG51bGwgfHwgY2xlYXIgIT0gbnVsbCkgew0KICAg
ICAgICAgICAgbG9hZGluZyA9IHRydWU7DQogICAgICAgICAgICBkb2N1bWVudC5tZW51LnN1Ym1p
dCgpOw0KICAgICAgICB9DQogICAgfQ0KfQ0KLy8gLS0+DQo8L3NjcmlwdD4NCjwvdGQ+DQo8L3Ry
PjwvdGFibGU+PC90ZD48L3RyPjwvdGFibGU+PGJyIC8+DQo8c2NyaXB0IGxhbmd1YWdlPSJKYXZh
U2NyaXB0IiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0KPCEtLQ0KZnVuY3Rpb24gb3Blbl9oZWxw
X3dpbihtb2R1bGUsIHRvcGljKQ0Kew0KICAgIHZhciB3aW5fbG9jYXRpb247DQogICAgdmFyIHNj
cmVlbl93aWR0aCwgc2NyZWVuX2hlaWdodDsNCiAgICB2YXIgd2luX3RvcCwgd2luX2xlZnQ7DQog
ICAgdmFyIEhlbHBXaW47DQoNCiAgICBzY3JlZW5faGVpZ2h0ID0gMDsNCiAgICBzY3JlZW5fd2lk
dGggPSAwOw0KICAgIHdpbl90b3AgPSAwOw0KICAgIHdpbl9sZWZ0ID0gMDsNCg0KICAgIHZhciBo
ZWxwX3dpbl93aWR0aCA9IDMwMDsNCiAgICB2YXIgaGVscF93aW5faGVpZ2h0ID0gMzAwOw0KDQog
ICAgaWYgKHdpbmRvdy5pbm5lcldpZHRoKSBzY3JlZW5fd2lkdGggPSB3aW5kb3cuaW5uZXJXaWR0
aDsNCiAgICBpZiAod2luZG93LmlubmVySGVpZ2h0KSBzY3JlZW5faGVpZ2h0ID0gd2luZG93Lmlu
bmVySGVpZ2h0Ow0KDQogICAgd2luX2xvY2F0aW9uID0gJ2h0dHA6Ly93ZWJtYWlsLm1lY2hhbnVz
Lm9yZy9oZWxwLnBocD8xPTEnOw0KICAgIGlmICh0b3BpYyA9PSBudWxsKSB7DQogICAgICAgIHdp
bl9sb2NhdGlvbiArPSAnJm1vZHVsZT0nICsgbW9kdWxlOw0KICAgIH0gZWxzZSBpZiAodG9waWMg
PT0gIiIpIHsNCiAgICAgICAgd2luX2xvY2F0aW9uICs9ICcmbW9kdWxlPScgKyBtb2R1bGUgKyAn
JnNob3c9dG9waWNzJzsNCiAgICB9IGVsc2Ugew0KICAgICAgICB3aW5fbG9jYXRpb24gKz0gJyZt
b2R1bGU9JyArIG1vZHVsZSArICcmdG9waWM9JyArIHRvcGljOw0KICAgIH0NCg0KICAgIHdpbl90
b3AgID0gc2NyZWVuX2hlaWdodCAtIGhlbHBfd2luX2hlaWdodCAtIDIwOw0KICAgIHdpbl9sZWZ0
ID0gc2NyZWVuX3dpZHRoICAtIGhlbHBfd2luX3dpZHRoICAtIDIwOw0KICAgIEhlbHBXaW4gID0g
d2luZG93Lm9wZW4oDQogICAgICAgIHdpbl9sb2NhdGlvbiwNCiAgICAgICAgJ0hlbHBXaW5kb3cn
LA0KICAgICAgICAnd2lkdGg9JytoZWxwX3dpbl93aWR0aCsnLGhlaWdodD0nK2hlbHBfd2luX2hl
aWdodCsnLHRvcD0nK3dpbl90b3ArJyxsZWZ0PScrd2luX2xlZnQNCiAgICApOw0KICAgIEhlbHBX
aW4uZm9jdXMoKTsNCn0NCi8vLS0+DQo8L3NjcmlwdD4NCjxzY3JpcHQgbGFuZ3VhZ2U9IkphdmFT
Y3JpcHQiIHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQo8IS0tDQoNCnZhciBjYW5jZWxTdWJtaXQg
PSBmYWxzZTsNCnZhciBmaWVsZHMgPSBuZXcgQXJyYXkoKTsNCmZpZWxkc1snNTg3M2I1MzcyYTMw
NDlkY2M5NGZkYjdjNjM1OTk1YWEnXSA9IG5ldyBBcnJheSgNCiAgICAgICAgIk1lY2hhbnVzLm9y
ZyBHbG9iYWwgQ2FsZW5kYXIiLA0KICAgICAgICAiNTg3M2I1MzcyYTMwNDlkY2M5NGZkYjdjNjM1
OTk1YWEiLA0KICAgICAgICAiTWVjaGFudXMub3JnIEdsb2JhbCBDYWxlbmRhciAtIE1lY2hhbnVz
Lm9yZyBBZG1pbmlzdHJhdG9ycyB3aWxsIHVwZGF0ZSB0aGlzIA0KY2FsZW5kYXIgdG8gcHJvdmlk
ZSB0aW1lbHkgaW5mb3JtYXRpb24gb24gd2hlbiBzZXJ2ZXIgdXBncmFkZXMsIG5ldHdvcmsgDQp1
cGdyYWRlLCBhbmQgYXBwbGljYXRpb24gdXBkYXRlcyBhcmUgbWFkZS4gUGxhbm5lZCBzZXJ2aWNl
IG91dGFnZXMgd2lsbCBhbHNvIGJlIA0Kc2NoZWR1bGVkIGFjY29yZGluZ2x5LiBQbGVhc2UgY2hl
Y2sgZnJlcXVlbnRseS4iLA0KICAgICAgICAiMSIpOw0KZmllbGRzWydzZWdsZWF1ckBtZWNoYW51
cy5vcmcnXSA9IG5ldyBBcnJheSgNCiAgICAgICAgIk15IENhbGVuZGFyIiwNCiAgICAgICAgInNl
Z2xlYXVyQG1lY2hhbnVzLm9yZyIsDQogICAgICAgICJQZXJzb25hbCBDYWxlbmRhciIsDQogICAg
ICAgICIwIik7DQoNCmZ1bmN0aW9uIG5ld0Nob2ljZSgpDQp7DQogICAgdmFyIGFjdGlvbiA9IGRv
Y3VtZW50LnNoYXJlcy5zaGFyZS5vcHRpb25zW2RvY3VtZW50LnNoYXJlcy5zaGFyZS5zZWxlY3Rl
ZEluZGV4XS52YWx1ZTsNCiAgICBpZiAoYWN0aW9uID09IC0xKSB7DQogICAgICAgIGRvY3VtZW50
LnNoYXJlcy5zYXZlLnZhbHVlID0gJ0NyZWF0ZSc7DQogICAgICAgIGRvY3VtZW50LnNoYXJlcy5y
ZXNldCgpOw0KICAgICAgICBjbGVhckZvcm0oKTsNCiAgICB9IGVsc2Ugew0KICAgICAgICBkb2N1
bWVudC5zaGFyZXMuc2F2ZS52YWx1ZSA9ICdDaGFuZ2UnOw0KICAgICAgICB1cGRhdGVGb3JtKGFj
dGlvbik7DQogICAgfQ0KfQ0KDQpmdW5jdGlvbiBuZXdUeXBlKCkNCnsNCiAgICB2YXIgaWQgPSBk
b2N1bWVudC5zaGFyZXMuc2hhcmUub3B0aW9uc1tkb2N1bWVudC5zaGFyZXMuc2hhcmUuc2VsZWN0
ZWRJbmRleF0udmFsdWU7DQogICAgdmFyIHR5cGUgPSBkb2N1bWVudC5zaGFyZXMudHlwZS5vcHRp
b25zW2RvY3VtZW50LnNoYXJlcy50eXBlLnNlbGVjdGVkSW5kZXhdLnZhbHVlOw0KDQogICAgLy8g
VGhlIGZpcnN0IHNoYXJlIChNeSBDYWxlbmRhcikgbXVzdCBhbHdheXMgYmUgcHJpdmF0ZS4NCiAg
ICBpZiAoaWQgPT0gJ3NlZ2xlYXVyQG1lY2hhbnVzLm9yZycpIHsNCiAgICAgICAgZG9jdW1lbnQu
c2hhcmVzLnR5cGUuc2VsZWN0ZWRJbmRleCA9IDA7DQogICAgICAgIHR5cGUgPSAwOw0KICAgIH0N
Cg0KICAgIC8vIERvbid0IHNob3cgdGhlIGFjY2Vzcy9wZXJtaXNzaW9uIGJ1dHRvbiB3aGVuIGNy
ZWF0aW5nIGEgbmV3DQogICAgLy8gc2hhcmUuDQogICAgaWYgKGlkICE9IC0xKSB7DQogICAgICAg
IGlmICh0eXBlID09IDEpIHsNCiAgICAgICAgICAgIGRvY3VtZW50LnNoYXJlcy5hY2Nlc3NsaXN0
LnZhbHVlID0gJ01lbWJlcnMgTGlzdCc7DQogICAgICAgICAgICBkb2N1bWVudC5zaGFyZXMuYWNj
ZXNzbGlzdC5zdHlsZS52aXNpYmlsaXR5ID0gJ3Zpc2libGUnOw0KICAgICAgICB9IGVsc2UgaWYg
KHR5cGUgPT0gMikgew0KICAgICAgICAgICAgZG9jdW1lbnQuc2hhcmVzLmFjY2Vzc2xpc3QudmFs
dWUgPSAnUGVybWlzc2lvbic7DQogICAgICAgICAgICBkb2N1bWVudC5zaGFyZXMuYWNjZXNzbGlz
dC5zdHlsZS52aXNpYmlsaXR5ID0gJ3Zpc2libGUnOw0KICAgICAgICB9IGVsc2Ugew0KICAgICAg
ICAgICAgZG9jdW1lbnQuc2hhcmVzLmFjY2Vzc2xpc3Quc3R5bGUudmlzaWJpbGl0eSA9ICdoaWRk
ZW4nOw0KICAgICAgICB9DQogICAgfQ0KfSAgIA0KDQpmdW5jdGlvbiB1cGRhdGVGb3JtKHNoYXJl
KQ0Kew0KICAgIGRvY3VtZW50LnNoYXJlcy5lZGl0X3NoYXJlLnZhbHVlID0gc2hhcmU7DQogICAg
ZG9jdW1lbnQuc2hhcmVzLmlkLnZhbHVlID0gICAgICAgICAgICBmaWVsZHNbc2hhcmVdWzBdOw0K
ICAgIGRvY3VtZW50LnNoYXJlcy5rZXkudmFsdWUgPSAgICAgICAgICAgIGZpZWxkc1tzaGFyZV1b
MV07DQogICAgZG9jdW1lbnQuc2hhcmVzLmRlc2NyaXB0aW9uLnZhbHVlID0gICAgICAgICAgICBm
aWVsZHNbc2hhcmVdWzJdOw0KICAgIGRvY3VtZW50LnNoYXJlcy50eXBlLnNlbGVjdGVkSW5kZXgg
PSAwOw0KICAgIGZvciAodmFyIGkgPSAwOyBpIDwgZG9jdW1lbnQuc2hhcmVzLnR5cGUubGVuZ3Ro
OyBpKyspIHsNCiAgICAgICAgaWYgKGRvY3VtZW50LnNoYXJlcy50eXBlW2ldLnZhbHVlID09IGZp
ZWxkc1tzaGFyZV1bM10pIHsNCiAgICAgICAgICAgIGRvY3VtZW50LnNoYXJlcy50eXBlLnNlbGVj
dGVkSW5kZXggPSBpOw0KICAgICAgICAgICAgYnJlYWs7DQogICAgICAgIH0NCiAgICB9DQogICAg
bmV3VHlwZSgpOw0KfQ0KDQpmdW5jdGlvbiBjbGVhckZvcm0oKQ0Kew0KICAgIGRvY3VtZW50LnNo
YXJlcy5lZGl0X3NoYXJlLnZhbHVlID0gJyc7DQogICAgZG9jdW1lbnQuc2hhcmVzLmlkLnZhbHVl
ID0gJyc7DQogICAgZG9jdW1lbnQuc2hhcmVzLmRlc2NyaXB0aW9uLnZhbHVlID0gJyc7DQogICAg
ZG9jdW1lbnQuc2hhcmVzLmtleS52YWx1ZSA9ICcnOw0KICAgIGRvY3VtZW50LnNoYXJlcy50eXBl
LnNlbGVjdGVkSW5kZXggPSAwOw0KICAgIGRvY3VtZW50LnNoYXJlcy5hY2Nlc3NsaXN0LnN0eWxl
LnZpc2liaWxpdHkgPSAnaGlkZGVuJzsNCiAgICBjYW5jZWxTdWJtaXQgPSB0cnVlOw0KfQ0KDQpm
dW5jdGlvbiBjaGVja1N1Ym1pdCgpDQp7DQogICAgY2FuY2VsID0gY2FuY2VsU3VibWl0Ow0KICAg
IGNhbmNlbFN1Ym1pdCA9IGZhbHNlOw0KICAgIHdpbmRvdy5ldmVudC5yZXR1cm5WYWx1ZSA9ICFj
YW5jZWw7DQogICAgcmV0dXJuICFjYW5jZWw7DQp9DQoNCi8vLS0+DQo8L3NjcmlwdD4NCjxmb3Jt
IG1ldGhvZD0icG9zdCIgbmFtZT0ic2hhcmVzIiBhY3Rpb249Ii9rcm9ub2xpdGgvc2hhcmVzL3By
ZWZzLnBocCIgb25zdWJtaXQ9InJldHVybiBjaGVja1N1Ym1pdCgpIj4NCjxpbnB1dCB0eXBlPSJo
aWRkZW4iIG5hbWU9ImFjdGlvbklEIiB2YWx1ZT0iMiIvPg0KDQo8dGFibGUgYm9yZGVyPSIwIiBh
bGlnbj0iY2VudGVyIiB3aWR0aD0iMTAwJSIgY2VsbHNwYWNpbmc9IjAiIGNlbGxwYWRkaW5nPSIz
Ij4NCjx0cj48dGQgY2xhc3M9ImhlYWRlciIgYWxpZ249ImxlZnQiPjxiPkNhbGVuZGFyPC9iPjwv
dGQ+PC90cj4NCjx0cj48dGQgY2xhc3M9Iml0ZW0iPjx0YWJsZSBib3JkZXI9IjAiPg0KDQo8dHIg
dmFsaWduPSJ0b3AiPjx0ZCBjbGFzcz0iaXRlbSI+DQpZb3VyIGNhbGVuZGFyczo8YnIgLz4NCjxz
ZWxlY3QgbmFtZT0ic2hhcmUiIGNsYXNzPSJmaXhlZCIgb25jaGFuZ2U9ImphdmFzY3JpcHQ6bmV3
Q2hvaWNlKCkiPg0KICA8b3B0aW9uIHZhbHVlPSItMSI+U2VsZWN0IGEgY2FsZW5kYXI8L29wdGlv
bj4NCiAgPG9wdGlvbiB2YWx1ZT0iNTg3M2I1MzcyYTMwNDlkY2M5NGZkYjdjNjM1OTk1YWEiPk1l
Y2hhbnVzLm9yZyBHbG9iYWwgQ2FsZW5kYXI8L29wdGlvbj4NCiAgPG9wdGlvbiB2YWx1ZT0ic2Vn
bGVhdXJAbWVjaGFudXMub3JnIj5NeSBDYWxlbmRhcjwvb3B0aW9uPg0KPC9zZWxlY3Q+DQo8L3Rk
PjwvdHI+DQoNCjx0cj48dGQgY2xhc3M9Iml0ZW0iPjx0YWJsZSBib3JkZXI9IjAiPg0KDQo8dHIg
dmFsaWduPSJ0b3AiPjx0ZCBjbGFzcz0iaXRlbSI+DQoNCjxpbnB1dCB0eXBlPSJoaWRkZW4iIG5h
bWU9ImVkaXRfc2hhcmUiIHZhbHVlPSIiIC8+DQpDYWxlbmRhcidzIG5hbWU6PGJyIC8+DQo8aW5w
dXQgbmFtZT0iaWQiIHNpemU9IjMwIiBtYXhsZW5ndGg9IjYwIiBjbGFzcz0iZml4ZWQiIC8+PGJy
IC8+DQo8aW5wdXQgdHlwZT1oaWRkZW4gbmFtZT0ia2V5IiBzaXplPSIzMCIgbWF4bGVuZ3RoPSI2
MCIgY2xhc3M9ImZpeGVkIiAvPjxiciAvPg0KDQpEZXNjcmlwdGlvbjo8YnIgLz4NCjxzcGFuIGNs
YXNzPSJmaXhlZCI+DQo8dGV4dGFyZWEgd3JhcD0iaGFyZCIgbmFtZT0iZGVzY3JpcHRpb24iIHJv
d3M9IjYiIGNvbHM9IjgwIiBjbGFzcz0iZml4ZWQiPjwvdGV4dGFyZWE+PGJyIC8+DQo8L3NwYW4+
DQoNCkNhbGVuZGFyJ3MgVHlwZTo8YnIgLz4NCjxzZWxlY3QgbmFtZT0idHlwZSIgY2xhc3M9ImZp
eGVkIiBvbmNoYW5nZT0iamF2YXNjcmlwdDpuZXdUeXBlKCkiPg0KICA8b3B0aW9uIHZhbHVlPSIw
Ij5Qcml2YXRlPC9vcHRpb24+DQogIDxvcHRpb24gdmFsdWU9IjEiPlNoYXJlZDwvb3B0aW9uPg0K
PC9zZWxlY3Q+DQo8aW5wdXQgdHlwZT0ic3VibWl0IiBuYW1lPSJhY2Nlc3NsaXN0IiBjbGFzcz0i
YnV0dG9uIiBvbmNsaWNrPSJkb2N1bWVudC5zaGFyZXMuYWN0aW9uSUQudmFsdWU9NCIgdmFsdWU9
IiIgc3R5bGU9InZpc2liaWxpdHk6IGhpZGRlbiIgLz4NCjxiciAvPg0KDQo8L3RkPjwvdHI+PC90
YWJsZT48L3RkPjwvdHI+DQo8dHI+DQogIDx0ZCB2YWxpZ249Im1pZGRsZSI+DQogICAgPHRhYmxl
IGJvcmRlcj0iMCIgd2lkdGg9IjEwMCUiIGNlbGxwYWRkaW5nPSIwIj4NCiAgICA8dHI+DQogICAg
ICA8dGQ+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5hbWU9InNhdmUiIGNsYXNzPSJi
dXR0b24iIG9uY2xpY2s9ImRvY3VtZW50LnNoYXJlcy5hY3Rpb25JRC52YWx1ZSA9IDI7cmV0dXJu
IHRydWUiIHZhbHVlPSJDcmVhdGUiIC8+DQogICAgICAgIDxpbnB1dCB0eXBlPSJzdWJtaXQiIG5h
bWU9ImRlbGV0ZSIgY2xhc3M9ImJ1dHRvbiIgb25jbGljaz0iZG9jdW1lbnQuc2hhcmVzLmFjdGlv
bklELnZhbHVlID0gMyIgdmFsdWU9IkRlbGV0ZSIgLz4NCiAgICAgICAgPGlucHV0IHR5cGU9InN1
Ym1pdCIgbmFtZT0ibmV3IiBjbGFzcz0iYnV0dG9uIiBvbmNsaWNrPSJjbGVhckZvcm0oKTsgZG9j
dW1lbnQuc2hhcmVzLnNhdmUudmFsdWUgPSAnQ3JlYXRlJzsiIHZhbHVlPSJSZXNldCIgLz4NCiAg
ICAgICAgPGlucHV0IHR5cGU9InN1Ym1pdCIgbmFtZT0iYmFjayIgY2xhc3M9ImJ1dHRvbiIgb25j
bGljaz0iY2FuY2VsU3VibWl0ID0gdHJ1ZTsgZG9jdW1lbnQubG9jYXRpb24uaHJlZiA9ICdodHRw
Oi8vd2VibWFpbC5tZWNoYW51cy5vcmcva3Jvbm9saXRoL3ByZWZzLnBocD9ncm91cD1zaGFyZSci
IHZhbHVlPSJCYWNrIHRvIENhbGVuZGFyIE9wdGlvbnMiIC8+DQogICAgICA8L3RkPg0KICAgIDwv
dHI+DQogICAgPC90YWJsZT4NCg0KICA8L3RkPg0KPC90cj4NCjwvdGFibGU+DQo8L2Zvcm0+DQo8
c2NyaXB0IGxhbmd1YWdlPSJKYXZhU2NyaXB0IiB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPg0KPCEt
LQ0KaWYgKHBhcmVudC5mcmFtZXMuaG9yZGVfbWFpbikgcGFyZW50LmRvY3VtZW50LnRpdGxlID0g
J0NhbGVuZGFyIDo6IENhbGVuZGFycyc7DQovLy0tPg0KPC9zY3JpcHQ+DQo8L2JvZHk+DQo8L2h0
bWw+DQo=

---------------------- multipart/mixed attachment--