[Mono-list] Problems with postgres.

Roberto Jimeno rjimeno2003@yahoo.com
Tue, 18 Nov 2003 17:18:58 -0800 (PST)


--0-1765753310-1069204738=:85536
Content-Type: text/plain; charset=us-ascii
Content-Id: 
Content-Disposition: inline

Hi there!

Tim, Rodrigo, Daniel, Rafael or someone willing to
help a mono/sql newbie here.

I'm using Mono 0.28 installed from an RPM file (and I
have reasons to stick to the RPM file rather than
using CVS)

I'm writing some C# code which requires to select some
information from a bunch of already-filled tables on a
postgres database.

I tried to use Mono.Data.PostgreSQL unsuccessfully as
well as Npgsql (more details on this at the bottom of
the message). Now I don't know what to do: Should I
keep on trying with either of those data providers?
Should I try to use ByteFX with postgres? Where can I
find more information about it?


Thanks in advance for helping me.



Details on the tests and failures with both data
providers:

>From http://go-mono.com/postgresql.html I copied
verbatim the examples for Mono.Data.PostgreSqlClient
and Npgsql named them
TestExample.Mono.Data.PostgreSqlClient.cs and
TestExample.Npgsql.cs respectively, and then followed
the instructions found there, in order to compile and
use the examples:

When I tried to compile the one using PostgreSqlClient
, it failed with "Cannot find type `PgConnection'"

