Re: possible bug in my UCA implementation

James Tauber <[email protected]> Mon, 13 Feb 2006 12:44:49 +0800
Newsgroups gmane.comp.python.internationalization
Message-ID <[email protected]>
Ck9rYXksIEkndmUgZml4ZWQgdGhlIHByb2JsZW0uIEl0IGRpZCB0dXJuIG91dCB0byBiZSBhIGJ1
ZyBpbiBteSAgCmltcGxlbWVudGF0aW9uLgoKVGhlIGNvcmUgb2YgdGhlIGFsZ29yaXRobSB3YXMg
aW1wbGVtZW50ZWQgYXMKCglmb3IgbGV2ZWwgaW4gcmFuZ2UoNCk6CgkJaWYgbGV2ZWw6CiAgICAg
ICAgICAgICAgICAgCXNvcnRfa2V5LmFwcGVuZCgwKSAjIGxldmVsIHNlcGFyYXRvcgoJCWZvciBl
bGVtZW50IGluIGNvbGxhdGlvbl9lbGVtZW50czoKCQkJY2VfbCA9IGludChlbGVtZW50WzFdW2xl
dmVsXSwgMTYpCgkJCXNvcnRfa2V5LmFwcGVuZChjZV9sKQoKCmluc3RlYWQgb2YKCglmb3IgbGV2
ZWwgaW4gcmFuZ2UoNCk6CgkJaWYgbGV2ZWw6CiAgICAgICAgICAgICAgICAgCXNvcnRfa2V5LmFw
cGVuZCgwKSAjIGxldmVsIHNlcGFyYXRvcgoJCWZvciBlbGVtZW50IGluIGNvbGxhdGlvbl9lbGVt
ZW50czoKCQkJY2VfbCA9IGludChlbGVtZW50WzFdW2xldmVsXSwgMTYpCgkJCWlmIGNlX2w6CgkJ
CQlzb3J0X2tleS5hcHBlbmQoY2VfbCkKCkluICBvdGhlciB3b3JkcywgdGhlIFVDQSBpdHNlbGYg
bWFrZXMgaXQgY2xlYXIgKFN0ZXAgUzMuNSkgdGhhdCBvbmx5ICAKbm9uLXplcm8gQ0VfTCBzaG91
bGQgYmUgYXBwZW5kZWQuCgpJJ2xsIHVwZGF0ZSB0aGUgY29kZSBvbiBteSB3ZWJzaXRlIHNob3J0
bHkuCgpKYW1lcwoKCk9uIDEzLzAyLzIwMDYsIGF0IDEyOjAyIFBNLCBKYW1lcyBUYXViZXIgd3Jv
dGU6Cgo+Cj4gSSBkaXNjb3ZlcmVkIEkgd2Fzbid0IGNvbnZlcnRpbmcgdG8gTkZEIGZpcnN0IGJ1
dCB0aGlzIGRvZXNuJ3Qgc29sdmUKPiB0aGUgcHJvYmxlbSwgaXQganVzdCBleHBsYWlucyB3aHkg
ZXhwYW5zaW9ucyB3ZXJlIHVzZWQuCj4KPiBFdmVuIHVzaW5nIE5GRCwgSSBnZXQgdGhlIHNhbWUg
cmVzdWx0Lgo+Cj4gSmFtZXMKPgo+IE9uIDMwLzAxLzIwMDYsIGF0IDQ6MzUgUE0sIEphbWVzIFRh
dWJlciB3cm90ZToKPgo+Pgo+PiBNeSBQeXRob24gVW5pY29kZSBDb2xsYXRpb24gQWxnb3JpdGht
IGltcGxlbWVudGF0aW9uIGlzIGdpdmluZwo+PiB1bmV4cGVjdGVkIHJlc3VsdHMgdGhhdCBjb3Vs
ZCBiZSBiZWNhdXNlIG9mOgo+Pgo+PiAxLiBhIGJ1ZyBpbiBteSBjb2RlCj4+IDIuIGEgYnVnIGlu
IHRoZSBEVUNFVAo+PiAzLiBhIGRpZmZlcmVuY2Ugb2Ygb3BpbmlvbiBiZXR3ZWVuIHRoZSB3YXkg
SSB0aGluayBBbmNpZW50IEdyZWVrCj4+IHNob3VsZCBiZSBjb2xsYXRlZCBhbmQgdGhlIHdheSBE
VUNFVCB0aGlua3Mgc28KPj4KPj4gSSdkIGxpa2UgdG8gZ2V0IHRoZSBvcGluaW9uIG9mIHNvbWUg
b2YgeW91IHdobyBhcmUgbW9yZSBmYW1pbGlhcgo+PiB3aXRoIFVDQSAoYW5kIHBlcmhhcHMgY2Fu
IHRyeSBteSBleGFtcGxlIG91dCBvbiBJQ1UpCj4+Cj4+IEZvciB0aGUgcHVycG9zZXMgb2YgdGVz
dGluZywgc2F5IEknbSB0cnlpbmcgdG8gc29ydCB0aGUgdGhyZWUgd29yZHM6Cj4+Cj4+ICgxKQnh
voXOtM63z4IKPj4gKDIpCeG8jM6yzrXOuwo+PiAoMykJ4byAzrLOsuG9sQo+Pgo+PiBJbiBteSB2
aWV3IHRoZXkgc2hvdWxkIGJlIHNvcnRlZCBpbiB0aGUgcmV2ZXJzZSB0byB3aGF0IHRoZXkgYXJl
Cj4+IG5vdywgYnV0IG15IHB5dWNhIGNvZGUgc29ydHMgdGhlbSBpbiB0aGUgb3JkZXIgbGlzdGVk
IGFib3ZlLgo+Pgo+PiBweXVjYSBhc3NpZ25zIHRoZSB3b3JkcyB0aGUgZm9sbG93aW5nIHNvcnQg
a2V5czoKPj4KPj4gKDEpIFsnMHgxMjRlJywgJzB4MCcsICcweDAnLCAnMHgwJywgJzB4MTI1Mics
ICcweDEyNTcnLCAnMHgxMjZhJywKPj4gJzB4MCcsICcweDIwJywgJzB4MmEnLCAnMHgzMicsICcw
eDk3JywgJzB4MjAnLCAnMHgyMCcsICcweDIwJywKPj4gJzB4MCcsICcweDInLCAnMHgyJywgJzB4
MicsICcweDInLCAnMHgyJywgJzB4MicsICcweDE5JywgJzB4MCcsCj4+ICcweDNiMScsICcweDMx
NCcsICcweDMwMScsICcweDM0NScsICcweDNiNCcsICcweDNiNycsICcweDNjMiddCj4+ICgyKSBb
JzB4MTI0ZScsICcweDAnLCAnMHgwJywgJzB4MTI0ZicsICcweDEyNTMnLCAnMHgxMjVjJywgJzB4
MCcsCj4+ICcweDIwJywgJzB4MjInLCAnMHgzMicsICcweDIwJywgJzB4MjAnLCAnMHgyMCcsICcw
eDAnLCAnMHg4JywKPj4gJzB4MicsICcweDInLCAnMHgyJywgJzB4MicsICcweDInLCAnMHgwJywg
JzB4MzkxJywgJzB4MzEzJywKPj4gJzB4MzAxJywgJzB4M2IyJywgJzB4M2I1JywgJzB4M2JiJ10K
Pj4gKDMpIFsnMHgxMjRlJywgJzB4MCcsICcweDEyNGYnLCAnMHgxMjRmJywgJzB4MTI0ZScsICcw
eDAnLCAnMHgwJywKPj4gJzB4MjAnLCAnMHgyMicsICcweDIwJywgJzB4MjAnLCAnMHgyMCcsICcw
eDMyJywgJzB4MCcsICcweDInLAo+PiAnMHgyJywgJzB4MicsICcweDInLCAnMHgyJywgJzB4Mics
ICcweDAnLCAnMHgzYjEnLCAnMHgzMTMnLAo+PiAnMHgzYjInLCAnMHgzYjInLCAnMHgzYjEnLCAn
MHgzMDEnXQo+Pgo+PiBUaGUgcHJvYmxlbSBpcyB0aGF0IOG+hSAodGhlIGZpcnN0IGNoYXJhY3Rl
ciBvZiAoMSkpIGV4cGFuZHMgdG8gNAo+PiBjb2xsYXRpb24gZWxlbWVudHMsIOG8jCAodGhlIGZp
cnN0IGNoYXJhY3RlciBvZiAoMikpIHRvIDMgYW5kIOG8gAo+PiAodGhlIGZpcnN0IGNoYXJhY3Rl
ciBvZiAoMykpIHRvIDIgYW5kIGFzIGEgcmVzdWx0IGFuZCwgYmVjYXVzZSBhbGwKPj4gYnV0IHRo
ZSBmaXJzdCBlbGVtZW50IGlzIHplcm8sIHRoZXkgYXJlIGNvbXBhcmluZyBsZXNzLCBqdXN0IGJ5
Cj4+IHZpcnR1ZSBvZiBoYXZpbmcgbW9yZSBjb2xsYXRpb24gZWxlbWVudHMuCj4+Cj4+IEkgZG9u
J3QgZXZlbiB1bmRlcnN0YW5kIHdoeSB0aGVzZSBsZXR0ZXJzIGFyZSBiZWluZyB0cmVhdGVkIGFz
Cj4+IGV4cGFuc2lvbnMgcmF0aGVyIHRoYW4gc2ltcGx5IHRha2luZyBhZHZhbnRhZ2Ugb2YgdGhl
IHNlY29uZGFyeSBhbmQKPj4gdGVydGlhcnkgbGV2ZWxzLCBidXQgc3VyZSBlbm91Z2ggdGhhdCBp
cyBob3cgdGhlIERVQ0VUIGRlc2NyaWJlcyAgCj4+IHRoZW0uCj4+Cj4+IEFtIEkgbWlzc2luZyBz
b21ldGhpbmcgZnVuZGFtZW50YWwgaW4gdGhlIGFsZ29yaXRobT8gT3IgaXMgaXQKPj4gcG9zc2li
bGUgdGhlIERVQ0VUIGlzIHdyb25nPwo+Pgo+PiBKYW1lcwo+Cj4gX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KPiBJMThuLXNpZyBtYWlsaW5nIGxpc3QKPiBJ
MThuLXNpZ0BweXRob24ub3JnCj4gaHR0cDovL21haWwucHl0aG9uLm9yZy9tYWlsbWFuL2xpc3Rp
bmZvL2kxOG4tc2lnCgotLQpKYW1lcyBUYXViZXIgICAgICAgICAgICAgICAgICAgICAgIGh0dHA6
Ly9qdGF1YmVyLmNvbS8Kam91cm5leW1hbiBvZiBzb21lICAgaHR0cDovL2p0YXViZXIuY29tL2Js
b2cvCgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSTE4
bi1zaWcgbWFpbGluZyBsaXN0CkkxOG4tc2lnQHB5dGhvbi5vcmcKaHR0cDovL21haWwucHl0aG9u
Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2kxOG4tc2lnCg==