In answer to your question, I wrote a quick and dirty test of taking random &quot;xn--something&quot; codes (where something is from [- a-z 0-9]+) and seeing what the percents would be. Here are the results.<br><br>For the lengths up to 4, I do an exhaustive test; above that it is a random sampling.<br>
<br>The percentages are not what one would expect from a random sampling of strings (eg &lt; 10% of possible Unicode code points are assigned LMN), I suspect because PunyCode would favor locality of deltas.<br><br>Key:<br>
<ul><li>illegal_punycode - means that converting to unicode and back has an error</li><li>unassigned - has at least one unassigned character</li><li>non_LMN - has at least one non Letter/Mark/Number</li><li>non_folded - has at least one non NFKC or non CaseFolded</li>
<li>all_ascii - is all ASCII</li><li>otherwise_ok - everything else</li></ul><br>Hope this is useful,<br><br>Mark<br><br>length: 1<br>&nbsp;&nbsp;&nbsp; 97.297%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; illegal_punycode&nbsp;&nbsp;&nbsp; (36)<br>&nbsp;&nbsp;&nbsp; 02.703%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_LMN&nbsp;&nbsp;&nbsp; (1)<br>length: 2<br>
&nbsp;&nbsp;&nbsp; 92.909%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; illegal_punycode&nbsp;&nbsp;&nbsp; (1,271)<br>&nbsp;&nbsp;&nbsp; 04.386%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_LMN&nbsp;&nbsp;&nbsp; (60)<br>&nbsp;&nbsp;&nbsp; 02.705%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; all_ascii&nbsp;&nbsp;&nbsp; (37)<br>length: 3<br>&nbsp;&nbsp;&nbsp; 48.121%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; otherwise_ok&nbsp;&nbsp;&nbsp; (24,357)<br>&nbsp;&nbsp;&nbsp; 30.725%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; illegal_punycode&nbsp;&nbsp;&nbsp; (15,552)<br>
&nbsp;&nbsp;&nbsp; 11.109%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_LMN&nbsp;&nbsp;&nbsp; (5,623)<br>&nbsp;&nbsp;&nbsp; 04.645%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; unassigned&nbsp;&nbsp;&nbsp; (2,351)<br>&nbsp;&nbsp;&nbsp; 02.705%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; all_ascii&nbsp;&nbsp;&nbsp; (1,369)<br>&nbsp;&nbsp;&nbsp; 02.695%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_folded&nbsp;&nbsp;&nbsp; (1,364)<br>length: 4<br>&nbsp;&nbsp;&nbsp; 46.001%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; illegal_punycode&nbsp;&nbsp;&nbsp; (861,512)<br>
&nbsp;&nbsp;&nbsp; 23.924%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; otherwise_ok&nbsp;&nbsp;&nbsp; (448,047)<br>&nbsp;&nbsp;&nbsp; 16.716%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; unassigned&nbsp;&nbsp;&nbsp; (313,059)<br>&nbsp;&nbsp;&nbsp; 08.354%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_LMN&nbsp;&nbsp;&nbsp; (156,447)<br>&nbsp;&nbsp;&nbsp; 02.705%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; all_ascii&nbsp;&nbsp;&nbsp; (50,653)<br>&nbsp;&nbsp;&nbsp; 02.300%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_folded&nbsp;&nbsp;&nbsp; (43,074)<br>
length: 5<br>&nbsp;&nbsp;&nbsp; 46.694%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; illegal_punycode&nbsp;&nbsp;&nbsp; (29,064)<br>&nbsp;&nbsp;&nbsp; 31.959%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; otherwise_ok&nbsp;&nbsp;&nbsp; (19,892)<br>&nbsp;&nbsp;&nbsp; 09.399%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_LMN&nbsp;&nbsp;&nbsp; (5,850)<br>&nbsp;&nbsp;&nbsp; 06.754%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; unassigned&nbsp;&nbsp;&nbsp; (4,204)<br>&nbsp;&nbsp;&nbsp; 02.696%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; all_ascii&nbsp;&nbsp;&nbsp; (1,678)<br>
&nbsp;&nbsp;&nbsp; 02.498%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_folded&nbsp;&nbsp;&nbsp; (1,555)<br>length: 6<br>&nbsp;&nbsp;&nbsp; 47.881%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; illegal_punycode&nbsp;&nbsp;&nbsp; (29,946)<br>&nbsp;&nbsp;&nbsp; 25.041%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; otherwise_ok&nbsp;&nbsp;&nbsp; (15,661)<br>&nbsp;&nbsp;&nbsp; 13.676%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; unassigned&nbsp;&nbsp;&nbsp; (8,553)<br>&nbsp;&nbsp;&nbsp; 08.294%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_LMN&nbsp;&nbsp;&nbsp; (5,187)<br>
&nbsp;&nbsp;&nbsp; 02.723%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; all_ascii&nbsp;&nbsp;&nbsp; (1,703)<br>&nbsp;&nbsp;&nbsp; 02.386%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_folded&nbsp;&nbsp;&nbsp; (1,492)<br>length: 7<br>&nbsp;&nbsp;&nbsp; 49.545%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; illegal_punycode&nbsp;&nbsp;&nbsp; (30,959)<br>&nbsp;&nbsp;&nbsp; 26.269%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; otherwise_ok&nbsp;&nbsp;&nbsp; (16,415)<br>&nbsp;&nbsp;&nbsp; 10.865%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; unassigned&nbsp;&nbsp;&nbsp; (6,789)<br>
&nbsp;&nbsp;&nbsp; 08.253%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_LMN&nbsp;&nbsp;&nbsp; (5,157)<br>&nbsp;&nbsp;&nbsp; 02.713%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; all_ascii&nbsp;&nbsp;&nbsp; (1,695)<br>&nbsp;&nbsp;&nbsp; 02.356%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_folded&nbsp;&nbsp;&nbsp; (1,472)<br>length: 8<br>&nbsp;&nbsp;&nbsp; 50.707%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; illegal_punycode&nbsp;&nbsp;&nbsp; (31,414)<br>&nbsp;&nbsp;&nbsp; 22.831%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; otherwise_ok&nbsp;&nbsp;&nbsp; (14,144)<br>
&nbsp;&nbsp;&nbsp; 13.564%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; unassigned&nbsp;&nbsp;&nbsp; (8,403)<br>&nbsp;&nbsp;&nbsp; 07.871%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_LMN&nbsp;&nbsp;&nbsp; (4,876)<br>&nbsp;&nbsp;&nbsp; 02.741%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; all_ascii&nbsp;&nbsp;&nbsp; (1,698)<br>&nbsp;&nbsp;&nbsp; 02.287%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_folded&nbsp;&nbsp;&nbsp; (1,417)<br>length: 9<br>&nbsp;&nbsp;&nbsp; 50.912%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; illegal_punycode&nbsp;&nbsp;&nbsp; (31,940)<br>
&nbsp;&nbsp;&nbsp; 24.295%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; otherwise_ok&nbsp;&nbsp;&nbsp; (15,242)<br>&nbsp;&nbsp;&nbsp; 12.015%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; unassigned&nbsp;&nbsp;&nbsp; (7,538)<br>&nbsp;&nbsp;&nbsp; 07.693%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_LMN&nbsp;&nbsp;&nbsp; (4,826)<br>&nbsp;&nbsp;&nbsp; 02.766%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; all_ascii&nbsp;&nbsp;&nbsp; (1,735)<br>&nbsp;&nbsp;&nbsp; 02.319%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_folded&nbsp;&nbsp;&nbsp; (1,455)<br>
length: 10<br>&nbsp;&nbsp;&nbsp; 51.009%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; illegal_punycode&nbsp;&nbsp;&nbsp; (31,760)<br>&nbsp;&nbsp;&nbsp; 22.071%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; otherwise_ok&nbsp;&nbsp;&nbsp; (13,742)<br>&nbsp;&nbsp;&nbsp; 14.408%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; unassigned&nbsp;&nbsp;&nbsp; (8,971)<br>&nbsp;&nbsp;&nbsp; 07.512%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_LMN&nbsp;&nbsp;&nbsp; (4,677)<br>&nbsp;&nbsp;&nbsp; 02.676%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; all_ascii&nbsp;&nbsp;&nbsp; (1,666)<br>
&nbsp;&nbsp;&nbsp; 02.324%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_folded&nbsp;&nbsp;&nbsp; (1,447)<br>length: 11<br>&nbsp;&nbsp;&nbsp; 52.386%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; illegal_punycode&nbsp;&nbsp;&nbsp; (32,852)<br>&nbsp;&nbsp;&nbsp; 21.739%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; otherwise_ok&nbsp;&nbsp;&nbsp; (13,633)<br>&nbsp;&nbsp;&nbsp; 13.479%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; unassigned&nbsp;&nbsp;&nbsp; (8,453)<br>&nbsp;&nbsp;&nbsp; 07.289%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_LMN&nbsp;&nbsp;&nbsp; (4,571)<br>
&nbsp;&nbsp;&nbsp; 02.751%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; all_ascii&nbsp;&nbsp;&nbsp; (1,725)<br>&nbsp;&nbsp;&nbsp; 02.355%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_folded&nbsp;&nbsp;&nbsp; (1,477)<br>length: 12<br>&nbsp;&nbsp;&nbsp; 52.535%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; illegal_punycode&nbsp;&nbsp;&nbsp; (32,787)<br>&nbsp;&nbsp;&nbsp; 20.875%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; otherwise_ok&nbsp;&nbsp;&nbsp; (13,028)<br>&nbsp;&nbsp;&nbsp; 14.156%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; unassigned&nbsp;&nbsp;&nbsp; (8,835)<br>
&nbsp;&nbsp;&nbsp; 07.188%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_LMN&nbsp;&nbsp;&nbsp; (4,486)<br>&nbsp;&nbsp;&nbsp; 02.697%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; all_ascii&nbsp;&nbsp;&nbsp; (1,683)<br>&nbsp;&nbsp;&nbsp; 02.549%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_folded&nbsp;&nbsp;&nbsp; (1,591)<br>length: 13<br>&nbsp;&nbsp;&nbsp; 52.923%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; illegal_punycode&nbsp;&nbsp;&nbsp; (33,188)<br>&nbsp;&nbsp;&nbsp; 20.389%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; otherwise_ok&nbsp;&nbsp;&nbsp; (12,786)<br>
&nbsp;&nbsp;&nbsp; 14.432%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; unassigned&nbsp;&nbsp;&nbsp; (9,050)<br>&nbsp;&nbsp;&nbsp; 07.005%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_LMN&nbsp;&nbsp;&nbsp; (4,393)<br>&nbsp;&nbsp;&nbsp; 02.682%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; all_ascii&nbsp;&nbsp;&nbsp; (1,682)<br>&nbsp;&nbsp;&nbsp; 02.569%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_folded&nbsp;&nbsp;&nbsp; (1,611)<br>length: 14<br>&nbsp;&nbsp;&nbsp; 53.417%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; illegal_punycode&nbsp;&nbsp;&nbsp; (33,263)<br>
&nbsp;&nbsp;&nbsp; 19.515%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; otherwise_ok&nbsp;&nbsp;&nbsp; (12,152)<br>&nbsp;&nbsp;&nbsp; 14.837%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; unassigned&nbsp;&nbsp;&nbsp; (9,239)<br>&nbsp;&nbsp;&nbsp; 06.803%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_LMN&nbsp;&nbsp;&nbsp; (4,236)<br>&nbsp;&nbsp;&nbsp; 02.730%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_folded&nbsp;&nbsp;&nbsp; (1,700)<br>&nbsp;&nbsp;&nbsp; 02.698%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; all_ascii&nbsp;&nbsp;&nbsp; (1,680)<br>
length: 15<br>&nbsp;&nbsp;&nbsp; 54.071%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; illegal_punycode&nbsp;&nbsp;&nbsp; (33,796)<br>&nbsp;&nbsp;&nbsp; 18.905%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; otherwise_ok&nbsp;&nbsp;&nbsp; (11,816)<br>&nbsp;&nbsp;&nbsp; 14.684%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; unassigned&nbsp;&nbsp;&nbsp; (9,178)<br>&nbsp;&nbsp;&nbsp; 06.712%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_LMN&nbsp;&nbsp;&nbsp; (4,195)<br>&nbsp;&nbsp;&nbsp; 02.909%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_folded&nbsp;&nbsp;&nbsp; (1,818)<br>
&nbsp;&nbsp;&nbsp; 02.720%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; all_ascii&nbsp;&nbsp;&nbsp; (1,700)<br>length: 16<br>&nbsp;&nbsp;&nbsp; 53.885%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; illegal_punycode&nbsp;&nbsp;&nbsp; (33,741)<br>&nbsp;&nbsp;&nbsp; 18.150%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; otherwise_ok&nbsp;&nbsp;&nbsp; (11,365)<br>&nbsp;&nbsp;&nbsp; 15.368%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; unassigned&nbsp;&nbsp;&nbsp; (9,623)<br>&nbsp;&nbsp;&nbsp; 06.703%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_LMN&nbsp;&nbsp;&nbsp; (4,197)<br>
&nbsp;&nbsp;&nbsp; 03.145%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_folded&nbsp;&nbsp;&nbsp; (1,969)<br>&nbsp;&nbsp;&nbsp; 02.750%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; all_ascii&nbsp;&nbsp;&nbsp; (1,722)<br>length: 17<br>&nbsp;&nbsp;&nbsp; 54.281%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; illegal_punycode&nbsp;&nbsp;&nbsp; (33,862)<br>&nbsp;&nbsp;&nbsp; 18.016%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; otherwise_ok&nbsp;&nbsp;&nbsp; (11,239)<br>&nbsp;&nbsp;&nbsp; 15.265%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; unassigned&nbsp;&nbsp;&nbsp; (9,523)<br>
&nbsp;&nbsp;&nbsp; 06.526%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_LMN&nbsp;&nbsp;&nbsp; (4,071)<br>&nbsp;&nbsp;&nbsp; 03.302%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_folded&nbsp;&nbsp;&nbsp; (2,060)<br>&nbsp;&nbsp;&nbsp; 02.610%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; all_ascii&nbsp;&nbsp;&nbsp; (1,628)<br>length: 18<br>&nbsp;&nbsp;&nbsp; 54.470%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; illegal_punycode&nbsp;&nbsp;&nbsp; (34,239)<br>&nbsp;&nbsp;&nbsp; 17.489%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; otherwise_ok&nbsp;&nbsp;&nbsp; (10,993)<br>
&nbsp;&nbsp;&nbsp; 15.230%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; unassigned&nbsp;&nbsp;&nbsp; (9,573)<br>&nbsp;&nbsp;&nbsp; 06.615%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_LMN&nbsp;&nbsp;&nbsp; (4,158)<br>&nbsp;&nbsp;&nbsp; 03.513%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_folded&nbsp;&nbsp;&nbsp; (2,208)<br>&nbsp;&nbsp;&nbsp; 02.684%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; all_ascii&nbsp;&nbsp;&nbsp; (1,687)<br>length: 19<br>&nbsp;&nbsp;&nbsp; 54.406%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; illegal_punycode&nbsp;&nbsp;&nbsp; (34,149)<br>
&nbsp;&nbsp;&nbsp; 17.162%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; otherwise_ok&nbsp;&nbsp;&nbsp; (10,772)<br>&nbsp;&nbsp;&nbsp; 15.237%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; unassigned&nbsp;&nbsp;&nbsp; (9,564)<br>&nbsp;&nbsp;&nbsp; 06.741%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_LMN&nbsp;&nbsp;&nbsp; (4,231)<br>&nbsp;&nbsp;&nbsp; 03.763%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_folded&nbsp;&nbsp;&nbsp; (2,362)<br>&nbsp;&nbsp;&nbsp; 02.691%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; all_ascii&nbsp;&nbsp;&nbsp; (1,689)<br>
length: 20<br>&nbsp;&nbsp;&nbsp; 54.940%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; illegal_punycode&nbsp;&nbsp;&nbsp; (34,364)<br>&nbsp;&nbsp;&nbsp; 16.606%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; otherwise_ok&nbsp;&nbsp;&nbsp; (10,387)<br>&nbsp;&nbsp;&nbsp; 15.089%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; unassigned&nbsp;&nbsp;&nbsp; (9,438)<br>&nbsp;&nbsp;&nbsp; 06.732%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_LMN&nbsp;&nbsp;&nbsp; (4,211)<br>&nbsp;&nbsp;&nbsp; 03.895%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; non_folded&nbsp;&nbsp;&nbsp; (2,436)<br>
&nbsp;&nbsp;&nbsp; 02.737%&nbsp;&nbsp;&nbsp; :&nbsp;&nbsp;&nbsp; all_ascii&nbsp;&nbsp;&nbsp; (1,712)<br><br><div class="gmail_quote">On Sun, May 11, 2008 at 7:36 AM, Vint Cerf &lt;<a href="mailto:vint@google.com">vint@google.com</a>&gt; wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
I think we should say nothing about display. John&#39;s focus is on whether and how to do the lookup.<br>
<br>
I agree with what I understand his two positions to be:<br>
<br>
1. just put the punycode string into the DNS query opaquely.<br>
<br>
OR<br>
<br>
2. do the conversion and handle as if the resulting Unicode had been submitted.<br>
<br>
technical question:<br>
<br>
if someone generates an arbitrary &nbsp;string of the form &quot;xn-- &lt;random sequence of lowercase a-z, 0-9 and hyphen&gt;<br>
does the algorithm ALWAYS produce a sequence of UNICODE code points? Note I did not say a PVALID set of code points or even ASSIGNED.<br>
<br>
I am asking because I am wondering how a relatively simple-minded implementation might look from the UI perspective.<br>
<br>
If we always get a sequence of code points regardless of the sequence of LDH, the simple-minded implementation could easily produce gibberish if attempting to invert to UNICODE a sequence of random LDH characters (confining the letters to lowercase)<br>

<br>
Is the following correct:<br>
<br>
let s be a random string of &lt;lower case a-z, 0-9, hyphen&gt; prefixed by &quot;xn--&quot;<br>
<br>
let To UNICODE be a function that maps s into UNICODE<br>
<br>
let To ASCII be a function that maps UNICODE into punycode<br>
<br>
s is valid punycode If and Only If s = To ASCII ( To UNICODE &nbsp;(s) )<br>
<br>
I hope I haven&#39;t mangled the question too badly.<br><font color="#888888">
<br>
v<br>
<br>
<br>
<br>
</font></blockquote></div><br><br clear="all"><br>-- <br>Mark