Afterwards, I tried to compile the one using Npgsql,
which also failed, this time indicating "Use of
unassigned local variable `dbcon'" on line 15.

>From somewhere (I can't remember where, but the source
file is also attached) I copied another test example
which compiles on my system, although when I attempt
to run the .exe file using mono, it complains about an
unhandled exception ("A null value was found where an
object instance was required")


The command lines Im using to build (or attempt to
build) the test examples are as follows:

$mcs TestExample.Mono.Data.PostgreSqlClient.cs -r
System.Data.dll -r Mono.Data.PostgreSqlClient.dll

$mcs TestExample.Npgsql.cs -r System.Data.dll -r
Npgsql.dll

$mcs OtherTestExample.cs -r System.Data.dll -r
Mono.Data.PostgreSqlClient.dll


=====
Roberto Jimeno

__________________________________
Do you Yahoo!?
Protect your identity with Yahoo! Mail AddressGuard
http://antispam.yahoo.com/whatsnewfree
--0-1765753310-1069204738=:85536
Content-Type: application/octet-stream; name="TestExample.Mono.Data.PostgreSqlClient.cs"
Content-Transfer-Encoding: base64
Content-Description: TestExample.Mono.Data.PostgreSqlClient.cs
Content-Disposition: attachment; filename="TestExample.Mono.Data.PostgreSqlClient.cs"

dXNpbmcgU3lzdGVtOwogdXNpbmcgU3lzdGVtLkRhdGE7CiB1c2luZyBNb25v
LkRhdGEuUG9zdGdyZVNxbENsaWVudDsKIAogcHVibGljIGNsYXNzIFRlc3Qg
CiB7CiAgICBwdWJsaWMgc3RhdGljIHZvaWQgTWFpbihzdHJpbmdbXSBhcmdz
KQogICAgewogICAgICAgc3RyaW5nIGNvbm5lY3Rpb25TdHJpbmcgPSAKICAg
ICAgICAgICJTZXJ2ZXI9bG9jYWxob3N0OyIgKwogICAgICAgICAgIkRhdGFi
YXNlPXRlc3Q7IiArCiAgICAgICAgICAiVXNlciBJRD1wb3N0Z3JlczsiICsK
ICAgICAgICAgICJQYXNzd29yZD1mdW4yZGI7IjsKICAgICAgIElEYkNvbm5l
Y3Rpb24gZGJjb247CiAgICAgICBkYmNvbiA9IG5ldyBQZ0Nvbm5lY3Rpb24o
Y29ubmVjdGlvblN0cmluZyk7CiAgICAgICBkYmNvbi5PcGVuKCk7CiAgICAg
ICBJRGJDb21tYW5kIGRiY21kID0gZGJjb24uQ3JlYXRlQ29tbWFuZCgpOwog
ICAgICAgLy8gcmVxdWlyZXMgYSB0YWJsZSB0byBiZSBjcmVhdGVkIG5hbWVk
IGVtcGxveWVlCiAgICAgICAvLyB3aXRoIGNvbHVtbnMgZmlyc3RuYW1lIGFu
ZCBsYXN0bmFtZQogICAgICAgLy8gc3VjaCBhcywKICAgICAgIC8vICAgICAg
ICBDUkVBVEUgVEFCTEUgZW1wbG95ZWUgKAogICAgICAgLy8gICAgICAgICAg
IGZpcnN0bmFtZSB2YXJjaGFyKDMyKSwKICAgICAgIC8vICAgICAgICAgICBs
YXN0bmFtZSB2YXJjaGFyKDMyKSk7CiAgICAgICBzdHJpbmcgc3FsID0gCiAg
ICAgICAgICAgIlNFTEVDVCBmaXJzdG5hbWUsIGxhc3RuYW1lIiArIAogICAg
ICAgICAgICJGUk9NIGVtcGxveWVlIjsKICAgICAgIGRiY21kLkNvbW1hbmRU
ZXh0ID0gc3FsOwogICAgICAgSURhdGFSZWFkZXIgcmVhZGVyID0gZGJjbWQu
RXhlY3V0ZVJlYWRlcigpOwogICAgICAgd2hpbGUocmVhZGVyLlJlYWQoKSkg
ewogICAgICAgICAgICBzdHJpbmcgRmlyc3ROYW1lID0gKHN0cmluZykgcmVh
ZGVyWyJmaXJzdG5hbWUiXTsKICAgICAgICAgICAgc3RyaW5nIExhc3ROYW1l
ID0gKHN0cmluZykgcmVhZGVyWyJsYXN0bmFtZSJdOwogICAgICAgICAgICBD
b25zb2xlLldyaXRlTGluZSgiTmFtZTogIiArIAogICAgICAgICAgICAgICAg
Rmlyc3ROYW1lICsgIiAiICsgTGFzdE5hbWUpOwogICAgICAgfQogICAgICAg
Ly8gY2xlYW4gdXAKICAgICAgIHJlYWRlci5DbG9zZSgpOwogICAgICAgcmVh
ZGVyID0gbnVsbDsKICAgICAgIGRiY21kLkRpc3Bvc2UoKTsKICAgICAgIGRi
Y21kID0gbnVsbDsKICAgICAgIGRiY29uLkNsb3NlKCk7CiAgICAgICBkYmNv
biA9IG51bGw7CiAgICB9CiB9Cg==

--0-1765753310-1069204738=:85536
Content-Type: application/octet-stream; name="TestExample.Npgsql.cs"
Content-Transfer-Encoding: base64
Content-Description: TestExample.Npgsql.cs
Content-Disposition: attachment; filename="TestExample.Npgsql.cs"

IHVzaW5nIFN5c3RlbTsKIHVzaW5nIFN5c3RlbS5EYXRhOwogdXNpbmcgTnBn
c3FsOwogCiBwdWJsaWMgY2xhc3MgVGVzdCAKIHsKICAgIHB1YmxpYyBzdGF0
aWMgdm9pZCBNYWluKHN0cmluZ1tdIGFyZ3MpCiAgICB7CiAgICAgICBzdHJp
bmcgY29ubmVjdGlvblN0cmluZyA9IAogICAgICAgICAgIlNlcnZlcj1sb2Nh
bGhvc3Q7IiArCiAgICAgICAgICAiRGF0YWJhc2U9dGVzdDsiICsKICAgICAg
ICAgICJVc2VyIElEPXBvc3RncmVzOyIgKwogICAgICAgICAgIlBhc3N3b3Jk
PWZ1bjJkYjsiOwogICAgICAgSURiQ29ubmVjdGlvbiBkYmNvbjsKICAgICAg
IGRiY29uLk9wZW4oKTsKICAgICAgIGRiY29uID0gbmV3IE5wZ3NxbENvbm5l
Y3Rpb24oY29ubmVjdGlvblN0cmluZyk7CiAgICAgICBJRGJDb21tYW5kIGRi
Y21kID0gZGJjb24uQ3JlYXRlQ29tbWFuZCgpOwogICAgICAgLy8gcmVxdWly
ZXMgYSB0YWJsZSB0byBiZSBjcmVhdGVkIG5hbWVkIGVtcGxveWVlCiAgICAg
ICAvLyB3aXRoIGNvbHVtbnMgZmlyc3RuYW1lIGFuZCBsYXN0bmFtZQogICAg
ICAgLy8gc3VjaCBhcywKICAgICAgIC8vICAgICAgICBDUkVBVEUgVEFCTEUg
ZW1wbG95ZWUgKAogICAgICAgLy8gICAgICAgICAgIGZpcnN0bmFtZSB2YXJj
aGFyKDMyKSwKICAgICAgIC8vICAgICAgICAgICBsYXN0bmFtZSB2YXJjaGFy
KDMyKSk7CiAgICAgICBzdHJpbmcgc3FsID0gCiAgICAgICAgICAgIlNFTEVD
VCBmaXJzdG5hbWUsIGxhc3RuYW1lICIgKwogICAgICAgICAgICJGUk9NIGVt
cGxveWVlIjsKICAgICAgIGRiY21kLkNvbW1hbmRUZXh0ID0gc3FsOwogICAg
ICAgSURhdGFSZWFkZXIgcmVhZGVyID0gZGJjbWQuRXhlY3V0ZVJlYWRlcigp
OwogICAgICAgd2hpbGUocmVhZGVyLlJlYWQoKSkgewogICAgICAgICAgICBz
dHJpbmcgRmlyc3ROYW1lID0gKHN0cmluZykgcmVhZGVyWyJmaXJzdG5hbWUi
XTsKICAgICAgICAgICAgc3RyaW5nIExhc3ROYW1lID0gKHN0cmluZykgcmVh
ZGVyWyJsYXN0bmFtZSJdOwogICAgICAgICAgICBDb25zb2xlLldyaXRlTGlu
ZSgiTmFtZTogIiArIAogICAgICAgICAgICAgICAgIEZpcnN0TmFtZSArICIg
IiArIExhc3ROYW1lKTsKICAgICAgIH0KICAgICAgIC8vIGNsZWFuIHVwCiAg
ICAgICByZWFkZXIuQ2xvc2UoKTsKICAgICAgIHJlYWRlciA9IG51bGw7CiAg
ICAgICBkYmNtZC5EaXNwb3NlKCk7CiAgICAgICBkYmNtZCA9IG51bGw7CiAg
ICAgICBkYmNvbi5DbG9zZSgpOwogICAgICAgZGJjb24gPSBudWxsOwogICAg
fQogfQo=

--0-1765753310-1069204738=:85536
Content-Type: application/octet-stream; name="OtherTestExample.cs"
Content-Transfer-Encoding: base64
Content-Description: OtherTestExample.cs
Content-Disposition: attachment; filename="OtherTestExample.cs"

dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uRGF0YTsKdXNpbmcgU3lzdGVt
LkRhdGEuU3FsQ2xpZW50OwoKbmFtZXNwYWNlIFRlc3RTeXN0ZW1EYXRhU3Fs
Q2xpZW50IHsKCgljbGFzcyBQb3N0Z3Jlc1Rlc3QgewoKCQlzdGF0aWMgdm9p
ZCBDcmVhdGVUYWJsZSAoSURiQ29ubmVjdGlvbiBjbmMpIHsKCQkJCQkJCgkJ
CUlEYkNvbW1hbmQgY3JlYXRlQ29tbWFuZCA9IGNuYy5DcmVhdGVDb21tYW5k
KCk7CgkKCQkJY3JlYXRlQ29tbWFuZC5Db21tYW5kVGV4dCA9IAoJCQkJImNy
ZWF0ZSB0YWJsZSBtb25vX3Bvc3RncmVzX3Rlc3QgKCIgKwoJCQkJImJvb2xl
YW5fdmFsdWUgYm9vbGVhbiwgIiArCgkJCQkiaW50Ml92YWx1ZSBzbWFsbGlu
dCwgIiArCgkJCQkiaW50NF92YWx1ZSBpbnRlZ2VyLCAiICsKCQkJCSJiaWdp
bnRfdmFsdWUgYmlnaW50LCAiICsKCQkJCSJmbG9hdF92YWx1ZSByZWFsLCAi
ICsKCQkJCSJkb3VibGVfdmFsdWUgZG91YmxlIHByZWNpc2lvbiwgIiArCgkJ
CQkibnVtZXJpY192YWx1ZSBudW1lcmljKDE1LCAzKSwgIiArCgkJCQkiY2hh
cl92YWx1ZSBjaGFyKDUwKSwgIiArCgkJCQkidmFyY2hhcl92YWx1ZSB2YXJj
aGFyKDIwKSwgIiArCgkJCQkidGV4dF92YWx1ZSB0ZXh0LCAiICsKCQkJCSJw
b2ludF92YWx1ZSBwb2ludCwgIiArCgkJCQkidGltZV92YWx1ZSB0aW1lLCAi
ICsKCQkJCSJkYXRlX3ZhbHVlIGRhdGUsICIgKwoJCQkJInRpbWVzdGFtcF92
YWx1ZSB0aW1lc3RhbXAsICIgKwoJCQkJIm51bGxfdmFsdWUgY2hhcigxKSAi
ICsKCQkJCSIpIjsJCQkKCQoJCQljcmVhdGVDb21tYW5kLkV4ZWN1dGVOb25R
dWVyeSAoKTsKCQl9CgoJCXN0YXRpYyB2b2lkIERyb3BUYWJsZSAoSURiQ29u
bmVjdGlvbiBjbmMpIHsKCQkJCSAKCQkJSURiQ29tbWFuZCBkcm9wQ29tbWFu
ZCA9IGNuYy5DcmVhdGVDb21tYW5kICgpOwoKCQkJZHJvcENvbW1hbmQuQ29t
bWFuZFRleHQgPQoJCQkJImRyb3AgdGFibGUgbW9ub19wb3N0Z3Jlc190ZXN0
IjsKCQkJCQkJCQoJCQlkcm9wQ29tbWFuZC5FeGVjdXRlTm9uUXVlcnkgKCk7
CgkJfQoKCQlzdGF0aWMgdm9pZCBJbnNlcnREYXRhIChJRGJDb25uZWN0aW9u
IGNuYykgewkJCgoJCQlJRGJDb21tYW5kIGluc2VydENvbW1hbmQgPSBjbmMu
Q3JlYXRlQ29tbWFuZCgpOwoJCQoJCQlpbnNlcnRDb21tYW5kLkNvbW1hbmRU
ZXh0ID0KCQkJCSJpbnNlcnQgaW50byBtb25vX3Bvc3RncmVzX3Rlc3QgKCIg
KwoJCQkJImJvb2xlYW5fdmFsdWUsICIgKwoJCQkJImludDJfdmFsdWUsICIg
KwoJCQkJImludDRfdmFsdWUsICIgKwoJCQkJImJpZ2ludF92YWx1ZSwgIiAr
CgkJCQkiZmxvYXRfdmFsdWUsICIgKwoJCQkJImRvdWJsZV92YWx1ZSwgIiAr
CgkJCQkibnVtZXJpY192YWx1ZSwgIiArCgkJCQkiY2hhcl92YWx1ZSwgIiAr
CgkJCQkidmFyY2hhcl92YWx1ZSwgIiArCgkJCQkidGV4dF92YWx1ZSwgIiAr
CgkJCQkidGltZV92YWx1ZSwgIiArCgkJCQkiZGF0ZV92YWx1ZSwgIiArCgkJ
CQkidGltZXN0YW1wX3ZhbHVlLCAiICsKCQkJCSJwb2ludF92YWx1ZSAiICsK
CQkJCSIpIHZhbHVlcyAoIiArCgkJCQkiJ1QnLCAiICsKCQkJCSItMjIsICIg
KwoJCQkJIjEwNDgwMDAsICIgKwoJCQkJIjEyMzQ1Njc4OTAxMjM0NSwgIiAr
CgkJCQkiMy4xNDE1OTIsICIgKwoJCQkJIjMuMTQxNTkyNjk2OTY5NiwgIiAr
CgkJCQkiMTIzNDU2Nzg5MDEyLjM0NSwgIiArCgkJCQkiJ1RoaXMgaXMgYSBj
aGFyJywgIiArCgkJCQkiJ1RoaXMgaXMgYSB2YXJjaGFyJywgIiArCgkJCQki
J1RoaXMgaXMgYSB0ZXh0JywgIiArCgkJCQkiJzIxOjEzOjE0JywgIiArCgkJ
CQkiJzIwMDAtMDItMjknLCAiICsKCQkJCSInMjAwNC0wMi0yOSAxNDowMDox
MS4zMScsICIgKwoJCQkJIicoMSwwKScgIiArCgkJCQkiKSI7CgoJCQlpbnNl
cnRDb21tYW5kLkV4ZWN1dGVOb25RdWVyeSAoKTsKCQl9CgoJCXN0YXRpYyBJ
RGF0YVJlYWRlciBTZWxlY3REYXRhIChJRGJDb25uZWN0aW9uIGNuYykgewoJ
CgkJCUlEYkNvbW1hbmQgc2VsZWN0Q29tbWFuZCA9IGNuYy5DcmVhdGVDb21t
YW5kKCk7CgkJCUlEYXRhUmVhZGVyIHJlYWRlcjsKCgkJCS8vIEZJWE1FOiBT
eXN0ZW0uRGF0YSBjbGFzc2VzIG5lZWQgdG8gaGFuZGxlIE5VTExzCgkJCS8v
IEZJWE1FOiBTeXN0ZW0uRGF0YSBuZWVkcyB0byBoYW5kbGUgbW9yZSBkYXRh
IHR5cGVzCgkJCS8qCgkJCXNlbGVjdENvbW1hbmQuQ29tbWFuZFRleHQgPSAK
CQkJCSJzZWxlY3QgKiAiICsKCQkJCSJmcm9tIG1vbm9fcG9zdGdyZXNfdGVz
dCI7CgkJCSovCgoJCQlzZWxlY3RDb21tYW5kLkNvbW1hbmRUZXh0ID0gCgkJ
CQkic2VsZWN0ICIgKwkJCQkKCQkJCQkiYm9vbGVhbl92YWx1ZSwgIiArCgkJ
CQkJImludDJfdmFsdWUsICIgKwoJCQkJCSJpbnQ0X3ZhbHVlLCAiICsKCQkJ
CQkiYmlnaW50X3ZhbHVlLCAiICsKCQkJCQkiZmxvYXRfdmFsdWUsICIgKwoJ
CQkJCSJkb3VibGVfdmFsdWUsICIgKwoJCQkJCSJudW1lcmljX3ZhbHVlLCAi
ICsKCQkJCQkiY2hhcl92YWx1ZSwgIiArCgkJCQkJInZhcmNoYXJfdmFsdWUs
ICIgKwoJCQkJCSJ0ZXh0X3ZhbHVlICIgKwoJCQkJImZyb20gbW9ub19wb3N0
Z3Jlc190ZXN0IjsKCgkJCXJlYWRlciA9IHNlbGVjdENvbW1hbmQuRXhlY3V0
ZVJlYWRlciAoKTsKCgkJCXJldHVybiByZWFkZXI7CgkJfQoKCQkvKiBQb3N0
Z3JlcyBwcm92aWRlciB0ZXN0cyAqLwoJCXN0YXRpYyB2b2lkIERvUG9zdGdy
ZXNUZXN0IChJRGJDb25uZWN0aW9uIGNuYykgewoKCQkJSURhdGFSZWFkZXIg
cmVhZGVyOwoKCQkJQ29uc29sZS5Xcml0ZUxpbmUgKCJcdFBvc3RncmVzIHBy
b3ZpZGVyIHNwZWNpZmljIHRlc3RzLi4uXG4iKTsKCgkJCS8qIERyb3BzIHRo
ZSBnZGFfcG9zdGdyZXNfdGVzdCB0YWJsZS4gKi8KCQkJQ29uc29sZS5Xcml0
ZUxpbmUgKCJcdFx0RHJvcCB0YWJsZTogIik7CgkJCXRyeSB7CgkJCQlEcm9w
VGFibGUgKGNuYyk7CgkJCQlDb25zb2xlLldyaXRlTGluZSAoIk9LIik7CgkJ
CX0KCQkJY2F0Y2ggKFNxbEV4Y2VwdGlvbiBlKSB7CgkJCQlDb25zb2xlLldy
aXRlTGluZSgiRXJyb3IgKGRvbid0IHdvcnJ5IGFib3V0IHRoaXMgb25lKSIp
OwoJCQl9CgkJCQoJCQl0cnkgewoJCQkJLyogQ3JlYXRlcyBhIHRhYmxlIHdp
dGggYWxsIHN1cHBvcnRlZCBkYXRhIHR5cGVzICovCgkJCQlDb25zb2xlLldy
aXRlTGluZSAoIlx0XHRDcmVhdGUgdGFibGUgd2l0aCBhbGwgc3VwcG9ydGVk
IHR5cGVzOiAiKTsKCQkJCUNyZWF0ZVRhYmxlIChjbmMpOwoJCQkJQ29uc29s
ZS5Xcml0ZUxpbmUgKCJPSyIpOwoJCQkJCgkJCQkvKiBJbnNlcnRzIHZhbHVl
cyAqLwoJCQkJQ29uc29sZS5Xcml0ZUxpbmUgKCJcdFx0SW5zZXJ0IHZhbHVl
cyBmb3IgYWxsIGtub3duIHR5cGVzOiAiKTsKCQkJCUluc2VydERhdGEgKGNu
Yyk7CgkJCQlDb25zb2xlLldyaXRlTGluZSAoIk9LIik7CgkJCQkKCQkJCS8q
IFNlbGVjdCB2YWx1ZXMgKi8KCQkJCUNvbnNvbGUuV3JpdGVMaW5lICgiXHRc
dFNlbGVjdCB2YWx1ZXMgZnJvbSB0aGUgZGF0YWJhc2U6ICIpOwoJCQkJcmVh
ZGVyID0gU2VsZWN0RGF0YSAoY25jKTsKCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgLy8gZ2V0IHRoZSBEYXRhVGFibGUgdGhhdCBob2xkcwoJ
CQkJLy8gdGhlIHNjaGVtYQoJCQkJQ29uc29sZS5Xcml0ZUxpbmUoIlx0XHRH
ZXQgU2NoZW1hLiIpOwoJCQkJRGF0YVRhYmxlIGR0ID0gcmVhZGVyLkdldFNj
aGVtYVRhYmxlKCk7CgkJCQoJCQkJLy8gbnVtYmVyIG9mIGNvbHVtbnMgaW4g
dGhlIHRhYmxlCgkJCQlDb25zb2xlLldyaXRlTGluZSgiZHQuQ29sdW1ucy5D
b3VudDogIiArCgkJCQkJZHQuQ29sdW1ucy5Db3VudCk7CgoJCQkJaW50IGM7
CgkJCQkvLyBkaXNwbGF5IHRoZSBzY2hlbWEKCQkJCWZvcihjID0gMDsgYyA8
IGR0LkNvbHVtbnMuQ291bnQ7IGMrKykgewoJCQkJCUNvbnNvbGUuV3JpdGVM
aW5lKCIqIENvbHVtbiBOYW1lOiAiICsgCgkJCQkJCWR0LkNvbHVtbnNbY10u
Q29sdW1uTmFtZSk7CgkJCQkJQ29uc29sZS5Xcml0ZUxpbmUoIiAgICAgICAg
IE1heExlbmd0aDogIiArCgkJCQkJCWR0LkNvbHVtbnNbY10uTWF4TGVuZ3Ro
KTsKCQkJCQlDb25zb2xlLldyaXRlTGluZSgiICAgICAgICAgVHlwZTogIiAr
CgkJCQkJCWR0LkNvbHVtbnNbY10uRGF0YVR5cGUpOwoJCQkJfQoKCQkJCWlu
dCBuUm93cyA9IDA7CgkJCQkvLyBSZWFkIGFuZCBkaXNwbGF5IHRoZSByb3dz
CgkJCQl3aGlsZShyZWFkZXIuUmVhZCgpKSB7CgkJCQkJQ29uc29sZS5Xcml0
ZUxpbmUgKCJSb3cgIiArIG5Sb3dzICsgIjoiKTsKCQkJCQlmb3IoYyA9IDA7
IGMgPCByZWFkZXIuRmllbGRDb3VudDsgYysrKSB7CgkJCQkJCUNvbnNvbGUu
V3JpdGVMaW5lICggICAKCQkJCQkJCSIgICAgQ29sICIgKyAKCQkJCQkJCWMg
KyAiOiAiICsgCgkJCQkJCQlkdC5Db2x1bW5zW2NdLkNvbHVtbk5hbWUgKyAK
CQkJCQkJCSIgLSAiICsKCQkJCQkJCXJlYWRlci5HZXRWYWx1ZShjKSk7CgkJ
CQkJfQoJCgkJCQkJblJvd3MrKzsKCQkJCX0KCQkJCXJlYWRlci5DbG9zZSgp
OwoJCQkJQ29uc29sZS5Xcml0ZUxpbmUgKCJSb3dzOiAiICsgblJvd3MpOwkJ
CgoJCQkJLyogQ2xlYW4gdXAgKi8KCQkJCUNvbnNvbGUuV3JpdGVMaW5lICgi
Q2xlYW4gdXAuLi4iKTsKCQkJCUNvbnNvbGUuV3JpdGVMaW5lICgiXHRcdERy
b3AgdGFibGUuLi4iKTsKCQkJCURyb3BUYWJsZSAoY25jKTsKCQkJCUNvbnNv
bGUuV3JpdGVMaW5lKCJPSyIpOwoJCQl9CgkJCWNhdGNoKEV4Y2VwdGlvbiBl
KSB7CgkJCQlDb25zb2xlLldyaXRlTGluZSgiRXhjZXB0aW9uIGNhdWdodDog
IiArIGUpOwoJCQl9CgkJfQoKCQlbU1RBVGhyZWFkXQoJCXN0YXRpYyB2b2lk
IE1haW4oc3RyaW5nW10gYXJncykKCQl7CgkJCVNxbENvbm5lY3Rpb24gY25j
ID0gbmV3IFNxbENvbm5lY3Rpb24gKCk7CgkJCXN0cmluZyBjb25uZWN0aW9u
U3RyaW5nID0gCgkJCQkiaG9zdD1sb2NhbGhvc3Q7IiArCgkJCQkiZGJuYW1l
PW1vbm90ZXN0OyIgKwoJCQkJInVzZXI9bW9ub3Rlc3Q7IiArCgkJCQkicGFz
c3dvcmQ9bW9ub3Rlc3QiOwoKCQkJY25jLkNvbm5lY3Rpb25TdHJpbmcgPSAg
Y29ubmVjdGlvblN0cmluZzsKCgkJCWNuYy5PcGVuKCk7CgkJCURvUG9zdGdy
ZXNUZXN0KGNuYyk7CgkJCWNuYy5DbG9zZSgpOwoJCX0KCX0KfQoKCgoK

--0-1765753310-1069204738=:85536--