(no subject)

[email protected] Fri, 14 Nov 2003 13:15:59 +0100
Newsgroups gmane.comp.java.enhydra.kxml
Message-ID <OF66EEC55B.34D2A2C6-ONC1256DDE.0042ACDC-C1256DDE.00436E3E@de>
--=_mixed 00436E39C1256DDE_=
Content-Type: multipart/alternative; boundary="=_alternative 00436E39C1256DDE_="


--=_alternative 00436E39C1256DDE_=
Content-Type: text/plain; charset="US-ASCII"

Hi Stefan,

i've downloaded your version 2.1.7, because you compiled 2.1.8 with the 
wrong version.
After initializing the pullparserfactory, my jre throws a error. So i 
decided to decompile
your class files with jad. (hope that is no problem for you ;-))
I've removed your gotos, i think that were once labels....?
I've added the java file of PullParserFactory. you will see my changes.

I wish u a nice weekend.

Greetings 

Sigi


--=_alternative 00436E39C1256DDE_=
Content-Type: text/html; charset="US-ASCII"


<br><font size=2 face="sans-serif">Hi Stefan,</font>
<br>
<br><font size=2 face="sans-serif">i've downloaded your version 2.1.7,
because you compiled 2.1.8 with the wrong version.</font>
<br><font size=2 face="sans-serif">After initializing the pullparserfactory,
my jre throws a error. So i decided to decompile</font>
<br><font size=2 face="sans-serif">your class files with jad. (hope that
is no problem for you ;-))</font>
<br><font size=2 face="sans-serif">I've removed your gotos, i think that
were once labels....?</font>
<br><font size=2 face="sans-serif">I've added the java file of PullParserFactory.
you will see my changes.</font>
<br>
<br><font size=2 face="sans-serif">I wish u a nice weekend.</font>
<br>
<br><font size=2 face="sans-serif">Greetings </font>
<br>
<br><font size=2 face="sans-serif">Sigi</font>
<br>
<br>
--=_alternative 00436E39C1256DDE_=--
--=_mixed 00436E39C1256DDE_=
Content-Type: application/octet-stream; name="XmlPullParserFactory.java"
Content-Disposition: attachment; filename="XmlPullParserFactory.java"
Content-Transfer-Encoding: base64

