[imp] IMP and Domains?
Zhang Bo
boozhang@sdb.ac.cn
Tue, 25 Jun 2002 09:07:19 +0800
SGVsbG8hDQoNClRoZSBmb2xsb3dpbmcgaXMgYWxleCdzIGRvY3VtZW50IGFib3V0IHZpcnV0YWwt
ZG9tYWlucyBvbiBpbXAuDQpDaGVjayBpdCwgSSB0aGluayBpdCBpcyB1c2VmdWxsIGZvciB5b3Uu
DQoNClpoYW5nIEJvDQoNCg0KVGhpcyBpcyBteSBsYXN0IHBvc3QsIHdoZW4gd2UgaGF2ZSBhIHBy
b2JsZW0uDQoNCn0gLS0tLS1NZW5zYWplIG9yaWdpbmFsLS0tLS0NCn0gRGU6IEluZy4gQ0lQIEFs
ZWphbmRybyBDZWxpIE1hcmllZ3VpIFttYWlsdG86YWxleEBsaW51eC5vcmcucGVdDQp9IEVudmlh
ZG8gZWw6IE1hcnRlcywgMDkgZGUgQWJyaWwgZGUgMjAwMiAwNzo1NyBwLm0uDQp9IFBhcmE6IGlt
cEBsaXN0cy5ob3JkZS5vcmcNCn0gQXN1bnRvOiBbaW1wXSBWaXJ0dWFsIGRvbWFpbiBUSVBzDQp9
DQp9IEhpIGFnYWluOg0KfQ0KfSBXZSBhcmUgdHJ5aW5nIHRvIGNvbmZpZ3VyZSBhIGZ1bGwgdmly
dHVhbCBkb21haW5zIG9uIGFuIElNUCBzZXJ2ZXIgd2l0aA0KfSBwb3N0Zml4IGFuZCBNeVNRTCwg
YWxsIGVhc3kgYW5kICJkdW1teSBwcm9vZiIgOykNCn0NCn0gV2Ugd2FudCB0byB3aGVuIHRoZSB1
c2VyIHVzZSBodHRwOi8vbWFpbC5kb21haW4xLmNvbSBvcg0KfSBodHRwOi8vbWFpbC5kb21haW4y
LmNvbSB0aGUgc2VydmVyIHJlY29nbml6ZSBIVFRQX0hPU1QgYW5kIGRvIHRoaXM6DQp9DQp9IDEu
LSBVc2VyIGxvZ2luIHdpdGggZm9yIGV4YW1wbGUgImFsZXgiIGFuZCBoaXMgcGFzc3dvcmQgaW4N
Cn0gaHR0cDovL21haWwuZG9tYWluMS5jb20NCn0NCn0gMi4tIFRoZSBzZXJ2ZXIgbG9vayB0aGUg
ZG9tYWluIGFuZCBjaGFuZ2UgdGhlIGxvZ2luIHVzZXIgdG8NCn0gYWxleF9kb21haW4xX2NvbQ0K
fSBhcyB0aGUgcmVhbCB1c2VyIChsaWtlIGluICRjb25mWydob29rcyddWyd2aW5mbyddID0NCn0g
J2ltcF9nZXRfdmluZm8nKSwgdGhhbmtzDQp9IENodWNrIQ0KfQ0KfSAzLi0gSSBjb25maWd1cmVk
IHRoZSBjb25maWcgZXhhbXBsZSBzZW50IGJ5IEppbSBpbiB0aGlzIGVtYWlsOg0KDQpodHRwOi8v
bWFyYy50aGVhaW1zZ3JvdXAuY29tLz9sPWltcCZtPTEwMTE5NTg2OTkxNjI3MiZ3PTINCg0KDQoq
KioqKioqKioqKioqKioqKioqKiogICBtYWlsIGJnYWluICAqKioqKioqKioqKioqKioqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqDQoNCkhpIGV2ZXJ5b25lLA0KDQpJIHJlY2VudGx5
IGluc3RhbGwgSW1wMy4wICsgaG9yZGUgMi4wIG9uIG91ciBzdW4gY29iYWx0IHNlcnZlciwganVz
dCBtb2RpZmllZCBhIA0KZmV3IGxpbmUgb2YgdGhlIGNvZGVzLCBhbmQgbWFrZSBhbGwgd2VibWFp
bCBob3N0cyBwb2ludGVkIHRvIHRoZSBob3JkZSANCmRpcmVjdG9yeSwgbm93IGl0IGNhbiBzZXJ2
ZSB3ZWJtYWlsIGZvciBhbGwgdGhlIHZpcnR1YWwgZG9tYWlucyBpbiB0aGlzIHNlcnZlciwgDQpJ
IGZvdW5kIHRoaXMgaXMgdmVyeSBoYW5keSBmb3IgSVNQcywgaGVyZSBJIHdhbm5hIHNoYXJlIG15
IGV4cGVyaWVuY2Ugd2l0aCANCmV2ZXJ5b25lLCBHUkVBVCBKT0IgR1VZUyEhISBJIGxvdmUgSU1Q
IGFuZCBsb29raW5nIGZvcndhcmQgZm9yIElNUCArIFR1cmJhIA0KaW50ZWdyYXRlZC4NCg0KaW4g
c2VydmVycy5waHA6DQoNCi8vVGhpcyBleHRyYWN0cyB0aGUgZG9tYWluIG5hbWUgbGlrZSB3ZWJt
YWlsLmV4YW1wbGUuY29tIHRvIGV4YW1wbGUuY29tDQokdGhpc19kb21haW49c3Vic3RyKGdldGVu
dignSFRUUF9IT1NUJyksc3RycG9zKGdldGVudignSFRUUF9IT1NUJyksJy4nKSsxKTsNCi8vYXBw
ZW5kIG1haWwgaG9zdCB0byBkb21haW4sIG1vc3Qgc2VydmVyIHdpdGggbWFpbCBsaWtlIG1haWwu
ZXhhbXBsZS5jb20NCiR0aGlzX21haWxfc2VydmVyPSdtYWlsLicuJHRoaXNfZG9tYWluOw0KJHRo
aXNfbWFpbF9wcm90b2NvbD0naW1hcCc7DQokdGhpc19tYWlsX3BvcnQ9MTQzOw0KJHRoaXNfbWFp
bF9mb2xkZXI9Jyc7DQokdGhpc19tYWlsX25hbWVzcGFjZT0nJzsNCiR0aGlzX21haWxfc210cGhv
c3Q9J2xvY2FsaG9zdCc7DQokdGhpc19tYWlsX3JlYWxtPSd3ZWJtYWlsLicuJHRoaXNfZG9tYWlu
Ow0KDQokc2VydmVyc1skdGhpc19kb21haW5dID0gYXJyYXkoDQogICAgICAgICduYW1lJyA9PiAk
dGhpc19kb21haW4sDQogICAgICAgICdzZXJ2ZXInID0+ICR0aGlzX21haWxfc2VydmVyLA0KICAg
ICAgICAncHJvdG9jb2wnID0+ICR0aGlzX21haWxfcHJvdG9jb2wsDQogICAgICAgICdwb3J0JyA9
PiAkdGhpc19tYWlsX3BvcnQsDQogICAgICAgICdmb2xkZXJzJyA9PiAkdGhpc19tYWlsX2ZvbGRl
ciwNCiAgICAgICAgJ25hbWVzcGFjZScgPT4gJHRoaXNfbWFpbF9uYW1lc3BhY2UsDQogICAgICAg
ICdtYWlsZG9tYWluJyA9PiAkdGhpc19kb21haW4sDQogICAgICAgICdzbXRwaG9zdCcgPT4gJHRo
aXNfbWFpbF9zbXRwaG9zdCwNCiAgICAgICAgJ3JlYWxtJyA9PiAkdGhpc19tYWlsX3JlYWxtLA0K
ICAgICAgICB9DQoNClRoZSBhYm92ZSBzY3JpcHQgZGV0ZWN0cyB0aGUgZG9tYWluIG5hbWUgYW5k
IHNldHMgdGhlIHJpZ2h0IHNlcnZlciBwcm9wZXJ0aWVzLg0KDQphbm90aGVyIGNoYW5nZSB0aGF0
IGkgZm91bmQgdXNlZnVsIHdhcyBtb2RpZnkgdHJhaWxlci50eHQgYW5kIGNvbXBvc2UucGhwIG1h
a2UgDQppdCBzdWJzIHRoZSB2aXJ0dWFsIGRvbWFpbiBuYW1lIGludG8gdGhlIHRyYWlsZXIudHh0
Lg0KaW4gbXkgdHJhaWxlci50eHQ6DQotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KVGhpcyBtYWlsIHNlbnQgdGhyb3VnaCBNWV9XRUJNQUlM
X0hPU1Qgd2VibWFpbCBzZXJ2aWNlDQoNCmluIGNvbXBvc2UucGhwIGF0IGxpbmUgNjc0IEkgYWRk
IHRoaXMgY29kZToNCiR0cmFpbGVyID1lcmVnX3JlcGxhY2UoJ01ZX1dFQk1BSUxfSE9TVCcsIHN1
YnN0ciggZ2V0ZW52KCdIVFRQX0hPU1QnKSwgc3RycG9zKGdldGVudignSFRUUF9IT1NUJyksICcu
JykgKyAxKSwgJHRyYWlsZXIpOw0KDQp0aGUgYWJvdmUgc3Vicy4gTVlfV0VCTUFJTF9IT1NUIHdp
dGggdGhlIHZpcnR1YWwgZG9tYWluLg0KDQpob3BlIHNvbWVvbmUgd291bGQgZmluZCB0aGlzIHVz
ZWZ1bC4NCg0KamltDQoNCi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tDQpUaGlzIG1haWwgc2VudCB0aHJvdWdoIGZpcnN0bGluay5jb20uYXUg
d2VibWFpbCBzZXJ2aWNlDQoNCioqKioqKioqKioqKioqKioqKioqIG1haWwgZW5kICoqKioqKioq
KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKg0KDQp9IGxvb2tzIGdvb2QhDQp9
DQp9IEFsbCB3b3JrcyBmaW5lIHN0aWxsIG5vdyENCn0NCn0gVGhlIHByb2JsZW0gaXM6DQp9DQp9
IFdoZW4gdXNlciAiYWxleCIgKHJlYWwgdXNlciBhbGV4X2RvbWFpbjFfY29tKSBjb21wb3NlIGFu
ZCBlbWFpbA0KfSBhbmQgc2VuZCBpdA0KfSB0byBhbm90aGVyIG1haWxzZXJ2ZXIsIGl0IGFsd2F5
cyBhcnJpdmUgdXNpbmcgdGhlIHJlYWwgYWNjb3VudCB1c2VyIG5hbWUNCn0gbGlrZSB0aGlzOg0K
fQ0KfSBhbGV4X2RvbWFpbjFfY29tQGRvbWFpbjEuY29tDQp9DQp9IEkgd2lzaCBJIGNvdWxkIGhh
dmUgYSBjb25maWcgb3IgcGhwIHRpcCBmb3IgbWFraW5nIHRoYXQgdGhlICJGcm9tIGZpZWxkIg0K
fSBjaGFuZ2VzIHRvIHRoZSB2aXJ0dWFsIHNlbmRlciBsaWtlIHRoaXMNCn0NCn0gYWxleEBkb21h
aW4xLmNvbQ0KfQ0KfSBCZXN0IFJlZ2FyZHMsDQp9DQp9IEFsZXggQ2VsaQ0KDQpBbmQgdGhpcyBp
cyB0aGUgc29sdXRpb24sDQoNClRoYW5rcyB0byB0aGUgY2hhdCBwZW9wbGUgI2hvcmRlDQpJbiAv
aG9yZGUvaW1wL2NvbmZpZy9jb25mLnBocCBXZSBwdXQgYSBuZXcgZnVuY3Rpb24sIGxpa2UgdGhp
czoNCg0KJGNvbmZbJ2hvb2tzJ11bJ2Zyb20nXSA9ICdpbXBfc2V0X3VzZXJuYW1lJzsNCg0KaWYg
KCFmdW5jdGlvbl9leGlzdHMoJ2ltcF9zZXRfdXNlcm5hbWUnKSkgew0KICAgICAgICBmdW5jdGlv
biBpbXBfc2V0X3VzZXJuYW1lICgkaW1wKQ0KICAgICAgICB7DQogICAgICAgICAgICAgICAgcmV0
dXJuIHByZWdfcmVwbGFjZSgiL18uKi8iLCAiIiwgJGltcFsndXNlciddKTsNCiAgICAgICAgfQ0K
fQ0KDQpBbmQgaXQgd29yayBmaW5lLg0KDQoNCg0KLS0tLS0gT3JpZ2luYWwgTWVzc2FnZSAtLS0t
LSANCkZyb206ICJEZXZpbiBBdGVuY2lvIiA8ZHJlYW1ib3lAYXJvcy5uZXQ+DQpUbzogPGltcEBs
aXN0cy5ob3JkZS5vcmc+DQpTZW50OiBUdWVzZGF5LCBKdW5lIDI1LCAyMDAyIDE6MjggQU0NClN1
YmplY3Q6IFtpbXBdIElNUCBhbmQgRG9tYWlucz8NCg0KDQoNCkkgd2FzIGN1cmlvdXMgaG93IHRo
ZSBjb3JyZWN0IHdheSB0byB1c2UgSG9yZGU6OklNUCB0byBtYWtlIHZpcnR1YWwgZG9tYWlucw0K
Zmx5PyBJIGhhdmUgbGlrZSAxMCBkb21haW5zIGluIG15IHNlcnZlcnMucGhwIGZpbGUuIFByZXZp
b3VzbHkgSSBtb2RpZmllZA0KdGhlIGltcC9yZWRpcmVjdC5waHAgYW5kIGFkZGVkIHNvbWUgc3Bl
Y2lhbCBjb2RlIHRvIGFsbG93IGZvciB0aGUgdXNlcm5hbWUNCnRvIGJlIGVudGVyZWQgYXM6IHVz
ZXJuYW1lQGRvbWFpbi5jb20sIHRoZW4gdGhlIHJlZGlyZWN0IHdvdWxkIHJlLWFzc2lnbg0KdGhl
ICRIVFRQX1BPU1RfVkFSU1tpbWFwdXNlcl0gYW5kICRIVFRQX1BPU1RfVkFSU1tzZXJ2ZXJdIA0K
YWNjb3JkaW5nbHkgYnkgcGFyc2luZyBvdXQgdGhlIEAgc2lnbiwgYnV0IHRoaXMgbm8gbG9uZ2Vy
IHdvcmtzIHNpbmNlDQpJIGRvd25sb2FkZWQgdGhlIDMuMS4xIHZlcnNpb24gb2YgSU1QLiANCg0K
SG93IGRvIEkgZ2V0IGl0IHNvIHRoYXQgd2hlbiB1c2VybmFtZTogZGV2aW4gbG9ncyBpbiBpdCB1
c2VzIGRvbWFpbiANCnBocGNvZGVndXJ1LmNvbSwgYW5kIGlmIGEgdXNlciBuYW1lIEFldGhlciBs
b2dzIGluIGl0IHVzZXMgZG9tYWluDQpkamFldGhlci5jb20sIGV0Yz8NCg0KQW55IGhlbHAgd291
bGQgYmUgZ3JlYXRseSBhcHByZWNpYXRlZC4NCg0KDQoNCi0tIA0KSU1QIG1haWxpbmcgbGlzdA0K
RnJlcXVlbnRseSBBc2tlZCBRdWVzdGlvbnM6IGh0dHA6Ly9ob3JkZS5vcmcvZmFxLw0KVG8gdW5z
dWJzY3JpYmUsIG1haWw6IGltcC11bnN1YnNjcmliZUBsaXN0cy5ob3JkZS5vcmcNCg==