Ly8gRGVjb21waWxlZCBVc2luZzogRnJvbnRFbmQgUGx1cyB2Mi4wMyBhbmQgdGhlIEpBRCBFbmdp
bmUNCi8vIEF2YWlsYWJsZSBGcm9tOiBodHRwOi8vd3d3LnJlZmxlY3Rpb25zLmF0aC5jeA0KLy8g
RGVjb21waWxlciBvcHRpb25zOiBwYWNraW1wb3J0cygzKQ0KLy8gU291cmNlIEZpbGUgTmFtZTog
ICBYbWxQdWxsUGFyc2VyRmFjdG9yeS5qYXZhDQoNCnBhY2thZ2Ugb3JnLnhtbHB1bGwudjE7DQoN
CmltcG9ydCBvcmcua3htbDIuaW8uS1htbFBhcnNlcjsNCg0KaW1wb3J0IGphdmEuaW8uSW5wdXRT
dHJlYW07DQppbXBvcnQgamF2YS51dGlsLio7DQoNCi8vIFJlZmVyZW5jZWQgY2xhc3NlcyBvZiBw
YWNrYWdlIG9yZy54bWxwdWxsLnYxOg0KLy8gICAgICAgICAgICBYbWxQdWxsUGFyc2VyRXhjZXB0
aW9uLCBYbWxQdWxsUGFyc2VyLCBYbWxTZXJpYWxpemVyDQoNCnB1YmxpYyBjbGFzcyBYbWxQdWxs
UGFyc2VyRmFjdG9yeQ0Kew0KDQogICAgcHJvdGVjdGVkIFhtbFB1bGxQYXJzZXJGYWN0b3J5KCkN
CiAgICB7DQogICAgICAgIGZlYXR1cmVzID0gbmV3IEhhc2h0YWJsZSgpOw0KICAgIH0NCg0KICAg
IHB1YmxpYyB2b2lkIHNldEZlYXR1cmUoU3RyaW5nIG5hbWUsIGJvb2xlYW4gc3RhdGUpDQogICAg
ICAgIHRocm93cyBYbWxQdWxsUGFyc2VyRXhjZXB0aW9uDQogICAgew0KICAgICAgICBmZWF0dXJl
cy5wdXQobmFtZSwgbmV3IEJvb2xlYW4oc3RhdGUpKTsNCiAgICB9DQoNCiAgICBwdWJsaWMgYm9v
bGVhbiBnZXRGZWF0dXJlKFN0cmluZyBuYW1lKQ0KICAgIHsNCiAgICAgICAgQm9vbGVhbiB2YWx1
ZSA9IChCb29sZWFuKWZlYXR1cmVzLmdldChuYW1lKTsNCiAgICAgICAgcmV0dXJuIHZhbHVlID09
IG51bGwgPyBmYWxzZSA6IHZhbHVlLmJvb2xlYW5WYWx1ZSgpOw0KICAgIH0NCg0KICAgIHB1Ymxp
YyB2b2lkIHNldE5hbWVzcGFjZUF3YXJlKGJvb2xlYW4gYXdhcmVuZXNzKQ0KICAgIHsNCiAgICAg
ICAgZmVhdHVyZXMucHV0KCJodHRwOi8veG1scHVsbC5vcmcvdjEvZG9jL2ZlYXR1cmVzLmh0bWwj
cHJvY2Vzcy1uYW1lc3BhY2VzIiwgbmV3IEJvb2xlYW4oYXdhcmVuZXNzKSk7DQogICAgfQ0KDQog
ICAgcHVibGljIGJvb2xlYW4gaXNOYW1lc3BhY2VBd2FyZSgpDQogICAgew0KICAgICAgICByZXR1
cm4gZ2V0RmVhdHVyZSgiaHR0cDovL3htbHB1bGwub3JnL3YxL2RvYy9mZWF0dXJlcy5odG1sI3By
b2Nlc3MtbmFtZXNwYWNlcyIpOw0KICAgIH0NCg0KICAgIHB1YmxpYyB2b2lkIHNldFZhbGlkYXRp
bmcoYm9vbGVhbiB2YWxpZGF0aW5nKQ0KICAgIHsNCiAgICAgICAgZmVhdHVyZXMucHV0KCJodHRw
Oi8veG1scHVsbC5vcmcvdjEvZG9jL2ZlYXR1cmVzLmh0bWwjdmFsaWRhdGlvbiIsIG5ldyBCb29s
ZWFuKHZhbGlkYXRpbmcpKTsNCiAgICB9DQoNCiAgICBwdWJsaWMgYm9vbGVhbiBpc1ZhbGlkYXRp
bmcoKQ0KICAgIHsNCiAgICAgICAgcmV0dXJuIGdldEZlYXR1cmUoImh0dHA6Ly94bWxwdWxsLm9y
Zy92MS9kb2MvZmVhdHVyZXMuaHRtbCN2YWxpZGF0aW9uIik7DQogICAgfQ0KDQogICAgcHVibGlj
IFhtbFB1bGxQYXJzZXIgbmV3UHVsbFBhcnNlcigpDQogICAgICAgIHRocm93cyBYbWxQdWxsUGFy
c2VyRXhjZXB0aW9uDQogICAgew0KICAgICAgICBTdHJpbmdCdWZmZXIgaXNzdWVzOw0KICAgICAg
ICBpbnQgaTsNCiAgICAgICAgaWYocGFyc2VyQ2xhc3NlcyA9PSBudWxsKQ0KICAgICAgICAgICAg
dGhyb3cgbmV3IFhtbFB1bGxQYXJzZXJFeGNlcHRpb24oIkZhY3RvcnkgaW5pdGlhbGl6YXRpb24g
d2FzIGluY29tcGxldGUgLSBoYXMgbm90IHRyaWVkICIgKyBjbGFzc05hbWVzTG9jYXRpb24pOw0K
ICAgICAgICBpZihwYXJzZXJDbGFzc2VzLnNpemUoKSA9PSAwKQ0KICAgICAgICAgICAgdGhyb3cg
bmV3IFhtbFB1bGxQYXJzZXJFeGNlcHRpb24oIk5vIHZhbGlkIHBhcnNlciBjbGFzc2VzIGZvdW5k
IGluICIgKyBjbGFzc05hbWVzTG9jYXRpb24pOw0KICAgICAgICBpc3N1ZXMgPSBuZXcgU3RyaW5n
QnVmZmVyKCk7DQogICAgICAgIGkgPSAwOw0KICAgICAgICAvKg0KICAgICAgICBpZihpID49ICBw
YXJzZXJDbGFzc2VzLnNpemUoKSl7DQogICAgICAgICAgICBDbGFzcyBwcENsYXNzID0gbnVsbDsN
CiAgICAgICAgICAgIHdoaWxlKGkgPCBwYXJzZXJDbGFzc2VzLnNpemUoKSl7DQogICAgICAgICAg
ICAgICAgdHJ5ew0KICAgICAgICAgICAgICAgICAgICBwcENsYXNzID0gKENsYXNzKXBhcnNlckNs
YXNzZXMuZWxlbWVudEF0KGkpOw0KICAgICAgICAgICAgICAgICAgICBYbWxQdWxsUGFyc2VyIHBw
Ow0KICAgICAgICAgICAgICAgICAgICBwcCA9IChYbWxQdWxsUGFyc2VyKXBwQ2xhc3MubmV3SW5z
dGFuY2UoKTsNCiAgICAgICAgICAgICAgICAgICAgZm9yKEVudW1lcmF0aW9uIGUgPSBmZWF0dXJl
cy5rZXlzKCk7IGUuaGFzTW9yZUVsZW1lbnRzKCk7KQ0KICAgICAgICAgICAgICAgICAgICB7DQog
ICAgICAgICAgICAgICAgICAgICAgICBTdHJpbmcga2V5ID0gKFN0cmluZyllLm5leHRFbGVtZW50
KCk7DQogICAgICAgICAgICAgICAgICAgICAgICBCb29sZWFuIHZhbHVlID0gKEJvb2xlYW4pZmVh
dHVyZXMuZ2V0KGtleSk7DQogICAgICAgICAgICAgICAgICAgICAgICBpZih2YWx1ZSAhPSBudWxs
ICYmIHZhbHVlLmJvb2xlYW5WYWx1ZSgpKQ0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBw
LnNldEZlYXR1cmUoa2V5LCB0cnVlKTsNCiAgICAgICAgICAgICAgICAgICAgfQ0KDQogICAgICAg
ICAgICAgICAgICAgIHJldHVybiBwcDsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAg
ICAgY2F0Y2goRXhjZXB0aW9uIGV4KXsNCiAgICAgICAgICAgICAgICAgICAgaXNzdWVzLmFwcGVu
ZChwcENsYXNzLmdldE5hbWUoKSArICI6ICIgKyBleC50b1N0cmluZygpICsgIjsgIik7DQogICAg
ICAgICAgICAgICAgfQ0KICAgICAgICAgICAgICAgIC8vaXNzdWVzLmFwcGVuZChwcENsYXNzLmdl
dE5hbWUoKSArICI6ICIgKyBleC50b1N0cmluZygpICsgIjsgIik7DQogICAgICAgICAgICAgICAg
aSsrOw0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQogICAgICAgIGVsc2V7DQogICAgICAgICAg
ICB0aHJvdyBuZXcgWG1sUHVsbFBhcnNlckV4Y2VwdGlvbigiY291bGQgbm90IGNyZWF0ZSBwYXJz
ZXI6ICIgKyBpc3N1ZXMpOw0KDQogICAgICAgIH0NCiAgICAgICAgKi8NCiAgICAgICAgcmV0dXJu
IG5ldyBLWG1sUGFyc2VyKCk7DQogICAgfQ0KLyoNCiAgICAgICAgICBnb3RvIF9MMQ0KX0wzOg0K
ICAgICAgICBDbGFzcyBwcENsYXNzID0gKENsYXNzKXBhcnNlckNsYXNzZXMuZWxlbWVudEF0KGkp
Ow0KICAgICAgICBYbWxQdWxsUGFyc2VyIHBwOw0KICAgICAgICBwcCA9IChYbWxQdWxsUGFyc2Vy
KXBwQ2xhc3MubmV3SW5zdGFuY2UoKTsNCiAgICAgICAgZm9yKEVudW1lcmF0aW9uIGUgPSBmZWF0
dXJlcy5rZXlzKCk7IGUuaGFzTW9yZUVsZW1lbnRzKCk7KQ0KICAgICAgICB7DQogICAgICAgICAg
ICBTdHJpbmcga2V5ID0gKFN0cmluZyllLm5leHRFbGVtZW50KCk7DQogICAgICAgICAgICBCb29s
ZWFuIHZhbHVlID0gKEJvb2xlYW4pZmVhdHVyZXMuZ2V0KGtleSk7DQogICAgICAgICAgICBpZih2
YWx1ZSAhPSBudWxsICYmIHZhbHVlLmJvb2xlYW5WYWx1ZSgpKQ0KICAgICAgICAgICAgICAgIHBw
LnNldEZlYXR1cmUoa2V5LCB0cnVlKTsNCiAgICAgICAgfQ0KDQogICAgICAgIHJldHVybiBwcDsN
CiAgICAgICAgRXhjZXB0aW9uIGV4Ow0KICAgICAgICBleDsNCiAgICAgICAgaXNzdWVzLmFwcGVu
ZChwcENsYXNzLmdldE5hbWUoKSArICI6ICIgKyBleC50b1N0cmluZygpICsgIjsgIik7DQogICAg
ICAgIGkrKzsNCl9MMToNCiAgICAgICAgaWYoaSA8IHBhcnNlckNsYXNzZXMuc2l6ZSgpKSBnb3Rv
IF9MMzsgZWxzZSBnb3RvIF9MMg0KX0wyOg0KICAgICAgICB0aHJvdyBuZXcgWG1sUHVsbFBhcnNl
ckV4Y2VwdGlvbigiY291bGQgbm90IGNyZWF0ZSBwYXJzZXI6ICIgKyBpc3N1ZXMpOw0KICAgIH0N
CiovDQogICAgcHVibGljIFhtbFNlcmlhbGl6ZXIgbmV3U2VyaWFsaXplcigpDQogICAgICAgIHRo
cm93cyBYbWxQdWxsUGFyc2VyRXhjZXB0aW9uDQogICAgew0KICAgICAgICBDbGFzcyBwcENsYXNz
ID0gbnVsbDsNCiAgICAgICAgU3RyaW5nQnVmZmVyIGlzc3VlczsNCiAgICAgICAgaW50IGk7DQog
ICAgICAgIGlmKHNlcmlhbGl6ZXJDbGFzc2VzID09IG51bGwpDQogICAgICAgICAgICB0aHJvdyBu
ZXcgWG1sUHVsbFBhcnNlckV4Y2VwdGlvbigiRmFjdG9yeSBpbml0aWFsaXphdGlvbiBpbmNvbXBs
ZXRlIC0gaGFzIG5vdCB0cmllZCAiICsgY2xhc3NOYW1lc0xvY2F0aW9uKTsNCiAgICAgICAgaWYo
c2VyaWFsaXplckNsYXNzZXMuc2l6ZSgpID09IDApDQogICAgICAgICAgICB0aHJvdyBuZXcgWG1s
UHVsbFBhcnNlckV4Y2VwdGlvbigiTm8gdmFsaWQgc2VyaWFsaXplciBjbGFzc2VzIGZvdW5kIGlu
ICIgKyBjbGFzc05hbWVzTG9jYXRpb24pOw0KICAgICAgICBpc3N1ZXMgPSBuZXcgU3RyaW5nQnVm
ZmVyKCk7DQogICAgICAgIGkgPSAwOw0KICAgICAgICBpZihpIDwgIHNlcmlhbGl6ZXJDbGFzc2Vz
LnNpemUoKSl7DQogICAgICAgICAgICB3aGlsZShpIDwgc2VyaWFsaXplckNsYXNzZXMuc2l6ZSgp
KXsNCiAgICAgICAgICAgICAgICB0cnl7DQogICAgICAgICAgICAgICAgcHBDbGFzcyA9IChDbGFz
cylzZXJpYWxpemVyQ2xhc3Nlcy5lbGVtZW50QXQoaSk7DQogICAgICAgICAgICAgICAgWG1sU2Vy
aWFsaXplciBzZXIgPSAoWG1sU2VyaWFsaXplcilwcENsYXNzLm5ld0luc3RhbmNlKCk7DQogICAg
ICAgICAgICAgICAgcmV0dXJuIHNlcjsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAg
ICAgY2F0Y2goRXhjZXB0aW9uIGUpew0KICAgICAgICAgICAgICAgICAgICBpc3N1ZXMuYXBwZW5k
KHBwQ2xhc3MuZ2V0TmFtZSgpICsgIjogIiArIGUudG9TdHJpbmcoKSArICI7ICIpOw0KICAgICAg
ICAgICAgICAgIH0NCiAgICAgICAgICAgIH0NCiAgICAgICAgfQ0KICAgICAgICBlbHNlew0KICAg
ICAgICAgICAgdGhyb3cgbmV3IFhtbFB1bGxQYXJzZXJFeGNlcHRpb24oImNvdWxkIG5vdCBjcmVh
dGUgc2VyaWFsaXplcjogIiArIGlzc3Vlcyk7DQogICAgICAgIH0NCiAgICAgICAgcmV0dXJuIG51
bGw7DQogICAgICAgIC8qDQogICAgICAgICAgZ290byBfTDENCl9MMzoNCiAgICAgICAgcHBDbGFz
cyA9IChDbGFzcylzZXJpYWxpemVyQ2xhc3Nlcy5lbGVtZW50QXQoaSk7DQogICAgICAgIFhtbFNl
cmlhbGl6ZXIgc2VyID0gKFhtbFNlcmlhbGl6ZXIpcHBDbGFzcy5uZXdJbnN0YW5jZSgpOw0KICAg
ICAgICByZXR1cm4gc2VyOw0KICAgICAgICBFeGNlcHRpb24gZXg7DQogICAgICAgIGV4Ow0KICAg
ICAgICBpc3N1ZXMuYXBwZW5kKHBwQ2xhc3MuZ2V0TmFtZSgpICsgIjogIiArIGV4LnRvU3RyaW5n
KCkgKyAiOyAiKTsNCiAgICAgICAgaSsrOw0KX0wxOg0KICAgICAgICBpZihpIDwgc2VyaWFsaXpl
ckNsYXNzZXMuc2l6ZSgpKSBnb3RvIF9MMzsgZWxzZSBnb3RvIF9MMg0KX0wyOg0KICAgICAgICB0
aHJvdyBuZXcgWG1sUHVsbFBhcnNlckV4Y2VwdGlvbigiY291bGQgbm90IGNyZWF0ZSBzZXJpYWxp
emVyOiAiICsgaXNzdWVzKTsNCiAgICAgICAgKi8NCiAgICB9DQoNCg0KICAgIHB1YmxpYyBzdGF0
aWMgWG1sUHVsbFBhcnNlckZhY3RvcnkgbmV3SW5zdGFuY2UoKQ0KICAgICAgICB0aHJvd3MgWG1s
UHVsbFBhcnNlckV4Y2VwdGlvbg0KICAgIHsNCiAgICAgICAgcmV0dXJuIG5ld0luc3RhbmNlKG51
bGwsIG51bGwpOw0KICAgIH0NCg0KICAgIHB1YmxpYyBzdGF0aWMgWG1sUHVsbFBhcnNlckZhY3Rv
cnkgbmV3SW5zdGFuY2UoU3RyaW5nIGNsYXNzTmFtZXMsIENsYXNzIGNvbnRleHQpDQogICAgICAg
IHRocm93cyBYbWxQdWxsUGFyc2VyRXhjZXB0aW9uDQogICAgew0KICAgICAgICBpZihjb250ZXh0
ID09IG51bGwpDQogICAgICAgICAgICBjb250ZXh0ID0gcmVmZXJlbmNlQ29udGV4dENsYXNzOw0K
ICAgICAgICBTdHJpbmcgY2xhc3NOYW1lc0xvY2F0aW9uID0gbnVsbDsNCiAgICAgICAgY2xhc3NO
YW1lcyA9ICJvcmcua3htbDIuaW8uS1htbFBhcnNlcixvcmcua3htbDIuaW8uS1htbFNlcmlhbGl6
ZXIiOw0KICAgICAgICBpZihjbGFzc05hbWVzID09IG51bGwgfHwgY2xhc3NOYW1lcy5sZW5ndGgo
KSA9PSAwIHx8ICJERUZBVUxUIi5lcXVhbHMoY2xhc3NOYW1lcykpDQogICAgICAgIHsNCg0KICAg
ICAgICAgICAgdHJ5DQogICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgLy9DOi9FbnR3aWNr
bHVuZy9UaGlubGV0L3NyYy9NRVRBLUlORlxzZXJ2aWNlcw0KICAgICAgICAgICAgICAgIElucHV0
U3RyZWFtIGlzID0gY29udGV4dC5nZXRSZXNvdXJjZUFzU3RyZWFtKCJDOi9FbnR3aWNrbHVuZy9U
aGlubGV0L3NyYy9NRVRBLUlORi9zZXJ2aWNlcy9vcmcueG1scHVsbC52MS5YbWxQdWxsUGFyc2Vy
RmFjdG9yeSIpOw0KICAgICAgICAgICAgICAgIGlmKGlzID09IG51bGwpDQogICAgICAgICAgICAg
ICAgICAgIHRocm93IG5ldyBYbWxQdWxsUGFyc2VyRXhjZXB0aW9uKCJyZXNvdXJjZSBub3QgZm91
bmQ6IC9NRVRBLUlORi9zZXJ2aWNlcy9vcmcueG1scHVsbC52MS5YbWxQdWxsUGFyc2VyRmFjdG9y
eSBtYWtlIHN1cmUgdGhhdCBwYXJzZXIgaW1wbGVtZW50aW5nIFhtbFB1bGwgQVBJIGlzIGF2YWls
YWJsZSIpOw0KICAgICAgICAgICAgICAgIFN0cmluZ0J1ZmZlciBzYiA9IG5ldyBTdHJpbmdCdWZm
ZXIoKTsNCiAgICAgICAgICAgICAgICBkbw0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAg
ICAgICAgICAgaW50IGNoID0gaXMucmVhZCgpOw0KICAgICAgICAgICAgICAgICAgICBpZihjaCA8
IDApDQogICAgICAgICAgICAgICAgICAgICAgICBicmVhazsNCiAgICAgICAgICAgICAgICAgICAg
aWYoY2ggPiAzMikNCiAgICAgICAgICAgICAgICAgICAgICAgIHNiLmFwcGVuZCgoY2hhciljaCk7
DQogICAgICAgICAgICAgICAgfSB3aGlsZSh0cnVlKTsNCiAgICAgICAgICAgICAgICBpcy5jbG9z
ZSgpOw0KICAgICAgICAgICAgICAgIGNsYXNzTmFtZXMgPSBzYi50b1N0cmluZygpOw0KICAgICAg
ICAgICAgfQ0KICAgICAgICAgICAgY2F0Y2goRXhjZXB0aW9uIGUpDQogICAgICAgICAgICB7DQog
ICAgICAgICAgICAgICAgdGhyb3cgbmV3IFhtbFB1bGxQYXJzZXJFeGNlcHRpb24obnVsbCwgbnVs
bCwgZSk7DQogICAgICAgICAgICB9DQoNCg0KICAgICAgICAgICAgY2xhc3NOYW1lc0xvY2F0aW9u
ID0gInJlc291cmNlIC9NRVRBLUlORi9zZXJ2aWNlcy9vcmcueG1scHVsbC52MS5YbWxQdWxsUGFy
c2VyRmFjdG9yeSB0aGF0IGNvbnRhaW5lZCAnIiArIGNsYXNzTmFtZXMgKyAiJyI7DQogICAgICAg
IH0gZWxzZQ0KICAgICAgICB7DQogICAgICAgICAgICBjbGFzc05hbWVzTG9jYXRpb24gPSAicGFy
YW1ldGVyIGNsYXNzTmFtZXMgdG8gbmV3SW5zdGFuY2UoKSB0aGF0IGNvbnRhaW5lZCAnIiArIGNs
YXNzTmFtZXMgKyAiJyI7DQogICAgICAgIH0NCiAgICAgICAgWG1sUHVsbFBhcnNlckZhY3Rvcnkg
ZmFjdG9yeSA9IG51bGw7DQogICAgICAgIFZlY3RvciBwYXJzZXJDbGFzc2VzID0gbmV3IFZlY3Rv
cigpOw0KICAgICAgICBWZWN0b3Igc2VyaWFsaXplckNsYXNzZXMgPSBuZXcgVmVjdG9yKCk7DQog
ICAgICAgIGludCBjdXQ7DQogICAgICAgIGZvcihpbnQgcG9zID0gMDsgcG9zIDwgY2xhc3NOYW1l
cy5sZW5ndGgoKTsgcG9zID0gY3V0ICsgMSkNCiAgICAgICAgew0KICAgICAgICAgICAgY3V0ID0g
Y2xhc3NOYW1lcy5pbmRleE9mKCcsJywgcG9zKTsNCiAgICAgICAgICAgIGlmKGN1dCA9PSAtMSkN
CiAgICAgICAgICAgICAgICBjdXQgPSBjbGFzc05hbWVzLmxlbmd0aCgpOw0KICAgICAgICAgICAg
U3RyaW5nIG5hbWUgPSBjbGFzc05hbWVzLnN1YnN0cmluZyhwb3MsIGN1dCk7DQogICAgICAgICAg
ICBDbGFzcyBjYW5kaWRhdGUgPSBudWxsOw0KICAgICAgICAgICAgT2JqZWN0IGluc3RhbmNlID0g
bnVsbDsNCiAgICAgICAgICAgIHRyeQ0KICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIGNh
bmRpZGF0ZSA9IENsYXNzLmZvck5hbWUobmFtZSk7DQogICAgICAgICAgICAgICAgaW5zdGFuY2Ug
PSBjYW5kaWRhdGUubmV3SW5zdGFuY2UoKTsNCiAgICAgICAgICAgIH0NCiAgICAgICAgICAgIGNh
dGNoKEV4Y2VwdGlvbiBlKSB7IH0NCiAgICAgICAgICAgIGlmKGNhbmRpZGF0ZSAhPSBudWxsKQ0K
ICAgICAgICAgICAgew0KICAgICAgICAgICAgICAgIGJvb2xlYW4gcmVjb2duaXplZCA9IGZhbHNl
Ow0KICAgICAgICAgICAgICAgIGlmKGluc3RhbmNlIGluc3RhbmNlb2YgWG1sUHVsbFBhcnNlcikN
CiAgICAgICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIHBhcnNlckNsYXNzZXMuYWRk
RWxlbWVudChjYW5kaWRhdGUpOw0KICAgICAgICAgICAgICAgICAgICByZWNvZ25pemVkID0gdHJ1
ZTsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAgICAgICAgaWYoaW5zdGFuY2UgaW5zdGFu
Y2VvZiBYbWxTZXJpYWxpemVyKQ0KICAgICAgICAgICAgICAgIHsNCiAgICAgICAgICAgICAgICAg
ICAgc2VyaWFsaXplckNsYXNzZXMuYWRkRWxlbWVudChjYW5kaWRhdGUpOw0KICAgICAgICAgICAg
ICAgICAgICByZWNvZ25pemVkID0gdHJ1ZTsNCiAgICAgICAgICAgICAgICB9DQogICAgICAgICAg
ICAgICAgaWYoaW5zdGFuY2UgaW5zdGFuY2VvZiBYbWxQdWxsUGFyc2VyRmFjdG9yeSkNCiAgICAg
ICAgICAgICAgICB7DQogICAgICAgICAgICAgICAgICAgIGlmKGZhY3RvcnkgPT0gbnVsbCkNCiAg
ICAgICAgICAgICAgICAgICAgICAgIGZhY3RvcnkgPSAoWG1sUHVsbFBhcnNlckZhY3RvcnkpaW5z
dGFuY2U7DQogICAgICAgICAgICAgICAgICAgIHJlY29nbml6ZWQgPSB0cnVlOw0KICAgICAgICAg
ICAgICAgIH0NCiAgICAgICAgICAgICAgICBpZighcmVjb2duaXplZCkNCiAgICAgICAgICAgICAg
ICAgICAgdGhyb3cgbmV3IFhtbFB1bGxQYXJzZXJFeGNlcHRpb24oImluY29tcGF0aWJsZSBjbGFz
czogIiArIG5hbWUpOw0KICAgICAgICAgICAgfQ0KICAgICAgICB9DQoNCiAgICAgICAgaWYoZmFj
dG9yeSA9PSBudWxsKQ0KICAgICAgICAgICAgZmFjdG9yeSA9IG5ldyBYbWxQdWxsUGFyc2VyRmFj
dG9yeSgpOw0KICAgICAgICBmYWN0b3J5LnBhcnNlckNsYXNzZXMgPSBwYXJzZXJDbGFzc2VzOw0K
ICAgICAgICBmYWN0b3J5LnNlcmlhbGl6ZXJDbGFzc2VzID0gc2VyaWFsaXplckNsYXNzZXM7DQog
ICAgICAgIGZhY3RvcnkuY2xhc3NOYW1lc0xvY2F0aW9uID0gY2xhc3NOYW1lc0xvY2F0aW9uOw0K
ICAgICAgICByZXR1cm4gZmFjdG9yeTsNCiAgICB9DQoNCiAgICBzdGF0aWMgZmluYWwgQ2xhc3Mg
cmVmZXJlbmNlQ29udGV4dENsYXNzOw0KICAgIHB1YmxpYyBzdGF0aWMgZmluYWwgU3RyaW5nIFBS
T1BFUlRZX05BTUUgPSAib3JnLnhtbHB1bGwudjEuWG1sUHVsbFBhcnNlckZhY3RvcnkiOw0KICAg
IHByaXZhdGUgc3RhdGljIGZpbmFsIFN0cmluZyBSRVNPVVJDRV9OQU1FID0gIi9NRVRBLUlORi9z
ZXJ2aWNlcy9vcmcueG1scHVsbC52MS5YbWxQdWxsUGFyc2VyRmFjdG9yeSI7DQogICAgcHJvdGVj
dGVkIFZlY3RvciBwYXJzZXJDbGFzc2VzOw0KICAgIHByb3RlY3RlZCBTdHJpbmcgY2xhc3NOYW1l
c0xvY2F0aW9uOw0KICAgIHByb3RlY3RlZCBWZWN0b3Igc2VyaWFsaXplckNsYXNzZXM7DQogICAg
cHJvdGVjdGVkIEhhc2h0YWJsZSBmZWF0dXJlczsNCg0KICAgIHN0YXRpYw0KICAgIHsNCiAgICAg
ICAgWG1sUHVsbFBhcnNlckZhY3RvcnkgZiA9IG5ldyBYbWxQdWxsUGFyc2VyRmFjdG9yeSgpOw0K
ICAgICAgICByZWZlcmVuY2VDb250ZXh0Q2xhc3MgPSBmLmdldENsYXNzKCk7DQogICAgfQ0KfQ0K
--=_mixed 00436E39C1256DDE_=--